我对 LLM 一窍不通。我最多只是用问答模型搜索些数据而已。从各种意义上我都是这个时代的落伍者。但是,因为一些原因,我有了一些日译中的需求,所以稍微做了点研究。从结论上来说,AI 相关的工具目前已经发展到了相当强的程度。对于那些动手能力强的人,即使没有开发经验,也可以通过并不复杂的操作让 AI 帮助自己。
当然,我还是得说,翻译可能是最简单的场景。不过,我想其它工具的发展程度想必也不会低。
这篇文章会记录自己使用的工具链。其实没什么好介绍的,基本都一键了。
和我一贯的写作风格不同,这篇文章将使用自下而上的方式进行介绍。然而,对于特定人群而言,SakuraLLM 可能才是最重要的信息,因此使用一句话简单介绍。
基于一系列开源大模型构建,在通用日文语料与轻小说/Galgame等领域的中日语料上进行继续预训练与微调,旨在提供开源可控可离线自部署的、ACGN风格的日中翻译模型。
这个模型应该已经颇有名气,因为 轻小说机翻机器人 就是通过该模型翻译的。我此前通过该网站看过同人文,翻译质量相当不错。
LinguaGacha
现在我更推荐使用 AiNiee. 请见下文
LinguaGacha 这个名字...我不想吐槽。他实际是只是针对翻译这一特定场景的胶水层而已。但是这个工作也是有意义的。它可以极大减少我们的工作量,更别说还有 GUI 工具。
解释一下为什么需要这个工程。现在想象一下我们给 chatgpt 翻译,那么我们就需要不停粘贴文档上的文字,让模型给我们翻译,再把结果复制到一个文件里面去。这个工作费时费力。此外,我们可能还要进行简单的校对。另外,程序还可以帮我们进行并发操作,极大减少对应的时间。从 Log 来看,它似乎会把文档分片,以几句话为一个task,然后生成 prompt 进行翻译。实际上,我这次工作一共翻译了1万多句,在并发 32 个任务的情况下依然花费了 26 分钟。
另外,使用过这种方式进行文档翻译的人一定明白,这其中有一件很困难的事情,就是需要术语表。对于那些人明、地名等词汇,一定希望尽可能同意。关于这一点,其介绍写到:
自动生成术语表,保证角色姓名等专有名词在整部作品中的译名统一 <- 独家绝技
这是只有做过类似工作的人才会意识到有多重要的问题。
另外,我发现 轻小说机翻机器人 似乎有作为 Web GUI 连接本地模型的能力,不过功能较为简陋。
OneClickLLAMA
一键运行 Qwen3 SakuraLLM 等本地 LLM 模型
讲得非常清楚,好像没什么好说的了……
好吧,我不应该预设所有看到这篇文章的人都对 LLM 有概念。简单来说,你下载的本地模型只是一个文件,是需要启动部署才能使用的。这一过程比较复杂,但是,现在有人帮我们做了一键运行工具。
它的名字很吸引人,但是似乎只支持 qianwen3 和 SakuraLLM,倒也够用。
SakuraLLM
在一开始就介绍过了,不过还是再粘一下吧……
基于一系列开源大模型构建,在通用日文语料与轻小说/Galgame等领域的中日语料上进行继续预训练与微调,旨在提供开源可控可离线自部署的、ACGN风格的日中翻译模型。
从我翻译的结果来看,这个模型对于日译中有显著优势。日语的翻译其实并不简单,你可以发现很多软件的中日英做得很不怎么样。日语喜欢省略主语这一点对于翻译软件很不友好。在这一次的翻译过程中,我使用的是最小的本地模型,但是效果却很不错。它的上下文统一程度一般,但是这有可能是 LinguaGacha 进行了上下文分片的原因。
更进一步
日译中对我来说是小众需求。但是,我英译中的需求却很大,而且我英译中的文档源是 PDF。我希望这一条也有成熟的技术方案。其中对我来说最难的一步是 PDF 内文字的提取工作,待我有空研究研究。
---- 2025.05.28
PDF 英译中的相关探究
从上可知,为了实现这个功能,需要处理 PDF 的合适胶水层,以及一个可以用 HTTP 访问的模型。其中,OneClickLLAMA
本身就支持另一个模型,也就是 qianwen3. 而它也推荐了适配的工具,那就是 AiNiee
我很块发现这个 GUI 和 LinguaGacha 一模一样。其中一个应该是另一个的改版吧……
我很快就发现这个工具仿佛是为我量身定做的。PDF 文字提取有一个难题,就是 PDF 本身是一个具有格式的文件,你并不知道这些分散的段落到底是按什么顺序阅读的。换句话说,文字提取的时候顺序无法保证。
这个工具,不知道用的是什么库,总之会对 PDF 进行分段,随后翻译。在翻译工作结束之后,会生成新的pdf,用翻译好的文字替代原来的语言。你最后得到的是一个遵循原本排版的崭新的pdf文件。
然而,我曾经遭遇过PDF分析错误的问题。对 PDF 进行处理果然是很难的工作。
我认为除了个别场景,对于大多数人,AiNiee 都比 LinguaGacha 更好。现在我更推荐使用这个。
在线模型与本地模型
AiNiee 的本地模型不支持自定义 prompt,我实在是不知道为什么。它默认的提示词会要求 AI 翻译成轻小说风格,但是我的原文都是奇幻相关。只要稍微改动下提示词,很多翻译就可以准确很多,但是它不能做这个。
也许自定义插件可能可以做点事情?不管怎么样我开通了在线模型的 API 借口,因为 token 还是很便宜的。我翻译一本几十万词的书也就花了大约50W token,总共大约1块钱,可以接受。它最大的提升是速度很快。本地模型的速度实在太慢了。
图片型 PDF 的处理策略
文字性 PDF AiNiee 已经支持地很好了。但是对于图片型 pdf,就只能先进行 OCR,这会给 PDF 增加一个透明的文字层。再进行翻译之后,这个文字层就会被换成翻译后的文字,然后和图片上的文字重叠在一起。
我想了几个办法,但是都没有用,最后好像只能用 pdf 库处理一下的样子。
由于 AiNiee 会输出一个每一页都是原文在左,译文在右的对比文件。我的计划是用 pdf 库对每页进行分割,这样左边就是原文,右面就是译文。那之后,再把右面的图片层删掉。不知道 PDF 库是否支持我这样操作。等到有空,我会更新处理结果。