Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Firebase ML-Natural-language Support for Translation #4223

Closed
Arslan24 opened this issue Sep 7, 2020 · 11 comments
Closed

Firebase ML-Natural-language Support for Translation #4223

Arslan24 opened this issue Sep 7, 2020 · 11 comments
Labels
help: needs-triage Issue needs additional investigation/triaging. type: bug New bug report

Comments

@Arslan24
Copy link

Arslan24 commented Sep 7, 2020

I want to implement the ML-Natural-language for (Translation) which is not supported by Firebase yet. can you please give me some head-ups so i can implement this.
i try implement this features by using (https://github.com/danialkalbasi/react-native-power-translator) but unfortunately i am getting an error (danialkalbasi/react-native-power-translator#18).

I already achieve the Cloud Text Recognition (ML Vision Kit). Now i wanted to translated the text into any language.
Help would be appropriated. Thanks

@Arslan24 Arslan24 added help: needs-triage Issue needs additional investigation/triaging. type: bug New bug report labels Sep 7, 2020
@mikehardy
Copy link
Collaborator

@Arslan24 hello! Give me a little bit to think about this, there is a major major change to the machine language stuff in upstream Firebase and I'd like to build anything new in the new style: https://developers.google.com/ml-kit/migration

I can think on that this morning (that is, in the next couple of hours) and try to come up with something tangible/practical so that we have the new style integrated and you can build on that. Would you be willing to collaborate with me on any translation interfaces this way, building on top of what would be a migrated "Common ML Kit" infrastructure (and thus might be just a little bit more shaky to start)?

@Arslan24
Copy link
Author

Arslan24 commented Sep 7, 2020

@mikehardy thanks for your reply. and although it is new for me but i m willing to get my hands dirty .

@mikehardy
Copy link
Collaborator

Alright ! 😄 let's do this then, give me a few hours this morning to review the current state of the code, and the migration guide then I'll try to come up with a plan to bend the current state to the new state, in a way that your need for translation can plug in there. Having someone (you!) very interested in having it working is a critical part, because usually the problem in open source is one person working solo, and no other motivated person trying to work with it and test stuff. It always goes better with two :-). I'll post back once I've looked through everything

@mikehardy
Copy link
Collaborator

@Arslan24 - I am sorry to report that as part of the large-scale machine learning API change in Google in general and Firebase specifically, the translation APIs are deprecated in Firebase https://firebase.google.com/support/release-notes/android#latest_sdk_versions (as are the on-device text recognition APIs, which should be accessed like this now: https://developers.google.com/ml-kit/migration/android#thin_models)

It is true that they still have Firebase text recognition APIs, and those will be updated, so you could use react-native-firebase in order to do text recognition, but that will cost you network roundtrips and firebase API usage charges when you could just as effectively do it on device for free with the link above (and the same for iOS).

For the translation there is no future in firebase implementations, it should all be done according to these docs, which is outside of the firebase API surface area and so will not be supported here: https://developers.google.com/ml-kit/language/translation

My best recommendation is to work with the module you linked to bring it up to current APIs, although sadly that module does not look active.

In fact none of the mlkit libraries I see for react-native appear alive (https://github.com/zsajjad/react-native-text-detector / https://github.com/mateusc42/react-native-firebase-mlkit )

It looks like an opportunity for someone to fork the library closest to your needs and get it working.

Sorry this doesn't look like a fit here

@Arslan24
Copy link
Author

Arslan24 commented Sep 8, 2020

@mikehardy i will trying to figure out a way to solve my problem & let u know if it works 😄 . Thanks for the support.

@rafaelsaback
Copy link

I think this might be interesting for some people here on this issue.

I've created a React Native wrapper for Google's ML Kit Translation library, which provides free on-device translations, and which uses the very same ML models as Google Translate app's offline mode.

NPM: https://www.npmjs.com/package/react-native-mlkit-translate

Github: https://github.com/rafaelsaback/react-native-mlkit-translate

Currently, I have only implemented it for Android. Unfortunately, I will not be able to implement it for IOS any time soon (I'm building an app for Android first). So any contribution on this matter is highly appreciated :)

As a matter of fact, I'm not an expert in Java and Android, so any improvements in the Android integration are also welcome.

@mikehardy
Copy link
Collaborator

As part of the reorganization we will have an Invertase-supported react-native wrapper for the entire Google MLKit native library, based on a port of the APIs that were removed from here - it is not public yet but will be at https://github.com/invertase/react-native-mlkit/issues

@rafaelsaback
Copy link

@mikehardy, that's awesome news! 🙂 Is there a rough estimate for when it should be out? Q1 2021?

@mikehardy
Copy link
Collaborator

I hope so, I already have the initial backlog populated, and we had working code before, it's mostly infrastructure work and API parity from when I extracted from react-native-firebase in order to forward port to the new underlying SDKs in #4471 - I want to be clear that I can't give a hard deadline unfortunately people (such as yourself :-) ) definitely use it but if you rank-order number of impacted users from the extraction the user count isn't super high so I work on it as a sort of consistent 2nd or 3rd task meaning it might get de-prioritized at any time behind something like firebase/flutterfire#4249

@paulrostorp
Copy link
Contributor

@mikehardy What is the status of this project ?

As part of the reorganization we will have an Invertase-supported react-native wrapper for the entire Google MLKit native library, based on a port of the APIs that were removed from here - it is not public yet but will be at https://github.com/invertase/react-native-mlkit/issues

@mikehardy
Copy link
Collaborator

Still on deck, have not started it specifically yet, however, there was a twin project related to admob (which was removed from firebase prior to MLKit) and we just finished standing it up on it's own as a fully up to date stable package, which means MLKit is next. These things aren't fast, and for that you have my/our apologies, but it has not disappeared as a priority. Just has not been the top priority yet

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help: needs-triage Issue needs additional investigation/triaging. type: bug New bug report
Projects
None yet
Development

No branches or pull requests

4 participants