Re:Show HN: I made an open source and local translation app
by mrwyz on Wednesday June 19, 2024 @12:40AM
(#40724887)
The app looks very cool, but you might have a licensing issue; Meta's NLLB models are CC-BY-NC 4.0 (non-commercial use only). I could recommend checking out the OPUS-NLP models, which are truly open.
[ Parent
| on HN ]
Re:Show HN: I made an open source and local translation app
by EMIRELADERO on Wednesday June 19, 2024 @04:01AM
(#40725965)
Sidenote: I don't think ML model weights are even copyrightable
Re:Show HN: I made an open source and local translation app
by niedev on Wednesday June 19, 2024 @02:58AM
(#40725589)
I know that, but since I make money only from donations without giving anything in return of the money I am considered non commercial. For now I decided to use NLLB instead of Opus because it has good quality and is a single model for all languages (so I didn't have to implement the download management logic for the various languages and I was able to make the app faster), but it is a temporary solution, I will certainly replace NLLB in the future, either with OpusMt Big or with other models with a less restrictive license.
Re:Show HN: I made an open source and local translation app
by Flimm on Wednesday June 19, 2024 @01:03AM
(#40725033)
In that case, it is not open source. Part 6 of the open source definition by OSI (the only commonly accepted definition) includes this requirement:
> 6. No Discrimination Against Fields of Endeavor
>
> The license must not restrict anyone from making use of the program in a specific field of endeavor. For example, it may not restrict the program from being used in a business, or from being used for genetic research.
This app looks really cool and I'm glad OP made it. I'm just asking that the inaccurate "open source" descriptor be removed. Don't let my comment discourage you.
Re:Show HN: I made an open source and local translation app
by niedev on Wednesday June 19, 2024 @03:24AM
(#40725761)
Meta defines NLLB as open source, but assuming it isn't (I know Meta It's not a company that has a problem with lying), my code is open source, so how should I define my app? I personally make a distinction between open source and completely open source (or 100% open source), because otherwise there is no intermediate definition, according to the OSI definition my app is not open source, but it is not closed source either, OSI does it have an intermediate definition?
Re:Show HN: I made an open source and local translation app
by badLiveware on Wednesday June 19, 2024 @04:32AM
(#40726136)
Source-available[1] is likely the closest commonly used term for it
Re:Show HN: I made an open source and local translation app
by niedev on Wednesday June 19, 2024 @06:01AM
(#40726699)
Ok, I think I found the perfect solution, In the readme I added near open-source "(almost)" with a link to the libraries and models section when I explained clearer what components are open-source, closed-source, and cc-by-nc.
Re:Show HN: I made an open source and local translation app
by niedev on Wednesday June 19, 2024 @05:52AM
(#40726655)
it's the closest, but it's a very broad and not so well known term, maybe defining my app open source is not technically a perfect term, but it's the clearest in describing it (considering that in the libraries and models section I specified which are open-source and which are not, Ml-Kit, used to recognize the language, for example is closed source), if a developer doesn't see the open source writing anywhere he will only get confused in understanding what the license of my app is. However, based on your feedback I added the specification (in the "libraries and models" section) that NLLB has a non-commercial license.
Re:Show HN: I made an open source and local translation app
by regen7253 on Wednesday June 19, 2024 @07:15AM
(#40727136)
Instead of "almost", maybe "Open Source Code (and free for non-commercial use due to model licencing)" since your contributions are free as in freedom,and that is amazing!
Thank you for building this, I have been using a web interface connected to a local server for inference but the latency was about 1 second, too much for my taste!