拓冰建站拓冰建站
首页 / 资讯中心 / 正文

LibreTranslate 离线部署完整指南:在断网机器上跑通本地翻译 API

LibreTranslate 离线部署完整指南在断网机器上跑通本地翻译 API【免费下载链接】LibreTranslateFree and Open Source Machine Translation API. Self-hosted, offline capable and easy to setup.项目地址: https://gitcode.com/GitHub_Trending/li/LibreTranslate先给结论LibreTranslate 可以完全离线部署运行时零外网请求磁盘占用随语言对数量线性增长只装一对语言就是最小占用。本文写给需要在一台没有网络的机器上交付翻译服务的开发与运维人员。LibreTranslate 是什么模型装好后就不再碰外网的自托管翻译LibreTranslate 是开源自托管翻译引擎把 Argos Translate 的离线语言模型装进本地对外提供 REST API 和 Web 页面。核心原理一句话——模型文件落到本机磁盘后翻译推理全程在本机完成一条请求都不发往外网。Web 层是 Flask锁定 2.2.5翻译引擎是 argos-translate-lt锁定 1.12.1要求 Python 3.8见 pyproject.toml。部署形态对比先决定走哪条路再动手形态核心操作选型建议本地直跑pip install .后python main.py起步最快开发调试首选容器化docker build --build-arg with_modelstrue --build-arg modelsen,zh -f docker/Dockerfile .模型烧进镜像、运行时零联网生产推荐便携版源码 venv 模型目录整体拷到离线机器目标机连 Python 都难装的场景本地直跑是后两者的基础便携版是它的打包形态容器化是它的镜像形态。docker/Dockerfile 用with_models、models两个构建参数在 build 期装好模型镜像本身即是离线包不传models则装全量语言模型离线场景务必只传需要的短码。离线部署最短路径环境、模型、启动三步第一步建环境装依赖。这步按 pyproject.toml 拉齐全部运行时依赖git clone https://gitcode.com/GitHub_Trending/li/LibreTranslate cd LibreTranslate python -m venv venv source venv/bin/activate pip install .pip 以Successfully installed收尾即成功。第二步只装需要的语言对。--load_only_lang_codes用 ISO 639-1 短码、逗号分隔zh会被 libretranslate/language.py 自动映射为zh-Hanszt映射zh-Hantpython scripts/install_models.py --load_only_lang_codes en,zh日志出现Loaded support for 2 languages (2 models total)!即成功。模型文件落在用户主目录的~/.local下Docker 镜像里是/home/libretranslate/.local这是唯一需要随机器离线搬运的部分。第三步起服务。默认监听 127.0.0.1 的 5000 端口python main.py --host 127.0.0.1 --port 5000日志出现Running on http://127.0.0.1:5000即成功。启动时程序会先尝试刷新模型索引断网时 libretranslate/init.py 输出Cannot update models (normal if youre offline)属预期行为不是错误。把体积压到最小只装用得到的按语言对裁剪占用与装的对数成正比只装实际用到的对是最有效的瘦身手段全装则体积最大。依赖做成离线包有网机器下载 wheel目标机装本地目录pip freeze requirements.txt pip download -r requirements.txt -d dependencies/ --only-binary:all: pip install --no-index --find-links./dependencies/ -r requirements.txt三个离线开关核对libretranslate/default_values.py 全部走LT_前缀环境变量——UPDATE_MODELS保持默认False不自动更新模型、SHARED_STORAGE保持默认memory://内存计数不用部署 Redis、API_KEYS_REMOTE留空。模型更新联网机执行python scripts/install_models.py --update把~/.local模型目录压缩带走即更新包。部署后自检与高频坑排障验证按三步走健康检查curl http://127.0.0.1:5000/health返回{status: ok}为通过 ✅真实调一次翻译curl -X POST http://127.0.0.1:5000/translate \ -d qHello worldsourceentargetzh返回translatedText与detectedLanguage即接口可用。断开网络重测一遍响应与在线时一致离线闭环成立。⚠️ 高频坑现象 → 原因 → 解法报Model not found或语言不受支持--load-only起服务时或--load_only_lang_codes装模型时的短码与已装模型对不上 → 核对两边短码一致并确认模型目录可读。翻译慢--threads默认 4按 CPU 核数调整生产环境关--debug。启动日志刷Cannot update modelsinit.py的boot()吞掉联网异常离线重启不受影响 → 忽略即可。依赖冲突离线缓存加--no-index坚持用别与在线装包混着来。总结与后续方向本地、容器、便携三条路任选其一模型只装用得到的语言对断网内网机上就有自己的翻译服务。可跟进的两个方向模型量化进一步压缩体积纯前端 WebAssembly 离线部署。【免费下载链接】LibreTranslateFree and Open Source Machine Translation API. Self-hosted, offline capable and easy to setup.项目地址: https://gitcode.com/GitHub_Trending/li/LibreTranslate创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门