LibreTranslate 1.9.6 常用 CLI 命令详解
LibreTranslate 1.9.6 常用 CLI 命令逐条实测:ltmanage 密钥管理与密钥库行为、argospm 语言包全生命周期、argos-translate 离线翻译三态、systemd 服务管控、备份恢复演练与 HTTP API curl 客户端调用。
LibreTranslate 1.9.6 常用 CLI 命令详解
目标:把 LibreTranslate 1.9.6 日常运维要敲的命令一次讲全——服务管控(systemd)、API Key 管理(ltmanage)、语言包生命周期(argospm)、单机离线翻译(argos-translate)、备份恢复与客户端调用(HTTP API)。全部命令与回显在 Ubuntu 22.04 + LibreTranslate 1.9.6 实测环境逐条执行,输入与输出均为实测记录;参数语义不在此重复,见配置参数详解篇。
一、环境信息
- 操作系统:Ubuntu 22.04.5 LTS(x86_64,6 核 / 18GB 内存)
- 软件版本:LibreTranslate 1.9.6(venv 安装于
/opt/libretranslate/venv,argos-translate-lt 1.12.1,argos-translate-files 1.4.4) - 托管方式:systemd(单元文件
/etc/systemd/system/libretranslate.service),服务监听 5000 - 语言范围:
--load-only en,zh,ja,ko,de,fr,es,ru(8 语言 14 语言对,模型 1.9GB) - 安装与 systemd 配置见安装部署篇;参数逐项含义见配置参数详解篇;本文全部命令在该环境实测,回显逐行照抄。
版本核对(libretranslate CLI 不支持 --version,用 pip 元数据):
/opt/libretranslate/venv/bin/pip show libretranslate argos-translate-lt argos-translate-files | grep -E "^(Name|Version)"
Name: libretranslate
Version: 1.9.6
Name: argos-translate-lt
Version: 1.12.1
Name: argos-translate-files
Version: 1.4.4
二、命令面全景:venv 里的 4 个可执行文件
ls /opt/libretranslate/venv/bin | grep -E "^(argos-translate|argospm|libretranslate|ltmanage)$"
argos-translate
argospm
libretranslate
ltmanage
| 命令 | 定位 | 详解位置 |
|---|---|---|
libretranslate | 服务端主程序(启动 API 服务,40 项启动参数) | 安装部署篇、配置参数详解篇 |
ltmanage | 服务端管理工具(API Key 库维护) | 本文第三章 |
argospm | 语言包生命周期管理(索引/检索/安装/删除/清单) | 本文第四章 |
argos-translate | 单机离线翻译 CLI(不走 HTTP 服务) | 本文第五章 |
💡 技术拓展:
argospm/argos-translate由依赖包 argos-translate-lt 附带,ltmanage由 libretranslate 主包附带,都是 venv 内的独立入口。venv/bin 未加入 PATH 时建议统一用绝对路径调用,避免与系统同名命令混淆。
⚠️ 注意:1.9.6 的
ltmanage只有keys一个子命令族(add/remove),没有密钥列表类子命令——查看密钥用 sqlite3 查询(3.2)。网上旧资料提到的其他子命令在 1.9.6 的--help实测中均不存在。
三、ltmanage:API Key 管理
3.1 命令树(--help 实测)
/opt/libretranslate/venv/bin/ltmanage --help
usage: ltmanage [-h] {keys} ...
LibreTranslate Manage Tools
options:
-h, --help show this help message and exit
Command List:
{keys}
keys Manage API keys database
/opt/libretranslate/venv/bin/ltmanage keys --help
usage: ltmanage keys [-h] [--api-keys-db-path API_KEYS_DB_PATH]
{add,remove} ...
options:
-h, --help show this help message and exit
--api-keys-db-path API_KEYS_DB_PATH
Use a specific path inside the container for the local
database
Command List:
{add,remove}
add Add API keys to database
remove Remove API keys from database
⚠️ 注意:
--api-keys-db-path的说明文案「Use a specific path inside the container for the local database」为上游帮助原文(随上游发行方式书写);venv 直装主机上按「本机任意路径」理解即可。不传该参数时密钥库取db/api_keys.db——相对当前工作目录,systemd 单元WorkingDirectory=/opt/libretranslate下即/opt/libretranslate/db/api_keys.db(配置参数详解篇 5.5)。
3.2 keys add:新增密钥
usage: ltmanage keys add [-h] [--key KEY] [--char-limit CHAR_LIMIT] req_limit
positional arguments:
req_limit Request Limits (per minute)
options:
-h, --help show this help message and exit
--key KEY API Key
--char-limit CHAR_LIMIT
Character limit
| 参数 | 说明 |
|---|---|
req_limit(位置参数) | 该 Key 的每分钟请求限额 |
--key KEY | 密钥值;不传则自动生成 UUID 串 |
--char-limit CHAR_LIMIT | 该 Key 的字符限额(不传 = 继承服务端 --char-limit) |
--api-keys-db-path | 密钥库路径(见 3.1 注意) |
实测一:自动生成密钥(在 WorkingDirectory /opt/libretranslate 下执行):
cd /opt/libretranslate
/opt/libretranslate/venv/bin/ltmanage keys add 60
9b78e438-4db6-478e-b7a2-3a6c31e5d69f
实测二:显式指定密钥与字符限额:
/opt/libretranslate/venv/bin/ltmanage keys add 120 --key q1w2e3r4 --char-limit 10000
q1w2e3r4
落库核对(sqlite3):
sqlite3 /opt/libretranslate/db/api_keys.db "select * from api_keys;"
9b78e438-4db6-478e-b7a2-3a6c31e5d69f|60|
q1w2e3r4|120|10000
三列分别为密钥、每分钟限额、字符限额(空 = 继承服务端)。同密钥重复 add 即更新限额(实测 q1w2e3r4 原为 60|空,重复 add 后变为 120|10000)。Key 在请求中的携带方式与启用开关见配置参数详解篇 5.5。
3.3 keys remove:删除密钥
usage: ltmanage keys remove [-h] key
positional arguments:
key API Key
options:
-h, --help show this help message and exit
/opt/libretranslate/venv/bin/ltmanage keys remove 9b78e438-4db6-478e-b7a2-3a6c31e5d69f
9b78e438-4db6-478e-b7a2-3a6c31e5d69f
/opt/libretranslate/venv/bin/ltmanage keys remove q1w2e3r4
q1w2e3r4
删除后核对(无输出即已清空):
sqlite3 /opt/libretranslate/db/api_keys.db "select * from api_keys;"
⚠️ 注意:删除不存在的密钥不报错——实测对已删除的
q1w2e3r4再执行 remove,同样回显密钥值且退出码 0。脚本里删除后如需确认结果,请以 sqlite3 查询为准,不能依赖退出码。
3.4 密钥库文件行为与重建(两个实测坑)
坑一:密钥库文件被删后,ltmanage 不会自动新建文件,直接报错:
rm -f /opt/libretranslate/db/api_keys.db
cd /opt/libretranslate
/opt/libretranslate/venv/bin/ltmanage keys add 60 --key q1w2e3r4
No such database: db/api_keys.db
坑二:先 touch 一个空文件再执行,ltmanage 会自动建表初始化:
touch /opt/libretranslate/db/api_keys.db
/opt/libretranslate/venv/bin/ltmanage keys add 60 --key q1w2e3r4
sqlite3 /opt/libretranslate/db/api_keys.db "select * from api_keys;"
q1w2e3r4
q1w2e3r4|60|
⚠️ 注意:
api_keys.db里只有密钥与限额,删了虽可重建,但生产环境应走备份恢复(第七章)而非重建。重建仅适合测试环境。
四、argospm:语言包全生命周期
4.1 命令族总览与当前清单
/opt/libretranslate/venv/bin/argospm --help
usage: argospm [-h] {update,search,install,list,remove} ...
positional arguments:
{update,search,install,list,remove}
Available commands.
update Downloads remote package index.
search Search package from remote index.
install Install package.
list List installed packages.
remove Remove installed package.
options:
-h, --help show this help message and exit
语言包落盘位置:~/.local/share/argos-translate/packages/(本文运行用户为 root,即 /root/.local/share/argos-translate/;改用独立系统用户运行服务时随其 HOME 变化,见安装部署篇 7.1)。
当前清单(排序后):
/opt/libretranslate/venv/bin/argospm list | sort
translate-de_en
translate-en_de
translate-en_es
translate-en_fr
translate-en_ja
translate-en_ko
translate-en_ru
translate-en_zh
translate-es_en
translate-fr_en
translate-ja_en
translate-ko_en
translate-ru_en
translate-zh_en
14 个语言包与 --load-only 设定的 8 种语言一一对应(en↔zh/ja/ko/de/fr/es/ru)。以下 4.2–4.5 以 en↔it(意大利语,当前未装)为样本走完整生命周期,结束后恢复 14 包基线。
4.2 update:更新包索引
export http_proxy=http://192.168.1.62:7897 https_proxy=http://192.168.1.62:7897
/opt/libretranslate/venv/bin/argospm update
echo $?
0
实测结论:update 成功时无任何输出(静默),退出码 0,索引落盘为 ~/.local/share/argos-translate/index.json(安装部署篇 4.4 实测 36KB)。外网链路差时必须走代理(安装部署篇 8.1),否则可能长时间无进展。
4.3 search:检索包索引
/opt/libretranslate/venv/bin/argospm search --from-lang en --to-lang it
translate-en_it: en -> it
/opt/libretranslate/venv/bin/argospm search --from-lang zh
translate-zh_en: zh -> en
--help 口径(语言码为 ISO 639-1 两位码):
usage: argospm search [-h] [--from-lang FROM_LANG] [--to-lang TO_LANG]
options:
-h, --help show this help message and exit
--from-lang FROM_LANG, -f FROM_LANG
The code for the language to translate from (ISO
639-1)
--to-lang TO_LANG, -t TO_LANG
The code for the language to translate to (ISO
639-1)
输出格式为 包名: 源语言 -> 目标语言,包名可直接传给 install。
4.4 install:安装语言包
--help 口径(name 传包名;传 translate 则安装全部包):
usage: argospm install [-h] name
positional arguments:
name Package name, use "translate" to install all packages
options:
-h, --help show this help message and exit
安装 translate-en_it:
/opt/libretranslate/venv/bin/argospm install translate-en_it
echo $?
0
实测结论:安装成功同样静默(无进度输出),退出码 0。核对:
/opt/libretranslate/venv/bin/argospm list | grep en_it
ls /root/.local/share/argos-translate/packages/ | grep en_it
translate-en_it
en_it
清单新增 translate-en_it 一项(4.1 的 14 项之外);单包磁盘占用在 82–302MB 区间(安装部署篇 4.4 实测口径),容量规划按此预估。
⚠️ 注意:argospm 装完只影响磁盘与 CLI——LibreTranslate 服务在启动时加载语言,正在运行的服务不会热加载新语言。要经 HTTP API 使用新语言,需
systemctl restart libretranslate且该语言在--load-only范围内(配置参数详解篇 5.2)。
4.5 remove:删除语言包
usage: argospm remove [-h] name
positional arguments:
name Package name
options:
-h, --help show this help message and exit
/opt/libretranslate/venv/bin/argospm remove translate-en_it
echo $?
Removed package translate-en_it
0
核对(清单回到 14、包目录已删):
/opt/libretranslate/venv/bin/argospm list | wc -l
14
ls /root/.local/share/argos-translate/packages/ | grep en_it
(无输出,en_it 目录已删除。)
重复删除同一包(会报错,与 ltmanage 的静默行为不同):
/opt/libretranslate/venv/bin/argospm remove translate-en_it
echo $?
Package not found
1
4.6 生命周期小结
| 动作 | 命令 | 成功回显 | 退出码 |
|---|---|---|---|
| 更新索引 | argospm update | 无输出(静默) | 0 |
| 检索 | argospm search -f en -t it | translate-en_it: en -> it | 0 |
| 安装 | argospm install translate-en_it | 无输出(静默) | 0 |
| 清单 | argospm list | 包名逐行列出 | 0 |
| 删除 | argospm remove translate-en_it | Removed package translate-en_it | 0 |
| 删除(不存在) | argospm remove translate-en_it | Package not found | 1 |
五、argos-translate:单机离线翻译(不走服务)
5.1 帮助与两种调用方式
/opt/libretranslate/venv/bin/argos-translate --help
usage: argos-translate [-h] [--from-lang FROM_LANG] [--to-lang TO_LANG] [TEXT]
Open-source offline translation.
positional arguments:
TEXT The text to translate. Read from standard input if
missing.
options:
-h, --help show this help message and exit
--from-lang FROM_LANG, -f FROM_LANG
The code for the language to translate from (ISO
639-1)
--to-lang TO_LANG, -t TO_LANG
The code for the language to translate to (ISO
639-1)
帮助口径:TEXT 位置参数不传时读标准输入。两种写法实测(en→it,包已按 4.4 安装):
echo "Hello, how are you?" | /opt/libretranslate/venv/bin/argos-translate --from-lang en --to-lang it
Ciao, come stai?
/opt/libretranslate/venv/bin/argos-translate -f en -t it "Good morning"
Buongiorno.
短参数 -f/-t 与长参数同义。argos-translate 直接读本地语言包推理,不依赖 HTTP 服务(服务停止也能跑)。
5.2 三态实测:未安装 → 已安装 → 移除
| 状态 | 命令 | 回显 | 退出码 |
|---|---|---|---|
| 包未安装 | argos-translate -f en -t it "Hello" | argos-translate: error: 'it' is not an installed language. | 2 |
| 安装后(4.4) | argos-translate -f en -t it "Good morning" | Buongiorno. | 0 |
| 移除后(4.5) | argos-translate -f en -t it "Hello" | 同未安装错误 | 2 |
未安装/移除后错误回显全文(首行为 usage 提示):
usage: argos-translate [-h] [--from-lang FROM_LANG] [--to-lang TO_LANG] [TEXT]
argos-translate: error: 'it' is not an installed language.
💡 技术拓展:argos-translate 的语言码是 ISO 639-1 两位码,与 HTTP API 的变体码体系(
zh-Hans/zh-Hant/pt-BR)粒度不同——语言包按「语言对」分发,不含变体细分。脚本里建议用退出码判断:0 = 翻译成功,2 = 目标语言未安装。
5.3 与服务端的关系
- argos-translate 与 LibreTranslate 服务共用同一份语言包目录(
~/.local/share/argos-translate/packages/),argospm 装包后 argos-translate 立即可用(5.2); - LibreTranslate 服务端在启动时加载语言,新装语言包需重启服务并满足
--load-only才会出现在/languages:
systemctl restart libretranslate
- 单机脚本、批处理不想起服务时直接用 argos-translate;需要 HTTP API、限流、API Key、文件翻译时才用 LibreTranslate。
六、systemctl:服务管控
安装部署篇第七章已给出 daemon-reload/enable 与启动验证,本节补全日常管控动作与回显。
状态查看:
systemctl status libretranslate --no-pager -l
● libretranslate.service - LibreTranslate Translation API
Loaded: loaded (/etc/systemd/system/libretranslate.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2026-10-28 14:13:21 UTC; 2min 26s ago
Main PID: 43 (libretranslate)
Tasks: 12 (limit: 2932)
Memory: 258.3M
CPU: 1.245s
(输出节选:CGroup 明细与后续日志行略。)
自启状态:
systemctl is-enabled libretranslate
enabled
重启并确认(修改参数后必走,见配置参数详解篇 3.2):
systemctl restart libretranslate && systemctl is-active libretranslate
active
停止与端口验证(stop 后 5000 不再监听,curl 返回 000 表示连接被拒):
systemctl stop libretranslate && systemctl is-active libretranslate
inactive
curl -s -m 2 -o /dev/null -w "%{http_code}\n" http://127.0.0.1:5000/
000
重新拉起:
systemctl start libretranslate && systemctl is-active libretranslate
active
服务日志(-o cat 省略时间戳与主机名前缀,以下恰为一次 stop/start 循环):
journalctl -u libretranslate -n 6 --no-pager -o cat
libretranslate.service: Consumed 1.248s CPU time.
Started LibreTranslate Translation API.
Stopping LibreTranslate Translation API...
libretranslate.service: Deactivated successfully.
Stopped LibreTranslate Translation API.
Started LibreTranslate Translation API.
七、备份与恢复
7.1 备份对象清单
| 对象 | 路径 | 体量(实测) |
|---|---|---|
| 语言包与索引 | ~/.local/share/argos-translate/(packages/ 与 index.json) | 1.9GB(8 语言 14 语言对) |
| API Key 库 | /opt/libretranslate/db/api_keys.db | 12KB |
| 翻译建议库 | /opt/libretranslate/db/suggestions.db | 8KB(启用 --suggestions 后产生) |
| systemd 单元 | /etc/systemd/system/libretranslate.service | <1KB |
du -sh /root/.local/share/argos-translate/
ls -la /opt/libretranslate/db/
1.9G /root/.local/share/argos-translate/
total 32
drwxr-xr-x 3 root root 4096 Oct 28 13:13 .
drwxr-xr-x 5 root root 4096 Oct 28 13:31 ..
-rw-r--r-- 1 root root 12288 Oct 28 13:11 api_keys.db
drwxr-xr-x 2 root root 4096 Oct 28 13:11 prometheus
-rw-r--r-- 1 root root 8192 Oct 28 13:13 suggestions.db
(db/ 下的 prometheus 子目录与 suggestions.db 为参数实测残留,属正常现象。)
7.2 语言包全量备份(实测 58.7s / 1.7GB)
time tar czf /root/argos-models-2026-10-28.tar.gz -C /root/.local/share argos-translate
ls -lh /root/argos-models-2026-10-28.tar.gz
real 0m58.680s
user 0m47.819s
sys 0m10.147s
-rw-r--r-- 1 root root 1.7G Oct 28 14:19 /root/argos-models-2026-10-28.tar.gz
1.9GB 语言包打包耗时约 1 分钟、压缩包 1.7GB。包内条目数:
tar tzf /root/argos-models-2026-10-28.tar.gz | grep -c "packages/"
178
备份完整性抽查(流式解出单文件比对 md5,无需解包):
md5sum /root/.local/share/argos-translate/packages/translate-en_zh-1_9/sentencepiece.model
tar xzOf /root/argos-models-2026-10-28.tar.gz argos-translate/packages/translate-en_zh-1_9/sentencepiece.model | md5sum
8049d391c95f8a3c41c559670c390110 /root/.local/share/argos-translate/packages/translate-en_zh-1_9/sentencepiece.model
8049d391c95f8a3c41c559670c390110 -
两个 md5 一致,备份可用。恢复命令与打包的 -C 基准对应(解回原路径后重启服务):
systemctl stop libretranslate
tar xzf /root/argos-models-2026-10-28.tar.gz -C /root/.local/share
systemctl start libretranslate
7.3 配置与密钥库恢复演练(删除 → 恢复 → 校验全流程)
打包(tar 存绝对路径时自动去掉前导 /):
tar czf /root/lt-drill-config-20261028.tar.gz /etc/systemd/system/libretranslate.service /opt/libretranslate/db/api_keys.db
tar tf /root/lt-drill-config-20261028.tar.gz
tar: Removing leading `/' from member names
etc/systemd/system/libretranslate.service
opt/libretranslate/db/api_keys.db
记录基准 md5 与内容:
md5sum /opt/libretranslate/db/api_keys.db
sqlite3 /opt/libretranslate/db/api_keys.db "select * from api_keys;"
be3f90ad321e031f9d46c33e19ddbac1 /opt/libretranslate/db/api_keys.db
q1w2e3r4|60|
模拟事故:删除原件后从备份恢复并逐项校验:
mv /opt/libretranslate/db/api_keys.db /tmp/api_keys.db.bak
tar xzf /root/lt-drill-config-20261028.tar.gz -C /
md5sum /opt/libretranslate/db/api_keys.db
sqlite3 /opt/libretranslate/db/api_keys.db "select * from api_keys;"
be3f90ad321e031f9d46c33e19ddbac1 /opt/libretranslate/db/api_keys.db
q1w2e3r4|60|
md5 与库内容完全一致,恢复成功(演练后清理 rm -f /tmp/api_keys.db.bak /root/lt-drill-config-20261028.tar.gz)。
恢复要点:
- 恢复配置与密钥库后执行
systemctl restart libretranslate生效; - 只丢
api_keys.db时虽可按 3.4 用空文件重建,但密钥值会变,生产一律走备份恢复; - 语言包目录随运行用户的 HOME 变化(root 即
/root/...),恢复时-C目标要与打包时一致。
八、客户端调用:HTTP API 实测
服务端配置不变(5000 端口、8 语言)。以下 curl 均在本机对 127.0.0.1 实测;q 传文本,source/target 传语言码(变体码以 /languages 返回为准)。
8.1 健康检查与语言清单
curl -s http://127.0.0.1:5000/health
{"status":"ok"}
curl -s http://127.0.0.1:5000/languages | jq length
8
curl -s http://127.0.0.1:5000/languages | jq ".[0]"
{
"code": "en",
"name": "English",
"targets": [
"de",
"en",
"es",
"fr",
"ja",
"ko",
"ru",
"zh-Hans"
]
}
targets 是该语言作为源语言时的可用目标语言列表;查中文变体条目用 jq '.[] | select(.code=="zh-Hans")'(结构相同,code 为 zh-Hans、name 为 Chinese)。
8.2 文本翻译 /translate
基本翻译:
curl -s -X POST http://127.0.0.1:5000/translate -H "Content-Type: application/json" \
-d '{"q":"Hello","source":"en","target":"de","format":"text"}'
{"translatedText":"Hallo"}
自动检测源语言(source 传 auto,回显含检测置信度):
curl -s -X POST http://127.0.0.1:5000/translate -H "Content-Type: application/json" \
-d '{"q":"Hello","source":"auto","target":"zh-Hans","format":"text"}'
{"detectedLanguage":{"confidence":90.0,"language":"en"},"translatedText":"哈罗"}
备选译文(alternatives 指定数量):
curl -s -X POST http://127.0.0.1:5000/translate -H "Content-Type: application/json" \
-d '{"q":"Hello","source":"en","target":"zh-Hans","format":"text","alternatives":1}'
{"alternatives":["哈啰"],"translatedText":"哈罗"}
批量翻译(q 传数组,回显为同序数组):
curl -s -X POST http://127.0.0.1:5000/translate -H "Content-Type: application/json" \
-d '{"q":["Hello","Good morning"],"source":"en","target":"de","format":"text"}'
{"translatedText":["Hallo","Guten Morgen"]}
HTML 格式(标签原样保留):
curl -s -X POST http://127.0.0.1:5000/translate -H "Content-Type: application/json" \
-d '{"q":"<b>Hello</b> World","source":"en","target":"de","format":"html"}'
{"translatedText":"<b>Hallo</b> Welt"}
8.3 语种检测 /detect
JSON 体与表单两种提交方式均支持:
curl -s -X POST http://127.0.0.1:5000/detect -H "Content-Type: application/json" \
-d '{"q":"Hola, cómo estás?"}'
[{"confidence":90.0,"language":"es"}]
curl -s -X POST http://127.0.0.1:5000/detect -d "q=Bonjour tout le monde"
[{"confidence":100.0,"language":"fr"}]
8.4 文件翻译 /translate_file
printf "Hello, world.\nThis is a test file for LibreTranslate file translation.\n" > /tmp/d1test.txt
curl -s -X POST http://127.0.0.1:5000/translate_file -F "file=@/tmp/d1test.txt" -F "source=en" -F "target=de"
{"translatedFileUrl":"http://127.0.0.1:5000/download_file/47ef5091-6cbd-4b4c-828b-32631ceb1c3d.d1test_de.txt"}
下载并核对译文内容:
curl -s "http://127.0.0.1:5000/download_file/47ef5091-6cbd-4b4c-828b-32631ceb1c3d.d1test_de.txt"
Hallo Welt.
Dies ist eine Testdatei für LibreTranslate Dateiübersetzung.
支持九种格式(.txt/.odt/.odp/.docx/.pptx/.epub/.html/.srt/.pdf),可用 --disable-files-translation 关闭(配置参数详解篇 5.8)。译文文件由服务端临时托管,返回 URL 自带下载标识。
8.5 错误分支与开关验证
不支持的语种对(HTTP 400 + 错误说明):
curl -s -o /dev/null -w "%{http_code}\n" -X POST http://127.0.0.1:5000/translate -H "Content-Type: application/json" \
-d '{"q":"Hello","source":"en","target":"xx","format":"text"}'
curl -s -X POST http://127.0.0.1:5000/translate -H "Content-Type: application/json" \
-d '{"q":"Hello","source":"en","target":"xx","format":"text"}'
400
{"error":"xx is not supported"}
服务未开放建议提交时(--suggestions 默认关闭):
curl -s -X POST http://127.0.0.1:5000/suggest -H "Content-Type: application/json" \
-d '{"q":"Hello","s":"Hallo","source":"en","target":"de"}'
{"error":"Suggestions are disabled on this server."}
当前服务设置速览:
curl -s http://127.0.0.1:5000/frontend/settings | jq "{apiKeys,charLimit,filesTranslation,keyRequired,suggestions}"
{
"apiKeys": false,
"charLimit": -1,
"filesTranslation": true,
"keyRequired": false,
"suggestions": false
}
带 API Key 调用(api_key 字段)、429 限流与 401 指标端点的实测回显见配置参数详解篇 5.4/5.5/5.7。
九、常见问题(FAQ)
Q1:ltmanage 报 No such database: db/api_keys.db?
密钥库文件不存在。ltmanage 不会自动创建文件:先 touch 出空文件再执行即可自动建表(3.4 实测);生产环境从备份恢复(7.3)。
Q2:argospm install 装完了,API 里为什么没有新语言?
语言包是启动时加载的:systemctl restart libretranslate 后且语言在 --load-only 范围内才会出现在 /languages(4.4 注意、配置参数详解篇 5.2)。单机 CLI(argos-translate)不受此限制,装完即用。
Q3:argos-translate: error: 'xx' is not an installed language.
目标语言包未安装:argospm search 查包名 → argospm install <包名>(5.2 三态实测)。
Q4:这几个 CLI 有 --version 吗?
实测 ltmanage --help/argospm --help/argos-translate --help 中均无 --version 参数;版本核对统一用 pip show libretranslate argos-translate-lt argos-translate-files(第一章)。
Q5:每次执行 ltmanage 都打印 RequestsDependencyWarning? venv 内 requests/urllib3 版本声明不匹配产生的 stderr 警告,不影响功能(安装部署篇 8.2 已核实);本文回显为聚焦正文未收录该警告行。
十、参考链接
- 认知与选型:《LibreTranslate 介绍与选型指南》
- 安装部署(本文命令环境的前置):《Ubuntu 22.04 安装 LibreTranslate 1.9.6 指南》
- 参数语义与 API Key 生效验证:《LibreTranslate 1.9.6 配置参数详解》
- GitHub 仓库:https://github.com/LibreTranslate/LibreTranslate
- Argos Translate 上游:https://github.com/argosopentech/argos-translate