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

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——一个免费、开源、可自托管的机器翻译服务装在自己的机器上就能提供翻译接口。一天后这个站有了自己说了算的翻译API翻译数据全程没出过内网。按下面的顺序走一遍你也能把这套服务搭起来。装之前先判断三条标准决定要不要自建翻译API先给结论下面三条命中任意一条就值得自建一条都不沾商业API的免费额度够你用了。数据不能出网。涉及客户资料、内部文档时很多公司对翻译数据隐私有明确要求。自建与商业服务最本质的差别就在这翻译请求全程在你自己的机器上完成文本不需要发给任何第三方服务器。量大、长期跑。商业翻译服务按调用量或字符数计费跑得越久账越大一套免费机器翻译跑起来之后边际成本只有电费调用次数你自己说了算也没有每分钟请求数的限制。环境联不上外网。内网、机房、离线设备上商业API直接不可用只有本地部署的开源翻译服务能顶上。一句实话它的底层是 Argos Translate 开源模型翻译质量略逊于大厂的商业引擎。对翻译质量要求高的场景先用 Web 界面试译几段样文再决定。十分钟完成翻译API本地部署Docker 一条命令前提机器上装了 Docker内存至少 2GB模型加载要吃内存。docker run -d -p 5000:5000 --name libretranslate libretranslate/libretranslate:latest首次启动会在后台下载语言模型几十个语言对下来需要几分钟所以第一次打开页面慢属正常。装完后浏览器打开http://localhost:5000你得到的不只是API还有一个完整的 Web 翻译界面——页面底部会直接展示当前请求的参数可以照着拼 curl。需要改代码或参与开发的话克隆源码仓库git clone https://gitcode.com/GitHub_Trending/li/LibreTranslatepip install -e .装好依赖后python main.py启动的效果和 docker 一样。仓库里自带 docker-compose.yml含健康检查配置生产部署时可以直接参考。敲通第一条请求/translate、/detect 与 /languages先用GET /health确认服务活着返回{status:ok}就可以开工。发第一条翻译请求curl -X POST http://localhost:5000/translate -d qHello world -d sourceauto -d targetzhsource传auto时服务端会先做语言检测所以响应里除了translatedText还会有带置信度的detectedLanguage字段。另外两个高频端点GET /languages返回已加载语言及每种语言能翻译到的目标列表targets。翻译报错时先查它POST /detect只检测不翻译传q参数返回语言代码和置信度。/translate同时支持 form 和 JSON 两种请求体q传数组就是批量翻译返回对应数组。完整参数不用背服务自带/docs接口文档页浏览器直接打开就能看。把翻译API接进你的代码import requests r requests.post( http://localhost:5000/translate, data{q: The weather is nice, source: auto, target: zh}, ) print(r.json()[translatedText])要翻译文件txt、docx 等则改用POST /translate_file上传文件后响应返回一个下载地址translatedFileUrl取回的就是翻译好的文件。开启 API 密钥的正确姿势只你自己用裸奔没问题多人或多服务共用时建议打开密钥认证这样每个调用方可以单独限流。两步启动时加开关docker 加-e LT_API_KEYStrue源码启动加--api-keys先带--api-keys启动一次让数据库建好然后签发密钥python manage.py keys add 100 --key auto第一个数字是该密钥每分钟可请求的次数--key auto自动生成也可以--key 你自己的串自定义。调用时在请求里带上api_key参数即可。密钥库默认落在db/api_keys.dbdocker 部署时把该目录挂成卷避免重建容器丢密钥。省内存只加载你用的语言默认行为会安装全部语言对内存占用高、首启下载久。只用中英的话只装这一对python main.py --load-only en,zh --host 0.0.0.0 --port 5000docker 部署则加环境变量LT_LOAD_ONLYen,zh效果相同。语言越少启动越快内存越省——先按需裁剪确认质量后再扩展。三个最常见的坑现象、原因、解法现象启动后页面长时间打不开或容器反复重启。原因首次启动正在下载并安装语言模型属正常现象。解决耐心等或提前用 scripts/install_models.py 脚本预装docker 记得挂卷持久化模型目录。现象局域网里其他机器访问不了。原因默认绑定 127.0.0.1只监听本机。解决docker 用-p 5000:5000映射端口源码启动加--host 0.0.0.0。现象翻译返回 is not supported 之类的 400。原因你传的语言方向没有直接模型并非所有语言两两之间都有。解决先调GET /languages看targets字段挑现成的语言对。GPU 加速、Prometheus 监控--metrics、翻译结果缓存--translation-cache、多实例负载均衡这些深水区项目都留了对应参数需要时查官方文档即可。眼下你要做的就一件事跑通上面那条 curl 请求然后打开浏览器访问/docs页面对照着把每个参数试一遍——到这一步这套自建翻译API 就彻底归你了。【免费下载链接】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 小时内出具建站方案 · 河南本地可上门