何时使用
当工作流匹配以下用户请求时使用:通过自适应辅导、课程规划、练习、检索检查、讲解、学习指南或练习题帮助用户学习某个主题。当用户要求学习、理解、练习、训练、复习、研读或接受辅导时使用。
_来源:dair-ai/dair-academy-plugins (MIT)。_当用户想要学习某个主题或提升某项技能时使用此技能。输出应适配用户的请求和宿主智能体的环境。除非用户明确要求,否则不要假设特定的产品、交付格式、持久化机制或运行时。
核心工作流
- 诊断学习者当前水平和目标。
- 选择一个小的下一步学习目标。
- 先用具体示例教学,再讲抽象概念。
- 给学习者一个主动任务、问题或练习。
- 提供即时反馈和纠正。
- 在有用时记录或总结下一步建议。
对于非常简单的问题,直接回答并附带一个快速理解检查。对于较大的学习请求,创建一个简短的学习路径并从第一课开始。
诊断
在制定完整计划之前,先从用户的提示中推断你能推断的信息。仅在缺失信息会实质性地改变课程时,才提出最多 1 到 3 个简短问题。
有用的诊断维度:
- 当前熟悉程度
- 目标或使用场景
- 偏好深度
- 可用时间
- 格式偏好(如果用户有的话)
如果用户想立即开始,做出合理假设并简要说明。
当用户给出较短的时间窗口时,除非必要,不要问宽泛的诊断问题。陈述一个合理假设,并从最高杠杆的目标开始。
学习设计
让学习者处于合适的难度区间:
- 初学者需要简单的词汇、详细示例和频繁的检查。
- 中级学习者需要对比、练习和常见失败模式。
- 高级学习者需要压缩总结、边缘情况、权衡取舍和真实任务。
一次教授一个有用的概念。除非用户明确要求概览,否则避免一次性覆盖整个主题。
使用主动学习:
- 检索问题
- 预测提示
- 详细示例后跟类似问题
- 调试或评审任务
- 短小应用练习
- 对早期概念的间隔复习
让反馈具体化。解释正确答案为何正确,以及诱人的错误答案为何失败。
输出格式
选择满足请求的最轻量格式:
- 对话式课程,用于快速辅导
- 学习计划,用于多会话学习
- Markdown 笔记,用于持久参考
- 练习或测验,用于实践
- 代码示例,用于编程主题
- 图表或表格,当它们能厘清关系时
- 文件、笔记本、幻灯片或网页,仅在用户要求或明显有用时
不要将每个学习任务都强制做成应用、网页、持久化中心或本地文件集。
对于多日计划,包含节奏、每日重点、主动练习和复习检查点。如果每日时间未知且会实质性地影响计划,提出一个问题或说明假设的每日投入时间。
课程结构
一个优秀的课程通常包括:
- 简短目标
- 具体示例或场景
- 示例背后的原理
- 引导式练习步骤
- 知识检查
- 反馈或答案
- 下一步
保持讲解简洁。优先使用平实语言而非术语,等学习者掌握了概念之后再引入精确术语。
练习与评估
每个实质性课程应至少包含一种让学习者自我测试的方式。
对于明确的练习请求,先给出任务再给长篇讲解,然后提供针对性反馈或答案。
好的检查方式包括:
- 干扰项明确的选择题
- 简答题提示
- 填空练习
- 解释错误题目
- 代码追踪或预测
- 有明确成功标准的小项目
对于选择题,除非题目明确要求选择多个答案,否则只让一个答案明显正确。
对于编程主题,除非环境真正能执行代码,否则避免假装执行任意代码。当可用时使用真实工具执行,或提供固定代码片段及其预期输出和推理。
当有交互式来回时,先让学习者尝试练习再揭示答案。对于自包含响应,将答案放在任务之后。
自适应调整
利用学习者的答案和错误来调整:
- 当出现困惑时放慢节奏并增加示例。
- 当答案持续正确时提高难度。
- 明确地重新审视误解。
- 将新材料与学习者声明的目标联系起来。
当从先前工作继续时,保留来自现有笔记、文件、聊天历史或用户提供进度的有用上下文。不要假设特定的持久化机制。
质量标准
在完成之前,检查:
- 课程匹配学习者的水平和目标。
- 讲解有具体示例。
- 练习任务可从课程内容中解答。
- 在适当时包含了答案或反馈。
- 下一步清晰。
- 任何生成的文件或代码在目标环境中确实可用。
限制
- 当工作流指定了上游工具、账户、API 密钥或本地设置时,需要相应的前提条件。
- 未经用户明确批准,不授权执行破坏性、生产环境、付费或外部消息操作。
- 在将生成的产物或建议视为最终结果之前,请对照用户的真实来源进行验证。