Files
vrsub/docs/proper_nouns.md
T
cat-shark a032855210 feat: 字幕质量提升——长时寒暄幻觉清洗 + 专名/成人隐语不直译
两部分同属字幕质量优化,共用 llm.py 翻译链路:

1) 长时寒暄幻觉词清洗(nodes/subtitle_cleanup.py)
   对展示时长超过阈值(默认 15s,实测 30s 幻觉占位 vs 2s 真实词的分界)
   且文本含收尾/开场寒暄(晚安、感谢观看等)的字幕,文本替换为 '-',
   由后续过滤流程移除;短时寒暄(如剧情中真实互道晚安)保留不误删。
    写文件前调用 。

2) 专名/隐语不直译(nodes/proper_nouns.py)
   片假名专名(人名/品牌/角色)与成人语境隐语是 LLM 误译重灾区:
   - ジンゴ 被误译成'芒果'、カンタくん 被保留日文而非音译;
   - マンゴー/バナナ/リンゴ/金玉/おまんこ/ちんちん 等在色情语境中
     是生殖器官代称,字面直译严重错译。
   整理三张规则表(专名/拟声词/成人隐语,用户提供隐语表),
    检测原文命中后动态注入翻译提示词,
   让 LLM 按正确语义处理。文档见 docs/proper_nouns.md。

测试(红→绿):
- tests/test_hallucination_mask.py:长时掩码/短时保留/非寒暄保留/阈值边界
- tests/test_proper_nouns.py:专名命中/拟声词/成人隐语/真实数据集成
- 真实 LLM 集成测试(完整 1440 行翻译 + 清洗 + 专名注入)通过
2026-09-05 22:32:40 +08:00

83 lines
5.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 专有名词(不应直译)处理表
对于日语字幕的"日 → 中文"翻译,**片假名专有名词**(人名、品牌、角色名、
产品或道具名)是 LLM 误译的重灾区:模型常按罗马音/读音硬译,产生
"芒果"(ジンゴ)这类与原文无对应、甚至语义荒谬的结果。
下表依据**日语-中文翻译的通用规则 + 字幕场景实测**整理。当待翻译字幕
中出现表中"日文原文"时,应向翻译提示词动态注入对应规则(见
`nodes/proper_nouns.py``build_proper_noun_rule`),让 LLM 正确处理。
## 规则类别(处理策略)
| 类别 | 处理方式 | 示例 |
| --- | --- | --- |
| 人名 | 音译(保留姓氏/称谓),不直译字面义 | カンタくん → 康太君 / 坎塔君 |
| 品牌/产品名 | 保留原文或使用约定译名 | ニトリ → 尼达利 / ニトリ |
| 角色/道具专名 | 保留原文或按上下文意译,禁止按读音硬译 | ジンゴ → 保留"Jingo/ジンゴ",勿译"芒果" |
| 拟声/拟态词 | 用中文对应拟声词,不直译 | グリグリ → 钻、搅动 |
| 外来语缩写 | 还原英文含义而非音译 | リラックス → 放松(非"丽拉库斯" |
## 专名表(日文原文 → 处理建议 → 说明)
| 日文原文 | 音频读音 | 中文处理建议 | 说明(来源/原因) |
| --- | --- | --- | --- |
| ジンゴ | jingo | **保留原文"ジンゴ/Jingo"**,或按上下文意译为角色/道具名 | 实测被误译"芒果"(4500s)。片假名专名,勿按读音硬译 |
| マンゴー | mango | **保留"マンゴー/Mango"**;仅当确指水果作"芒果" | 品牌/专名可能,注意与"芒果"同音误译 |
| カンタくん | kanta-kun | 音译"康太君/坎塔君" | 人名(3803s),勿留日文或直译 |
| 松井 | matusui | 松井(姓氏,汉字保留) | 人名,参考字幕确认"松井小姐" |
| ひな子 | hinako | 日奈子 / 雏子 | 人名(参考字幕"松井日奈子" |
| カリン | karin | 果林 / 花梨 | 人名(参考字幕"北冈果林/果林前辈" |
| 北岡 | kitaoka | 北冈(汉字保留) | 人名 |
| 権藤 | gondo | 权藤 / 昆藤 | 人名(参考"医务室长权藤" |
| 金山 | kanayama | 金山(汉字保留) | 人名(参考"金山先生" |
## 高频"伪专名"(拟声/口语,勿按字面直译)
| 日文 | 正确中文处理 | 错误直译(勿用) |
| --- | --- | --- |
| パンパン | 鼓胀、饱满、涨满 | 砰砰 |
| グリグリ | 用力碾/钻、搅动 | 咕噜咕噜 |
| チンポ | 肉棒/鸡巴(俗语) | 金宝(音译) |
| ビクビク | 一颤一颤、哆嗦 | 比库比库 |
| ヌルヌル | 滑溜溜、黏糊糊 | 奴鲁奴鲁 |
| ビンビン | 硬邦邦、精神十足 | 宾宾 |
| マット | 垫子(借词) | 马特 |
| リラックス | 放松(借词) | 丽拉库斯 |
| ララ | (含语音节)保持原文/按语境 | 拉拉 |
## 用法
翻译节点 `nodes/llm.py``translate_lines` 在组装系统提示词时,调用
`nodes/proper_nouns.py``build_proper_noun_rule(terms)`,把"若字幕中出现
下表专名 → 附加对应翻译规则"的指令拼入提示词;匹配基于原文文本包含判断,
未命中时不注入(避免干扰普通翻译)。
## 成人语境隐语/俗称表(新增,实测来源)
AV/成人内容字幕中,LLM 最易按**字面直译**造成严重错译。以下为高频隐语,
翻译时应按"实际含义"的常用中文翻译处理:
| 日文原文 | 读音 | 实际含义 | 对应中文常用翻译 |
| --- | --- | --- | --- |
| マンゴー | Mango | 女性生殖器 | 小穴、鲍鱼、妹妹(若谐音梗可保留"芒果"|
| バナナ | Banana | 男性生殖器 | 肉棒、鸡鸡、老二(画面打码可译"香肠"|
| リンゴ | Ringo | 睾丸(阴囊) | 蛋蛋(若出自"淫梦"梗可保留"苹果"并注释)|
| ちんぽう | chinpou | 男性生殖器 | 阳具、鸡巴(粗俗)|
| ちんちん | chinchin | 男性生殖器 | 小鸡鸡(委婉,对应童语)|
| 金玉 | kintama | 睾丸 | 蛋蛋、睾丸(正式)|
| にくつぼ | nikutsubo | 女性生殖器 | 肉洞、蜜穴(偏文学性);小穴(口语)|
| おまんこ | omanko | 女性生殖器 | 小穴、阴部 |
| おそそ | ososo | 女性生殖器 | 那里、下面(委婉)|
| オチンチン | ochinchin | 男性生殖器 | 小弟弟(常用);网络流行语可直译"欧金金"|
| ほんばん | honban | 真实插入的性行为 | 真枪实弹、来真的、本番(音译)|
| すまた | sumata | 股间摩擦(不插入)| 素股(音译最常用)、腿交、磨大腿 |
| せいかん | seikan | 户外/野外性行为 | 野战、户外做爱 |
| エッチ | etchi | 性行为/色情的 | 做爱、嘿咻、H(音译)|
| アヘ顔 | ahegao | 高潮时翻白眼吐舌的表情 | 阿黑颜(音译)、高潮脸、失神脸 |
> 以上隐语**仅在成人/色情语境成立**。若文本语境明确为普通水果/物品(如菜谱、
> 生活对话),仍按字面翻译。规则注入时结合"成人隐语"提示,交由 LLM 判断语境。
代码实现见 `nodes/proper_nouns.py``ADULT_EUPHEMISMS` 表与
`build_proper_noun_rule`