LibreTranslate 自建部署完整指南:一条命令跑起私有机器翻译 API
2026/9/11 1:38:21 网站建设 项目流程

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 是一个基于开源 Argos Translate 引擎、可自建部署的机器翻译 API,支持离线运行与文件翻译。本文给出一条可照做的部署主线:从安装到验证,再到生产加固,全程只用标准命令行。

📌 项目速览

LibreTranslate 面向开发者与中小团队:它把机器翻译做成本地服务,你只调用自己的http://localhost:5000,文本不出服务器。核心能力一览:

能力说明
离线运行模型下载一次后即可断网使用
数十种语言中、英、法、德、日等语言互译,/languages可查
文件翻译/translate_file接口支持文档格式翻译
限流与鉴权请求数限制、API 密钥、Prometheus 指标

✅ 部署前准备

  • 服务器 2GB 内存起步(默认线程数 4),磁盘预留 1GB 存放语言模型
  • Docker 与 Docker Compose;首次启动需联网下载模型
  • 确认 5000 端口未被占用(默认端口)
  • 翻译质量依赖 Argos Translate 模型,CPU 即可运行

🐳 一条主线装起来

主推 Docker Compose。项目根目录自带 compose 文件(见 docker-compose.yml 与 docker/Dockerfile):

git clone https://gitcode.com/GitHub_Trending/li/LibreTranslate cd LibreTranslate

克隆项目源码到本机。

docker compose up -d

后台启动官方镜像,容器名libretranslate,映射 5000 端口。

首次启动要下载语言模型,耗时几分钟,日志出现Running on http://0.0.0.0:5000且健康检查通过即就绪。备选方式:pip install libretranslate后运行libretranslate(适合体验);pip install -e .装源码(适合改代码)。

🔍 启动并验证

浏览器访问http://localhost:5000/应出现 Web 界面;交互文档在/docs。再用两条命令确认接口:

curl http://localhost:5000/health

返回{"status": "ok"}即服务可用。

curl -X POST http://localhost:5000/translate \ -H 'Content-Type: application/json' \ -d '{"q": "Hello world", "source": "en", "target": "zh"}'

返回translatedText字段即最小调用成功。

🔒 生产环境加固清单

配置项作用一条示例命令
API 鉴权按密钥区分用户并单独限流docker exec libretranslate ltmanage keys add 60 --char-limit 200
TLS 加密对外启用 HTTPS反向代理(Nginx/Caddy)终止证书,或libretranslate --ssl
数据持久化密钥库不随容器重建丢失挂载卷:-v lt_db:/app/db
请求限流防滥用,按分钟限流--req-limit 60 --req-flood-threshold 10
线程/资源提升并发吞吐--threads 8(容器内对应 gunicorn workers)

开启鉴权时设置环境变量LT_API_KEYS=true,随后可用ltmanage keys add 60 --char-limit 200生成密钥,客户端在请求体或查询参数里传api_key。只翻译少数语言可加--load-only zh,en缩短启动时间;--metrics暴露/metrics供 Prometheus 抓取。

🛠 排障速查

  • 现象:/health拒绝连接 → 原因:模型还在下载、进程未就绪 → 解法:docker logs -f libretranslate等待Running on http://0.0.0.0:5000出现
  • 现象:首条翻译请求很慢 → 原因:语言模型首次加载进内存 → 解法:属正常现象,后续请求恢复毫秒级
  • 现象:启动报端口占用 → 原因:5000 已被其他服务使用 → 解法:compose 里改为8080:5000
  • 现象:本机正常、别的机器访问不到 → 原因:默认绑定回环地址 → 解法:外部端口映射,或设LT_HOST=0.0.0.0
  • 现象:返回 403 Invalid API key → 原因:密钥不在密钥库中 → 解法:docker exec libretranslate ltmanage keys add 60重新生成并更新客户端
  • 现象:返回 429 → 原因:超过每分钟请求上限 → 解法:调大--req-limit或为该密钥单独放宽额度

🚀 下一步

LibreTranslate 给你的是一个私有、离线可用、无调用计费的翻译端点。下一步:对照 libretranslate/main.py 里的参数清单逐项核对你的生产配置,有功能需求可参与官方社区讨论。

【免费下载链接】LibreTranslateFree and Open Source Machine Translation API. Self-hosted, offline capable and easy to setup.项目地址: https://gitcode.com/GitHub_Trending/li/LibreTranslate

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询