8. AI 时代的学习方式
1. 讨论范围
本节讨论范围
人工智能这个词涵盖的领域非常广。本节主要讨论当下常用于辅助学习和编程的生成式 AI:它通常以大语言模型 (Large Language Model, LLM) 为核心,也可以通过工具调用、代码执行、文件读写、联网检索、MCP 等能力组成 AI Agent,完成更复杂的多步骤任务。
了解一下 Prompt Engineering、AI Agent 和 MCP。
目前主流的大语言模型和 AI Agent 在幻觉问题上已经有了很大改善,辅助一些比较简单的内容的学习时通常比较可靠,可以大胆提问;但涉及 C 标准细节、编译器行为、库函数边界、工程配置时,仍然要回到手册、标准文档和实际运行结果进行核对。
2. 可以交给 AI 的工作
- 生成重复性的样板代码和测试输入。
- 解释诊断信息并提供检索线索。
- 对比两种写法,帮助发现遗漏的边界情况。
- 根据明确的知识边界调整讲解详略。
3. 不能外包的判断
- 一段代码是否符合选定的 C 标准。
- 对象的生存期和所有权是否正确。
- 错误路径是否释放了已经取得的资源。
- 测试是否真正覆盖了接口契约。
- 修改范围是否与任务要求一致。
4. 验证生成结果
生成结果必须经过编译器诊断、测试、程序检查工具和差异审查。涉及语言规则时,还要回到标准资料;涉及实现支持时,应核对实现文档并在目标环境验证。
5. 安全边界
不要向模型提交密钥、私人数据或未获授权的代码。(对于本教程,Gentorial 密钥保存在浏览器当中,不会发送到其他地方)