这次我们来看一个不需要装显卡驱动、不需要下载模型,却能明显提升学习效率的方法:/teach 互动学习法。准确说,/teach 不是一个开源项目,也不是某个特定框架,而是一套可以放进主流 AI 对话工具的提示词交互协议。你在对话框里输入 /teach,AI 就进入苏格拉底式导师模式,不再直接给答案,而是通过提问、拆解、反馈和难度调节,逼着你自己把知识点推出来。
这个方法特别适合两类人。一类是学编程、读论文、啃框架时经常“看得懂但记不住”的开发者;另一类是想用 AI 做系统化学习,但不知道提示词该怎么设计的用户。它的核心价值不是让 AI 当百科,而是让 AI 当教练。教练不替你跑步,但会告诉你哪里发力不对。
下面我会把这套方法完整拆开:prompt 模板、交互流程、验证标准、批量学习任务和 API 接入思路。无论你用云端助手还是本地部署模型,都能照着搭一套。先看它到底解决什么问题。
1. /teach 互动学习法是什么
传统教程的典型节奏是“概念 -> 示例 -> 练习”,信息单向输出。读者真正开始思考,往往要等到练习环节。问题在于:很多人卡在概念阶段就放弃了,因为概念是抽象的,没有上下文、没有反馈、不知道哪里不懂。
/teach 互动学习法把顺序颠倒过来。它先让你暴露问题,再通过连环提问定位知识缺口,最后只补你缺的那一块。整个学习过程是对话式的,AI 每次只做三件事:提问、等待、反馈。提问用来测试你是否理解;等待留给你思考;反馈则判断你的回答是否准确,并据此调整下一题的难度。
这种设计参考了主动回忆和间隔重复的原理。主动回忆强调“提取记忆”比“重复阅读”更有效;间隔重复则要求在不同时间点反复测试。/teach 把这两件事变成了默认交互规则,不需要你额外学习任何复习软件。
所以,/teach 的本质是一段结构化的系统提示词,外加一套交互约定。它不绑定任何厂商,也没有固定格式。只要你的 AI 工具支持较长上下文,就可以使用。
2. 核心能力速览
下表是一份通用能力清单,具体表现取决于你使用的 AI 平台和模型版本。
| 能力项 | 说明 |
|---|---|
| 项目类型 | 提示词交互协议,非独立软件 |
| 输入方式 | 对话框中输入 /teach,或粘贴完整提示词 |
| 核心功能 | 苏格拉底式提问、逐级反馈、自适应难度、学习总结 |
| 适用平台 | 云端 AI 助手、本地大模型、支持 Chat Completions 的 API 服务 |
| 硬件门槛 | 使用云端服务时无需独立显卡;本地部署时按模型要求配置 |
| 显存占用 | 不确定,需按本地模型版本和量化方式测试 |
| 是否支持 API | 取决于所选平台是否开放接口 |
| 是否支持批量任务 | 可以,把模板参数化成脚本后批量执行 |
| 输出形式 | 对话流、章节总结、测试题、错题回顾 |
| 适合场景 | 学编程语言、读论文、准备面试、学习新框架 |
需要强调的是,/teach 本身并不神秘。它之所以有效,是因为它把有效的教学原则写进了提示词。离开这些原则,单纯输入 /teach 三个字母并不会产生魔法效果。这也是后面章节要给出完整模板的原因。
3. 适用场景与使用边界
先说适合的场景。
第一个场景是学习编程语言。比如你刚接触 Python,不想从头看一遍教程,可以输入 /teach,让 AI 从你的目标反推需要掌握的知识点。你答错一道题,它就把相关概念拆开讲。
第二个场景是读论文。你把自己对某个方法三句话的理解发过去,AI 会指出哪里不严谨,再追问你“这个公式的假设条件是什么”“为什么用负对数似然而不是交叉熵”。这类问题能逼你真正读懂论文。
第三个场景是模拟面试。输入 /teach 后,要求 AI 按“系统设计 -> 深挖细节 -> 连环追问”的节奏出题,效果接近一次高强度技术面试。面试前用这种方式练习,比只看面经要扎实得多。
再说不适合的场景。
第一,需要权威溯源时不适合。AI 仍然可能产生幻觉,尤其涉及具体论文、数据、法规和版本号时,它给出的结论必须用原始资料核实。第二,它不能替代动手实验。你会用 AI 解释概念,但部署、调试、故障排查还是要自己上手。第三,如果是为了交作业或应付考试而让 AI 提供标准答案,这种做法既不合规,也达不到学习目的。
使用边界方面,需要注意隐私和版权。不要在企业内网数据上随意使用外部 AI 服务,不要把涉及用户隐私的对话内容直接上传到未经授权的平台。生成内容若涉及第三方版权资料,只建议用于个人学习,不得随意商用或二次传播。
4. 环境准备与前置条件
/teach 的环境准备非常简单,重点是选一个可靠的对话平台。
如果你偏向云端工具,常见的选择有 ChatGPT、Claude、Kimi、豆包等。使用前先确认两点:第一,是否支持斜杠命令;第二,上下文长度是否足够,因为 /teach 模板本身会占用一定 token,加上交互过程,建议选择至少支持数千 token 上下文的服务。
如果你偏向编程场景,可以使用支持 Agent 能力的编程工具,例如 Cursor、Codex CLI 等。这类工具的好处是 AI 不仅可以对话,还能读取你本地的代码仓库,直接针对代码提问。比如让 AI 扮演导师,对着你刚写的模块连续追问设计理由,这种反馈比空泛的代码审查更深入。
如果你偏向本地部署,可以用 Ollama 或 vLLM 运行开源模型。硬件要求完全取决于模型版本。以 7B 级别量化模型为例,一张 6G 显存的显卡通常可以运行,但推理速度和中长文本质量要实测。如果显存不足,可以改用 CPU 推理,但速度会明显变慢。
通用检查清单如下:
- 一个可用的 AI 对话客户端,或一个可访问的模型 API
- 足够的上下文长度,建议支持 4K 以上 token
- 支持多轮对话,避免每轮都丢失上下文
- 本地部署时确认模型支持指令跟随,不建议使用过于古老的基座模型
- 网络或代理策略符合你所在企业和地区的合规要求
检查完列表,就可以开始设计提示词模板了。
5. /teach 核心提示词模板设计
/teach 的核心是提示词模板。下面给出一套可以在多数 AI 对话工具中使用的通用模板。它不是某个平台专属的配置文件,而是可以直接复制到对话框中的文本。
/teach 你现在是一位苏格拉底式互动导师,目标不是直接告诉我答案,而是通过提问和反馈让我自己推导出结论。 学习规则: 1. 每次只问一个问题,不要一次性抛出多个问题。 2. 当我回答正确时,先确认正确,再进入下一步。 3. 当我回答错误时,不要立刻给答案,先指出矛盾点,给出提示,让我再试一次。 4. 根据我的回答动态调整难度。如果连续答对 3 次,提高难度;如果连续答错 2 次,降低难度。 5. 每完成一个知识点,用不超过 5 句话做一次小结。 6. 当我输入 /done 时,输出本次学习总结:掌握的知识点、薄弱点、下一步建议。 当前学习主题:{在这里填写主题} 我的当前水平:{初级 / 中级 / 高级} 学习目标:{在这里填写目标,例如能独立完成一个 Python 爬虫}这个模板里有几个字段需要替换:学习主题、当前水平、学习目标。替换完成后,直接把全文发给 AI。
如果你使用的平台不支持斜杠命令,也没有关系。你不需要让 AI 真正识别一个“命令”,只需要把 /teach 当作文本提示词的起始标记。AI 会根据后面的角色设定自动进入导师模式。换句话说,斜杠只是标记,真正起作用的是角色约束和交互规则。
有些平台支持自定义系统提示词,可以把上面的规则放到系统提示词中,再把 /teach 作为用户消息的触发词。这样可以在不污染对话历史的前提下保持稳定的角色。
如果你想在不同场景下复用,可以把模板参数化。比如用 JSON 定义学习任务:
{ "teach_session": { "topic": "Python 异步编程", "level": "中级", "goal": "理解 asyncio 的事件循环机制", "rules": [ "每次只问一个问题", "答错后先给提示再解释", "连续答对 3 次提高难度" ] } }把这段 JSON 发到模型里,再追加一句“请按 JSON 配置开始教学”,效果和直接输入 /teach 一致,但更方便批量生成和管理。
6. /teach 功能测试与效果验证
模板设计完成后,不要直接开始大规模学习。先跑几组测试,确认 AI 真的进入了导师模式,而不是变成普通的问答机器人。
6.1 测试一:启动后是否先提问
把模板发出后,等待 AI 的首次响应。判断标准:AI 不应该给出大段教程,而应该先确认学习主题,然后抛出第一个问题。如果 AI 一上来就把整体框架全讲一遍,说明角色约束没有生效,需要检查平台是否削弱了用户消息或系统提示词中的指令。
6.2 测试二:答错后是否反馈
故意答错一个概念性问题。比如主题是 Python 装饰器,AI 问“装饰器执行的时机是什么”,你回答“在函数定义之后调用函数时执行”。这是部分正确但不严谨的回答。判断标准:AI 应该指出不完整之处,并给出一条提示让你重新思考。如果 AI 直接给出完整解释,说明它没有遵守“先提示再解释”的规则。
6.3 测试三:连续答错后是否降难度
连续答错两次同一个难度的题目,观察 AI 是否主动降低难度,换一个更基础的切入点。自适应难度是 /teach 区别于普通问答的关键特征。如果 AI 始终保持同一难度,可以在对话中补充一句“请降低难度”,然后继续测试。
6.4 测试四:输出学习总结
学习几个知识点后,输入 /done。判断标准:AI 应该输出结构化总结,包括掌握的知识点、薄弱点和下一步建议。如果只输出一句话“好的,再见”,说明模板结尾部分没有被完整执行。
6.5 测试五:跨会话保存
如果你想把学习进度保留到下次对话,需要借助平台的会话历史和记忆功能。有些平台支持 Project、自定义指令或记忆功能。你可以在 /done 总结中复制一份知识点清单,存成本地 Markdown 文件,下次启动新会话时粘贴给 AI。这样即使平台不支持长期记忆,也能自己维护进度。
把上面五组测试的结果记下来。如果至少三项通过,说明这套模板在你的平台上可用。如果大部分失败,优先检查模型版本和系统提示词权限。
7. 接口 API 与批量学习任务
/teach 除了手动输入,还可以通过 API 批量执行。比如你有一批知识点要整理成问答题,或者要为一个学习小组生成模拟面试题目,手动一轮轮提问太慢了。这时候可以把提示词模板写进脚本,循环调用模型接口。
下面是一个通用的 Python 调用示例。它假设你访问的是一个兼容 Chat Completions 格式的接口,例如 OpenAI、DeepSeek、本地 vLLM 服务等。实际使用时需要替换接口地址、Key 和模型名。
import requests API_URL = "https://api.example.com/v1/chat/completions" API_KEY = "your_api_key_here" MODEL_NAME = "your-model-name" system_prompt = """ 你是一位苏格拉底式互动导师。每次只问一个问题,根据回答动态调整难度。 当用户答对时确认正确,答错时先给提示而不是直接给答案。 当用户输入 /done 时,输出结构化学习总结。 """ def teach(topic, level, goal, user_input): user_prompt = f"/teach\n学习主题:{topic}\n当前水平:{level}\n学习目标:{goal}\n\n本次输入:{user_input}" payload = { "model": MODEL_NAME, "messages": [ {"role": "system", "content": system_prompt}, {"role": "user", "content": user_prompt} ], "temperature": 0.4 } headers = { "Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json" } response = requests.post(API_URL, json=payload, headers=headers, timeout=120) response.raise_for_status() return response.json()["choices"][0]["message"]["content"] # 调用示例 print(teach("Python 装饰器", "初级", "能独立给函数写一个装饰器", "我先学第一个概念"))注意,这个示例只适合模型支持单轮长上下文的场景。如果要多轮交互,你需要自己维护 messages 列表,把每轮的历史都传回去。
批量任务的设计思路是把“学习主题清单”变成配置文件,逐条生成测试题。
topics = [ {"topic": "Python 装饰器", "level": "初级", "goal": "理解装饰器语法"}, {"topic": "asyncio", "level": "中级", "goal": "理解事件循环"}, {"topic": "FastAPI 依赖注入", "level": "中级", "goal": "写出可测试的接口"} ] for item in topics: result = teach(item["topic"], item["level"], item["goal"], "请开始") save_to_markdown(item["topic"], result)批量执行时要加日志和失败重试。接口可能因为限流、超时、网络波动而失败,不能假设一次请求一定成功。建议对每个任务记录开始时间、结束时间、返回码和耗时,失败任务单独重试。
需要提醒的是,不同平台的 API 路径、鉴权方式、计费规则差异很大。上面的代码是模板,不是某个平台的官方示例。一定要拿到对应服务的接口文档后再改。
8. 资源占用与性能观察
使用云端 API 时,主要观察三个指标:token 消耗、响应延迟和单次请求费用。
token 消耗取决于上下文长度和输出长度。/teach 模板本身约 300 到 500 token,加上多轮历史,长会话很容易超过 5000 token。如果你用的模型按 token 计费,建议定期清理历史,只保留最近几轮加上模型生成的阶段性小结。
如果你本地部署模型,重点观察显存占用、内存占用和生成速度。显存占用可以用 nvidia-smi 观察:
nvidia-smi查看“Memory-Usage”一栏即可。在 Linux 服务器上,如果模型已经加载,但显存占用异常,先检查是否有多个进程同时加载了模型:
nvidia-smi --query-compute-apps=pid,used_memory --format=csvCPU 推理时,模型加载到内存,主要由 CPU 执行计算。速度会比 GPU 慢很多,但好处是部署门槛低。如果你只是偶尔用 /teach 学点东西,CPU 推理完全可以接受,只要你对延迟有耐心。
影响性能的主要因素包括:上下文长度、输出长度、并发请求数、量化等级。上下文越长,显存和延迟越高;输出越长,单次请求耗时越大。想要降低压力,可以限制 AI 每次回答不超过 200 字,或者只保留最近四轮对话历史。
9. 常见问题与排查方法
下表整理了使用 /teach 时最容易碰到的问题和排查思路。
| 问题现象 | 可能原因 | 排查方式 | 解决方案 |
|---|---|---|---|
| 输入 /teach 后没有变化 | 平台未识别斜杠命令 | 看平台是否把 /teach 当普通文本 | 直接粘贴完整提示词,不依赖命令识别 |
| AI 仍然直接给答案 | 模型版本较弱或提示词被截断 | 检查完整模板是否发送 | 换成指令跟随更强的模型,或把规则重复一遍 |
| 一句话回答太短 | temperature 太低或模型保守 | 调整 temperature 到 0.4-0.7 | 增加“每次回答至少 3 句话”的规则 |
| 答错后 AI 过度解释 | 规则配置不严格 | 检查规则中“先给提示再解释”是否被忽略 | 在用户消息中重申“请不要直接给答案” |
| token 消耗过快 | 上下文历史过长 | 查看每次请求的 usage 字段 | 定期清理历史,只保留最近几轮 |
| 本地部署显存不足 | 模型大于显存容量 | 运行 nvidia-smi 查看占用 | 换量化模型,或降低上下文长度 |
| API 调用超时 | 网络或服务端负载高 | 查看日志和返回码 | 增加超时时间,重试失败请求 |
| 批量任务卡住 | 单条请求异常 | 打印每条任务的耗时 | 加异常捕获和失败重试机制 |
| 学习总结不完整 | /done 未被模型理解 | 检查输入是否拼写正确 | 在规则中明确写出 /done 的触发条件 |
如果一个平台反复出现规则失效问题,不要硬抗。换一个模型或者换一个前端工具,可能直接解决。同样的模板在指令跟随能力强的模型上表现会好很多。
10. 最佳实践与使用建议
第一,第一次使用不要设定太宏大的目标。挑一个小知识点,比如“Python 列表推导式”,完整跑一轮 /teach。先验证模板在你的工具里能不能工作,再扩大学习范围。直接拿它啃整本技术书,容易因为频繁失败而放弃。
第二,建立自己的提示词模板库。不同场景对导师风格要求不一样。学编程时希望你严格追问,读论文时希望它更多解释公式背景,准备面试时希望它模拟高压追问。把每个场景的模板单独存成文件,定期优化,比每次现场编写要高效得多。
第三,把学习结论沉淀成文件。每次 /teach 结束时要求 AI 输出小结,然后你复制到本地 Markdown 文件。这个文件不只是笔记,更是跨会话的上下文。下次开启新会话时,直接把这个文件发给 AI,它就可以接着上次的进度继续教学。
第四,涉及版权和敏感数据时要谨慎。不要把公司内部代码、客户数据或个人隐私直接粘贴到外部 AI 服务。如果必须使用,请选择企业内网部署的模型,并遵守公司的数据安全规定。生成内容若包含第三方代码或教材片段,只用于个人学习,不要随意商用。
第五,不要把 AI 当唯一答案源。它可能在某些知识点上给出错误解释。涉及命令参数、版本号、框架 API 时,一定要用官方文档核对。把 AI 的输出当成“可用线索”,而不是最终结论。
11. 总结与下一步
这套 /teach 互动学习法最值得尝试的点,是把 AI 从“答案提供者”变成了“提问引导者”。它不需要额外购买硬件,也不需要复杂的部署流程,只要有一段结构清晰的提示词和一套交互原则,就能在很多 AI 工具上跑起来。
最先应该验证的功能,是答错后的反馈机制。如果 AI 能忍住不直接给答案,而是通过提示让你自己修正,说明这套方法真正生效了。最容易踩的坑是平台不支持斜杠命令,导致 /teach 只是普通文本。解决办法很简单:不依赖命令识别,把完整提示词粘贴过去。
后续可以从三个方向扩展:一是把这套模板接入 API,做批量知识点生成;二是结合本地代码仓库,让 AI 针对你的真实项目提问;三是把每次学习产生的总结文件做成个人知识库,配合向量检索实现长期记忆。
建议把上面第 5 节的模板复制一份,修改成自己的学习主题,今天就跑一轮。跑通之后再考虑批量化和接口化,不必一上来就搞复杂系统。