很多人第一次用 AI 写代码的体验,都像是突然多了一个聪明实习生。你说一句,它补一段;你贴个报错,它立刻告诉你可能的 bug。这种体验令人惊艳,但也令人困惑:
为什么它看起来那么聪明,却经常写出愚蠢的代码?
为什么越是复杂的任务,AI 的表现反而越不稳定?
我开始意识到一个结构性的问题:AI Coding Agent 倾向于跳过思考,直接输出。
这让我想起人类思维中的两个系统:
- System 1:快、直觉、自动,是你看到“for i in”就想起循环;
- System 2:慢、逻辑、有意识,是你拆分需求、设计边界、处理边缘情况的那部分。
AI 模型普遍擅长 System 1,却“能做但不愿做” System 2。
人类思考的节奏,AI还没学会
人类的 System 2 不会轻易启动。它需要被唤醒,也需要合适的节奏和环境。
- 一位医生在手术台上做出判断,多半来自 System 1:经验在电光火石间自动运转;
- 但术前推演、排兵布阵,往往需要 System 2:泡上一杯茶、点燃一炷香,打开脑海里的结构图谱,冷静规划每一步风险与选择。
System 2 是慢的、稀缺的、昂贵的。我们珍惜它、仪式化它,也正因如此,它才在人类大脑中占据了结构与灵魂的位置。
AI 没有茶,也没有香,但我们也许可以通过技巧,让它“慢下来”,进入人类式的沉思状态。
AI Coding 的默认状态:补全,而非思考
大多数 AI 编程工具,如 Copilot、Claude、ChatGPT,运行在 System 1 模式:
- 它喜欢补全,不喜欢推理;
- 它更擅长模板,而不是结构;
- 它响应快、语法对,但逻辑错得离谱你还以为自己写的。
这是一个“聪明的手速选手”,不是一个建筑师。
不是因为它不能思考,而是因为你没有告诉它:慢一点,想一想。
人类仍然是现实中的 System 2
一个经常被忽略的事实是:
AI 的 System 2,还得靠人来补。
理解需求、拆分模块、设计边界、安排上下文、评价合理性——这部分目前几乎全由人类承担。AI 在这其中更像一个工匠,而不是策划者。
所以有些人叫这部分“架构设计”,也有人叫“prompt engineering”,本质上都是人的 System 2 在运转。
而这部分恰恰决定了 AI 能否产出可维护、可复用的结果。
如何让 AI 慢下来,进入思考?
我实际使用中总结出 6 个技巧,用来“强制”模型进入 System 2 状态,让它从“写”切换到“思考”:
1. 明说:“一步步来”
最直接的提示是:
请先思考任务步骤,然后再写代码。
这种方式在语言上等价于一杯清茶、一炷沉香。
2. 先要结构,再要答案
比如说:
请先列出伪代码结构:包括顺序、分支、循环。再根据结构写实现代码。
这就像人类架构师在白板上画出模块图,再去考虑函数细节。
3. 分段推进,逐句确认
任务越长越要打断它:
- 先让它给出思路;
- 再让它输出实现;
- 每一步你做 review。
让思维保持节奏,而非一口气输出混乱。
4. 引导它反思“不确定”
你可以问它:
你写的这段代码,哪一部分你最不确定?哪里可能出错?
这是将 System 2 的“反思能力”从你头脑中移植到它的响应中。
5. 用错误信息触发思考
代码出错时,不用自己 debug,直接贴给 AI:
这是错误信息,请分析原因并修复。
失败是最好的慢下来机会。AI 也一样。
6. 多 Agent 协作,模拟并行与监督
用多个角色分工协作:
- 一个负责设计;
- 一个负责实现;
- 一个负责测试;
- 一个负责复盘与讲解。
这是模拟人脑的不同皮层、不同系统合作,也是 System 1 和 System 2 的外部实现。
最后要说的:技巧之外,是人自身的升级
这些技巧很有用,但只有人掌握了结构性思维、抽象能力和判断力,才能真正把它们用好。
你需要具备:
- 拆解问题的能力:分清目标与过程;
- 构建结构的能力:识别边界与依赖;
- 抽象与泛化的能力:看出模式,而不只是变量;
- 对 AI 的幻觉和限制的判断力:知道什么时候该怀疑它。
AI 是一个很强的协作者,但它仍需要一个清醒的带领者。
现在,它缺的是你的 System 2。
总结
- AI 编程默认在 System 1 模式:快但浅;
- System 2 模式(逻辑、架构、反思)需要你去激活;
- 用结构化提示、反思问题、分段推进,可以让 AI“慢下来”;
- 最终,AI 的深度,取决于人类是否自己先进入了 System 2。
就像人类在点茶、沉思、勾勒结构图时思维最清晰,AI 也需要我们创造那样的节奏与空间。
不要只让它写。让它先想一想。