Opus-MT

Opus-MT

多语言神经机器翻译的开源框架

Opus-MT是一个开源的神经机器翻译项目,基于Marian-NMT框架开发。该项目利用OPUS数据集训练模型,结合SentencePiece分词和eflomal词对齐技术,提供多语言翻译功能。Opus-MT支持基于Tornado的Web应用和WebSocket服务两种部署方式,并提供大量预训练模型供用户下载。在Tiyaro.ai平台上,Opus-MT部署了543个在线演示API,方便用户体验。这个项目致力于为全球用户提供开放、便捷的翻译服务。

OPUS-MT机器翻译开源多语言Marian-NMTGithub开源项目
<img src="https://yellow-cdn.veclightyear.com/ab5030c0/f653fa4f-f4bc-49bc-889e-5b6135adce73.png" width="250" alt="OPUS-MT"/>

开放翻译服务的工具和资源

<p> <a href="https://console.tiyaro.ai/explore?q=opus-mt&pub=Helsinki-NLP"> <img src="https://yellow-cdn.veclightyear.com/ab5030c0/1bd34d28-e6a9-4d23-9fce-7ffa5ff376ac.svg"></a> </p>

本仓库包含两种设置:

还有用于训练模型的脚本,但目前这些脚本仅适用于赫尔辛基大学和 CSC 作为 IT 服务提供商所使用的计算环境。

如果使用 OPUS-MT 软件和模型,请引用以下论文:

@article{tiedemann2023democratizing, title={Democratizing neural machine translation with {OPUS-MT}}, author={Tiedemann, J{\"o}rg and Aulamo, Mikko and Bakshandaeva, Daria and Boggia, Michele and Gr{\"o}nroos, Stig-Arne and Nieminen, Tommi and Raganato, Alessandro and Scherrer, Yves and Vazquez, Raul and Virpioja, Sami}, journal={Language Resources and Evaluation}, number={58}, pages={713--755}, year={2023}, publisher={Springer Nature}, issn={1574-0218}, doi={10.1007/s10579-023-09704-w} } @InProceedings{TiedemannThottingal:EAMT2020, author = {J{\"o}rg Tiedemann and Santhosh Thottingal}, title = {{OPUS-MT} — {B}uilding open translation services for the {W}orld}, booktitle = {Proceedings of the 22nd Annual Conferenec of the European Association for Machine Translation (EAMT)}, year = {2020}, address = {Lisbon, Portugal} }

基于 Tornado 的 Web 应用安装

从 GitHub 下载最新版本:

git clone https://github.com/Helsinki-NLP/Opus-MT.git

选项 1:手动设置

安装 Marian MT。按照 https://marian-nmt.github.io/docs/ 的文档进行操作(别忘了包含用于编译服务器二进制文件的 cmake 选项 -DCOMPILE_SERVER=ON) 安装后,marian-server 应该在路径中。如果不在,请将其放在 /usr/local/bin

安装先决条件。 建议使用虚拟环境。

pip install -r requirements.txt

https://github.com/Helsinki-NLP/Opus-MT-train/tree/master/models 下载翻译模型并将它们放在 models 目录中。

然后编辑 services.json 以指向这些模型。

最后启动 Web 服务器。

python server.py

默认情况下,它将使用 8888 端口。在浏览器中打开 localhost:8888 以获取 Web 界面。services.json 中配置的语言将可用。

选项 2:使用 Docker

docker-compose up

docker build . -t opus-mt docker run -p 8888:8888 opus-mt:latest

然后在浏览器中打开 localhost:8888

选项 2.1:使用带 CUDA GPU 的 Docker

docker build -f Dockerfile.gpu . -t opus-mt-gpu nvidia-docker run -p 8888:8888 opus-mt-gpu:latest

然后在浏览器中打开 localhost:8888

配置

server.py 程序接受 JSON 格式的配置文件。默认情况下,它会尝试使用当前目录中的 services.json。但你可以使用 -c 标志提供自定义配置文件。

一个示例配置文件如下所示:

{ "en": { "es": { "configuration": "./models/en-es/decoder.yml", "host": "localhost", "port": "10001" }, "fi": { "configuration": "./models/en-fi/decoder.yml", "host": "localhost", "port": "10002" }, } }

这个示例配置可以为 en->es 和 en->fi 语言对提供 MT 服务。

  • configuration 指向包含 marian-server 可用的解码器配置的 yaml 文件。如果未提供此值,Opus-MT 将假定服务已在远程主机上运行,并根据其他选项进行发布。如果提供了值,将使用 marian-server 创建一个新的子进程
  • host:服务器运行的主机。
  • portmarian-server 监听的端口。

在 Ubuntu 上安装 WebSocket 服务

还有一个选项是使用WebSockets和Linux服务设置翻译服务。详细信息可从doc/WebSocketServer.md获取。

公共机器翻译模型

我们在https://github.com/Helsinki-NLP/Opus-MT-train/tree/master/models存储公共模型(CC-BY 4.0许可证)。它们都应该与OPUS-MT服务兼容,您可以通过指定语言对来安装它们。安装脚本会选择该目录中的最新模型。如需额外定制,您需要调整安装程序(在Makefile或其他地方)。

还有一些开发版模型,通常更具实验性且质量较低。但它们包含额外的语言对,可以从https://github.com/Helsinki-NLP/Opus-MT-train/tree/master/work-spm/models下载。

训练机器翻译模型

Opus-MT-train仓库中有一个用于从OPUS数据训练新模型的Makefile,但这是针对CSC和赫尔辛基大学项目的工作环境高度定制的。希望将来这能变得更通用,以便在不同环境和设置中运行。

已知问题

  • 大多数自动评估是在Tatoeba数据集的简单短句上进行的;这些分数在使用其他更真实的数据集时会过于乐观
  • 一些(较旧的)测试结果不可靠,因为它们使用软件本地化数据(即GNOME系统消息),与包含在训练数据中的其他本地化数据(即Ubuntu系统消息)有很大重叠
  • 所有当前模型都是在没有过滤、数据增强(如反向翻译)和领域适应以及其他优化程序的情况下训练的;除了基于自动选择的测试集的自动评估外,没有质量控制;对于某些语言对,至少还有来自官方WMT测试集的基准分数
  • 大多数模型在1或4个GPU上最多训练72小时;并非所有模型都在此时间限制内收敛
  • 验证和早停基于自动选择的验证数据,通常来自Tatoeba;验证数据对许多应用来说并不具有代表性

待办事项和愿望清单

  • 更多语言和语言对
  • 更好和更多语言的模型
  • 优化翻译性能
  • 添加反向翻译数据
  • 特定领域模型
  • 支持GPU的容器
  • 容器化微调
  • 文档级模型
  • 负载均衡和其他服务优化
  • 公共机器翻译服务网络
  • 反馈循环和个性化

链接和相关工作

致谢

这项工作得到了European Language Grid的支持,作为试点项目2866,由欧洲研究理事会(ERC)在欧盟Horizon 2020研究创新计划下资助的FoTran项目(拨款协议编号771113),以及由欧盟Horizon 2020研究创新计划资助的MeMAD项目(拨款协议编号780069)。我们也感谢CSC -- IT Center for Science,芬兰提供的慷慨计算资源和IT基础设施。

编辑推荐精选

Vora

Vora

免费创建高清无水印Sora视频

Vora是一个免费创建高清无水印Sora视频的AI工具

Refly.AI

Refly.AI

最适合小白的AI自动化工作流平台

无需编码,轻松生成可复用、可变现的AI自动化工作流

酷表ChatExcel

酷表ChatExcel

大模型驱动的Excel数据处理工具

基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。

AI工具酷表ChatExcelAI智能客服AI营销产品使用教程
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
AIWritePaper论文写作

AIWritePaper论文写作

AI论文写作指导平台

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

AI辅助写作AI工具AI论文工具论文写作智能生成大纲数据安全AI助手热门
博思AIPPT

博思AIPPT

AI一键生成PPT,就用博思AIPPT!

博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。

AI办公办公工具AI工具博思AIPPTAI生成PPT智能排版海量精品模板AI创作热门
潮际好麦

潮际好麦

AI赋能电商视觉革命,一站式智能商拍平台

潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。

iTerms

iTerms

企业专属的AI法律顾问

iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。

SimilarWeb流量提升

SimilarWeb流量提升

稳定高效的流量提升解决方案,助力品牌曝光

稳定高效的流量提升解决方案,助力品牌曝光

Sora2视频免费生成

Sora2视频免费生成

最新版Sora2模型免费使用,一键生成无水印视频

最新版Sora2模型免费使用,一键生成无水印视频

下拉加载更多