【问题标题】:Offline language translation API [closed]离线语言翻译 A​​PI [关闭]
【发布时间】:2017-05-16 11:10:20
【问题描述】:

请注意,我知道这个问题在多个地方以各种形式出现,包括 *,但我还没有看到令人满意的答案。

有几个非常可靠的语言翻译 A​​PI(例如,MicrosoftGoogle)。它们是 HTTP RESTful API,适用于网络或移动应用程序,即在线模式下运行的应用程序。

但是,我正在寻找一种语言翻译 A​​PI,它可以在没有 Internet 连接时在离线模式下翻译短(或长)句子。

我的问题的另一个版本: 谷歌翻译应用程序带有一个下载某些语言模型的选项,以允许它在离线模式下运行。是否有允许利用 Google 翻译的可下载模型进行离线翻译的 Android Java 库(官方或非官方;免费或付费)?

【问题讨论】:

  • 您找到问题的解决方案了吗?关于离线翻译的 Android Java 库?
  • @yozhik 不,我还没有找到解决方案。我目前正在探索使用 Tensorflow 的定制机器翻译解决方案。这很困难,但并非不可能。 tensorflow.org/versions/r0.10/tutorials/seq2seq
  • 你有没有找到任何解决方案,如果你有请分享。谢谢...

标签: api offline google-translate translate


【解决方案1】:

没有可以单独在离线模式下运行的 Web API,没有提供某些离线功能的客户端库组件,因为 Web API 的本质是您正在向外部主机发出请求。

剩下的就是客户端库。 Google Translate offlineMicrosoft Translator offline 都存在,但它们是作为应用程序实现的,而不是作为开发人员可访问的客户端库公开的。成熟的翻译库以Apache JoshuaStanford Phrasal的形式存在,但这些都是基于统计而非神经模型的。

如果您正在寻找一个完美的 Java 库,用于离线、基于神经的翻译,并且已经开发并准备好使用,那么您将不走运。现在你需要自己动手,例如你提到的使用TensorFlow and the sample models。翻译服务提供商使用的经过训练的模型在某种程度上是一种“秘密武器”,因此不太可能很快将这些模型免费提供给开发人员用于离线翻译,但质量开源或其他免费的完全有可能翻译模型将由 ML 社区或第三方开发和发布。

【讨论】:

  • 我同意,亚当。我自己也得出了同样的结论。但是,感谢您将其阐明为答案。感谢您提及约书亚。我知道统计模型不如神经模型准确,但在深入研究 TensorFlow 之前尝试一下 Joshua 可能值得一试。
  • 天哪,这就是我喜欢 SO 的原因!我刚刚有一个任务要完成,很快就找到了这个答案..谢谢!