四海通——旅行全能翻译官
> 🌏 让你的旅行方案走遍世界。一键翻译行程表、记账单、手绘图标注、提醒清单到 9 种语言。
Overview
为结伴出游全能规划助手(jiebang-travel-planner)提供多语言翻译能力。v1.1 起不再是纯文档——附带可独立运行的 Python 翻译引擎(scripts/translate_travel_plan.py)和 100+ 条目的多语言术语库(食物名解释性翻译、地名国际标准、常用短语卡片)。
安全底线:JSON 输入数据为不可信输入。翻译引擎内置 _filter_prompt() 过滤 prompt 注入模式,输出前 HTML/Markdown 特殊字符转义。详见 references/content-sanitization.md。
When to Use
| Scenario | Trigger |
|---|---|
| 海外酒店需要英文版行程单 | 「帮我把行程翻成英文」 |
| 外国朋友看中文行程不方便 | 「翻译成日文发给日本同学」 |
| 餐厅/景点需要出示给外国人 | 「帮我翻一下手绘图标注」 |
| 需要双语对照版 | 「生成中英对照版」 |
| 留学生带爸妈出境游 | 「translate this to English」 |
Don't use for: 非旅行场景的通用翻译(用通用翻译工具);实时语音翻译;法律/医疗文档翻译(需专业翻译)。
🆕 可执行翻译引擎(v1.1 新增)
v1.0 只有说明文档。v1.1 起提供完整的 Python 翻译引擎:
# 纯译本
python scripts/translate_travel_plan.py plan.json -l en -o plan_en.md
# 双语对照
python scripts/translate_travel_plan.py plan.json -l ja --bilingual -o plan_ja.md
# 仅输出常用短语卡片
python scripts/translate_travel_plan.py plan.json -l ko --phrases-only
| Arg | Description | Default |
|---|---|---|
input |
中文旅行方案 JSON | Required |
-l, --lang |
目标语言 | en(en/ja/ko/fr/es/de/th/vi/id) |
-o, --output |
输出路径 | travel_plan_{lang}.md |
--bilingual |
双语对照模式 | off |
--phrases-only |
仅短语卡片 | off |
引擎特性
- Markdown 格式保留:表格结构、列表缩进、时间/货币格式原样保留
- 食物名解释性翻译:东坡肉 →
Dongpo Pork — braised pork belly in soy sauce - 地名国际标准:西湖 →
West Lake,故宫 →Forbidden City - 100+ 条目术语库:
references/translation_glossary.json(可独立扩展) - 常用短语卡片:餐厅/交通/紧急 3 类场景,目标语言直接可用
- 内置安全清洗:
_filter_prompt()过滤输入注入,HTML 实体转义
Translation Modes
Mode 1: Full Translation
一键翻译全部 7 个模块(天气→行程→提醒→购票→AA→速览→标注),保留原 Markdown 结构。
Mode 2: Module Translation
| Module | Special Handling |
|---|---|
| 行程表 | 餐厅名保留拼音+英文解释,地名用国际通用名 |
| AA 记账 | 货币符号不动,仅翻译项目描述 |
| 手绘图标注 | 主图保留简洁标注(3-6 词),附完整对照表 |
| 提醒清单 | 时间格式保留,事项完整翻译 |
| 天气提示 | 温度单位保留℃,翻译穿衣建议 |
Mode 3: Bilingual Side-by-Side
每个模块双列输出:左列中文原文 | 右列目标语言译文。食物名/地名附解释性翻译。
Supported Languages (9)
| Code | Language | Best For |
|---|---|---|
en |
English | International travel, hotel booking, Airbnb |
ja |
日本語 | Japan travel, sharing with Japanese friends |
ko |
한국어 | Korea travel, KakaoTalk sharing |
fr |
Français | France/Francophone regions |
es |
Español | Spain/Latin America |
de |
Deutsch | Germany/Switzerland |
th |
ไทย | Thailand travel |
vi |
Tiếng Việt | Vietnam travel |
id |
Bahasa | Bali/Indonesia travel |
Translation Principles
- 保留所有格式 — Markdown 表格/列表/时间/货币符号不动
- 食物名双重标注 — 拼音 + 英文/目标语言解释
- 地名规范化 — 有国际通用名用通用名,无则拼音+类别
- 不编造信息 — 原文「待确认」→「TBC(to be confirmed)」
- 保持语气 — 幽默/轻松的原文保持同样风格
- 手绘图标注 — 主图简洁标注 + 附完整对照表
Common Pitfalls
- 机器味直译食物名 — 「夫妻肺片」不能译成 Couple's Lung Slices。必须使用术语库的解释性翻译,未收录的标注 TBC。
- 地名跨城市混淆 — 「朝阳公园」在北京和长春都有。术语库优先收录著名景点,小众地名保留拼音+类别说明。
- 手绘图标注过长 — 地图标注控制在 3-6 词,超出部分放入对照表。
- 货币单位遗漏 — 翻译后费用项须保留 ¥ 符号,并在文末注明换算参考(如
¥100 ≈ $14 USD)。 - 术语库未命中时编造 — 术语库未收录的词汇保留原文,标注 TBC,不凭猜测翻译。
Verification Checklist
- [ ] Markdown 表格结构完整(列数一致、分隔符对齐)
- [ ] 食物名含拼音 + 解释(格式:
Pinyin — explanation) - [ ] 地名使用国际标准或拼音 + 类别
- [ ] 货币符号 ¥ 保留,数值未变
- [ ] 「待确认」→「TBC」
- [ ] 短语卡片可直接使用(无需再翻译)
- [ ] 无 prompt 注入残留(JSON 输入经
_filter_prompt()清洗)
Reference Files
scripts/translate_travel_plan.py— 🆕 核心翻译引擎(280+ 行,独立可运行)references/translation_glossary.json— 🆕 多语言术语库(100+ 条目,9 种目标语言)references/bilingual_template.md— 🆕 双语对照输出模板与规范