EDIT: maybe this is it: https://github.com/mozilla/firefox-translations-models
also some info here: https://github.com/mozilla/firefox-translations-training
Your comment is pedantic and unhelpful. It is effectively the same as overhearing someone asking another person for a Kleenex, then choosing to interject and lecture that person on the difference between Kleenex and tissue paper when the other person does have actual Kleenex-brand tissue. Yes, I know what open source is. Yes, Mozilla uses GitHub. I even provided links to relevant GitHub repositories by Mozilla once I found what I was looking for.
The models and training pipeline are in the urls your posted and the evaluation of those models are hosted here [4]
[1] https://github.com/mozilla/firefox-translations [2] https://github.com/browsermt/bergamot-translator [3] https://github.com/browsermt/bergamot-translator/tree/main/w... [4] https://github.com/mozilla/firefox-translations-models/tree/...
Are you planning on adding a “select some text → right click → Translate in a tooltip” feature? It'd be extremely useful for language learners.
It seems there is an open issue for this: https://github.com/mozilla/firefox-translations/issues/358
[1] https://addons.mozilla.org/en-US/firefox/addon/firefox-trans...
I tried it quick and a few comments:
It looks like both the web page version and browser extension download from storage.googleapis.com, which is not ideal (obviously much better than the text to be translated being sent). IMO, this should be clarified in the extension description. Are there any plans for Mozilla to host this data? (Well, Amazon I guess to match addons.mozilla.org)
https://mozilla.github.io/translate/
I noticed the web page has Polish but not the extension. Is it not considered sufficiently high quality yet? (Looks like that might be the case from a quick test.)
As with others, I first tried to translate a bit of text not the whole page. Another super helpful feature likely already on a todo list is the ability to see alternative translation options.
Thanks again, this is great and I'm surprised it isn't a larger download. I am curious about any size/quality tradeoffs being made.
Also, playing with the web page a bit English->Spanish I see it does a whole text translation such that adding new sentences affects the translation of earlier ones, sometimes in very odd ways (with one combination of words it translated "Spanish->English" to "español-esplén"). It seems to sometimes produce "Spanish" words that don't seem to be actual words in Spanish as best I can tell and even accoding to its own Spanish->English. It seems like a way to indicate a section to be translated as a unit might be helpful.
I'll bring this internally for discussion.
> I noticed the web page has Polish but not the extension. Is it not considered sufficiently high quality yet? (Looks like that might be the case from a quick test.)
The Polish model finished training after we had the extension reviewed and signed for distribution, so that's why we could already integrate it in the website, which is controlled just by my team, and not in the extension yet, but we'll ship it in the next version which might come next week.
This feature you requested is something that I consider interesting and important, would you mind filing an issue in the repo so we could track it [1]?
We did not find any large quality issues after quantizing the models.
In regards to the neologism in Spanish, that is yes a condition that the consortium is aware and working to remediate it.
https://www.musixmatch.com/lyrics/Teskno/Woda-t%C4%99skno-gr...
I'll add a few feature requests to the issue tracker (if not there already) hopefully later today. Including a request to put that web page in the extension :).
This is an awesome project, congratulations!
Could you share details about the machine translation engine that is used (or where to find out more about it)? Are there any plans to open source the extension code (with the WebAssembly optmizations that are mentioned in the article)?
Thanks.
- https://github.com/browsermt/marian-dev
Development of higher-level code wrapping around marian-dev make suitable for the browser-extension happens at:
- https://github.com/browsermt/bergamot-translator
Some of the WebAssembly optimizations are available in bergamot-translator/marian-dev. Rest are in Firefox source-code. A start point could be https://bugzilla.mozilla.org/show_bug.cgi?id=1720747.
Extension code is open-source, and linked already in other comments: - https://github.com/mozilla/firefox-translations
[1] https://marian-nmt.github.io/
[2] https://github.com/browsermt/bergamot-translator
[3] https://github.com/browsermt/bergamot-translator/tree/main/w...
[4] https://github.com/mozilla/gecko-dev/tree/master/third_party...
[1] https://github.com/mozilla/firefox-translations/issues [2] https://github.com/mozilla/firefox-translations-training
Mozilla implemented a REST service based on (an earlier version of) bergamot-translator [1]. You could use that as a replacement for the WASM component in the addon's code.
I also know of some full-page translation demo code that uses the python bindings of bergamot-translator [2]. That's basically a web proxy a la Goole Translate.
Lastly, marian, the translation software that's being used, has a web server as well [3]. It does not support HTML though.
EDIT: see also my earlier comment for using it with Node or Python [4], which you could use to implement a simple web API.
[1] https://github.com/mozilla/translation-service
[2] https://github.com/jerinphilip/tagtransfer
You can have an example on how we did here [1] and test it here (I recommend using Firefox) [2]
That way you don't need a server and everything is processed in the browser, so no need of google translate, or any cloud service to have translations embedded in any website anymore.
[1] https://github.com/mozilla/translate [2] https://mozilla.github.io/translate
[1] https://pypi.org/project/mtdata/
[2] https://github.com/mozilla/firefox-translations-training/blo...