VNR 理论及其周边

架构

近日尝试鸽了好久的 Gal 翻译软件,配置起来稍微有点麻烦。

架构分为文本提取 (Hook/OCR)、文本翻译 (各大翻译 API/本地翻译器) 和辞典三部分。

了解架构对各种工具都通用。

工具

之前尝试过很多,但几年过去,最靠谱的还是 LunaTranslator

💡 Tip

下文成文久远,不适用最新版本。 入门建议参考 官方文档,内容很详细,方方面面都有 cover。

从名字和应用图标不难看出作者是 露娜 sama粉丝,支持各路 OCR,也可以 Hook 获取文本。 和 VNR 一样使用 Python 开发,别的不说真被 UI 丑哭,默认字体也很难看新版默认主题挺好看的。

亮点:

  • 翻译器支持范围比 Misaka 要广
  • 支持相当多的 TTS 引擎,甚至包括 VoiceRoid2 / VOICEVOX 在内的虚拟人声
  • 内置窗口缩放软件 Magpie
  • 其他设置 页面可以启用自动更新和下载相关资源,懒人福音
  • LunaHook 已合并进本体
  • 和 Anki 联动,一键添加生词到 Anki deck
  • 大模型 API 翻译

具体使用可以参考官方的 基本用法,UI 选项比较多,使用前建议先探索一番。 首先到 显示设置 修改文本和界面字体,推荐见 我的 Windows 软件之道#解释。 探索完临时禁用窗口置顶,打开 翻译设置 页面,随便启动个日语游戏, 确认文本后会看到一大堆输出的翻译,有的可能会显示 Key error 之类的, 先把这些禁用,然后对比剩下的翻译源,保留 1-3 个即可。 注意悬浮窗口的对应翻译源,在 在线翻译 中从上到下、从左到右依次排序, 此外离线翻译的优先级高于在线翻译。

现在 LLM 跑一遍文本搞机翻非常简单,不再具有参考价值。 阅读速度比较慢的也可以尝试用 gpt-4o-mini、DeekSeek-V3 之类的 API,甚至本地大模型。 注意配置参数即可,和代码生成不同,翻译的 tempature 需要调高点,DeepSeek 建议 1.3。

辞书

只列举官方提供的链接,其他版本或有特殊需求请自行获取。

腾讯机器翻译 API 开通教程

网上关于申请百度翻译 API 的教程很多,但有关 腾讯云翻译 的并不多,而且大多并不是「最佳实践」(Best Practise)。

注册账号

略过不表。

新建子用户

子用户 是保证账户安全性的重中之重。腾讯 IM 产品用户体验不佳,但云服务的自定义策略和安全防护还是相当到位的,支持 600 多项策略配置。

  1. 自定义创建
  2. 类型选择 可访问资源并接收消息
  3. 填写用户信息
    • 用户名唯一且不可更改(但是管理员可以删除子用户,重新创建就可以改了)
    • 手机和邮箱可忽略,并且可以与管理员账号相同
    • 访问方式注意仅勾选 编程访问
  4. 自定义策略
    • QcloudTMTFullAccess: 机器翻译(TMT)全读写访问权限
    • 注意勾选下方的 自助管理 API 密钥,即 QcloudCollApiKeyManageAccess
  5. 用户标签(可忽略)
  6. 获得子用户的用户名与密钥

后续可前往 云 API 密钥管理页面 进行管理,需注意根据上述步骤完成子用户创建后已生成密钥,无须重复申请

🚨 Warning

使用管理员账号生成 secretIdsecretKey 是非常危险的行为,会泄露账号信息、恶意生成账单,甚至拥有注销账号的权限!

有关文档

  • 文本翻译 API 文档
  • API 使用情况查询
  • 鉴于大模型蓬勃发展,机翻横行,如果 TMT 使用量比较小,可以在 机器翻译控制台 关闭「开通后付费」选项,只使用每月赠送的免费资源包和主动购买的付费资源包。资源耗尽后也不会出现自动计费,在下个月收到天价账单的情况👻

TODO

归档

以下内容已过时,仅作留档。

团子翻译器

团子翻译器

  • 特点是有自行搭建的 OCR 和基于百度飞浆调教的离线 DangoOCR
  • 写着开源,实际上 GitHub Release 好久没更新,甚至落后官网一个大版本
  • DangoOCR 也是许久没更新,本地部署时 Python 版本还停留在 3.8 (不过起码不是 3.7……)
  • 只有安装包不提供便携版,这就算了,还强制注册账号才能使用,有点恶心人
  • 注册账号之后所谓的免费接口,只有 OCR 还算好用,翻译公用接口可用率太低,难以正常使用

御坂翻译器

御坂翻译器 & 御坂 Hook 提取器

  • 虽然名字有点中二,但功能都很实用,接入 API 接口也多
  • Hook 模式提取文本可太强了 (虽然经常闪退),还支持正则匹配等方式进行文本去重
  • 能够调用本地的 LE 来转区,非常方便
  • C# 开发,理论上确实比 Python 要优越一点
  • 搭建的简单工具架构:
    • 文本提取: Hook,亦可用 VNR 特殊码 / LE 转区运行;备用 OCR 方案为 Tesseract5 (Chocolatey 安装) + tessdata_bestjpn.traineddata
    • 文本翻译: 暂时使用金山快译 2009,但翻译质量不行,有待尝试 Jbeijing 和译典通还是开通了腾讯云翻译 API 接口,在线翻译的质量足够优秀。虽然译文前后的专有名词都不能保证一致,但语序甚至语气都能够贴合原文,还是值得一用的
    • 辞典: 小学馆日中

Visual Novel Reader

VNR / Visual Novel Reader,即标题所指的「VNR」。听说 VNR 吧提供懒人包,但由于御坂翻译器 hook 功能的先进性,没有尝试。

Vinfall's Geekademy

Sine īrā et studiō