基础篇
进阶篇
高频篇
精选篇
手写篇
面经篇
AI 篇
原理篇
每日一题
小程序题库
知识卡片
  • 场景篇按分类整理的大前端场景考点
  • 历年面经按年份追踪真实考点
  • 算法题库NEW在线编码即时判题
  • 专项自测100 题快速查漏
  • 前端基础
    • HTTP从报文一路讲到 HTTPS
    • 浏览器渲染、事件循环、进程
    • 计算机基础Linux、网络、操作系统
  • 进阶专项
    • 设计模式23 种模式怎么用
    • 前端系统进阶学习大型项目工程化
    • 前端综合文章长期沉淀的实践文
  • 工程与工具
    • Node学习指南从环境搭建到服务端
    • NPM工作流script、依赖与发布
    • Docker容器化部署上手
    • Canvas图形与动画实战
  • 路线与导图
    • 思维导图知识点全景图
    • 学习路线按图索骥不跑偏
  • 动态
    • 公众号动态公众号历史文章
    • 博客动态站长的技术博客
    • 开发者导航常用工具与文档站
  • AI 助手随时提问,即时解析
  • AI 模拟面试模拟真实面试 + 报告
  • AI 知识地图串起全站知识点
  • AI 定制路线按你的简历现排
AI 热点
旧版
AIHT
内容
精选全部 AI 动态热点榜AI 日报收藏
分类
模型行业编程产品技术观点开源
更多
Agent 接入
返回首页开发者导航
AIHT
精选 / 资讯详情
8.0
热点
AI SCORE
编程提效2026-10-29 12:25

让编译器和运行结果检验 AI 编程教学

dev.to · AI#编程学习#自动评测#Agent
Editor brief · 编辑速览

Flash 将 AI 教学改为短课与交互练习,并让学习者实际编写、编译和运行代码,通过输出比对获得反馈。模型负责生成课程,代码练习则依据编译错误和执行结果判定,支持多种常见语言。

文章思维导图
Knowledge map
拖拽缩放
AI deep read

AI 深度解读

AI 把指针讲得很清楚,不代表你真的会写。Flash 作者想解决的,是聊天式学习里缺少练习、验收和复习的问题:让模型生成课程,把答题检查交给规则,把代码交给编译器和运行结果验证。

这次改造最有参考价值的,并非课程界面,而是职责划分:模型负责出题和提示,系统负责判分、记录与复习。作者还分享了小模型调用工具时的纠错办法,但学习效果究竟提升多少,原文没有给出对照数据。

模型写课程,为什么不让它判分

在 Flash 里输入「Teach me C」,得到的是聊天窗口中的课程路径。每节先给几段短说明,再让学习者填空、排列打乱的步骤,或完成代码练习。

代码练习会实际执行。以 C 为例,代码在临时目录里编译、运行,系统检查打印结果;答错时,页面展示编译器错误,或者把实际输出与预期输出放在一起。

这比模型评价代码「看起来没问题」更容易核验。

作者列出的支持范围包括 C、C++、Python、JavaScript、Rust、Go、Java 和 Linux shell。课程还提供 XP、每日连续学习记录和全屏模式,不过这些属于参与机制,不能直接证明知识掌握程度。

模型负责生成学习材料,系统负责验证可以明确检查的答案。

按照作者的描述,判分不调用模型,也不等待模型返回;代码题则通过编译运行和输出检查验收。只有点击 Ask Flash,模型才重新参与,而且被要求提供提示,不能直接交答案。整个系统运行在笔记本上的本地模型环境里,作者认为,把模型移出判分流程是响应迅速的关键。

这里还有一层边界:输出正确能证明当前用例通过,不能自动证明程序对所有输入都正确。原文没有说明测试用例覆盖率,也没有交代临时执行目录之外的隔离措施。

课程不能只解锁下一节,还得让旧知识回来

Flash 会在每次作答后更新掌握程度估计。作者说,猜对和粗心答错的权重较低,但没有公开估计算法,也没解释系统如何识别这两种情况。

课程推进与复习是两套动作:一节答对一次,就能解锁下一节;旧内容还会在明天、2 天后、4 天后、8 天后重新出现。答错则安排次日再练。这就是间隔重复(spaced repetition):系统替你安排回忆旧知识的时机。

这个设计回应了聊天教学的一处缺口:读懂解释通常不需要主动回忆,关掉窗口后也没人检查你还记得多少。

但这里要分清产品机制与效果证据。作者展示了如何安排复习,没有提供长期留存率、完课率,或与普通聊天教学比较的结果。「系统记录了你的表现」成立,「系统准确知道你理解了多少」仍需要验证。

小模型不听长说明,可以让错误调用直接失败

作者遇到的另一个问题是:让小模型生成「下一个单元」,它可能交出六节没有练习的课;再请求一次,又把第一单元换个标题教一遍。加了很多说明,仍然没解决。

有效的转折来自一次被拒绝的工具调用。错误信息直接指出:structs 没有可作答内容;除单元介绍外,每一步都必须包含测验、填空、排序或练习;请补齐后重新提交。

这里约束的已经不是模型的态度,而是工具是否接受它的结果。

能用程序检查的要求,应该变成提交条件。

Flash 也给 agent 配了按需读取的工具手册:共 34 份指南,覆盖教学、网页制作、视频和邮件等任务。agent 平时看到指南名称,任务需要时才读取内容。指南包含 116 个工具调用示例,测试会拿它们与当前工具定义核对,首次运行就发现了两个失效示例。扩展也可以随工具附带指南。

这与课程校验是同一个工程思路:示例和说明可以帮助生成,最终仍要有可执行的检查。

作者还列出了同周新增功能:网页按精确时钟逐帧渲染为 MP4;测量音频的音高、速度、响度与削波,并根据音符生成声音;检索笔记、PDF 和代码并引用来源;让两个模型匿名回答,由用户选胜者并记录得分。他报告三天提交了 40 个 commits,2,955 项测试通过,所有功能都在本机运行。这些是作者披露的开发与验证信息,不是教学效果评测。

我的判断

我认同把确定性检查从模型手里拿出来。相比每次把答案送回模型评阅,这种方式减少了推理等待,也让判分依据更容易追查。对于填空、排序和有明确预期结果的代码题,尤其合适。

前提是题目和检查规则可靠。模型可能生成有歧义的题目,也可能给错预期结果;判分过程再稳定,也修不好错误的答案标准。原文没有说明课程发布前是否经过独立审核。

主观题、架构取舍和代码可维护性评价,也很难只靠输出比对完成。更合理的取舍是按题型选择验收方式。作者关于「清晰报错比长篇建议有效」的观察值得借鉴,但没有跨模型对照,仍属于经验之谈。

能拿来做什么

  • 用 AI 学 JavaScript 或 Node 时,让它每讲一个小知识点就出一道可运行练习,并要求给出输入、预期输出和失败反馈。
  • 开发编程练习工具时,把答案生成与验收分开;代码题实际运行,同时检查生成的题目和答案标准是否一致。
  • 给 agent 增加工具时,把必填字段、内容完整性等要求写进校验规则,并返回能指导修正的具体错误。
  • 维护工具文档时,将示例调用纳入自动校验,工具定义变更后及时发现失效示例。
Original source

本文由 AI 通读原文后重新编写,观点部分为站内判断,细节以原文为准,来源 dev.to · AI,原文版权归原作者所有。

阅读原文
上一篇
用概率分类模型为编码助手分配算力
下一篇
FSR 2.4 为 Vulkan 补齐机器学习渲染能力

资讯速览

dev.to · AI · 2026-10-29 12:25

AI 评分 8.0 / 10

相关标签

#编程学习#自动评测#Agent

继续阅读

  • Copilot Fusion 将选模型交给任务路由
  • 用概率分类模型为编码助手分配算力
  • FSR 2.4 为 Vulkan 补齐机器学习渲染能力
  • 用本地模型生成可追溯的群聊周报
  • 语音 Agent 如何测试答录机误判