开始之前:小明来求助
你好,我是吴老师。
这是"产品经理"系列的最后一课。
小明带来的麻烦,听起来最简单:
请你扮演一个四年级的小学生,名字叫小明。
你有一个麻烦:学校里来了个外国小朋友,你想跟他说话,
可是你一个英文单词都不会说,只能说中文,特别着急。
(别的你也不知道 —— 你就是个普通小学生,没想过怎么解决。)
规则:
1. 你说话要像一个真的四年级学生:句子短,想到什么说什么
2. 一次只说一点,别一口气把情况全说完了 —— 等对方问你
3. 对方问你什么,你就老实回答什么
4. 你不知道"该做什么工具",你只知道自己有这个麻烦
现在开始:先打个招呼,然后说说你的麻烦。
说完就停下来,等对方提问。
一、⚠️ 这次的坑,最隐蔽
你可能已经在想:"做个翻译机呗,把中文翻成英文。"
很合理。而且 —— 这次真的就是做翻译机。
⚠️ 但"翻译机"这三个字,盖住了一个更大的问题。
翻译机要输入中文。他怎么输入?
先别动手。
二、像侦探一样问他
这次采访的重点和前面几课不太一样。
前面你问的是"他什么时候用、怎么用";这次你要问的是"他做得到吗"。
| 该问 | 想挖出什么 |
|---|---|
| ⭐ "你会打字吗?" | 中文他会打;英文呢? |
| "你以前查过英文吗?怎么查的?" | 他试过的办法里,卡在哪儿了 |
| "对方在等着你的时候,你来得及查吗?" | 决定了它要多快 |
| ⭐ "你是一个人看,还是要给他听?" | 决定屏幕上该显示什么、要不要读出来 |
| ❌ 别问 | 为什么 |
|---|---|
| "你是不是要个翻译软件?" | 你把答案塞给他了 |
| "你要什么功能?" | 他要是知道,就不用找你了 |
⭐ 第一问和第四问最关键。
- 中文:板子上的键盘只有字母和数字,打不出汉字(汉字好几千个,屏幕排不下)
- 英文:他一个单词都不会 —— 连"火车"怎么拼都不知道
也就是说:让他"打字查词"这条路,两边都走不通。
三、你到底问出了什么
| 要回答 | 从小明的话里 |
|---|---|
| 他真正的麻烦 | 不是"不会翻",是根本没法把中文输进去 |
| 什么时候用 | 课间、面对面 —— 对方在等着 |
| 怎么算做成了 | 当场就能让对方听懂,不用掏手机、不用打字 |
⭐ 看出来了吗?
你想的是一个翻译工具;他真正需要的是**"说话就能用"**。
💡 这一条会落到两个技术点上(记住它们):
- 输入必须靠"说" —— 第 24 课学的"听懂你说话",正好用在这儿
- ⭐ 翻完还得"读出来" —— 因为是要给对方听的,不是给自己看的
本课一句话:中英翻译 = 你说中文 → 识别成文字 → 大模型当"翻译官"翻成英文 → TTS 读出来。翻译"准不准、地道不地道"关键在那份"翻译官"提示词——它决定 AI 是"直译生硬"还是"翻得自然"。
四、先让板子当回"翻译机"
先别听我讲,让板子演示一遍。
请使用课程的 esp32s3-touchboard-hardware-dev Skill,
烧录本课配套程序 assets/codes/demo01_translator:
板子显示"按住说话,说你想翻译的话"。
按住 BOOT 说一句中文(比如"今天天气真好"),
松开后板子识别成文字,请大模型翻成英文,屏幕显示,再朗读出来。
烧录前把密钥和 WiFi 填好(见 README)。烧录后告诉我:
你说的中文是什么?AI 翻成了什么英文?它读出来了吗?
几秒后,屏幕出现"按住说话"。你说"今天天气真好",松开后,屏幕先显示"我说:今天天气真好",然后"翻译中……",接着显示英文 "The weather is so nice today.",同时喇叭把它读出来。
五、拆开看:翻译机的"三步" + 一个"朗读"
flowchart LR
A[你说中文] --> B[1 识别<br/>百度STT<br/>声音变文字]
B --> C[2 翻译<br/>火山Ark<br/>大模型当翻译官]
C --> D[3 显示+朗读<br/>屏幕显示英文 + TTS读出来]
style B fill:#22d3ee,color:#131a22
style D fill:#22d3ee,color:#131a22
style C fill:#f472b6,color:#131a22
- 1 识别:你说中文 → 百度 STT 变文字。这是前面学过的。
- 2 翻译:板子把中文 + "翻译官提示词" 寄给大模型 → 返回英文。
- 3 显示 + 朗读:屏幕显示英文,再交给 TTS(第 25 课)读出来。
关键:第 2 步"翻译"是关键。大模型天生会"中英换字",但"换得准不准、像不像人话"取决于你怎么告诉它。这就是"翻译官提示词"的设计。
六、一份"好翻译官"提示词,要说清什么?
先看 版本 A:只让它"翻译"
system 提示词:请翻译。用户输入:今天天气真好。
AI 可能回 "Today weather good."——直译、生硬、不像英语,因为没教它"翻得自然"。
再看 版本 B:说清"当翻译官、怎么翻、翻成什么"
system 提示词:你是专业的中英翻译官。请把用户的话翻译成英文,
意思准确、语气自然(像真人说话,不是逐字直译)。
只输出译文,不要解释、不要加多余内容。
若用户说的是英文,就翻译成简体中文。
AI 可能回 "The weather is really nice today."——自然多了。
| 提示词里写的 | 效果 | 为什么 |
|---|---|---|
| 角色(专业翻译官) | 当"翻译官",不做别的 | 不会答非所问 |
| 任务(译成英文) | 明确"翻什么语言" | 中→英 / 英→中要分清楚 |
| 要求(意思准确、语气自然) | 翻得"像人话" | 避免逐字直译的"中式英语" |
| 约束(只输出译文、不要解释) | 干净,不多说 | 只要译文,不要"这句是……" |
| 方向(英文→中 / 中→英) | 双向都懂 | 你说中文翻英文,说英文翻中文 |
这一课你想练的:翻译提示词的核心,是"翻得准" + "翻得像人话" + "只给译文"。 你没写"像人话",它就逐字直译;你没写"只给译文",它就啰嗦解释。"翻译官"当得好不好,就看这几句提示词写没写清楚。
七、一个大坑:翻译结果"准不准"?
翻译完,别急着信。AI 翻译也可能错、可能生硬。 这是真实的:
| 你观察到 | 出现的可能 | 怎么应对 |
|---|---|---|
| 翻译生硬(中式英语) | 提示词没写"自然" | 补"像真人说话" |
| 翻错了单词 | 多义词 / 上下文没懂 | 换更具体的说法 |
| 术语翻得怪 | 专业词 AI 不一定对 | 人工核对 |
| 语气翻错了 | "你好"翻成生硬的 "How are you" | 加"语气自然" |
重要:AI 翻译是"看起来像翻译",不保证"准确"。 尤其正式场合(考试、论文、合同),翻译结果要人工核验。它更像"帮你翻译个大概",而不是"可靠翻译官"。这也是为什么提示词里要写"意思准确",但心里要有数:它可能不准。
另一个真实的点:联网 + 延迟。每次翻译要联网请求,会有等待。所以别指望"秒翻"——这是真实体验,不是 bug。
八、动手:把提示词改成你要的"翻译风格"
| # | 我在提示词里加/改这句 | 我预测翻译会 | 实际变化 |
|---|---|---|---|
| 1 | 加上"翻得更口语化一点,像聊天" | ||
| 2 | 加上"这是正式的邮件,请翻得严谨" | ||
| 3 | 改成"把英文翻成中文" | ||
| 4 | 加上"遇到人名地名保留原文" |
⚠️ 关键观察:你会发现,提示词里"语气/场景/方向"不同,翻译结果的味道完全不同。"口语化"和"正式严谨"是两种风格。你要"翻译成什么味道",就得在提示词里写清楚。
九、⭐ 交付给小明
装好之后,回头告诉他:
我做好了一个工具。它长这样:
____(把屏幕上的样子说给他听)
它不用打字,你按住说中文就行,松开会把英文念出来。
你觉得能帮上你吗?
认真听他怎么说:
小明:嗯……可是我不敢大声说,课间走廊里不好意思。 小明:还有,万一对方说的英文我听不懂呢?
⭐ 两句都很值钱。
第一句说明:工具再好,人不敢用也是白搭 —— 这是你下一个要解决的。 第二句更有意思:它只会"中 → 英",反方向还不会。 反方向要用的,正是"听懂你说话"那个本事(把输入换成录对方的音)。
客户的抱怨,往往就是下一个功能。
十、分析:这个翻译项目用了哪些技术?
| 技术 / 概念 | 在这里干什么 | 你之前在哪学过 |
|---|---|---|
| 语音识别(百度STT) | 你说中文 → 变文字 | 第 24 课 |
| 大模型翻译(火山Ark) | 当"翻译官",中→英 / 英→中 | 第 26 课 |
| 翻译提示词 | 规定"怎么翻、翻成什么、只给译文" | 第 35 课 |
| TTS 朗读 | 把英文读出来 | 第 25 课 |
| JSON 解析 | 从 choices[0].message.content 取译文 | 第 19/26 课 |
| HTTP + JSON | 发送中文、接收译文 | 第 19 课 |
⚠️ 翻译结果要人工核验:AI 不是可靠的翻译官,可能生硬/出错;正式内容必须人再核一遍。AI 翻译是"生成式"的——它是在"编一个像翻译的东西",不是在"查字典"。
十一、如果它没按你想的来
| 现象 | 先查什么 |
|---|---|
| 识别错了中文 | 说清楚点、安静点;看串口的识别结果 |
| 翻译生硬 / 不像英语 | 提示词没写"语气自然"——补上 |
| 只给"这句话的意思是……" | 提示词没写"只输出译文"——补上 |
| 方向反了 | 提示词写"译成英文/中文"了吗? |
| 不朗读 | TTS 链路对吗?喇叭工作吗? |
| 等了很久 | 联网延迟;检查网络 |
记住:翻译"生硬/出错/罗嗦",多半是提示词没写清;"不出声"才是程序/网络问题。去改提示词,别改代码。
十二、下课前,把"翻译机"讲给我听
先别看 AI 的回答,自己说一遍:
- ⭐ 小明说"我想跟他说话",他真正的麻烦是什么?你是怎么问出来的?
- 翻译机分哪三步 + 一个朗读?哪一步是"翻译"?
- 一份"好翻译官"提示词,要写清哪几样?(角色/任务/要求/约束/方向)
- 为什么"像人话"这个要求很重要?没写它,AI 会翻成什么?
- 翻译结果准吗?为什么正式内容要人工核验?
- 这个项目用了哪些技术?
- 为什么说"AI 在编翻译,不是在查字典"?
今天请留下三样东西:你让翻译机翻的一句话(中→英)、你改的一个提示词(比如"更口语")、以及一句"翻译官提示词该写什么"。
十三、最后留给你:AI 是"翻译官",不是"词典"
这一课你看到了 AI 做翻译的本质:它不是在"查一个词",而是在"编一句意思像的话"。 这让它翻得自然(能说人话),但也让它可能翻错(编错意思)。
所以给 AI 当翻译官,你要:
- 写清"翻得自然",让它像人话;
- 写清"只给译文",别啰嗦;
- 心里有数"它可能错",重要内容核一遍。
这既会用 AI,又不会被 AI 坑。 下一课我们做会议记录——把语音变成能保存的文字,你会发现:又是"识别 + 大模型整理 + 存下来"这个套路。
教师备课备注(不作为课堂口播)
课程定位
- ⭐ 2026-09-24 改版:本课加了「产品经理」范式(连同 34 / 36 / 37 / 46)。
结构:小明来求助 → 采访 → 挖真需求 → 做 → 交付 → 听反馈。
- 本课的真需求反差:他嘴上说"我想跟他说话"(听着像"要个翻译机"), 但一问"你会打字吗"就撞上墙 —— 中文打不出(键盘没汉字)、英文不会拼。 真需求是"根本没法输入"。
- ⚠️ 必须回接两个技术点(断了就白改): ① 不能输入 → 只能用"说"(第 24 课 STT 那一步不是可选项); ② 翻出来是要给对方听的 → 所以还得 TTS 读出来(第 25 课)。
- 交付时小明说"我不敢大声说" —— 指向"常用句子按钮"(点一下直接出,不用再说一遍)。
- 第九章「AI 生活」第 5 课。完整链路"语音输入(STT) → 大模型翻译(Ark) → 显示 + TTS 朗读",落点是"翻译官提示词"(角色/任务/要求"自然"/约束"只给译文"/方向),以及"AI 是生成翻译,不是查字典,要人工核验"。
- 与第 25 课 TTS、第 26 课大模型、第 24 课 STT 直接串联。复用
Example_30_ai_chat(仓库里唯一实现了"录音→STT→大模型→TTS播放"完整闭环的老 Demo)。 - 翻译结果要人工核验是本课 AI 素养点:AI 生成式翻译可能生硬/出错,正式内容必须人核。
本课新增的核心知识点
- 翻译官提示词:角色(翻译官)/任务(译成英或中)/要求(意思准确、语气自然)/约束(只给译文、不要解释)/方向(双向)。核心是"自然"和"只给译文"。
- 生成翻译 vs 查字典:AI 在"编一句意思像的话",可能自然、也可能错。不是查词典。
- 人工核验:正式内容(考试/论文/合同)必须人核,AI 翻译只是"大概"。
- 语音链路复用:STT(入) → 大模型(翻译) → TTS(出)。复用
Example_30。 - 联网延迟:翻译要联网,真实体验是等待。
必须避免的错误
- 不要说"AI 翻译很准/可以当翻译官用"。它是生成式,可能生硬/错;重要内容要人工核验。
- 不要把"翻译提示词"写成固定模板死记——重点是"你写'自然/只给译文',它就翻得自然、干净"。引导学生观察"改一字、翻译变"。
- 不要把它当正式翻译工具用。课堂强调"帮翻译个大概 + 自己要核验"。
- 密钥绝不进口播稿/截图;演示机用 config.real.h 覆盖。
执行约束
- FQBN:
esp32:esp32:esp32s3:FlashSize=16M,PartitionScheme=app3M_fat9M_16MB,CDCOnBoot=cdc,PSRAM=opi - 依赖:
TFT_eSPI、ArduinoJson、HTTPClient、WiFiClientSecure、arduino_base64、es8311(项目内)、font/ChineseFont16.h;TTS 播放复用Example_30的Audio库链路。 - 音频缓冲 96KB 用
ps_malloc(PSRAM);PSRAM=opi必开;音频引脚同 32/47 课。 - 提示词参数:
temperature=0.3(翻译要稳定)、max_completion_tokens适当、thinking disabled(必须关)。 - 凭证:百度(STT/TTS)+火山(Ark),只放 config.real.h,源码占位符。
课堂执行要点
- 顺序建议:demo01(现象:说中文→翻英文→读出来) → 三步+朗读拆解 → 翻译官提示词 A/B 对比 → 改提示词实验 → 翻译结果"准不准"讨论(人工核验) → 下课前复述。
- 灵魂追问 ①:"为什么同样的中文,提示词不同,翻译的味道完全不同?"——引出"生成式翻译靠提示词定风格"。
- 灵魂追问 ②(素养):"AI 翻译能直接交作业/当正式翻译用吗?"——引出"AI 在编翻译,不在查字典,要人工核验"。
- 观察表先预测后实测。
- 翻译风格对比实验要多试几种(口语/正式/方向),让学生直观感受"提示词定味道"。
待办与遗留
demo01_translator源码已写(复用 Example_30 语音链路 + 翻译提示词),尚未实板验证。吴老师实板验收重点:① 识别;② 火山Ark翻译是否"自然";③ TTS朗读;④ 提示词改动是否改变翻译风格;⑤ 相对 Example_30 的差异。- 实机翻译数据(提示词→翻译质量)待回填;多风格对比建议实机记录。
- TTS 播放链路(Example_30 的 Audio)相对复杂,若课堂时间紧可先做"显示翻译"(不朗读),朗读作为拓展。