1. 先做一件事:让 AI 回答你
对着板子按一下 BOOT,说一句话(比如"你叫什么名字"),再按一下。盯着屏幕看几秒,回答就来了。
现在请你回答我一个问题(先别往下翻):
刚才那句话,是板子自己想出来的吗?
大多数人会以为是。我们把答案留到第 5 节揭晓。先做实验、收集证据。
2. 屏幕上的四格是什么:一场 AI 接力赛
跑完一轮后你会发现,屏幕顶部有四个格子,是一格一格依次亮的:
四个格子就是四棒接力:
| 棒次 | 名字 | 谁在做 | 在哪里 |
|---|---|---|---|
| 1 | 录音 | 板子用麦克风把你的声音变成数字 | 板子 |
| 2 | 识别 | 百度语音把声音"听写"成文字 | 云端 |
| 3 | 思考 | 豆包大模型读文字、想回答 | 云端 |
| 4 | 回答 | 板子把回答画到屏幕 | 板子 |
注意每个格子的顶条颜色:青色顶条 = 板子上的环节;粉色顶条 = 云端上的环节。看懂了吗?第 2、3 棒根本不在你手上这块板子里。
任务 1:预测再实测
先不看屏幕,猜一猜:第 2 格"识别"和第 3 格"思考",哪一棒会花更久?写下来,然后跑一轮看底部报告的毫秒数,把实测数字填进去。
| 你的预测(哪棒最久) | 实测:录音 ms | 实测:识别 ms | 实测:思考 ms |
|---|---|---|---|
3. 板子 = 手脚,云端 = 大脑
把上面的接力赛横过来看,就是一张"分工图":
一句话记住:板子会"采集、发送、显示",云端负责"听懂、思考"。板子从头到尾没有理解你说的内容——它像你的手,帮你把话递出去、把答案接回来。
💡 想一想:既然聪明的部分都在云端,那"换一块更贵的板子"会让 AI 回答得更聪明吗?(不会——聪明在云上,不在板上。)
4. 为什么回答要"等"?
你有没有发现:说完话要等一两秒,回答才出来。别嫌它慢,看看这三段各自花了多少时间:
- 你的声音要先上传到云端(第 2 棒);
- 云端的两个"同事"要接力干活(第 2、3 棒);
- 回答再下载回板子(第 4 棒)。
所以那几秒不是"板子卡了",是数据真的在路上跑。你可以用屏幕底部的"本轮耗时"当秒表,数一数哪一棒最贵。
5. 动手做实验:拔掉"跑道"
现在做本课最重要的验证。把路由器连外网的线拔掉(或请老师把 WiFi 改成错的),再按 BOOT 说一句话,观察:
- 第 1 格"录音"还亮吗?还走吗?→ 走,因为它在板子上,不靠网络。
- 接下来卡在哪?→ 卡在要去云端的第 2 或第 3 棒。
- 屏幕出现什么字?→ 一句"云端连不上"的提示。
结论:没有网络,板子能录音、能报错,但不能识别、不能思考。听懂你、想答案的,确实在云端。
🔍 现在你可以回答第 1 节的问题了:那句话不是板子想的,是云端想好再送回板子显示的。
6. 想自己看懂一点点代码:两个名字就够
打开 demo01_ai_chain.ino(或问 AI 帮手),我们只看两个名字:
- state:板子的"接力棒位置"。程序不停地问自己:现在是"正在录音 / 正在识别 / 正在思考"中的哪一个?顶部四格亮哪格,就是 state 说了算。
- url:把数据寄到哪里的"网址"。寄到百度语音的地址 = 让它听懂;寄到豆包大模型的地址 = 让它想答案。
中文伪代码大概是这样的(不用背):
如果 state 是「正在录音」:继续收声音(3 秒或你再按一次结束)
然后 state = 「正在识别」:把声音寄到百度语音的 url
然后 state = 「正在思考」:把文字寄到豆包大模型的 url,等回答
然后 state = 「准备好了」:把回答画到屏幕上
💡 想改变 AI 的风格(比如让它当"海盗")?去找代码里那句 system 提示词,把它改掉再烧录——第 26 课我们会专门玩这件事。
7. 自检小测(点开对答案)
1. AI 的回答是板子自己想的吗?
不是。回答由云端大模型(豆包)生成,板子只负责把文字显示出来。2. 四段接力里,哪两段在云端?
第 2 段"识别"(百度语音)和第 3 段"思考"(豆包大模型)。3. 为什么 AI 回答要等几秒?
声音要上传云端,云端识别+思考要花时间,回答再下载回来。屏幕底部的"本轮耗时"能让你看到每段各多久。4. 拔掉网线后哪段还能跑?
第 1 段"录音"(在板子上)还能跑;要去云端的识别、思考都跑不了。5. 代码里 state 和 url 各管什么?
state = 现在进行到第几棒;url = 把数据寄到哪一朵云。8. 挑战任务
- 读耗时:连续问三次,把三组"录音/识别/思考"毫秒数记下来,哪一棒最稳定、哪一棒忽快忽慢?
- 换角色:请 AI 帮手把 system 提示词改成"你是很啰嗦的老师,每句话都要带三个问题",回答风格立刻变——但变聪明了吗?(没有,只是提示词变了。)
- 想边界:如果你问"我上周三午饭吃了什么",它大概率答不上来。为什么?把原因写下来,下次课我们聊"云端记得什么、不记得什么"。