ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

Argos Translate:免费离线神经机器翻译完整指南

Argos Translate:免费离线神经机器翻译完整指南 Argos Translate免费离线神经机器翻译完整指南【免费下载链接】argos-translateOpen-source offline translation library written in Python项目地址: https://gitcode.com/GitHub_Trending/ar/argos-translate上个月在地铁上看客户合同在线翻译 API 在隧道里毫无响应而条款中的敏感内容又不适合粘贴给任何第三方网页。这个需求正好由 Python 开源库 Argos Translate 离线翻译解决它基于 OpenNMT 的 CTranslate2 推理引擎构建全部推理在本地机器上执行文本从头到尾不出本机。Argos Translate 核心能力本地神经机器翻译工具能做什么本地执行全部模型推理零网络依赖用中间语言中转没有直连模型的语言对按句子切分长文本按段落缓存翻译结果用 argospm 按需安装语言包单包独立管理一个环境变量切换 CPU 与 CUDA 推理设备底层推理由 CTranslate2 完成文本分词交给 SentencePiece句子边界由 MiniSBD、spaCy 或 Stanza 切分语言对覆盖英语、中文、法语、西班牙语、德语、阿拉伯语等 30 多种语言。最有辨识度的细节是段落级缓存同一篇长文档反复翻译时已处理过的段落直接命中缓存不会重复跑模型。安装好语言包后Argos Translate 离线翻译在运行时不需要任何网络连接。Argos Translate 离线翻译在 macOS 上的主界面左侧为软件说明右侧窗口列出可安装的语言包Argos Translate 安装上手离线翻译工具安装三步完成最快路径# 安装核心库再装一个英语→中文语言包约百兆级 pip install argostranslate argospm install translate-en_zh argos-translate --from-lang en --to-lang zh Hello world三条命令跑通后终端里会直接输出翻译结果整个流程只有下载语言包这一步需要网络。Linux 与 macOS 可直接使用上述命令Windows 上若提示找不到命令说明 Python 的 Scripts 目录不在 PATH 中将其加入系统环境变量即可语言包默认存放在用户主目录下的.local\share\argos-translate。源码构建git clone https://gitcode.com/GitHub_Trending/ar/argos-translate.git cd argos-translate pip install -e .需要图形界面的话执行pip install argostranslategui后运行argos-translate-gui即可启动界面上可直接勾选语言对并开始翻译。无需联网的翻译库如何工作中转链路与 CTranslate2 推理机制一间接翻译链路。问题在于直接语言对模型只有 30 多个西语到法语这种组合没有现成模型。Argos Translate 的解法是CompositeTranslation当直连路径缺失时自动串起两跳推理第一跳产生的每个假设都会送入第二跳模型再评分按两跳分数之和排序后取最优实现见翻译核心模块。效果是只要装了 es→en 和 en→fr 两个包西语到法语的翻译立即可用语言对组合呈平方级扩张。这段调用在做什么直接按语言代码取翻译器拿到的是自动拼接的中转对象。from argostranslate.translate import get_translation_from_codes # 未安装 es→fr 直连包时返回经由英语的中转翻译对象 t get_translation_from_codes(es, fr) print(t.translate(Hola, mundo))机制二推理设备与性能参数。问题在于 CPU、GPU 机器和不同的线程环境下默认参数未必最优。配置模块 的读取顺序是环境变量优先于settings.json而 CTranslate2 的 Translator 采用惰性加载——第一次调用翻译时才真正读入模型并带上device、inter_threads、intra_threads、batch_size默认 32、beam_size默认 4等参数。效果是有 NVIDIA 显卡的机器设一个环境变量即可切到 CUDA批处理与束宽也都能单独调。下面这段在做什么导出推理设备与环境变量再走一遍 CLI 验证生效。# 启用 CUDA 推理合法取值 cpu / cuda export ARGOS_DEVICE_TYPEcuda export ARGOS_BEAM_SIZE8 export ARGOS_INTER_THREADS4 argos-translate -f en -t es Hello worldWindows 平台的翻译界面选择语言对后左右双栏即时对照输出实战场景与常见问题批量翻译文档与配置排查一个典型场景是把一个英文文档目录批量翻成中文。下面这段循环读取docs下的所有 Markdown 文件逐篇调用库函数翻译后写入docs_zh文件名保留原名并追加.zh后缀。模型只在首次translate调用时加载进内存循环内不会重复加载段落缓存还会让目录中内容重复度高的文件越跑越快。from pathlib import Path import argostranslate.translate # 前提已用 argospm 安装 translate-en_zh 语言包 src_dir, dst_dir Path(docs), Path(docs_zh) dst_dir.mkdir(exist_okTrue) for f in src_dir.glob(*.md): text f.read_text(encodingutf-8) zh argostranslate.translate.translate(text, en, zh) (dst_dir / (f.stem .zh.md)).write_text(zh, encodingutf-8) print(f.name, -, f.stem .zh.md)跑完这个目录后Argos Translate 离线翻译已经覆盖了文档本地化的主要路径。下面是实践中最常碰到的几类问题argospm命令找不到Python 的 bin/Scripts 目录不在 PATH → Windows 加入%LOCALAPPDATA%\Programs\Python\PythonXX\ScriptsLinux/macOS 确认~/.local/bin在 PATH 中。翻译某语言对报 not installed该对没有直连模型包 →argospm search确认名称后安装或装两个经英语的包由中转链路自动接管。长文本推理偏慢默认批与线程参数偏保守 → 调大ARGOS_BATCH_SIZE与ARGOS_INTER_THREADS有 GPU 时切换ARGOS_DEVICE_TYPEcuda。语言包下载失败包索引托管在国外源弱网环境常超时 → 手动下载.argosmodel文件后用argospm install 本地路径本地安装。Argos Translate 生态与扩展离线翻译能力总结围绕这个库已经长出了一条不小的生态链其中两个直接相关的衍生项目值得了解LibreTranslate在 Argos Translate 之上封装出 REST 接口与 Web 界面适合把本地翻译能力部署成团队共用的服务端点。translate-html基于 BeautifulSoup 解析并翻译 HTML 文档补上核心库只处理纯文本的空白。LibreTranslate 网页端基于 Argos Translate 离线翻译库提供文本与文件翻译服务回到开头那趟地铁合同条款在本地机器上逐段翻完没有一个字符发往远程服务器而这台机器下一次断网时同样的事还能再发生一次。【免费下载链接】argos-translateOpen-source offline translation library written in Python项目地址: https://gitcode.com/GitHub_Trending/ar/argos-translate创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表