如何制作离线翻译器?

Ade*_*can 2 translation translate neural-network apertium

**问题: **

\n\n
    \n
  • 结果必须是一个可以工作的翻译器 - 离线。\n
    我们需要类似于 Google 翻译的 http API(自托管)。
  • \n
\n\n


\n我发现了几个选项:

\n\n
    \n
  • 在 Windows 上安装Microsoft Translator,下载词典,并以某种方式通过 http 传输请求进行翻译
  • \n
  • Apertium,这个选项更接近现实,但它 \xe2\x80\x99s 不清楚如何设置一切......
  • \n
  • 阿帕奇约书亚
  • \n
  • 提示,它是完美的,但它非常昂贵
  • \n
  • PC上安装Android,已经有谷歌翻译,但是又会出现发送http请求的问题
  • \n
\n\n

**去做: **

\n\n
    \n
  • 我们需要翻译整个句子,而不仅仅是单个单词。
  • \n
  • 也许有某种命令行实用程序。
    或者也许有一些针对 Linux 的东西。

    \n\n


    \n以上哪个选项最好查找更多信息?

  • \n
\n

unh*_*mer 5

五分钟的解决方案是在 Debian 或 Ubuntu 上执行此操作:

\n\n
sudo apt install apertium-apy      # http server for apertium\nsudo apt install apertium-eng-spa  # install some language data\nsudo systemctl enable apertium-apy # start http server on next boot\nsudo systemctl start apertium-apy  # start http server right now too\n
Run Code Online (Sandbox Code Playgroud)\n\n

现在,您已经有了英语和西班牙语之间的翻译,可以响应 HTTP 请求并以 JSON 格式应答:

\n\n
curl \'http://localhost:2737/translate?langpair=spa|eng&q=Eres+la+leche\' \n
Run Code Online (Sandbox Code Playgroud)\n\n

您可以使用以下命令查看所有可 apt 安装的 Apertium 语言对

\n\n
apt-cache search apertium |grep \'pair$\'\n
Run Code Online (Sandbox Code Playgroud)\n\n

如果您想要在 Apertium 中获得更多对,您可以尝试添加带有未发布数据的nightly apt 存储库(或者考虑贡献您自己的语言数据)。

\n\n
\n\n

但是,如果您想要 NN 或比 Apertium 更多的语言对,您可以标记此神经网络 \xe2\x80\x93,您可以使用OpenNMT和来自http://opus.nlpl.eu的数据来训练翻译器/,但这肯定需要超过五分钟:-)

\n