ARTICLE · 1244106
打包好的混元MT2本地离线翻译工具下载
/HYMT2 本地离线翻译工具/
正文不用看,下载解压后直接上手用,操作有疑问再来查帮助文档。在我的可以说不算老的机子上,被win11卡的掉帧,随便一个软件都是占用100%,耗费了我积攒了好久的Trae的1000积分,总体下来优化的还算不错,老机子也能跑个不错的速度和质量。
下面的内容完全是ai写给ai看的。如果有时间看下细节即可,有疑问直接留言。hy-mt2-1.8b-1.25bit压缩太厉害,速度很容易出瓶颈,兼容性也没那么强,幸好有开源的代码可以学习,只要有大佬分享的新技术新思路,ai就能很快上手,把问题提准,ai就能往好的方向改,只是耗时长短的差异。在你自己的电脑上离线翻译,网页、Markdown、PDF 都能翻。 不联网、不上传、不注册账号,所有内容都不会离开你的电脑。
全文导航
1这是什么东西
2第一次使用(3 步)
3网页翻译(浏览器插件)
4粘贴翻译
5Markdown 翻译
6PDF 翻译
7任务队列
8设置页
9顶部按钮:重启引擎 / 停引擎释放内存
10速度有多快
11常见问题排查
12关于隐私与内存
13自定义模型 / API 服务配置(浏览器插件面板)
14给第三方工具接入
15文件说明

通过网盘分享的文件:HyMT-Local-Translate.zip
链接: https://pan.baidu.com/s/1h288E-Ub8UMpg9OpHocRdg?pwd=hpai 提取码: hpai
https://pan.baidu.com/s/1h288E-Ub8UMpg9OpHocRdg?pwd=hpai
QQ邮箱文件中转站分享链接:https://wx.mail.qq.com/s?k=uma6cktqSycw06eZK5 ,HyMT-Local-Translate.zip(628.3MB) 分享有效期:30天内。
https://wx.mail.qq.com/s?k=uma6cktqSycw06eZK5
这是什么东西
一套完全离线的翻译工具,包含两个部分:
| 本地服务 | 启动翻译工具.bat | |
| 网页界面 | http://127.0.0.1:8787 | |
| 浏览器插件 |
核心特点
✅ 完全离线:模型文件就在 model/目录,断网也能用,翻译内容不出本机。✅ 免费无限制:没有调用次数、没有 token 账单。 ✅ 保留格式:Markdown 保留标题/列表/表格/代码块;PDF 保留排版并左右对照。 ⚠️ 速度取决于电脑:本机实测 4 核 CPU 上 4 路并发约 13~18 token/秒(聚合), 一段话约 2~4 秒;整页段落很多时总耗时按段落数累加(详见第 10 节)。
第一次使用(3 步)
解压
把压缩包完整解压到任意目录(不要在压缩包里直接运行)。 解压后应该长这样:
1HyMT-Local-Translate\2├─ 启动翻译工具.bat ← 双击这个3├─ 使用说明.md ← 就是本文件4├─ translationservice.exe5├─ _internal\ ← Python 运行时 + 后端代码(勿删)6├─ bin\llama.cpp\7├─ model\Hy-MT2-1.8B-1.25Bit.gguf8├─ data\ ← 任务记录与输出(首次启动生成)9└─ extension\ ← 浏览器插件文件10
translationservice.exe只是启动器,真正的 Python 运行库、后端、网页和配置模板都在_internal\里; 这两个必须放在同一目录,不能只拷 exe。
双击 启动翻译工具.bat
会出现一个黑色命令行窗口,显示:
1============================================================2 HyMT 本地离线翻译工具3 启动后会自动打开浏览器 http://127.0.0.1:87874 关闭本窗口 = 停止服务(模型随之从内存卸载)5============================================================6浏览器会自动打开翻译页面。
这个黑窗口不要关! 它就是服务本身。关掉它 = 停止服务。
等引擎就绪
页面右上角的徽章从「引擎加载中…」变成「引擎就绪 · …」就能用了。首次启动约 30~60 秒(首次解压后最慢:读 440MB 模型 + 预热 + 预热翻译前缀),之后一般 20~40 秒。
💡 小技巧:启动后就可以去干别的了。引擎在后台自动加载,第一次翻译时如果还在加载, 页面会显示「引擎加载中,请稍候…」,翻译请求不会丢,会自动继续。
网页翻译(浏览器插件)
安装插件
打开 Chrome / Edge → 地址栏输入 chrome://extensions/(Edge 是edge://extensions/)打开右上角的「开发者模式」开关 点「加载已解压的扩展程序」 选择解压出来的 extension文件夹(不是里面的某个文件)
装好后浏览器工具栏会出现一个蓝色图标。
💡 以后换了新的插件文件?回到
chrome://extensions/,点插件卡片上的「↻ 重新加载」图标即可生效 (当前插件版本 1.5.0)。换完记得刷新一下已经打开的网页,新脚本才会注入。
翻译网页
任选一种方式:
| 右键菜单 | |
| 快捷键 | Alt + Q(页面上直接生效,最快) |
| 插件图标 |
第一次是「启用」:页面开始翻译,右下角出现一个蓝色圆形进度图标。 再按一次是「停止」:译文被移除,网页恢复原样。
右键菜单固定显示「HYMT 翻译 启用/停止 ALT+Q」,点一次启用,再点一次停止。
右下角的进度图标
翻译过程中,右下角的小圆圈会实时显示:
中间:翻译百分比( 0%→100%)鼠标悬停:显示「已完成段数 / 总段数 · 当前速度 tok/s」 翻译完成后:圆圈变绿色
点击圆圈可以中途叫停当前翻译(不会影响服务)。按住圆圈拖动可以把它挪到任意位置;松手后位置自动记住,刷新页面也还在。 拖到屏幕左半边时,悬停提示会自动改到右侧,不会跑出屏幕。
💡 译文是分批出现的:当前屏幕附近的段落优先,约 3~5 秒先显示, 后面的段落逐批补上,不用等整页全部翻完。相同文案(按钮、导航)只翻一次, 后续动态内容会直接复用;隐藏菜单、折叠弹层里的文字不会浪费推理时间。
动态网页也能翻
对于无限滚动、SPA 单页应用、懒加载的网站:滚动页面加载更多内容时,新出现的内容会自动被翻译,不用重新点一次。 (如果你不想让它自动翻,可以在设置里关掉「动态内容自动补翻」。)
插件设置(字体 / 颜色 / 布局)
点插件图标 → 「⚙ 打开设置(字体 / 样式 / 布局)」,或右键插件图标 → 「选项」。
| 基本 | |
| 显示样式 | |
| 行为 |
字体可以写具体字体名,例如 Microsoft YaHei、SimSun、Noto Sans CJK SC。字号填 100表示和原文一样大,120表示大 20%。点「保存设置」后所有已打开的页面立即生效,不用刷新。 点「恢复默认」可以一键还原。
粘贴翻译
适合翻译短文、句子、段落。
页面顶部选「粘贴翻译」 在上面的大框里粘贴原文( Ctrl + Enter也可以直接触发翻译)选择目标语言 → 点「翻译」 译文显示在下面的大框里
进度条会显示引擎状态;翻译过程中会实时显示 「实时 X tok/s · 已用 N 秒」。 完成后显示「耗时 X · Y tok/s · 输出 N token」。 「⟲ 原文⇄译文」按钮可以来回交换,方便反复对比。 原文已经是目标语言时(目标选中文、粘的也是中文)会直接原样返回,瞬间完成。 实在翻不出来的那一两段会保留原文,不会给你一段错乱的译文(详见 Q6)。
Markdown 翻译
适合翻译整篇文档、README、技术文章。
页面顶部选「Markdown」 把 .md文件拖到框里,或点输入框右侧的「选择文件」,也可以直接粘贴内容选目标语言 → 点「翻译」 左边是译文,右边是报告(能看到分了多少批、发现了多少术语等) 点「下载译文」保存成 translated.md
翻译过程中会实时显示:
1第 3/12 批 · 8.4 tok/s · 已用 24.0秒 · 预计剩余 1分12秒2保留结构:标题、列表、表格、代码块、链接都不会被破坏。
💡 1.5.0 起 Markdown 聚合批次改用短提示词 + ASCII 缝号;缝号丢失或整批失败时 会自动改为逐块补译,不再出现“大量段落仍是中文”的情况。
💡 整篇都是中文的文档会秒出(自动跳过翻译);中英混排的一篇通常 4~7 秒。
PDF 翻译
适合翻译英文报告、论文、白皮书。
页面顶部选「PDF」 把 PDF 文件拖到虚线框里(或点击后选择文件) 选目标语言 → 点「开始翻译」 翻译过程中显示:已翻页数 / 总页数 + 进度条 + 「平均 X 秒/页 · 剩余 Y」 完成后会出现两个下载链接:
| mono | |
| dual |
翻译大文件时可以用「暂停 / 续跑 / 停止」按钮控制。
💡 翻译期间程序会持续把进度写到磁盘,即使中途关掉程序,下次打开顶部菜单的「任务队列」还能看到任务记录。
任务队列
任务队列已放回**顶部菜单「任务队列」**标签;粘贴、Markdown、PDF 的任务都会列在一起。
页面会自动刷新(每 2 秒)。顶部还有一个「▶ 1. Markdown 45% · 2. PDF 12%」的并发提示, 在任意标签页都能看到当前有几个任务、谁先谁后、各自进度。
任务记录存在磁盘上,重启服务后依然可见。
设置页
页面顶部选「设置」。这里只放后端推理服务的结构参数,每一项下方都有简短说明和推荐值。
💡 模型 API 接口配置不在这里:服务名称、API 地址、API Key、模型名、 请求体、Temperature、每秒请求数、每批段落数等,统一在 浏览器插件弹窗 →「🧩 自定义模型 / 翻译服务」面板里配置。
引擎结构参数(改完需点右上角「⟳ 重启引擎」)
Hy-MT2-1.8B-1.25Bit.gguf(最省内存) | ||
autostq / official | auto | |
| 开启 | ||
| 2048 | ||
翻译、分块与清洗
PDF 版面分析
autoheuristic 全启发式 / yolo 每页都跑模型 | auto | |
改完点「保存配置」。顶部会提示「配置已保存」。 ⚠️ 引擎参数(parallel / n_ctx / n_batch / n_ubatch / threads / 模型)必须点右上角「⟳ 重启引擎」才生效。
顶部按钮:重启引擎 / 停引擎释放内存
这两个按钮在页面最顶部的右上角,不在设置页里。
| ⟳ 重启引擎 | ||
| ■ 停引擎释放内存 |
点完后按钮旁边会显示结果提示(绿色成功 / 红色失败),几秒后自动消失。 停掉引擎后不影响服务本身,下次点翻译会自动重新启动引擎。
速度有多快
实测数据(本机:i3-10105,4 核 8 线程,8GB 内存)
| 本来就是中文的原文 | 瞬间完成 |
为什么整页会感觉比实测慢
8 段实测 7 秒,是8 段的总耗时;一个内容较多的网页可能有 200~400 段, 总耗时自然按段落数累加(约每 8 段 7 秒,300 段约 4~5 分钟)。
主要拖慢点与已做的优化:
段落数量:每段都要过一次模型,这是最大成本;插件已做去重(导航/按钮重复文案只翻一次)、 跳过隐藏菜单和零尺寸元素、整页中文自动跳过。 发送顺序:已改为视口优先,先翻你眼前的段落,首屏 3~5 秒出现译文, 不再按 DOM 顺序先翻页头和隐藏菜单。 动态内容:补翻任务已改为串行队列,不会和上一轮同时抢 4 个推理 slot。 首屏等待:MutationObserver 现在开始翻译后立即生效,无限滚动内容不用等整页翻完。 配置回归:源码配置曾退回 threads=6 / n_ubatch=256,已同步为实测最优的threads=8 / n_ubatch=512;用旧配置启动会明显变慢。通用接口本身不拖慢:全新文本实测 /api/v1/translate/segments与内部/api/translate/segments都在 6.8~7.1 秒 / 8 段,v1 路由只有微秒级开销。
想更快可以试试
换更贵的模型不一定会更快:实测 1.25bit 与 Q4_K_M 速度基本持平(9.3 vs 9.5 tok/s), 但 Q4_K_M 占用内存是前者的 2.5 倍。只有在你更在意翻译质量时才值得换。
页面上的速度信息在哪
常见问题排查
Q1:双击 启动翻译工具.bat 出现乱码 / 一闪而过
先确认文件是完整解压的:把 bat 拖到记事本里,若开头是乱码说明文件损坏,重新解压。 Windows 弹出「是否允许运行 Windows PowerShell 脚本」 → 点「允许」。 若双击后窗口一闪就没了,右键 bat →「以管理员身份运行」,看报错信息。
本版本的 bat 已按 Windows 要求保存为 UTF-8 无 BOM + CRLF 换行,中文不会乱码。
Q2:网页打不开 / 显示「服务未响应」
黑色命令行窗口是不是被关掉了?重新双击 启动翻译工具.bat。检查端口 8787 是否被占用: netstat -ano | findstr 8787。浏览器地址栏手动输入 http://127.0.0.1:8787。
Q3:一直显示「引擎加载中…」
首次启动要 20~40 秒,请耐心等待。 如果超过 2 分钟还没好,看黑色窗口里的日志。常见原因是内存不足(8GB 机器建议 n_ctx 改 8192)。 也可以在设置页把模型换成 Hy-MT2-1.8B-1.25Bit.gguf,再点「⟳ 重启引擎」。
Q4:插件右键菜单不出现 / 点了没反应
确认 chrome://extensions/里插件是打开的状态。确认服务已启动(黑色窗口还在)。 刷新一次网页再试(插件安装前打开的页面不会自动注入)。 仍不行:把插件「移除」后重新「加载已解压的扩展程序」。
Q5:网页翻译只有一部分被翻了
页面太长了:把鼠标移到右下角进度图标上,看看「已完成段数 / 总段数」是不是被截断。 在插件设置里调大「单页最多翻多少段」(默认 800)。 滚动页面加载更多内容,动态部分会自动补翻。 有些站点用了特殊结构(画布渲染、iframe 嵌套过深),可能确实覆盖不到。
Q6:翻译结果里混进了英文原文 / 整段没翻
这是 1.8B 小模型的偶发问题(有时候它会「偷懒」不翻某一句话)。系统会自动重试(最多 2 次)。
翻不出来的时候,你看到的是:
那一段保留原文,并在报告里标记为「失败」——不会给你一段错乱的译文; 也不会出现「译文里混进一大段系统提示词」这种脏内容(这类输出会被自动丢弃)。
另一个常见误会:原文本来就是中文时不会变。
系统会先判断「这段是不是已经是目标语言」,是的话直接跳过不翻(所以中文网页、中文文档都是秒出)。 如果你想把中文译成英文,请在「目标语言」里选英文,而不是中文。
想换更稳的模型?
本压缩包默认只带 Hy-MT2-1.8B-1.25Bit.gguf(最省内存、最快)。 如果你手上有 Hy-MT2-1.8B-Q4_K_M.gguf,把它放进 model\ 文件夹,再到设置页选它、点「⟳ 重启引擎」, 质量会更好但速度差不多、内存占用约 2.5 倍。
Q7:PDF 翻译很慢 / 中途失败
低配机器默认会让纯文字页跳过 DocLayout-YOLO,4 页测试从 71 秒/页降到约 18 秒/页(第一页最慢)。 PDF 速度瓶颈现在是模型生成本身;在顶部「任务队列」页可看到“翻译/版面/渲染”各自耗时。 大文件建议先只翻译前 20 页试试。 失败时看黑色窗口日志。
Q8:想让译文显示得更好看
去插件设置 →「显示样式」,可以调字体、字号、颜色、背景色,左边是实时预览。 比如想要「微软雅黑 + 浅灰背景 + 小一号字」:字体填 Microsoft YaHei,字号填 90,背景色填 #f5f5f5。
关于隐私与内存
隐私
✅ 所有翻译都在本机完成,不发送任何数据到互联网。 ✅ 插件只连接 127.0.0.1:8787(你自己电脑上的服务),不会联系任何服务器。✅ 页面原文不会离开浏览器和本机。
内存占用
8GB 内存的机器完全够用。翻译大 PDF 时如果觉得卡,先关掉其他大程序。
自定义模型 / API 服务配置(浏览器插件面板)
1.5.0 起恢复通用服务模式:模型 API 接口、API Key、模型名、请求体、 Temperature、每秒请求数、每批段落数等,统一放在浏览器插件的 「🧩 自定义模型 / 翻译服务」面板里;WebUI 只放后端推理服务结构参数。
翻译服务
插件默认用本地 HyMT 服务(完全离线)。你也可以加一个OpenAI 兼容的 第三方接口(比如公司内部的翻译网关),随时切换:
| + 添加服务 | |
| 测试连接 | |
| 用于翻译网页 | |
| 编辑 / 删除 |
local类型走本机/api/v1/translate/segments(批量段 + 令牌), 仍然是 4 个推理 slot 连续批处理,和旧的直连/api/*速度一致;openai类型走/chat/completions,按%%批量翻译,格式不匹配时自动降级逐段;旧配置里把本机服务误存成 openai的,会自动迁移成local。选「OpenAI 兼容服务」时,插件会按需向你申请那个域名的访问权限 (只申请这一个站点,不会要「访问所有网站」)。 所有配置(地址、密钥)只存在你自己浏览器的本地存储里,不上传任何地方。
本地服务接入(WebUI 设置页)
这一块给你接第三方工具用,已移到 WebUI:http://127.0.0.1:8787/ →「设置」→「本地服务接入」。
服务地址: http://127.0.0.1:8787访问令牌:一串以 hymt_开头的字符,点「复制」给第三方工具用。 点「重新生成」会换一把新钥匙,旧令牌立刻失效(换完记得同步更新已配置的工具)。接入规范摘要 / 调用示例:直接照抄即可。
沉浸式翻译接入(WebUI 设置页)
想让「沉浸式翻译」这个成熟插件也用上你的本地模型? 打开 http://127.0.0.1:8787/ →「设置」→「沉浸式翻译接入」,里面有可复制的配置。
方式一:整段 JSON
点 WebUI 里的「复制 OpenAI 配置 JSON」。 打开沉浸式翻译扩展 → 设置 → 翻译服务 → OpenAI → 开发者设置 → Edit Full User Config,把整段 JSON 粘进去保存。 之后沉浸式翻译就会调用你本机的 HyMT 服务翻译。
方式二:逐项填写
Hymt | |
hymt-local | |
http://127.0.0.1:8787/v1/chat/completions | |
| 请求体 | 留空{"segments":["Hello world"]}) |
⚠️ 请求体填
{"segments":["Hello world"]}会导致只翻译这一句,其他段落一直转圈。这是沉浸式「AI 翻译」的 body 覆盖项,不是批量原文;删空即可。 本机服务已兼容沉浸式的 AI 批量协议([[p0]] … [[source_end]]), 会按[[p0]] … [[terms]] [[end]]返回。更稳妥的是使用沉浸式「自定义接口翻译(Beta)」模式: 接口地址、API Key 同上,请求体由插件自动发送
{"text_list":[...],"source_lang":"auto","target_lang":"zh-CN"},无需手填。
系统提示词/用户提示词可以保留默认值;本机服务会用自己的翻译提示词,不会把客户端的提示词照抄给模型。 「启用 AI 智能上下文」「启用富文本翻译」「增强模式」保持默认即可,不会明显影响速度。
⚠️ 粘贴整段配置会覆盖同名配置项,建议先备份原来的配置。
给第三方工具接入
自带浏览器插件 1.5.0 起恢复通用服务模式:默认走
/api/v1/translate/segments(需要令牌), 也可以在插件面板切换成任意 OpenAI 兼容服务;下面两套接口也供第三方工具使用。
本机服务对外提供两套标准接口,完整说明见压缩包里的 接口文档.md。
/api/v1/* | {"ok":true,"data":{...}} + 固定错误码 | |
/v1/* |
最简单的一条命令(把 <令牌> 换成 config.yaml 里的 api.token):
1curl -X POST http://127.0.0.1:8787/api/v1/translate \2 -H "Authorization: Bearer <令牌>" \3 -H "Content-Type: application/json" \4 -d '{"text":"Hello world.","target_lang":"简体中文"}'5想先看看服务提供哪些接口?直接访问 http://127.0.0.1:8787/api/v1/spec, 会返回一份机器可读的接口清单。
令牌别外传:它等于你本机翻译服务的钥匙,贴到聊天窗口或公开仓库里就等于把钥匙送人。
文件说明
启动翻译工具.bat | |
使用说明.md | |
接口文档.md | |
translationservice.exe | |
_internal/ | |
bin/llama.cpp/ | |
model/ | |
extension/ |
祝使用愉快! 有问题先看第 11 节。















































































