ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

自建翻译API只需一条命令:LibreTranslate本地部署实操指南

自建翻译API只需一条命令:LibreTranslate本地部署实操指南 自建翻译API只需一条命令LibreTranslate本地部署实操指南【免费下载链接】LibreTranslateFree and Open Source Machine Translation API. Self-hosted, offline capable and easy to setup.项目地址: https://gitcode.com/GitHub_Trending/li/LibreTranslateLibreTranslate 是一个开源、可完全离线运行的机器翻译 API基于 Argos Translate 引擎部署在你自己的机器上文本不经过任何第三方服务器。适合想把自建翻译API跑在本地、对内网可用、又不想按调用量付费的开发者5 分钟就能拿到可用的翻译接口。它和你平时用的翻译接口有什么不同平时调用的翻译接口文本要先发到对方的云端再返回LibreTranslate 把整个翻译引擎搬到了你自己机器上引擎是开源的 Argos Translate。定位上的差别就三点维度商业翻译APILibreTranslate数据流向文本发到第三方服务器全程在本机可离线费用按字符或调用量计费部署后不再产生调用费用可用性依赖对方服务状态服务在就一直在断外网也不影响它不是用来替代大模型的而是承担批量、稳定、私密的那类翻译任务文档批处理、内网应用兜底翻译、不想出网的合规场景。 5 分钟跑起来最简路径就是 Docker 一条命令docker run -d -p 5000:5000 libretranslate/libretranslate:latest首次启动会下载语言模型可能要等一两分钟。起来之后用下面这条命令验证curl -s http://localhost:5000/languages如果返回一个 JSON 数组里面是各语言的代码和名称说明服务正常。再打开浏览器访问http://localhost:5000能看到自带的翻译 Web 界面可以直接在页面上试翻。三个最常见用法单句翻译/translate接口接受q文本、source源语言、target目标语言三个参数curl -s http://localhost:5000/translate \ -d qGood morning -d sourceen -d targetzh返回 JSON 里的translatedText字段就是译文例如早上好。批量翻译同一个接口把q传一个数组即可一次翻多条能省掉大量往返请求curl -s http://localhost:5000/translate \ -d q[Hello,Goodbye] \ -d sourceen -d targetzh返回的translatedText也是数组顺序与传入文本一一对应。语言检测不知道文本是什么语言时可以先调/detect判断再把结果作为source传给翻译接口curl -s http://localhost:5000/detect -d qHello world返回每个候选语言的置信度取置信度最高的那个语言代码即可这样就不用再传sourceauto。上线前必须做的 3 件事1. 开启 API 密钥。默认任何拿到地址的人都能调用对外暴露前应要求调用方带上密钥。开启后用仓库里的 manage.py 管理python manage.py keys add 100会创建一个每分钟限 100 次的密钥并打印出来删密钥用keys remove key。2. 设置请求限速。每个密钥可以单独设每分钟的请求数上面 add 时的第一个参数就是限速值没带密钥的请求则受全局LT_REQ_LIMIT约束默认 -1 表示不限速公网环境一定要改成具体数字。3. 上 HTTPS。翻译内容往往比想象中敏感别裸跑 HTTP。可以用--ssl参数配合证书直接启用更推荐的做法是在前面挂一层 Nginx 反向代理由 Nginx 终结 TLS。常用的环境变量对应 libretranslate/default_values.py 中的默认值环境变量默认值作用LT_HOST/LT_PORT127.0.0.1/5000监听地址与端口LT_REQ_LIMIT-1全局每分钟请求上限-1 为不限LT_CHAR_LIMIT-1单请求字符上限LT_API_KEYSfalse启用 API 密钥数据库LT_LOAD_ONLY空只加载指定语言对如en,zh,frLT_THREADS4并发处理线程数LT_SSLfalse启用 SSL踩坑快问快答端口 5000 被占了怎么办启动参数换成别的端口即可比如-p 8080:5000容器内端口不用动。第一次翻译特别慢之后变快模型在首次使用时才加载进内存预热完就正常了。可以提前用/translate翻一句把常用模型焐热。内存不够用、加载语言太多用--load-only en,zh,fr只装你需要的语言对启动快、内存占用小得多。离线环境怎么装模型在有网的机器上先跑docker pull并启动一次让模型下载完再把模型目录备份迁移到内网机器挂到容器的/home/libretranslate/.local。支持哪些语言启动后访问/languages接口以接口返回为准比任何文档都准。以上配置项和启动参数在 README.md 里能找到入口更完整的参数说明见仓库内 libretranslate/main.py 的 argparse 定义。LibreTranslate 本身很小一条 Docker 命令起步把密钥、限速、HTTPS 三件事补上就是一个能直接进生产环境的自建翻译服务。【免费下载链接】LibreTranslateFree and Open Source Machine Translation API. Self-hosted, offline capable and easy to setup.项目地址: https://gitcode.com/GitHub_Trending/li/LibreTranslate创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表