AI脑洞板
完整教案
自学课件
第 35 课 · 共 35/51 课

AI 学习助手——让 AI 引导思考 让 AI 引导思考

课时
待定
器材
ESP32-S3 触摸屏板 + USB 线
前置知识
无
配套代码
见项目 demo 目录

让板子当"辅导老师"?

你好,我是吴老师。

上一课板子帮你"记得"安排。今天它要帮你想问题——当个学习辅导老师。

但先问你一个直击本质的问题:你问 AI 一道题,它是"真的会",还是"按你告诉它的方式说话"?

答案藏在提示词里。同一个 AI,你给它不同的"自我介绍"和"要求",它说话的方式会完全不同——有的啰嗦、有的简洁、有的直接告诉你答案、有的引导你自己想。

本课一句话:提示词(Prompt)是给 AI 的"工作说明书",不是"命令"。 你说得越精确,AI 输出的越贴近你想要的效果。今天我带你亲眼看:同一道题,改一句提示词,AI 的回答就变一个样。

一、先让板子"开口讲题"

先别听我讲,让板子演示一遍。

请使用课程的 esp32s3-touchboard-hardware-dev Skill,
烧录本课配套程序 assets/codes/demo01_ai_tutor:
板子上列出 3 道题(勾股定理、鸡兔同笼、水的沸点),
点任意一道,板子会"讲"给你听。
烧录前把 config.real.h 的密钥覆盖进去(见 README),并填好 WiFi。
烧录后告诉我:点了"鸡兔同笼",屏幕怎么讲的?

🔑 关于密钥:这个 demo 要联网调用真实大模型(火山豆包),需要 API Key。密钥放在本机 config.real.h,烧录前再覆盖,绝不写进教案、代码里或截图。 如果教室没网,代码里设了"离线演示"兜底,也能看到交互流程。

二、"讲"和"直接给答案",差一句提示词

现在重点来了。同样的"鸡兔同笼"这道题,我让它用两种不同的提示词各讲一次,你对比。

版本 A:直接给答案

system 提示词:你是一位数学老师,请直接回答:鸡兔同笼问题怎么解。

版本 B:引导思考、分步讲

system 提示词:你是一位耐心的学习辅导老师,请用通俗易懂、分步骤的方式讲解,引导思考,适合青少年理解。

请你把两种回答都记下来,填进这张表:

✏️ 可以直接在表格里填写
版本 A(直接给答案)版本 B(分步引导)
回答有多长?
是先给答案,还是先讲思路?
有没有"追问"或"你自己试试"
更像"抄作业"还是"学会方法"?

看出区别了吗? 同样一个 AI、同样一道题,就因为 system 提示词里多了"分步骤、引导思考、适合青少年"这几句,回答就从"步骤版"变成"引导版"。

这就是本课的核心问题:AI 不是一个开关,而是一个"听话的演员"。你想让它演"耐心老师",就得把"耐心老师"的台词写清楚。

三、提示词到底在"指挥"什么?

AI 回答之前,总会先读一段叫 system 提示词的东西——那是你给它定的角色和工作方式。它就像演员上台前拿到的角色设定卡。

来看三个真实项目里用的 system 提示词(都是仓库里已验证的),你对比它们"指挥"的部分有什么不同:

项目system 提示词原文它"指挥"了什么
AI 学习助手(今天)"你是一位耐心的学习辅导老师,请用通俗易懂、分步骤的方式讲解,引导思考,适合青少年理解。"角色(老师)+ 方式(分步讲解)+ 受众(青少年)
AI 聊天(第 26 课)"你是我的AI助手,叫语音小助手,你必须用中文回答且字数不超过60个"角色(助手)+ 约束(中文、≤60字)
你画我猜(第 27 课)"你是猜画游戏助手。用户画了简笔画,请直接说出答案,回复尽量简短(几个字即可),不要解释、不要思考过程。"角色 + 任务 + 负面指令(不要解释)

发现规律了没有? 每条提示词都由几块组成。我们给它起个名字,叫提示词的"四要素":

要素说明例子
1. 角色(你是谁)告诉 AI 当什么人"耐心的学习辅导老师"
2. 任务(做什么)叫它具体干什么"分步骤讲解鸡兔同笼"
3. 约束(多长/什么语言)限制结果"用中文、不超过60字"
4. 负面指令(别做什么)明确不要什么"不要解释、不要直接给答案"

一句话记住:写提示词,就是在给 AI 填这四张卡。缺一张,AI 就自己在那一项上"自由发挥"。

四、动手玩:加一句提示词,看它怎么变

现在轮到你。请把 demo01 的提示词改一改,每种改法先预测、再烧录、再记录:

✏️ 可以直接在表格里填写
#我在提示词里加/改这句我预测 AI 会实际回答的变化
1加上"每次只讲一步,等我回复再来下一步"
2加上"不要直接告诉答案,先问我你卡在哪"
3改成"用小朋友能听懂的话,越短越好"
4删掉"引导思考",改成"直接给出答案"

⚠️ 一个关键观察:你可以试试让两条要求互相冲突——比如既说"分步骤引导",又说"直接给出答案"。AI 会怎么"打架"?它只能二选一(或硬着头皮两者兼顾)。这说明:提示词里互相矛盾的要求,AI 是没法替你解决的,它只会按优先级或字面意思糊弄过去。 你写得越自洽,它执行得越听话。

这正是今天最想让你带走的能力:改提示词不是"顺手加一句",而是清楚地知道我要它做什么、不要它做什么,然后一次说清。这比记住任何一条 AI 妙招都重要。

五、分析:这个 AI 项目用了哪些技术?

我们不让 AI 深挖代码,但你要能说清这个项目"从你点下问题到屏幕显示回答",中间经过了多少步、用了什么技术。看这张"流水线图":

flowchart LR
    A[你点一道题] --> B[板子把问题+提示词<br/>打包成 JSON]
    B --> C[通过 HTTPS POST<br/>发给云端大模型]
    C --> D[云端按提示词生成回答,<br/>返回 JSON]
    D --> E[板子解析 JSON<br/>取出回答文字]
    E --> F[中文换行显示到屏幕]
    style B fill:#22d3ee,color:#131a22
    style F fill:#22d3ee,color:#131a22
    style C fill:#f472b6,color:#131a22

看懂这张图的标志:青色的在板子上(打包、解析、显示),粉色的一步在云端(真正的"想"发生在云端)。

列一张"零件表":

技术 / 概念在这里干什么你之前在哪儿学过
HTTP POST + JSON把"问题 + 提示词"打包成一段文字,发给云端的 AI第 19 课(HTTP/JSON)
HTTPS用加密通道发,别人偷看不了你问的问题第 19 课(安全)
system / user 消息system=角色设定(提示词),user=你真正的问题本课新增
大模型(云端)真正"理解题型、组织讲解"的地方第 23 课(端侧采集云端理解)
JSON 解析收到回复后,从 choices[0].message.content 里取出回答第 19 课(deserializeJson)
中文换行显示AI 的回答是一长串,要按屏幕宽度换行第 9 课(中文显示)

⚠️ 一个重要理解:"想"这件事不在板子上。板子只负责把问题和提示词"寄出去",把回答"收回来"、显示出来。真正的理解、推理,发生在云端的服务器上。所以它依赖网络、会延迟、也可能答错——这是第 23 课就讲过的"端侧采集、云端理解"。

⚠️ 还要理解"AI 会错":它讲的不一定对,只是个很会说话的"演员"。所以 AI 回答要核验——尤其数学题,别全信。这也是为什么提示词里要写"引导思考",而不是"告诉答案"。

一句话总结:这个项目 = 把"问题+角色要求"打包好,经 HTTPS 寄给云端大模型,再解析回答、中文显示。它没有"聪明"在板子上,聪明在云端;板子干的是打包、寄送、拆包裹、摆上桌。

六、如果它没按你想的来

现象先查什么
点了没反应 / 一直"思考中"联网了吗?密钥填对了吗?看串口的 HTTP 状态码
屏幕显示"请求失败(code=xxx)"code 不是 200 → 密钥错/网络断/服务限流
屏幕显示"解析失败"云端返回的格式和你预期不符
回答的不是你想要的风格不是程序坏了,是提示词没写清——回去改 system 提示词
中文显示乱码中文字库复制了吗?用了 drawUtf8() 吗?

关键区别:前四项是"程序/网络"问题,老师能帮查;最后一项(回答风格不对)是"提示词"问题——别找老师修程序,回第四条去改你的提示词。

记住:AI"没听懂你",九成是因为你"没说清它要什么"。

七、下课前,把"提示词"讲给我听

先别看 AI 的回答,自己说一遍:

  1. 板子问 AI 一道题,AI 是怎么"知道"自己该当老师、该分步讲、适合青少年?——它读的是什么?
  2. 提示词的四要素是哪四个?各举一个例子。
  3. 同样一道题,为什么"直接给答案"和"引导思考"提示词会得到两种回答?
  4. 如果提示词里同时写"分步讲"和"直接给答案",AI 会怎样?为什么说这是"你自找的"?
  5. 这个 AI 项目的"想"发生在哪里?板子负责哪三步?
  6. 为什么 AI 数学题答案不能全信?提示词应该怎么写才更可靠?

今天请留下三样东西:你改提示词后对比的两次回答、你发现的一个"互相矛盾提示词"的现象、以及一句"写提示词我先想到的要素"。

八、最后留给你:提示词是你的"遥控器"

这一课你最该带走的,不是"AI 会用哪几个 API",而是这个:

提示词是你对 AI 的遥控器。 想让 AI 帮你做什么、不做什么、用什么语气、多长,都看你怎么"遥控"它。

你想要的效果提示词里要写什么
帮我检查作业角色:检查作业的老师;要求:逐题指出对错和原因
帮我背单词角色:单词老师;要求:一次出 5 个,答对打勾,错了再考
帮我列计划角色:规划师;要求:把一个目标拆成可执行的小步骤
懂我情绪的树洞角色:倾听者;要求:先共情,再引导,不评判

这些会说话的规律,我们接下来的 36、37 课还会再用。 下一课,我们让板子当"单词老师",你会看到——怎么用提示词和数据结构,把"背单词"做成一件板子真能帮上忙的事。


教师备课备注(不作为课堂口播)

课程定位

  • 第七章「学习助手」第 2 课,也是全章提示词能力主线的高潮课。第 34 课第一次引入"提示词=翻译需求",本课把这件事做透:系统性地讲提示词四要素(角色/任务/约束/负面指令),并让学生亲手"改一句提示词看效果变化"。
  • 技术主线:HTTPS + HTTP POST + JSON 发送、大模型云端生成、JSON 解析回显、中文换行。落点是"想发生在云端,板子负责打包/寄送/拆包/显示",严格对偶第 23 课"端侧采集、云端理解"。
  • 技术与原理并重:不深入代码,但要能画出"流水线图"(打包→寄→云端想→回→解析→显示)和"零件表"(每项技术干什么、在哪学过)。
  • 与第 26 课(大模型对话)、第 27 课(你画我猜)对照:复用它们已有的 system 提示词,形成"提示词四要素"的对比素材库。

必须避免的错误

  • 不要说"板子会思考/理解题目"。统一口径:"云端按提示词生成回答,板子负责打包、寄送、解析、显示。"
  • 不要给 AI 数学答案担保。要强调"AI 可能答错,必须核验",这决定提示词里写"引导思考"而不是"告诉答案"。
  • 密钥绝不进口播稿、课件截图、串口日志。演示机用 config.real.h 覆盖后编译。
  • 提示词训练不要变成"背提示词模板"——要让学生观察改了哪个要素、效果怎么变,而不是记固定句子。

本课新增的核心知识点

  1. 四要素:角色(你是谁)/ 任务(做什么)/ 约束(多长/语言)/ 负面指令(别做什么)。写提示词=填四张卡。
  2. system vs user 消息:system 是角色设定(提示词),user 是你的提问。AI 先读 system 再答 user。
  3. 提示词矛盾:同时要求"分步讲"和"直接给答案",AI 无法自洽,要么按字面糊弄——正是"精确描述"的反面教材。
  4. 想发生在云端:联网、延迟、可能错;板子只是快递员+显示屏。
  5. 回答要核验:数学等答案不可全信,提示词应引导"学会方法"而非"抄答案"。

执行约束

  • FQBN:esp32:esp32:esp32s3:FlashSize=16M,PartitionScheme=app3M_fat9M_16MB,CDCOnBoot=cdc,PSRAM=opi
  • 依赖:TFT_eSPI、FT6336、WiFi、WiFiClientSecure、HTTPClient、ArduinoJson;中文字库 font/ChineseFont16.h。
  • 凭证安全:密钥在 API接入/config.real.h(真实值,绝不进教案/源码/截图)。demo 源码顶部是 YOUR_VOLCENGINE_API_KEY 占位符,烧录前用本机 config.real.h 覆盖。
  • 模型:火山引擎豆包 doubao-seed-2-0-lite-260428(OpenAI 兼容 chat/completions)。temperature=0.7、max_completion_tokens=500。
  • 联网:USE_ONLINE=true 需 WiFi + 有效 key;教室无网时保持 USE_ONLINE=false 走离线兜底,仍能演示交互与提示词对比(离线答案是预置的,提示词改动不影响离线答案——提示词对比实验需在联网模式下才真实可见)。
  • 中文字库:同 34 课,font/ChineseFont16.h + drawUtf8(),README 有复制命令。
  • 屏幕排线、触摸引脚同 34 课。

课堂执行要点

  • 顺序建议:demo01(现象:点题→板子讲题)→ 版本 A/B 提示词对比表(先预测再实测)→ 四要素讲解(用仓库 3 段真实提示词当素材)→ 学生改提示词实验(第四节表格,先预测后烧录)→ 流水线图 → 下课前复述。
  • 灵魂追问 ①:"AI 不是一个开关,是听话的演员"——改一句 system 提示词,回答就变一个样。
  • 灵魂追问 ②(本课题眼):提示词里互相矛盾的要求,AI 没法替你解决——这正是"必须精确、自洽"的原因。
  • 提示词实验必须先预测后实测;离线兜底会掩盖提示词改动效果,务必联网实测。

待办与遗留

  • demo01_ai_tutor 源码已写(含中文字库、密钥占位符、在线/离线双模式),尚未实板验证。吴老师实板验收重点:① 中文字库渲染;② 在线调用 choice[0].message.content 是否取到;③ 提示词改动(四要素实验)是否真实改变回答;④ WiFi/密钥配置路径是否正确。
  • 实机联网数据(回答长度、延迟、token 用量)待回填。
  • 密钥覆盖流程(config.real.h → demo)待写成标准操作并在实机走通。

第 35 课 · AI 学习助手

第 35 课 · AI 学习助手

点一下屏幕上的问题,板子就把问题发给云端大模型,再把分步讲解显示出来。

35AI大模型提示词
第 35 课 · 提示词实验室

第 35 课 · 提示词实验室

同一个问题问两遍,屏幕上下并排摆出两种答案,亲眼看见改一句提示词回答就变了样。

35提示词大模型