Неправильное определение языка с помощью Google Translate (несколько языков)
В настоящее время я работаю над тем, что я пытаюсь перевести абзац, который включает более одного языка.
Теперь я понял, с помощью API Google Translate, если у нас есть, скажем:hello bye hola
он определит язык как английский и если его:hello hola adios
тогда он обнаружит испанский.
Таким образом, в основном, какой язык имеет наибольшее количество слов в предложении / параграфе, он обнаружит этот язык. Самое смешное, что в Google Translate у них есть эта функция.
Есть ли способ решить эту проблему, чтобы он обнаруживал только иностранный язык, а не английский?
1 ответ
Нет, с помощью Google Translate API это сделать невозможно, потому что в их общедоступном API просто нет механизма для этого.
Если вы используете библиотеку обнаружения альтернативного языка, вы можете определить порог, при котором удаляется содержимое менее представленного языка. Это позволит вам удалить контент на английском языке, если он составляет менее 30% текста в общей выборке.
Например, см. RemoveMinorityScriptsTextFilterTest
класс в проекте https://github.com/optimaize/language-detector.