我正在尝试使用firebase ML工具包将文本翻译成目标语言,但它只能在下载了模型的语言之间进行翻译。即使模型没有下载,我也要翻译
@Override
protected String doInBackground(String... params) {
try {
TranslatorOptions options = new TranslatorOptions.Builder()
.setSourceLanguage(languageCodes[sourcode])
.setTargetLanguage(languageCodes[destcode])
.build();
final Translator translator = Translation.getClient(options);
getLifecycle().addObserver(translator);
translator.translate(params[0])
.addOnSuccessListener(s -> TranslationFragment.this.requireActivity().runOnUiThread(() -> translationBinding.translatedText.setText(s))).addOnFailureListener(e -> TranslationFragment.this.requireActivity().runOnUiThread(() -> Toast.makeText(requireActivity(), "Translation Failed", Toast.LENGTH_SHORT).show()));
} catch (RuntimeException e) {
isTranslationsupported = false;
} finally {
progressDialog.dismiss();
}
return null;
}发布于 2021-02-10 02:46:31
ML Kit的翻译API是为了在设备上进行翻译,它需要下载语言包才能做到这一点。如果您想使用云API进行翻译,请查看Google Cloud Translation。
https://stackoverflow.com/questions/66101607
复制相似问题