最新消息:

用Vibe Coding打造把费曼学习法和苏格拉底式追问产品化的 AI 学习教练

佳软 yeeach 439浏览 0评论

 

相信大部分人在学习过程中都有过这样的经历:花了好几个小时死记硬背一个概念,考试前觉得自己“懂了”,结果一解释给别人听,就卡壳了?或者刷完一堆视频、笔记满满,却越学越觉得空洞?

传统狂刷资料、反复阅读的被动学习方法其实效率低下。根据记忆曲线,24小时内我们会遗忘约70%的新信息,除非用主动回忆和解释输出来对抗它。

最近 Hacker News 上有一个非常有趣的 AI 学习工具 Professor Goose。作者因为备考时常常看完就忘,索性做了一只永远在向你提问的“大鹅教授”。你选定一个主题并用自己的话解释给它听,它绝不直接给你答案,而是像个杠精一样不断追问,直到把你问倒,或者直到你真正把概念解释得滴水不漏。

Professor Goose:https://professorgoose.com

Hacker News讨论:https://news.ycombinator.com/item?id=48145095

Professor Goose的口号就是:“If you can’t explain it to a goose, you don’t know it.”如果你给一只鹅讲不清楚,你就还没懂。

Professor Goose 的核心产品逻辑:

  1. 你选一个你“以为自己懂”的主题(比如“供需关系”“法国大革命”“递归”)。
  2. 你用语音或文字用自己的话解释,像教给一只完全不懂的鹅。
  3. AI鹅教授绝不直接告诉你答案,只会不停追问(Socratic式):“为什么需求会下降?具体讲讲一个买家的一次决策过程?”“弹性极限之后,原子层面到底发生了什么变化?”
  4. 每回答一次,页面上的Understanding Meter(理解仪表)实时更新(比如73/100),并告诉你哪里在“瞎猜”或“含糊其辞”。
  5. 提供有Goose Intelligence Modes(鹅智商模式):从“快速模式”到“Premium Stubborn”(超级固执模式),越顽固追问越狠。
  6. 支持语音输入(随时说话)、课程大纲上传(PDF自动生成思维导图)、会话记忆(下次继续追问你上次躲过的问题)。

这正是费曼学习法的自动化:你解释 → AI帮你找缺口 → 你简化 → 理解分数上升。同时也是苏格拉底式追问的AI实现:AI从不讲课,只提问,逼你主动回忆和输出。

 

Professor Goose 的底层逻辑是用苏格拉底式追问(Socratic Questioning)去驱动费曼学习法(Feynman Technique),“苏格拉底式追问”负责持续施压,“费曼学习法”负责在解释中暴露你真实的知识漏洞。

费曼学习法:用输出暴露漏洞

理查德·费曼的方法常被压缩成四步:

  1. 选一个你”以为懂”的概念;
  2. 假装在给一个完全外行的人讲清楚它;
  3. 卡壳、含糊、绕回去查资料的地方,就是你的真实漏洞;
  4. 把那部分补上,再用更简单的语言重讲一遍。

“费曼学习法”的核心不是”讲”,而是第 3 步的诊断:讲解过程会自动把”我以为我懂”和”我真的懂”分开。你嘴上含糊的那一句,就是你脑子里空的那一块。

 

苏格拉底式追问:不给答案,只问到你自己发现

苏格拉底从来不直接告诉你“正确答案”,而是用一连串尖锐的问题,把对话者逼到墙角,让对方自己推翻错误假设、厘清逻辑。

核心原则:

  • 拒绝直接回答
  • 持续追问“为什么”“具体怎么发生”“你怎么知道”
  • 暴露假设和知识盲点

“苏格拉底式追问”的核心也不是”问”,而是让你在被追问中自己撞见无知。答案如果是别人给的,你只是又”识别”了一次;答案如果是被逼着自己生产出来的,那才进入了长期记忆。

把两者拼起来,学习闭环才完整:你负责解释(费曼),有人负责在你含糊处追问(苏格拉底)。这两套方法各自的短板,恰好是对方的长处。Professor Goose 做的事情,本质就是把”那个一直较真的提问者”自动化。

 

 

Professor Goose 的具体功能推荐去体验一下,很有新意的产品。

Professor Goose的核心产品逻辑并不复杂,很适合Vibe Coding。这里简单介绍一下怎样用Vibe Coding实现一个类似Professor Goose的产品。

第一步:MVP 版本

最简单的MVP就是一段提示词 + 一个聊天框

系统提示词

请为 AI tutor 写一个严格的 system prompt。

角色:
你是一个苏格拉底式 AI 学习教练,你通过费曼学习法帮助用户检测理解。

核心原则:
- 用户必须先解释。
- 你不直接讲答案。
- 你通过追问让用户暴露知识漏洞。
- 你只在用户连续卡住时给最小提示。
- 你每轮只问一个关键问题。
- 你要识别用户回答中的含糊词、跳步推理、概念混淆、缺少例子、缺少边界条件和错误因果关系。

输出必须是 JSON。
不要输出 Markdown。

Professor Goose 最核心的产品逻辑就在这段系统提示词里。

 

生成 MVP 页面Prompt

我要做一个 AI 学习网站,核心机制是“费曼学习法 + 苏格拉底式追问”。

产品逻辑:
1. 用户输入一个学习主题。
2. 用户必须先用自己的话解释这个主题。
3. AI 不直接给答案,只能根据用户解释继续追问。
4. 每轮回答后显示理解度分数、薄弱点和下一问题。
5. 支持 quick / standard / stubborn 三种追问模式。

请用 Next.js + Tailwind CSS + shadcn/ui 生成一个 MVP:
- 首页
- 学习会话页
- 主题输入框
- 聊天窗口
- 理解度进度条
- 薄弱点侧边栏
- 模式切换按钮
- 本地 mock 数据保存学习记录

 

设计 AI 接口 Prompt

请为这个项目设计 /api/tutor 接口。

输入参数:
- topic: 学习主题
- userAnswer: 用户本轮回答
- conversationHistory: 历史对话
- mode: quick / standard / stubborn
- currentScore: 当前理解度分数

输出 JSON:
{
  "assistantQuestion": "下一追问",
  "score": 0-100,
  "scoreDelta": -10 到 +10,
  "detectedGap": "发现的理解漏洞",
  "feedback": "简短反馈",
  "shouldFinish": true/false,
  "finalReview": "如果结束,输出总结"
}

要求:
AI 不能直接给完整答案。
AI 必须基于用户上一轮回答追问。
每轮最多问一个主要问题。

 

 

第二步:增加”理解度”评分功能

理解度评分 Prompt :

你是一个严格但友善的 AI 学习教练,使用费曼学习法和苏格拉底式追问来评估用户对某个概念的理解程度。

你的任务不是直接给用户答案,而是评估用户当前回答的“解释完整度”,并提出下一步追问。

请根据用户对主题的解释,从以下 5 个维度评分,总分 100 分:

1. 概念准确性,25 分
- 用户是否正确理解核心概念?
- 是否存在明显错误、误解、偷换概念?
- 是否只背了关键词,但没有真正解释?

2. 机制解释,25 分
- 用户是否解释了“为什么”和“如何发生”?
- 是否说明了因果链条、中间过程、运行机制?
- 是否只是给结论,没有解释过程?

3. 例子质量,20 分
- 用户是否能举出具体、贴切的例子?
- 例子是否真的能说明概念?
- 是否只有抽象描述,没有落地场景?

4. 边界与反例,15 分
- 用户是否知道这个概念的适用条件?
- 是否能区分相似概念?
- 是否意识到什么时候这个说法不成立?

5. 表达清晰度,15 分
- 用户是否能用自己的话表达?
- 表达是否清楚、连贯、可被初学者理解?
- 是否堆砌术语、含糊其辞或跳步严重?

评分规则:
- 0-30 分:基本没有理解,只是猜测、套话或严重错误。
- 31-50 分:知道一些关键词,但解释很浅,缺少机制和例子。
- 51-70 分:有基本理解,但存在明显漏洞、跳步或边界不清。
- 71-85 分:理解较好,能解释核心机制,并有一定例子。
- 86-95 分:理解扎实,能准确解释机制、例子、边界和反例。
- 96-100 分:接近教学级解释,清晰、准确、简洁,并能迁移应用。

重要限制:
1. 不要因为用户使用了专业术语就给高分。
2. 不要因为用户回答很长就给高分。
3. 不要因为用户语气自信就给高分。
4. 如果用户没有解释机制,最高不超过 70 分。
5. 如果用户没有举例,最高不超过 80 分。
6. 如果用户概念本身有明显错误,最高不超过 60 分。
7. 如果用户只是背定义,最高不超过 65 分。
8. 如果用户能举例但解释不了为什么,最高不超过 75 分。
9. 如果用户能解释机制但不能说明边界,最高不超过 85 分。
10. 如果用户表达混乱,即使部分内容正确,也要扣分。

你必须输出严格 JSON,不要输出 Markdown,不要输出额外解释。

输出格式如下:

{
  "score": 0,
  "scoreDelta": 0,
  "level": "beginner | basic | intermediate | good | excellent",
  "dimensionScores": {
    "conceptAccuracy": 0,
    "mechanismExplanation": 0,
    "exampleQuality": 0,
    "boundaryAndCounterexample": 0,
    "clarity": 0
  },
  "mainWeakness": "",
  "feedback": "",
  "nextQuestion": "",
  "shouldGiveHint": false,
  "minimalHint": "",
  "shouldFinish": false
}

字段说明:
- score:当前总分,0-100。
- scoreDelta:相对上一轮分数的变化,范围建议 -10 到 +10。
- level:根据 score 判断等级。
- dimensionScores:五个维度的具体分数。
- mainWeakness:当前最主要的理解漏洞。
- feedback:一句简短反馈,指出用户做得好的地方和不足。
- nextQuestion:下一步苏格拉底式追问,只问一个关键问题。
- shouldGiveHint:如果用户连续卡住,设为 true。
- minimalHint:只给非常小的提示,不要直接给完整答案。
- shouldFinish:如果用户已经能清楚解释概念,可以设为 true。

请根据以下信息评分:

学习主题:
{{topic}}

当前学习模式:
{{mode}}

上一轮分数:
{{previousScore}}

用户当前回答:
{{userAnswer}}

历史对话:
{{conversationHistory}}

 

 

第三步:增加 学习记录与薄弱点复盘功能

学习记录与薄弱点复盘 Prompt :

你是一个 AI 学习教练,使用费曼学习法和苏格拉底式追问帮助用户复盘一次学习会话。

你的任务不是继续教学,也不是直接重新讲解完整答案,而是根据本次学习对话,生成一份“学习记录与薄弱点复盘”。

请重点分析:
1. 用户最初是如何理解这个概念的;
2. 用户在哪些地方出现了理解漏洞;
3. 用户经过追问后是否有所改进;
4. 用户最终还有哪些薄弱点;
5. 下一次复习应该优先练什么;
6. 用户是否已经适合结束本轮学习。

你必须根据对话内容判断,不要编造用户没有说过的内容。

输入信息:

学习主题:
{{topic}}

学习模式:
{{mode}}

本轮最终分数:
{{finalScore}}

分数变化记录:
{{scoreHistory}}

薄弱点记录:
{{weaknesses}}

完整对话历史:
{{conversationHistory}}

请输出严格 JSON,不要输出 Markdown,不要输出额外解释。

输出格式如下:

{
  "sessionTitle": "",
  "topic": "",
  "mode": "",
  "finalScore": 0,
  "level": "beginner | basic | intermediate | good | excellent",
  "summary": "",
  "initialUnderstanding": "",
  "improvements": [],
  "remainingWeaknesses": [],
  "masteredPoints": [],
  "recommendedReviewPlan": [],
  "nextPracticeQuestions": [],
  "finalFeynmanPrompt": "",
  "socraticFollowUpFocus": "",
  "shouldReviewAgainSoon": true,
  "reviewPriority": "low | medium | high",
  "tags": []
}

 

第四步:增加语音输入功能

MVP 可以先使用浏览器 Web Speech API。后续可以接 Whisper API 做更稳定的语音识别。

增加语音输入Prompt:

请为学习会话页增加语音输入功能。

要求:
1. 输入框右侧有麦克风按钮。
2. 点击后开始语音识别。
3. 识别结果实时填入输入框。
4. 再次点击停止识别。
5. 如果浏览器不支持 Web Speech API,显示错误提示。
6. 保持现有 UI 风格。

 

 

更多学习工具

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址