[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-Helsinki-NLP--Opus-MT":3,"tool-Helsinki-NLP--Opus-MT":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",156804,2,"2026-04-15T11:34:33",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108322,"2026-04-10T11:39:34",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[52,13,15,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":32,"last_commit_at":59,"category_tags":60,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":67,"readme_en":68,"readme_zh":69,"quickstart_zh":70,"use_case_zh":71,"hero_image_url":72,"owner_login":73,"owner_name":74,"owner_avatar_url":75,"owner_bio":76,"owner_company":77,"owner_location":77,"owner_email":77,"owner_twitter":78,"owner_website":79,"owner_url":80,"languages":81,"stars":112,"forks":113,"last_commit_at":114,"license":115,"difficulty_score":10,"env_os":116,"env_gpu":117,"env_ram":118,"env_deps":119,"category_tags":127,"github_topics":128,"view_count":32,"oss_zip_url":77,"oss_zip_packed_at":77,"status":17,"created_at":137,"updated_at":138,"faqs":139,"releases":170},7738,"Helsinki-NLP\u002FOpus-MT","Opus-MT","Open neural machine translation models and web services","Opus-MT 是一套开源的神经机器翻译模型与网络服务解决方案，旨在让高质量的机器翻译技术变得开放且易于获取。它基于强大的 Marian-NMT 框架，利用海量的 OPUS 平行语料库进行训练，并采用 SentencePiece 分词及 eflomal 引导对齐等先进技术，显著提升了多语言互译的准确度。\n\n这套工具主要解决了传统商业翻译引擎封闭、昂贵或难以针对特定语言对进行定制的问题。通过提供大量预训练模型（覆盖众多语言组合）以及灵活的部署方案，Opus-MT 让用户能够轻松搭建属于自己的翻译服务，既支持本地离线运行，也提供了基于 Tornado 的 Web 界面和 API 接口，方便集成到各类应用中。\n\nOpus-MT 特别适合开发者、自然语言处理研究人员以及需要构建私有化翻译系统的企业团队使用。对于希望深入探索低资源语言翻译或进行学术研究的学者，它提供了完整的训练脚本和数据资源；而对于应用开发者，其支持的 Docker 容器化部署（含 GPU 加速选项）大大降低了环境配置门槛，只需简单几步即可启动服务。作为由赫尔辛基大学 NLP 团队维护的项目，Opus-MT 以 CC-BY 4.","Opus-MT 是一套开源的神经机器翻译模型与网络服务解决方案，旨在让高质量的机器翻译技术变得开放且易于获取。它基于强大的 Marian-NMT 框架，利用海量的 OPUS 平行语料库进行训练，并采用 SentencePiece 分词及 eflomal 引导对齐等先进技术，显著提升了多语言互译的准确度。\n\n这套工具主要解决了传统商业翻译引擎封闭、昂贵或难以针对特定语言对进行定制的问题。通过提供大量预训练模型（覆盖众多语言组合）以及灵活的部署方案，Opus-MT 让用户能够轻松搭建属于自己的翻译服务，既支持本地离线运行，也提供了基于 Tornado 的 Web 界面和 API 接口，方便集成到各类应用中。\n\nOpus-MT 特别适合开发者、自然语言处理研究人员以及需要构建私有化翻译系统的企业团队使用。对于希望深入探索低资源语言翻译或进行学术研究的学者，它提供了完整的训练脚本和数据资源；而对于应用开发者，其支持的 Docker 容器化部署（含 GPU 加速选项）大大降低了环境配置门槛，只需简单几步即可启动服务。作为由赫尔辛基大学 NLP 团队维护的项目，Opus-MT 以 CC-BY 4.0 协议开放，真正推动了翻译技术的民主化进程。","\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHelsinki-NLP_Opus-MT_readme_e29524d1889c.png\" width=\"250\" alt=\"OPUS-MT\"\u002F>\n\n\nTools and resources for open translation services\n\n* based on [Marian-NMT](https:\u002F\u002Fmarian-nmt.github.io\u002F)\n* trained on [OPUS](http:\u002F\u002Fopus.nlpl.eu\u002F) data using [OPUS-MT-train](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT-train) (New: [leaderboard](https:\u002F\u002Fopus.nlpl.eu\u002Flegacy\u002Fdashboard\u002F))\n* mainly [SentencePiece](https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fsentencepiece)-based segmentation\n* mostly trained with guided alignment based on [eflomal](https:\u002F\u002Fgithub.com\u002Frobertostling\u002Feflomal) wordalignments \n* [pre-trained downloadable translation models](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT-train\u002Ftree\u002Fmaster\u002Fmodels) ([matrix view](http:\u002F\u002Fopus.nlpl.eu\u002FOpus-MT\u002F)), CC-BY 4.0 license\n* [more freely available translation models](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FTatoeba-Challenge\u002Fblob\u002Fmaster\u002Fresults\u002Ftatoeba-results-all.md) from the [Tatoeba translation challenge](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FTatoeba-Challenge), CC-BY 4.0 license\n\nThis repository includes two setups:\n\n* Setup 1: a [Tornado](https:\u002F\u002Fwww.tornadoweb.org)-based web application providing a web UI and API to work with multiple language pairs (developed by [Santhosh Thottingal](https:\u002F\u002Fgithub.com\u002Fsanthoshtr) and his team at the Wikimedia Foundation)\n* Setup 2: [a simple websocket service setup with some experimental API extensions](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT\u002Ftree\u002Fmaster\u002Fdoc\u002FWebSocketServer.md)\n\nThere are also [scripts for training models](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT-train), but those are currently only useful in the computing environment used by the University of Helsinki and CSC as the IT service provider.\n\nPlease cite the following papers if you use OPUS-MT software and models:\n\n```bibtex\n@article{tiedemann2023democratizing,\n  title={Democratizing neural machine translation with {OPUS-MT}},\n  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\\\n, Alessandro and Scherrer, Yves and Vazquez, Raul and Virpioja, Sami},\n  journal={Language Resources and Evaluation},\n  number={58},\n  pages={713--755},\n  year={2023},\n  publisher={Springer Nature},\n  issn={1574-0218},\n  doi={10.1007\u002Fs10579-023-09704-w}\n}\n\n@InProceedings{TiedemannThottingal:EAMT2020,\n  author = {J{\\\"o}rg Tiedemann and Santhosh Thottingal},\n  title = {{OPUS-MT} — {B}uilding open translation services for the {W}orld},\n  booktitle = {Proceedings of the 22nd Annual Conferenec of the European Association for Machine Translation (EAMT)},\n  year = {2020},\n  address = {Lisbon, Portugal}\n }\n ```\n\n## Installation of the Tornado-based Web-App\n\nDownload the latest version from github:\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT.git\n```\n\n### Option 1: Manual setup\n\nInstall Marian MT. Follow the documentation at https:\u002F\u002Fmarian-nmt.github.io\u002Fdocs\u002F (don't forget to include the cmake option for compiling the server binary `-DCOMPILE_SERVER=ON`)\nAfter the installation, marian-server is expected to be present in path. If not, place it in `\u002Fusr\u002Flocal\u002Fbin`\n\nInstall pre-requisites.\nUsing a virtual environment is recommended.\n\n```bash\npip install -r requirements.txt\n```\n\nDownload the translation models from https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT-train\u002Ftree\u002Fmaster\u002Fmodels and place them in models directory.\n\nThen edit the services.json to point to those models.\n\nAnd start the webserver.\n```bash\npython server.py\n```\n\nBy default, it will use port 8888. Launch your browser to localhost:8888 to get the web interface. The languages configured in services.json will be available.\n\n### Option 2: Using Docker\n\n```bash\ndocker-compose up\n```\n\nor\n\n```bash\ndocker build . -t opus-mt\ndocker run -p 8888:8888 opus-mt:latest\n```\n\nAnd launch your browser to localhost:8888\n\n#### Option 2.1: Using Docker with CUDA GPU\n\n```bash\ndocker build -f Dockerfile.gpu . -t opus-mt-gpu\nnvidia-docker run -p 8888:8888 opus-mt-gpu:latest\n```\n\nAnd launch your browser to localhost:8888\n\n### Configuration\n\nThe server.py program accepts a configuration file in json format. By default it try to use `services.json` in the current directory. But you can give a custom one using `-c` flag.\n\nAn example configuration file looks like this:\n\n```json\n{\n    \"en\": {\n        \"es\": {\n            \"configuration\": \".\u002Fmodels\u002Fen-es\u002Fdecoder.yml\",\n            \"host\": \"localhost\",\n            \"port\": \"10001\"\n        },\n        \"fi\": {\n            \"configuration\": \".\u002Fmodels\u002Fen-fi\u002Fdecoder.yml\",\n            \"host\": \"localhost\",\n            \"port\": \"10002\"\n        },\n    }\n}\n\n```\n\nThis example configuration can provide MT service for en->es and en->fi language pairs.\n\n* `configuration` points to a yaml file containing the decoder configuration usable by `marian-server`. If this value is not provided, Opus-MT will assume that the service is already running in a remote host and post as given in other options. If value is provided, a new subprocess will be created using `marian-server`\n* `host`: The host where the server is running.\n* `port`: The port to be listen for `marian-server`\n\n\n\n\n## Installation of a websocket service on Ubuntu\n\nThere is another option of setting up translation services using WebSockets and Linux services. Detailed information is available from \n[doc\u002FWebSocketServer.md](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT\u002Ftree\u002Fmaster\u002Fdoc\u002FWebSocketServer.md).\n\n\n## Public MT models\n\nWe store public models (CC-BY 4.0 License) at https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT-train\u002Ftree\u002Fmaster\u002Fmodels\nThey should all be compatible with the OPUS-MT services, and you can install them by specifying the language pair. The installation script takes the latest model in that directory. For additional customisation you need to adjust the installation procedures (in the Makefile or elsewhere).\n\nThere are also development versions of models, which are often a bit more experimental and of low quality. But there are additional language pairs and they can be downloaded from https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT-train\u002Ftree\u002Fmaster\u002Fwork-spm\u002Fmodels\n\n\n\n## Train MT models\n\nThere is a Makefile for training new models from OPUS data in the [Opus-MT-train](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT-train) repository, but this is heavily customized for the work environment at CSC and the University of Helsinki projects. This will (hopefully) be more generic in the future to be able to run in different environments and setups as well.\n\n\n## Known issues\n\n* most automatic evaluations are made on simple and short sentences from the Tatoeba data collection; those scores will be too optimistic when running the models with other more realistic data sets\n* Some (older) test results are not reliable as they use software localisation data (namely GNOME system messages) with a large overlap with other localisation data (i.e. Ubuntu system messages) that are included in the training data\n* All current models are trained without filtering, data augmentation (like backfanslation) and domain adaptation and other optimisation procedures; there is no quality control besides of the automatic evaluation based on automatically selected test sets; for some language pairs there are at least also benchmark scores from official WMT test sets\n* Most models are trained with a maximum of 72 training hours on 1 or 4 GPUs; not all of them converged before this time limit\n* Validation and early stopping is based on automatically selected validation data, often from Tatoeba; the validation data is not representative for many applications\n\n\n## To-Do and wish list\n\n* more languages and language pairs\n* better and more multilingual models\n* optimize translation performance\n* add backtranslation data\n* domain-specific models\n* GPU enabled container\n* dockerized fine-tuning\n* document-level models\n* load-balancing and other service optimisations\n* public MT service network\n* feedback loop and personalisation\n\n\n## Links and related work\n\n* [OPUS-translator](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOPUS-translator): implementation of a simple on-line translation interface\n* [OPUS-CAT](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOPUS-CAT): an implementation of an NMT plugin for Trados Studio that can run OPUS-MT models\n* [fiskmö](https:\u002F\u002Fblogs.helsinki.fi\u002Ffiskmo-project\u002F): a project on the devlopment of resources and tools for translating between Finnish and Swedish\n* [The Tatoeba MT Challenge](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FTatoeba-Challenge\u002F) with [lots of pre-trained NMT models](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FTatoeba-Challenge\u002Fblob\u002Fmaster\u002Fresults\u002Ftatoeba-results-all.md)\n* [The NMT map](https:\u002F\u002Fopus.nlpl.eu\u002FNMT-map\u002FTatoeba\u002Fall\u002Fsrc2trg\u002F) that plots the status of Tatoeba NMT models on a map\n* [The OPUS-MT leaderboard](https:\u002F\u002Fopus.nlpl.eu\u002Fleaderboard\u002F)\n* [pre-trained multilingual models](https:\u002F\u002Fgithub.com\u002FbzhangGo\u002Fzero\u002Ftree\u002Fmaster\u002Fdocs\u002Fmultilingual_laln_lalt#pretrained-multilingual-models-many-to-many) trained on [OPUS-100](https:\u002F\u002Fgithub.com\u002FEdinburghNLP\u002Fopus-100-corpus) using the [zero](https:\u002F\u002Fgithub.com\u002FbzhangGo\u002Fzero) toolkit\n\n\n## Acknowledgements\n\nThe work is supported by the [European Language Grid](https:\u002F\u002Fwww.european-language-grid.eu\u002F) as [pilot project 2866](https:\u002F\u002Flive.european-language-grid.eu\u002Fcatalogue\u002F#\u002Fresource\u002Fprojects\u002F2866), by the [FoTran project](https:\u002F\u002Fwww.helsinki.fi\u002Fen\u002Fresearchgroups\u002Fnatural-language-understanding-with-cross-lingual-grounding), funded by the European Research Council (ERC) under the European Union’s Horizon 2020 research and innovation programme (grant agreement No 771113), the [MeMAD project](https:\u002F\u002Fmemad.eu\u002F), funded by the European Union’s Horizon 2020 Research and Innovation Programme under grant agreement No 780069, and the [HPLT project](https:\u002F\u002Fhplt-project.org) European Union’s Horizon Europe research and innovation programme under grant agreement No 101070350. We are also grateful for the generous computational resources and IT infrastructure provided by [CSC -- IT Center for Science](https:\u002F\u002Fwww.csc.fi\u002F), Finland.\n","\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHelsinki-NLP_Opus-MT_readme_e29524d1889c.png\" width=\"250\" alt=\"OPUS-MT\"\u002F>\n\n\n开放翻译服务的工具与资源\n\n* 基于 [Marian-NMT](https:\u002F\u002Fmarian-nmt.github.io\u002F) 框架\n* 使用 [OPUS](http:\u002F\u002Fopus.nlpl.eu\u002F) 数据，并通过 [OPUS-MT-train](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT-train) 训练（新增：[排行榜](https:\u002F\u002Fopus.nlpl.eu\u002Flegacy\u002Fdashboard\u002F)）\n* 主要采用 [SentencePiece](https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fsentencepiece) 进行分词\n* 大多基于 [eflomal](https:\u002F\u002Fgithub.com\u002Frobertostling\u002Feflomal) 生成的词对齐结果进行有指导的对齐训练\n* 提供可下载的预训练翻译模型（[矩阵视图](http:\u002F\u002Fopus.nlpl.eu\u002FOpus-MT\u002F)），采用 CC-BY 4.0 许可证\n* 此外，还有来自 [Tatoeba 翻译挑战](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FTatoeba-Challenge) 的更多免费可用翻译模型（[结果汇总](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FTatoeba-Challenge\u002Fblob\u002Fmaster\u002Fresults\u002Ftatoeba-results-all.md)），同样采用 CC-BY 4.0 许可证\n\n本仓库包含两种部署方案：\n\n* 方案一：基于 [Tornado](https:\u002F\u002Fwww.tornadoweb.org) 的 Web 应用程序，提供用于处理多种语言对的 Web 界面和 API（由维基媒体基金会的 [Santhosh Thottingal](https:\u002F\u002Fgithub.com\u002Fsanthoshtr) 及其团队开发）\n* 方案二：[一个简单的 WebSocket 服务部署，附带一些实验性 API 扩展](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT\u002Ftree\u002Fmaster\u002Fdoc\u002FWebSocketServer.md)\n\n此外，还提供了用于训练模型的脚本，但目前这些脚本仅适用于赫尔辛基大学及其 IT 服务提供商 CSC 的计算环境。\n\n如果您使用 OPUS-MT 软件和模型，请引用以下论文：\n\n```bibtex\n@article{tiedemann2023democratizing,\n  title={Democratizing neural machine translation with {OPUS-MT}},\n  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\\\n, Alessandro and Scherrer, Yves and Vazquez, Raul and Virpioja, Sami},\n  journal={Language Resources and Evaluation},\n  number={58},\n  pages={713--755},\n  year={2023},\n  publisher={Springer Nature},\n  issn={1574-0218},\n  doi={10.1007\u002Fs10579-023-09704-w}\n}\n\n@InProceedings{TiedemannThottingal:EAMT2020,\n  author = {J{\\\"o}rg Tiedemann and Santhosh Thottingal},\n  title = {{OPUS-MT} — {B}uilding open translation services for the {W}orld},\n  booktitle = {Proceedings of the 22nd Annual Conferenec of the European Association for Machine Translation (EAMT)},\n  year = {2020},\n  address = {Lisbon, Portugal}\n }\n ```\n\n## Tornado 基础 Web 应用的安装\n\n从 GitHub 下载最新版本：\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT.git\n```\n\n### 选项 1：手动部署\n\n安装 Marian MT。请参考 https:\u002F\u002Fmarian-nmt.github.io\u002Fdocs\u002F 中的文档（别忘了添加编译服务器二进制文件的 CMake 选项 `-DCOMPILE_SERVER=ON`）。\n安装完成后，应能在系统路径中找到 `marian-server`。如果找不到，请将其放置在 `\u002Fusr\u002Flocal\u002Fbin` 目录下。\n\n安装依赖项。建议使用虚拟环境。\n\n```bash\npip install -r requirements.txt\n```\n\n从 https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT-train\u002Ftree\u002Fmaster\u002Fmodels 下载翻译模型，并将其放入 `models` 目录。\n\n然后编辑 `services.json` 文件，使其指向这些模型。\n\n最后启动 Web 服务器：\n\n```bash\npython server.py\n```\n\n默认情况下，它会使用 8888 端口。打开浏览器访问 localhost:8888 即可进入 Web 界面。`services.json` 中配置的语言对将可供使用。\n\n### 选项 2：使用 Docker\n\n```bash\ndocker-compose up\n```\n\n或者\n\n```bash\ndocker build . -t opus-mt\ndocker run -p 8888:8888 opus-mt:latest\n```\n\n然后打开浏览器访问 localhost:8888。\n\n#### 选项 2.1：使用 CUDA GPU 的 Docker 镜像\n\n```bash\ndocker build -f Dockerfile.gpu . -t opus-mt-gpu\nnvidia-docker run -p 8888:8888 opus-mt-gpu:latest\n```\n\n然后打开浏览器访问 localhost:8888。\n\n### 配置\n\n`server.py` 程序接受 JSON 格式的配置文件。默认情况下，它会尝试使用当前目录下的 `services.json` 文件。但您也可以通过 `-c` 参数指定自定义配置文件。\n\n示例配置文件如下：\n\n```json\n{\n    \"en\": {\n        \"es\": {\n            \"configuration\": \".\u002Fmodels\u002Fen-es\u002Fdecoder.yml\",\n            \"host\": \"localhost\",\n            \"port\": \"10001\"\n        },\n        \"fi\": {\n            \"configuration\": \".\u002Fmodels\u002Fen-fi\u002Fdecoder.yml\",\n            \"host\": \"localhost\",\n            \"port\": \"10002\"\n        },\n    }\n}\n\n```\n\n此示例配置可以为 en→es 和 en→fi 语言对提供机器翻译服务。\n\n* `configuration` 指向一个 YAML 文件，其中包含 `marian-server` 可以使用的解码器配置。如果未提供此值，则 OPUS-MT 将假定服务已在远程主机上运行，并按其他选项中的设置进行调用。如果提供了该值，则会使用 `marian-server` 创建一个新的子进程。\n* `host`：服务器运行的主机地址。\n* `port`：`marian-server` 将监听的端口。\n\n\n\n\n## 在 Ubuntu 上部署 WebSocket 服务\n\n还有一种使用 WebSocket 和 Linux 服务来搭建翻译服务的方式。详细信息请参阅 \n[doc\u002FWebSocketServer.md](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT\u002Ftree\u002Fmaster\u002Fdoc\u002FWebSocketServer.md)。\n\n\n## 公开的 MT 模型\n\n我们将在 https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT-train\u002Ftree\u002Fmaster\u002Fmodels 中存储公开模型（CC-BY 4.0 许可证）。这些模型都应能与 OPUS-MT 服务兼容，您可以通过指定语言对来安装它们。安装脚本会自动选取该目录下的最新模型。如需进一步自定义，您需要调整安装流程（例如在 Makefile 中或其他地方）。\n\n此外，还有一些开发版本的模型，通常更具实验性且质量较低。不过它们支持更多的语言对，您可以从 https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT-train\u002Ftree\u002Fmaster\u002Fwork-spm\u002Fmodels 下载这些模型。\n\n\n\n## 训练 MT 模型\n\n在 [Opus-MT-train](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT-train) 仓库中，有一个用于根据 OPUS 数据训练新模型的 Makefile，但该 Makefile 是为 CSC 和赫尔辛基大学的特定工作环境高度定制的。未来有望变得更加通用，以便能够在不同的环境和部署中运行。\n\n## 已知问题\n\n* 大多数自动评估是在 Tatoeba 数据集中的简单短句上进行的；当使用其他更贴近实际场景的数据集运行这些模型时，评估分数会显得过于乐观。\n* 一些（较旧的）测试结果并不可靠，因为它们使用了软件本地化数据（即 GNOME 系统消息），而这些数据与训练数据中包含的其他本地化数据（如 Ubuntu 系统消息）存在大量重叠。\n* 当前的所有模型均未经过滤、数据增强（如反向翻译）、领域适应等优化处理；除了基于自动选择的测试集进行的自动评估外，缺乏质量控制。对于某些语对，至少还有来自官方 WMT 测试集的基准分数。\n* 大多数模型在 1 或 4 张 GPU 上最多训练 72 小时；并非所有模型都在此时间限制内收敛。\n* 验证和早停机制基于自动选择的验证数据，通常来自 Tatoeba；然而，这些验证数据对于许多应用场景并不具有代表性。\n\n\n## 待办事项与愿望清单\n\n* 支持更多语言及语对\n* 构建更好、更具多语言能力的模型\n* 优化翻译性能\n* 添加反向翻译数据\n* 构建特定领域的模型\n* 提供支持 GPU 的容器\n* 实现 Docker 化的微调\n* 开发文档级模型\n* 进行负载均衡及其他服务优化\n* 建立公开的机器翻译服务网络\n* 构建反馈循环并实现个性化服务\n\n\n## 链接及相关工作\n\n* [OPUS-translator](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOPUS-translator)：一个简单的在线翻译接口实现。\n* [OPUS-CAT](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOPUS-CAT)：Trados Studio 的 NMT 插件实现，可运行 OPUS-MT 模型。\n* [fiskmö](https:\u002F\u002Fblogs.helsinki.fi\u002Ffiskmo-project\u002F)：一项致力于开发芬兰语与瑞典语互译资源与工具的项目。\n* [Tatoeba MT 挑战赛](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FTatoeba-Challenge\u002F) 及其[大量预训练的 NMT 模型](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FTatoeba-Challenge\u002Fblob\u002Fmaster\u002Fresults\u002Ftatoeba-results-all.md)。\n* [NMT 地图](https:\u002F\u002Fopus.nlpl.eu\u002FNMT-map\u002FTatoeba\u002Fall\u002Fsrc2trg\u002F)：以地图形式展示 Tatoeba NMT 模型的状态。\n* [OPUS-MT 排行榜](https:\u002F\u002Fopus.nlpl.eu\u002Fleaderboard\u002F)。\n* [预训练的多语言模型](https:\u002F\u002Fgithub.com\u002FbzhangGo\u002Fzero\u002Ftree\u002Fmaster\u002Fdocs\u002Fmultilingual_laln_lalt#pretrained-multilingual-models-many-to-many)，基于 [OPUS-100](https:\u002F\u002Fgithub.com\u002FEdinburghNLP\u002Fopus-100-corpus) 使用 [zero](https:\u002F\u002Fgithub.com\u002FbzhangGo\u002Fzero) 工具链训练而成。\n\n\n## 致谢\n\n本研究得到了以下项目的资助：[欧洲语言网格](https:\u002F\u002Fwww.european-language-grid.eu\u002F) 的[试点项目 2866](https:\u002F\u002Flive.european-language-grid.eu\u002Fcatalogue\u002F#\u002Fresource\u002Fprojects\u002F2866)；由欧洲研究理事会 (ERC) 在欧盟“地平线 2020”研究与创新计划下资助的[FoTran 项目](https:\u002F\u002Fwww.helsinki.fi\u002Fen\u002Fresearchgroups\u002Fnatural-language-understanding-with-cross-lingual-grounding)，资助协议编号为 771113；由欧盟“地平线 2020”研究与创新计划资助的[MeMAD 项目](https:\u002F\u002Fmemad.eu\u002F)，资助协议编号为 780069；以及由欧盟“地平线欧洲”研究与创新计划资助的[HPLT 项目](https:\u002F\u002Fhplt-project.org)，资助协议编号为 101070350。同时，我们衷心感谢芬兰[CSC — 科学信息技术中心](https:\u002F\u002Fwww.csc.fi\u002F)提供的慷慨计算资源与 IT 基础设施。","# Opus-MT 快速上手指南\n\nOpus-MT 是一个基于 Marian-NMT 的开源神经机器翻译工具，提供预训练模型和 Web 服务接口，支持多种语言对的互译。\n\n## 环境准备\n\n### 系统要求\n- **操作系统**: Linux (推荐 Ubuntu) 或 macOS\n- **硬件**: \n  - CPU: 支持 AVX2 指令集\n  - GPU (可选): NVIDIA GPU (需安装 CUDA)，用于加速推理\n- **内存**: 建议 8GB 以上，具体取决于模型大小\n\n### 前置依赖\n- **Python**: 3.6+\n- **Marian-NMT**: 核心翻译引擎\n- **Docker** (可选): 用于容器化部署\n- **nvidia-docker** (可选): 如需使用 GPU 加速\n\n> **注意**: 国内用户若遇到 GitHub 克隆或 pip 下载缓慢，可配置国内镜像源（如清华源、阿里源）或使用代理加速。\n\n## 安装步骤\n\n### 方式一：手动安装（推荐开发者）\n\n1. **克隆项目代码**\n   ```bash\n   git clone https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT.git\n   cd Opus-MT\n   ```\n\n2. **安装 Marian-NMT**\n   请参考 [Marian 官方文档](https:\u002F\u002Fmarian-nmt.github.io\u002Fdocs\u002F) 进行编译安装。\n   **关键步骤**：编译时必须开启服务器支持：\n   ```bash\n   cmake .. -DCOMPILE_SERVER=ON\n   make\n   sudo make install\n   ```\n   确保 `marian-server` 命令可在终端直接运行（或将其路径加入 `\u002Fusr\u002Flocal\u002Fbin`）。\n\n3. **安装 Python 依赖**\n   建议使用虚拟环境：\n   ```bash\n   python -m venv venv\n   source venv\u002Fbin\u002Factivate  # Windows 使用 venv\\Scripts\\activate\n   pip install -r requirements.txt\n   # 国内加速示例：pip install -r requirements.txt -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n   ```\n\n4. **下载并配置模型**\n   - 从 [模型仓库](https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT-train\u002Ftree\u002Fmaster\u002Fmodels) 下载所需语言对的模型文件（例如 `en-es`）。\n   - 将模型文件夹放入项目根目录下的 `models` 文件夹中。\n   - 编辑 `services.json` 文件，指向你的模型配置。示例如下：\n     ```json\n     {\n         \"en\": {\n             \"es\": {\n                 \"configuration\": \".\u002Fmodels\u002Fen-es\u002Fdecoder.yml\",\n                 \"host\": \"localhost\",\n                 \"port\": \"10001\"\n             }\n         }\n     }\n     ```\n\n5. **启动服务**\n   ```bash\n   python server.py\n   ```\n   默认监听端口为 `8888`。\n\n### 方式二：Docker 部署（最简便）\n\n1. **普通 CPU 版本**\n   ```bash\n   docker-compose up\n   # 或者手动构建运行\n   docker build . -t opus-mt\n   docker run -p 8888:8888 opus-mt:latest\n   ```\n\n2. **GPU 加速版本**\n   ```bash\n   docker build -f Dockerfile.gpu . -t opus-mt-gpu\n   nvidia-docker run -p 8888:8888 opus-mt-gpu:latest\n   ```\n\n## 基本使用\n\n安装并启动服务后，您可以通过以下方式访问：\n\n### 1. Web 界面访问\n打开浏览器访问：\n```text\nhttp:\u002F\u002Flocalhost:8888\n```\n在网页中选择配置好的源语言和目标语言，输入文本即可实时翻译。\n\n### 2. API 调用\n服务启动后会自动提供 API 接口。您可以向 `http:\u002F\u002Flocalhost:8888\u002Ftranslate` 发送 POST 请求进行集成开发。\n\n**请求示例 (curl)**:\n```bash\ncurl -X POST http:\u002F\u002Flocalhost:8888\u002Ftranslate \\\n     -H \"Content-Type: application\u002Fjson\" \\\n     -d '{\"q\": \"Hello world\", \"source\": \"en\", \"target\": \"es\"}'\n```\n\n**响应示例**:\n```json\n{\n  \"translatedText\": \"Hola mundo\",\n  \"detectedLanguage\": { \"language\": \"en\", \"score\": 1.0 }\n}\n```\n\n### 3. 自定义配置\n若需修改端口或加载特定配置文件，可使用 `-c` 参数：\n```bash\npython server.py -c \u002Fpath\u002Fto\u002Fcustom_services.json\n```","一家专注于跨境电商的初创团队需要快速将数千条商品描述从英语本地化到西班牙语、法语和德语，以拓展欧洲市场。\n\n### 没有 Opus-MT 时\n- **高昂的成本负担**：调用商业翻译 API 处理海量数据导致每月支出激增，严重压缩了初创团队的利润空间。\n- **敏感数据泄露风险**：商品策略和用户评论等私有数据必须上传至第三方服务器，存在合规隐患和数据失控可能。\n- **冷门语种支持缺失**：对于北欧或东欧等小语种市场，主流商业服务往往缺乏高质量模型，只能依靠低效的人工翻译。\n- **部署与集成困难**：缺乏开源且易于部署的本地化方案，难以将翻译功能无缝嵌入现有的内部内容管理系统中。\n\n### 使用 Opus-MT 后\n- **零成本无限调用**：团队利用基于 CC-BY 许可的预训练模型搭建本地服务，彻底消除了按量计费的 API 成本。\n- **数据完全自主可控**：通过 Docker 一键部署本地 Web 服务，所有翻译任务均在内网完成，确保了核心商业数据的绝对安全。\n- **覆盖全球长尾语种**：借助 OPUS 海量语料训练的模型，轻松支持包括小语种在内的多种语言对，快速响应新市场拓展需求。\n- **灵活的系统集成**：利用其提供的 Tornado Web 应用或 WebSocket 接口，开发人员能迅速将翻译能力集成到自动化发布流程中。\n\nOpus-MT 让中小企业也能以极低的门槛拥有私有化、高精度且覆盖全球语种的神经机器翻译能力。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FHelsinki-NLP_Opus-MT_538110b6.png","Helsinki-NLP","Language Technology at the University of Helsinki","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002FHelsinki-NLP_59e67231.png","Projects and resources developed in the Language Technology Research Group at the University of Helsinki.",null,"HelsinkiNLP","https:\u002F\u002Fblogs.helsinki.fi\u002Flanguage-technology\u002F","https:\u002F\u002Fgithub.com\u002FHelsinki-NLP",[82,86,90,94,98,101,105,108],{"name":83,"color":84,"percentage":85},"Python","#3572A5",53.9,{"name":87,"color":88,"percentage":89},"Makefile","#427819",35.2,{"name":91,"color":92,"percentage":93},"Shell","#89e051",5.7,{"name":95,"color":96,"percentage":97},"Dockerfile","#384d54",1.4,{"name":99,"color":100,"percentage":97},"Perl","#0298c3",{"name":102,"color":103,"percentage":104},"JavaScript","#f1e05a",1,{"name":106,"color":107,"percentage":104},"HTML","#e34c26",{"name":109,"color":110,"percentage":111},"CSS","#663399",0.4,801,86,"2026-04-14T03:44:34","MIT","Linux, macOS, Windows","非必需。支持 NVIDIA GPU 加速（需使用 Dockerfile.gpu 构建镜像并配合 nvidia-docker），未指定具体型号、显存大小或 CUDA 版本要求。","未说明",{"notes":120,"python":121,"dependencies":122},"核心引擎为 Marian-NMT，需单独编译安装并确保开启 `-DCOMPILE_SERVER=ON` 选项，或将 marian-server 置于系统路径中。提供基于 Tornado 的 Web 应用和 WebSocket 服务两种部署方式。推荐使用 Docker 部署以简化环境配置。模型文件需单独下载并配置 services.json。训练脚本目前仅适用于赫尔辛基大学和 CSC 的特定计算环境，不通用。","未说明 (需支持 pip 及 Tornado)",[123,124,125,126],"Marian-NMT (含 marian-server 二进制文件)","Tornado","SentencePiece","eflomal (用于训练对齐)",[15,35,14],[129,130,131,132,133,134,135,136],"natural-language-processing","machine-translation","neural-machine-translation","language-technology","machine-learning","translation-service","translation-interface","language-translation-service","2026-03-27T02:49:30.150509","2026-04-16T01:44:50.867108",[140,145,150,155,160,165],{"id":141,"question_zh":142,"answer_zh":143,"source_url":144},34649,"Docker 构建因 Debian 更新失败（缺少 libprotobuf17 或 get_io_service 错误）如何解决？","由于 Marian 尚未修复对 Debian Stable (Bullseye) 的支持，目前的解决方案是将 Dockerfile 中的基础镜像固定为 Debian 10 (Buster)。请在 Dockerfile 中使用 `FROM debian:buster as builder`。不要尝试升级到更新的 libprotobuf 版本，这会导致兼容性问题。","https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT\u002Fissues\u002F44",{"id":146,"question_zh":147,"answer_zh":148,"source_url":149},34650,"运行 Docker 容器时出现 FileNotFoundError: source.bpe 错误怎么办？","该错误通常是因为下载的预训练模型文件不完整或版本过旧。请重新下载最新的预训练模型包，确保其中包含 `.bpe` 文件（而不仅仅是 `.npz` 文件）。如果问题仍然存在，可能是模型仓库暂时性问题，建议稍后重试或检查模型目录结构是否正确。","https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT\u002Fissues\u002F14",{"id":151,"question_zh":152,"answer_zh":153,"source_url":154},34651,"哪里可以下载中文到英文（Chinese to English）的预训练模型？","您可以从 Tatoeba-Challenge 仓库获取中文到英文的模型。具体链接为：https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FTatoeba-Challenge\u002Ftree\u002Fmaster\u002Fmodels\u002Fzho-eng。该目录包含了训练好的模型文件及相关资源。","https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT\u002Fissues\u002F32",{"id":156,"question_zh":157,"answer_zh":158,"source_url":159},34652,"如何获取波斯语（Persian\u002FFarsi）相关的预训练模型？","部分波斯语模型对（如 fa-fi）可能在矩阵视图中链接失效。维护者会根据用户需求优先级持续训练和上传新模型。如果您急需特定语言对（如土耳其语\u002F波斯语 到 英语\u002F俄语），可以在 Issue 中留言请求，维护者会酌情优先处理。同时建议定期检查模型列表更新。","https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT\u002Fissues\u002F33",{"id":161,"question_zh":162,"answer_zh":163,"source_url":164},34653,"马拉雅拉姆语（Malayalam）模型存在字符空格处理错误（Virama 字符周围多余空格）如何修复？","该分词问题在使用 SentencePiece 分段的新版开发模型中已得到解决。请下载并使用基于 SentencePiece 训练的 en-ml 模型（位于 train\u002Fwork-spm\u002Fmodels 目录下），或者使用已更新到实验系统 http:\u002F\u002Fopusmt.wmflabs.org\u002F 的最新模型包，避免使用旧的基于 BPE 的模型。","https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT\u002Fissues\u002F4",{"id":166,"question_zh":167,"answer_zh":168,"source_url":169},34654,"Opus-MT 模型是否支持 fill-mask 任务或用于低资源语言的单语预训练？","不支持。Opus-MT 模型是专门针对神经机器翻译（NMT）任务训练的，架构和用途与 BERT 等支持 fill-mask 的模型不同。无法直接使用 Opus-MT 模型进行 fill-mask 预训练，也不建议将其用于此类非翻译任务。","https:\u002F\u002Fgithub.com\u002FHelsinki-NLP\u002FOpus-MT\u002Fissues\u002F90",[]]