LibreTranslate 离线部署:如何最快搭好一个最小 300MB 的无外网翻译服务

LibreTranslate 离线部署:如何最快搭好一个最小 300MB 的无外网翻译服务 LibreTranslate 离线部署如何最快搭好一个最小 300MB 的无外网翻译服务【免费下载链接】LibreTranslateFree and Open Source Machine Translation API. Self-hosted, offline capable and easy to setup.项目地址: https://gitcode.com/GitHub_Trending/li/LibreTranslateLibreTranslate 离线部署三步跑通装环境、装语言模型、起服务全程不碰外网。中英双模型离线包最小约 300MB实测总占用 600MB 出头适合机房隔离网、出差笔记本等断网场景。离线成品长什么样这一节先给你结果装完之后服务长什么样、占多少磁盘、断网后哪些能力还在。健康检查GET /health返回{status: ok}这是验收的第一依据。语言列表GET /languages只列出你装过的语言比如 en、zh 两条多装一个模型这里就多想一项。翻译接口POST /translate提交qHello worldsourceentargetzh返回体里有translatedText字段和detectedLanguage对象。磁盘占用每个语言方向约 300MB中英双向合计约 600MB。模型默认落在~/.local/share/argos-translate/packagesWindows 为AppData\Roaming\argos-translate\packages里面是成对的.argosmodel文件加元数据。断网行为拔掉网线重启服务启动、翻译、健康检查全部照常无任何外部请求发出。选一个适合你的部署形态先花 30 秒判断你的机器属于哪种形态后面的步骤按同一套命令走。本地直跑目标机已有 Python 3.8 及以上实测 3.10 稳定。代价是手动建虚拟环境多两条命令。容器镜像目标机只保证有 Docker适合多台机器统一环境。代价是首次构建镜像较慢且构建期仍需联网拉模型。便携包把源码 虚拟环境 模型目录整体拷贝到 U 盘无 Python 的机器再带一份便携版 Python。代价是打包与同步由你手工维护。按步骤落地四个子步骤每步一句目的、一段命令、一行预期。全程按顺序执行即可。1. 拿到代码并建好隔离的 Python 环境在任意目录执行git clone https://gitcode.com/GitHub_Trending/li/LibreTranslate cd LibreTranslate python -m venv venv source venv/bin/activate pip install .预期依赖全部装完核心引擎为 argos-translate-lt 1.12.1、Web 层为 Flask 2.2.5版本已在 pyproject.toml 中锁定。2. 安装语言模型只装你用得到的方向python scripts/install_models.py --load_only_lang_codes en,zh预期日志出现Found模型数与Keep 2 models模型下载约 1~2 分钟视网速装完du -sh该目录约 600MB。语言代码对照 libretranslate/locales/ 目录名即可。3. 启动服务并确认模型加载成功python main.py --host 127.0.0..1 --port 5000预期启动日志出现Loaded support for 2 languages随后打印Running on http://127.0.0.1:5000端口 5000 开始监听。4. 容器形态把模型打进镜像再跑Docker 用户不需要跑步骤 2~3构建期装好模型运行时零联网docker build --build-arg with_modelstrue --build-arg modelsen,zh -t lt-offline -f docker/Dockerfile . docker run -d --name lt -p 5000:5000 lt-offline预期容器日志同样出现Loaded support for 2 languages两个 ARG 见 docker/Dockerfile 第 25~26 行。把离线包做小做稳进阶选读。体积和稳定性由三处决定下面逐点给出改什么、改在哪、为什么。语言裁剪最直接的减重手段。改启动参数--load-only逗号分隔的 ISO 639-1 短码或安装模型时的--load_only_lang_codes两者必须保持一致否则启动会报模型缺失。原因模型文件本身占体积大头全量安装约 4GB只留中英压到 600MB 上下再压不动。依赖离线缓存切断运行期的联网依赖。在有网机器执行pip freeze requirements_offline.txt再pip download -r requirements_offline.txt -d dependencies/ --only-binary:all:目标机用pip install --no-index --find-links./dependencies/ -r requirements_offline.txt安装。--no-index是关键它禁止 pip 回源保证安装全程离线。跨 Linux 发行版选 manylinux wheelWindows 目标机把平台参数换成--platform win_amd64。离线配置三个默认值保持不动即可。配置文件 libretranslate/default_values.py全部可用LT_前缀环境变量覆盖UPDATE_MODELS默认False保持关闭否则启动时会尝试刷新模型索引SHARED_STORAGE默认memory://内存计数即可无需 RedisAPI_KEYS_REMOTE默认空保持留空不指向任何远程端点。另外 libretranslate/init.py 的boot()会吞掉联网失败异常日志里的Cannot update models (normal if youre offline)是预期提示属正常现象。维护节奏需要刷新模型时在联网机执行python scripts/install_models.py --load_only_lang_codes en,zh --update再把 packages 目录整体打包带走离线包版本号建议用主.次.修订三段式便于区分模型变更和 bugfix。验收清单按顺序勾掉三项全绿即离线闭环成立。✅起服务后确认模型加载curl http://localhost:5000/health预期输出{status: ok}。调翻译接口curl -X POST http://localhost:5000/translate -H Content-Type: application/x-www-form-urlencoded -d qHello%20worldsourceentargetzh预期返回体含translatedText与detectedLanguage。断网复测断开网络后重启服务重跑上面两条命令预期输出不变、服务无任何外部请求报错。排障问答Q启动时报Model not foundA核对启动参数--load-only与已装模型的方向短码是否一致比如只装了 en→zh 就写en,zh再确认模型目录~/.local/share/argos-translate/packages可读。Q翻译速度偏慢 A线程数默认 4见默认值THREADS按 CPU 核数上调--threads生产环境去掉--debug调试模式会显著拖慢响应。Q离线安装依赖时和已装包冲突 A坚持--no-index --find-links走离线缓存不要与在线安装混用混用会让 pip 按在线源重新解析版本树。Q启动日志出现Cannot update models (normal if youre offline)A这是 libretranslate/init.py 里的预期提示意思是离线时跳过了模型索引刷新不影响翻译不需要处理。整条路径回顾一遍建环境、装模型、起服务、验收断网四步即得一个零外网的翻译端点延伸方向可关注 WebAssembly 纯前端离线版把体积再压一个量级。【免费下载链接】LibreTranslateFree and Open Source Machine Translation API. Self-hosted, offline capable and easy to setup.项目地址: https://gitcode.com/GitHub_Trending/li/LibreTranslate创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考