用Ollama+小模型给Macbook装一个离线翻译,内容不出本机
这套东西我用了一段时间,稳定了才写出来。
先说我的机器:MacBook Pro 16英寸,两三年前买的,M3 Max,64GB内存。买它是为了专门剪视频,性能本来就有富余。
我一直没在上面跑过模型。潜意识里总觉得跑模型是另一件事,得单独配一台高性能设备放在角落里,才叫“本地部署”。
后来才反应过来:剪视频的机器闲着的时候,跑个几GB的小模型完全是顺手的事。
好处很直白:快、私、稳。
我平时在用的两个翻译工具
翻译这件事我主要靠两个工具,浏览器里和浏览器外,是两套。
浏览器里用沉浸式翻译(https://immersivetranslate.com )。网页层面它是真的强,在Chrome里几乎全能:双语对照网页、视频字幕、图片翻译、输入翻译、PDF翻译、SRT字幕文件、划词翻译、AI Reply,能想到的场景基本都覆盖了。
代价是不便宜,价格表在这:https://immersivetranslate.com/zh-Hans/pricing
输入翻译,中文打进去,连打三次快捷键,原地替换成英文,回消息、邮件时候是真好用。
它也不是万能。说到底是个浏览器插件,OCR翻译和划词翻译的体验一般,也不够快。一旦离开Chrome基本没辙了——你在软件里、在PDF阅读器里,它都够不着。

所以浏览器之外我用Bob(https://bobtranslate.com )。macOS专用的翻译工具,把翻译做成了某种系统能力。
划词翻译,任何App里选中文字,配合Popclip这个插件,不用切窗口、不用复制粘贴。
截图OCR翻译是它最强的一块,图片里的字、视频画面里的字幕、不让复制的PDF,框一下直接翻,识别得比我用过的其他工具都准。

而Bob最关键的一点是:它本身只是个壳,翻译引擎随便换。内置的在线服务、自己的API、本地跑的模型,都能挂上去,还能多个服务并排对照。
这就是这篇文章的核心点——既然引擎能换,那能不能换成一个完全跑在自己电脑上的?
用久了翻译,隐私问题一直硌得慌
这两个工具好用,但有个问题我越用越在意:我翻的东西,到底去了哪。
沉浸式翻译能挂的模型很多,看着选择自由,可它们有个共同点——全是云端的。你选谁都一样,文字都得先出门一趟。
Bob稍微好一点,默认的「系统翻译」调的是macOS本地的翻译引擎,不上网。但你只要挂上Google、DeepL、智谱、有道、千问这些服务,内容一样是传出去的,只是传给谁的区别。
平时翻个技术文档、翻个新闻,无所谓。
可我也会翻银行账单、身份证件、签证材料、租房合同这类东西。这些我是真不想随手就丢进一个云端接口,哪怕对方明确写了不留存。
于是我去问了AI:有没有办法让翻译完全不出这台电脑。
它告诉我,沉浸式翻译和Bob都支持接Ollama——也就是说,我可以在自己Mac上跑一个翻译模型,让这两个工具都调它。
为什么选这个轻量翻译模型
我翻的都是日常内容:网页、邮件、字幕、说明书、账单。不是学术论文,不是要吃透背景才能动手的专业材料,长度也都不长,一两句到一两段。
所以对译文的要求很朴素——基本准确没有歧义就行,我不需要它字斟句酌,我需要它别理解错。比Mac系统自带翻译要好,达到Google翻译水平就行了。
真正卡我的是速度。这套方案的假想敌是Google和DeepL,本地跑出来要是比云端还慢,那就体验太差了。模型再大再聪明,等它七八秒,我下次可能就不想用了。
毕竟划词翻译是随手一按的动作,慢一秒都是煎熬。
最后,AI建议我用的是huihui_ai/hunyuan-mt-abliterated:7b,底子是腾讯混元的Hunyuan-MT-7B。它不是一个“顺便会翻译”的通用模型,是专门为翻译训练的。据说7B的身板,翻译这一件事上打得过一堆比它大好几倍的通用模型。
用通用大模型翻译也有个通病:话多。你让它翻一句话,它给你“好的,以下是翻译:……(注:此处也可译为……)”,或者说会输出COT思维链,必须手动关闭。接到划词翻译工具里,这些全是噪音。
有点像你去街边找那种只配钥匙的小铺子——师傅一句话不问,三十秒给你配好走人;换成商场里的综合服务台,先给你讲一遍钥匙有哪几种、要注意什么。
翻译专用模型只干一件事:进来原文,出去译文,别的一个字没有。
abliterated是什么,为什么翻译需要它
模型名字里的huihui_ai是社区作者,abliterated的意思是“去审查版”。
为什么翻译要用这个?因为原版遇到有些内容是会罢工的。
比如,带脏话的美剧字幕,原版给你翻成温良恭俭让,f开头的词全变成“该死”。
涉及暴力、犯罪细节的新闻报道,普通模型可能直接拒绝,或者关键段落给你省略。
一些灰色话题的论坛帖子,要么拒翻,要么给你夹带一段“温馨提示”。
还有一类更微妙的:政治议题。这个模型出身腾讯,边界跟你想的差不多。翻外媒报道的时候,撞上某些特殊年份日期的组合、某些人物的名字,它会突然装死——要么整段跳过,要么给你一段绕来绕去的车轱辘话。
最麻烦的是这种失真可能是静默的。
测试方法很简单,把原版和去审查版都下载下来:同一段原文分别丢给原版和去审查版,然后看差异。
我的观点:翻译工具的职责必须是忠实原文,不是替我审查我自己要读的东西。译员不能一边翻一边捂住你的眼睛。
三步装好,第一步能甩给AI
一、装模型这一步,交给Claude Code
这步我从头到尾扔给Claude Code做的。你只需要记住一个东西——模型名字:
huihui_ai/hunyuan-mt-abliterated:7b
把这个名字给它,让它装好Ollama、拉这个模型、设好常驻内存,就完事了。装不上、报错了也丢给它,它自己会查。
命令贴在这里,不是让你敲,是让你知道它在替你做什么:
bash
ollama pull huihui_ai/hunyuan-mt-abliterated:7b
launchctl setenv OLLAMA_KEEP_ALIVE -1
launchctl setenv OLLAMA_ORIGINS "*"
第一条是拉模型,4.6GB,喝杯水的功夫。第二条是让模型常驻内存。Ollama默认5分钟不用就把模型卸载,下次翻译又得重新加载——这就是很多人觉得“本地模型很慢”的原因之一。设成常驻之后跑一下ollama ps,UNTIL那一栏显示Forever就成了。占5GB内存,完全可以承受。第三条是允许浏览器插件访问本地服务。
后面两步得自己动手了,因为是在两个软件的界面里点,AI替不了你。
二、接到沉浸式翻译
沉浸式翻译从1.15.1版本开始原生支持Ollama,不用折腾自定义接口。
进插件设置的翻译服务,找到Ollama,模型填huihui_ai/hunyuan-mt-abliterated:7b,API地址用默认的就行,API KEY随便填。

但说句实话,这个模型接沉浸式翻译,体验一般。
整页翻译跟划词翻译根本是两种活。你打开一个网页,几十上百段文字批量丢过去,还是多线程一起上,7B的本地模型扛不住这个量。风扇呼呼地转起来,译文一段一段慢慢往外蹦,还不如云端来得快。(以下是翻译效果)

所以我自己是分开用的:整页翻译还是走云端,本地模型留给Bob——复制一段话、划一句字幕、框一张图,这种碎片化的小活,它才最快。
好在这两件事的隐私要求本来就不一样。整页翻的多半是公开网页,翻了也没什么可泄露的;真正不想云翻的账单、合同、证件,恰恰都是划词和框选这种碎片场景,正好本地全接得住。
一句话:本地模型打的是短平快,不适合打持久战。
三、接到Bob
Bob的设置 →「服务」→ 添加Ollama翻译服务,然后自定义API Base URL填这个:http://localhost:11434 (Ollama服务的本地默认端口),自定义模型填:huihui_ai/hunyuan-mt-abliterated:7b 然后token数我按照AI建议填的4096。

然后测试一下是不是真的可以翻译了:(沉浸式翻译+bob翻译的结果)


三个要提前知道的坑
一、Mac一重启,常驻设置就没了
上面那几行launchctl命令只在本次开机有效,重启后自动失效,而且不会有任何提示——你只会某天觉得“今天翻译怎么又变慢了”。对策:重启后跑一遍ollama ps,UNTIL不是Forever就让AI再设一次。嫌烦就直接让它写个开机自启的配置,一劳永逸。
二、Ollama默认只给4096的上下文,长文会被悄悄截断
模型本身支持到256K,但Ollama出于省内存的考虑,默认只开4096个token的窗口。划词翻译一两句话完全够用,你一旦整段整页地丢进去,超出的部分会被直接切掉,而且不报错——你看到的译文是完整的样子,其实后半截根本没进去。对策是把窗口调大,比如设成32768。但代价是内存占用会跟着涨。总之,自己判断,够用就行。
三、去审查版是社区改的,不是腾讯官方版本
这条不影响使用,但你得知道自己在用什么。abliteration本质上是对模型做的一次“手术”,作者自己在说明里写得很直白:这是一个粗糙的概念验证实现,建议用于研究和测试环境,不建议直接用在生产或者对外的商业场景。
手术难免有代价,去掉拒绝能力的同时,模型在别的方面可能有细微的损伤。
7B比27B快五倍,质量还不输
我Ollama里还躺着一个gemma3-abliterated:27b-q8_0,29GB的大家伙,为什么翻译不用它?同一句英文财经新闻,实测数据摆在这:

结论很直白。
速度差五倍,10秒的冷启动更是直接劝退。质量并不输,翻译本来就是Hunyuan-MT的本职工作,日常英中互译我对照下来,7B专用模型的译文跟27B通用模型不相上下,甚至更干净——27B时不时想给你加点解释、换个说法,专用模型从不自作主张。资源也差得远,5GB常驻无感,29GB常驻,剪视频跑字幕的时候内存就要打架了。
Gemma3这类通用大模型不是不好,写作、推理、总结都强,但那是另一个工位的事。日常翻译这种高频小任务,专用小模型就是最优解:小、快、专、驻得起。
杀鸡就该用鸡刀,鸡刀更快。
隐私才是这套方案真正的底牌
速度只是爽点,隐私才是我彻底切过来的原因。
前面说的银行账单、签证材料只是个开头。真正的问题是:有些时候你翻译的内容,可能是你最敏感的数据。
会拿去翻的东西,恰恰是你看不懂又必须搞懂的那些——合同条款、体检报告、律师函、商务邮件、没发布的稿子、私人聊天记录。

免费在线翻译的商业逻辑就是拿你的数据。Google翻译免费、DeepL免费版免费,凭什么?你翻的内容就是训练语料和产品数据。付费API承诺不训练,但“上传—处理—删除”这整条链路,你只能选择相信。
对于一些行业这不是洁癖,而是红线。律师翻客户合同、医生翻病历、公司翻未公开财报,把这些贴进网页翻译框,严格说已经构成数据外泄了。
本地模型是把问题从根上消灭。不是“对方承诺不看”,是物理上没有传输。
机器好的话,还可以挑更大的
我这套是按64GB内存、要求随手就出结果来选的。你的机器更强,或者你的场景跟我不一样,可选的还有不少。
TranslateGemma是Google官方基于Gemma 3做的翻译专用模型,支持55种语言,有4B、12B、27B三档,想更准就往上挑。
HY-MT2是混元翻译模型的新一代,有1.8B、7B,还有一个30B的MoE版本。我文章里用的其实是初代,同一个系列已经迭代过两版了,写到这里我才注意到,回头准备换新的试试。同系列的HY-MT1.5也有去审查版,huihui_ai/hy-mt1.5-abliterated。
Typhoon-Translate是泰语和英语互译的专用模型,只有4B。对于泰国生活的人来说,可能也很需要。
AI对中文模型的评价:
腾讯混元 Hunyuan-MT 系列是唯一值得押的中国翻译专用模型,你在用的是初代,直接升
maternion/hy-mt2的 7B,配置不用改;字节 Seed-X 也不错但 Ollama 上没现成的;想挂个对照就加kaelri/qwen3.5-mt,才 2B。通用模型里 Qwen3 32B 中英最稳,DeepSeek 好但本地跑不动。
更好玩的用法是装几个,按场景切着用。Bob和沉浸式翻译都支持同时挂多个服务:
划词、看字幕、扫一眼邮件,用7B,图它快。
一篇要认真读懂的长文,切到27B,多等几秒换个准。
泰文的东西,走泰语专用的那个。
用法完全一样,就是模型名换一下,剩下的看个人喜好。这也是本地模型比云端舒服的地方——云端只能用人家给的那几个,本地你想装几个装几个。
最后
我还挺期待硬件那边的动静。现在本地翻译的天花板说到底是内存和算力,模型再好,也得等它慢慢算。
之前有家加拿大公司叫Taalas,在干一件很激进的事:不是让芯片去跑模型,而是把模型直接刻进芯片里。他们的HC1演示卡跑Llama 3.1 8B,能到每秒17000个token——我这台M3 Max跑7B是68.7,中间差着两百多倍。
他们放了个聊天demo可以直接试:https://chatjimmy.ai/ 我测试了一下翻译,速度快到恐怖,简直太酷了~

8月6日,AMD宣布收购了这家公司。
翻译恰恰是最适合被刻进硅片的那类任务:小、固定、高频、不用天天更新。这条路要是走通了,说不定哪天一块巴掌大的模块就能做到本地、瞬时、无限量的翻译,连“等”这个动作都不存在了,然后把这样的芯片做到airpods耳机里面,变成翻译机,我简直不敢想象了~~