离线语言翻译 API

Offline language translation API

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

有几种非常可靠的语言翻译 API(例如,Microsoft and Google)。它们是 HTTP RESTful API,适用于 Web 或移动应用程序,在线模式下运行的应用程序。

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

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

如果没有客户端库组件提供一些离线功能,没有任何网络 API 可以单独在离线模式下运行,因为网络 API 的本质是您正在制作请求外部主机。

剩下客户端库了。两者都 Google Translate offline and Microsoft Translator offline exist, but these are implemented as applications and not exposed as a developer accessible client library. Mature translation libraries exist in the form of Apache Joshua and Stanford Phrasal,但是这些都是基于统计而非神经模型。

如果您正在寻找一个完美的 Java 库,用于离线、基于神经网络的翻译,并且已经开发并准备好使用,那么您可能会倒霉。现在你需要自己动手,例如你提到的使用 TensorFlow and the sample models。翻译服务提供商使用的经过训练的模型有点像 "secret sauce",因此不太可能很快将这些模型免费提供给开发人员用于离线翻译,但质量开源或其他方式完全有可能免费翻译模型将由 ML 社区或第三方开发和发布。