在线试用! | API文档 | 社区论坛
, headers: { "Content-Type": "application/json" } }); console.log(await res.json());
响应:
javascript{ "translatedText": "¡Hola!" }
只需几步设置,即可运行自己的API服务器!
确保已安装Python(建议3.8或更高版本),然后执行:
bashpip install libretranslate libretranslate [参数]
然后打开浏览器访问 http://localhost:5000
如果使用Windows,建议通过Docker运行。
在Ubuntu 20.04上,也可使用 [***] 提供的安装脚本。
如果需要修改代码,可从源代码构建并运行API:
bashgit clone [***] cd LibreTranslate pip install -e . libretranslate [参数] # 或 python main.py [参数]
然后打开浏览器访问 http://localhost:5000
直接执行:
bashdocker run -ti --rm -p 5000:5000 libretranslate/libretranslate
然后打开浏览器访问 http://localhost:5000
bashdocker build [--build-arg with_models=true] -t libretranslate .
如果要在完全离线环境中运行Docker镜像,需添加--build-arg with_models=true参数,语言模型将在镜像构建过程中下载。否则,模型将在镜像/容器首次运行时下载。
运行构建的镜像:
bashdocker run -it -p 5000:5000 libretranslate [参数]
或使用docker-compose构建并运行:
bashdocker-compose up -d --build
可修改
docker-compose.yml文件以适应部署需求,或使用额外的docker-compose.prod.yml文件进行部署配置。
| 参数 | 描述 | 默认值 | 环境变量名 |
|---|---|---|---|
| --host | 设置服务器绑定的主机 | 127.0.0.1 | LT_HOST |
| --port | 设置服务器绑定的端口 | 5000 | LT_PORT |
| --char-limit | 设置字符限制 | 无限制 | LT_CHAR_LIMIT |
| --req-limit | 设置每个客户端每分钟的最大请求数 | 无限制 | LT_REQ_LIMIT |
| --batch-limit | 设置批量请求中可翻译的最大文本数 | 无限制 | LT_BATCH_LIMIT |
| --ga-id | 提供ID以在API客户端页面启用Google Analytics | 不跟踪 | LT_GA_ID |
| --debug | 启用调试环境 | False | LT_DEBUG |
| --ssl | 是否启用SSL | False | LT_SSL |
| --frontend-language-source | 设置前端默认源语言 | en | LT_FRONTEND_LANGUAGE_SOURCE |
| --frontend-language-target | 设置前端默认目标语言 | es | LT_FRONTEND_LANGUAGE_TARGET |
| --frontend-timeout | 设置前端翻译超时时间(毫秒) | 500 | LT_FRONTEND_TIMEOUT |
| --api-keys | 启用API密钥数据库以进行每用户速率限制查找 | 不使用API密钥 | LT_API_KEYS |
| --require-api-key-origin | 要求通过API密钥访问API(请求源匹配此域名除外) | 无域名源限制 | LT_REQUIRE_API_KEY_ORIGIN |
| --load-only | 设置可用语言 | argostranslate中的所有语言 | LT_LOAD_ONLY |
注意:每个参数都有对应的环境变量,可用于替代默认值。环境变量会覆盖默认值,但优先级低于命令行参数。在Docker中使用环境变量尤为方便,其名称为命令行参数的大写蛇形形式,前缀为LT。
bashpip install gunicorn gunicorn --bind 0.0.0.0:5000 'wsgi:app'
可通过以下方式直接向Gunicorn传递应用参数:
bashgunicorn --bind 0.0.0.0:5000 'wsgi:app(api_keys=True)'
LibreTranslate支持每用户限制配额,例如可向用户发放API密钥,使他们能享受更高的每分钟请求限制(需同时设置--req-limit)。默认情况下,所有用户基于--req-limit进行速率限制,但向REST端点传递可选的api_key参数可让用户享受更高请求限制。
只需使用--api-keys选项启动LibreTranslate即可启用API密钥。
要创建一个每分钟120次请求限制的新API密钥:
bashltmanage keys add 120
bashltmanage keys remove <api-key>
bashltmanage keys
可通过以下绑定使用LibreTranslate API:
更多语言绑定即将推出!
可使用此discourse翻译插件翻译Discourse主题。安装时只需修改/var/discourse/containers/app.yml:
yaml## 插件配置 ## 详见 [***] hooks: after_code: - exec: cd: $home/plugins cmd: - git clone [***] - git clone [***] ...
然后执行./launcher rebuild app。在Discourse管理面板中,选择“LibreTranslate”作为翻译提供商,并设置相关端点配置。
以下是提供LibreTranslate API的在线资源列表,部分需要API密钥。如需添加新URL,请提交pull request。
| URL | 是否需要API密钥 | 联系方式 | 费用 |
|---|---|---|---|
| libretranslate.com | ✔️ | UAV4GEO | $9/月,80次请求/分钟限制 |
| libretranslate.de | ❌ | - | - |
| translate.mentality.rip | ❌ | - | - |
| translate.astian.org | ❌ | - | - |
| translate.argosopentech.com | ❌ | - | - |
欢迎提交pull request贡献代码!
libretranslate.com的API应仅用于测试、个人使用或低频使用。如要在生产环境中运行应用,请联系我们获取API密钥或讨论其他选项。
可以,以下是将子域名(带HTTPS证书)重定向到本地Docker运行的LibreTranslate的Apache2配置示例:
bashsudo docker run -ti --rm -p 127.0.0.1:5000:5000 libretranslate/libretranslate
如希望同时通过domain.tld:5000和subdomain.domain.tld访问,可删除上述命令中的127.0.0.1(有助于排查Apache2或Docker容器问题)。
如需Docker在启动时自动运行(除非手动停止),添加--restart unless-stopped。
将[YOUR_DOMAIN]替换为完整域名,例如translate.domain.tld或libretranslate.domain.tld。
取消ErrorLog和CustomLog行的注释以记录请求。
ApacheConf#Libretranslate #将http重定向到https <VirtualHost *:80> ServerName http://[YOUR_DOMAIN] Redirect / https://[YOUR_DOMAIN] # ErrorLog ${APACHE_LOG_DIR}/error.log # CustomLog ${APACHE_LOG_DIR}/tr-access.log combined </VirtualHost> #https <VirtualHost *:443> ServerName https://[YOUR_DOMAIN] ProxyPass / [***] ProxyPassReverse / [***] SSLEngine on SSLCertificateFile /etc/letsencrypt/live/[YOUR_DOMAIN]/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/[YOUR_DOMAIN]/privkey.pem SSLCertificateChainFile /etc/letsencrypt/live/[YOUR_DOMAIN]/fullchain.pem # ErrorLog ${APACHE_LOG_DIR}/tr-error.log # CustomLog ${APACHE_LOG_DIR}/tr-access.log combined </VirtualHost>
将此配置添加到现有站点配置中,或在/etc/apache2/sites-available/new-site.conf创建新文件,然后运行sudo a2ensite new-site.conf。
如需获取HTTPS子域名证书,安装certbot(snap),运行sudo certbot certonly --manual --preferred-challenges dns并输入信息(域名设为subdomain.domain.tld)。按提示在域名注册商处添加DNS TXT记录,证书和密钥将保存到/etc/letsencrypt/live/{subdomain.domain.tld}/。如不需要HTTPS,可注释SSL相关行。
本项目的实现很大程度上得益于Argos Translate提供的翻译引擎。
GNU Affero General Public License v3
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速