AI 编程很像自动驾驶,自动驾驶分为 L0 到 L5 六个级别,AI 编程也差不多:
AI 编程的六个级别
级别 | 自动驾驶 | AI 编程 | 监控要求 | 特征 |
---|---|---|---|---|
L0 | 无自动化 | 古法编程 | 人工全程 | 纯手写代码,啥都没有 |
L1 | 驾驶辅助 | IDE 补全 | 人工全程 | 基础语法提示 |
L2 | 部分自动化 | Tab 补全 | 人工全程 | Copilot 那种代码生成 |
L3 | 有条件自动化 | Agent 使用 | 人需待命 | Claude Code 这类工具 |
L4 | 高度自动化 | 规划编程 | 限定场景免监控 | AI 自己搞定大部分需求 |
L5 | 完全自动化 | 完全自主 | 无需监控 | 任何场景都能编程 |
重点来了:
- L0-L2:辅助级别,你得全程盯着
- L3-L5:自动化级别,系统能自己干活
现在大概在 L3 阶段:特定场景下 AI 能搞定复杂任务,但碰到没见过的情况还得你接手。
Claude Code 的真实表现
我最近让 Claude Code 提供算法进行实现,它上来就给了个 O(n⁴) 的暴力解:
1 | // Claude 最初的方案:四层循环暴力搜 |
能跑,但慢得要死。我跟它说了下我的优化算法方案,它才恍然大悟:
1 | // 我提示后的方案:分组优化 |
看看差距:
指标 | Claude 最初方案 | 我提示后 | 提升 |
---|---|---|---|
算法复杂度 | O(n⁴) | O(k × m²) | - |
比较次数(30数字) | 81 万次 | 112 次 | 7200 倍 |
平均速度 | 75.87 种子/秒 | 273.49 种子/秒 | 3.6 倍 ⚡ |
总耗时 | 19 分钟 | 5.3 分钟 | 3.6 倍 |
准确性 | ✅ 通过 | ✅ 通过 | 一致 |
发现问题了吗?AI 能写出能跑的代码,但不一定是最优解。这就是 L3 的典型特征——常规场景没问题,碰到需要动脑筋的地方还得你来。
AI 编程的”排水渠过弯”
还记得《头文字D》里的经典操作吗?在秋名山下坡弯道,利用排水渠的特殊地形,一侧轮胎压入排水渠,突破物理极限实现超车。
自动驾驶的困境:
- 系统知道最优行车路线的数据和参数
- 但它不知道”排水渠过弯”这种非常规技巧
- 这需要对真实场景的深刻理解和创造性思维
AI 编程也一样
啥时候你得接手?
算法优化场景(就是上面那个例子)
- AI 知道常规算法(标准路线)
- 但不知道”分组”这种巧妙优化(排水渠过弯)
- 你得告诉它这个思路
- 然后它能飞快实现细节
没见过的领域
- AI 训练数据里没这玩意儿
- 你得详细说清楚要干啥
- 来回沟通几轮才能搞定
业务特殊情况
- 行业规则、边界条件
- 性能要求、取舍权衡
- 这些你比 AI 清楚
需要创新的地方
- 得跳出常规思路
- 组合多个技术解决问题
- AI 能帮忙,但方向得你指
怎么更好地”驾驶” AI
这次优化给我几个感受:
别满足于”能跑”
- 代码能运行不代表写得好
- 多想想有没有更优解法
- AI 容易陷入训练数据的惯性
提供关键思路就够了
- 不用写完整代码
- 提供关键思路
- AI 会自己把细节补全
用数据说话
- 跑实际测试对比性能
- 确保优化没搞坏功能
- 数字比感觉靠谱
来回迭代很正常
- AI 给方案 → 你看看 → 提改进 → AI 优化
- 这就是 L3 的工作模式
离 L5 还有多远?
L3(现在):AI 是副驾驶,你开车
- 大部分常规任务能搞定
- 关键决策得你拍板
- 碰到没见过的必须你接手
L4(几年后?):特定领域自己搞定
- 像 CRUD 这种可能不用人管了
- 复杂系统还是得人盯着
L5(遥远的未来):啥场景都能搞
- 理解任何需求
- 自己选最优方案
- 你就当乘客就行
现在的 AI 编程感觉就是 L3 自动驾驶:大部分路段很稳,但得随时准备接手。
碰到需要”排水渠过弯”的时候——那些需要突破常规的场景——你的经验和创造力还是不可替代的。AI 知道参数和数据,但只有你知道真实场景里还藏着排水渠这条隐藏赛道。