VibeCoding 实战:从 AI 实习生到 AI 善后工程师
重新定义 AI 的角色
用了 AI 写代码一年多,我越来越觉得:把 AI 当作「代码生成器」是错误的定位。它更像一个 超级实习生 —— 能快速完成大部分工作,但总有一些边缘情况需要你去「善后」。
这就是 VibeCoding 的核心理念:
AI 是超级实习生,我们是善后工程师。
这不是贬低 AI,也不是抬高自己。而是承认一个事实:AI 能处理 70%-95% 的常规工作,但最后那 5%-30% 的边缘情况,必须有人去把关、修正、兜底。
黄金闭环:Prompt → 体验 → 修正
VibeCoding 提出一个「黄金闭环」的工作流:
Prompt → AI 生成 → 人工体验 → 发现问题 → 修正 Prompt → ...这不是一次性闭环,而是持续迭代:
- Prompt: 给 AI 一个清晰的指令
- 生成: AI 输出代码/文档/方案
- 体验: 实际运行、测试、使用
- 修正: 发现问题,改进 Prompt 或直接改代码
- 闭环: 把修正后的经验沉淀,下次 Prompt 更精准
这个闭环的关键是:不要期望 AI 第一次就完美。接受不完美,快速迭代,才是正确的使用方式。
四维把控法
当 AI 给你一段代码时,不要只看「能不能跑」。要从四个维度检查:
1. 元素(Elements)
代码的基本组成部分是否正确?
- 变量命名是否清晰?- 函数签名是否合理?- 数据结构是否合适?- 是否有遗漏的 import?2. 关系(Relations)
元素之间的连接是否正确?
- 函数调用参数是否匹配?- 数据流是否合理?- 错误处理是否覆盖?- 模块边界是否清晰?3. 逻辑(Logic)
业务逻辑是否正确?
- 是否符合需求?- 是否有隐藏的 bug?- 是否考虑了边界情况?- 是否有安全漏洞?4. 状态(State)
运行时的状态管理是否正确?
- 并发是否安全?- 资源是否正确释放?- 状态切换是否完整?- 是否有内存泄漏风险?这四维不是孤立的,要综合来看。比如一段代码「元素」都对了,但「逻辑」可能有问题;「状态」看起来没问题,但「关系」可能漏了错误处理。
70-95 定律
VibeCoding 还有一个「70-95 定律」:
AI 能完成 70%-95% 的常规工作,剩下 5%-30% 需要人工介入。
这个比例不是固定值,取决于:
- 任务的复杂度: 简单任务 AI 覆盖率高,复杂任务覆盖率低
- 你的 Prompt 质量: Prompt 越精准,AI 覆盖率越高
- 你的经验: 你越熟悉领域,越能发现 AI 漏掉的部分
- AI 的能力边界: 有些领域 AI 天生不擅长
实际应用
前 70%:让 AI 做
这部分是「确定性工作」:
- 写基础 CRUD- 生成模板代码- 补充文档注释- 格式化代码- 写单元测试用例(常规情况)放心让 AI 做,节省时间。
后 25%:边缘情况
这部分是「不确定性工作」,AI 可能漏掉:
- 错误处理:空指针、超时、边界值- 并发问题:死锁、竞态条件- 安全问题:注入、权限校验- 性能问题:N+1 查询、大循环- 兼容问题:版本差异、环境差异AI 会给你「看起来正确」的代码,但边缘情况需要你主动检查。
最后 5%:必须手写
这部分是「核心决策」:
- 架构设计:选什么方案- 业务逻辑:怎么理解需求- 代码品味:命名、抽象、风格- 最终兜底:上线前的最后一眼这些不能交给 AI,因为它们需要「人的判断」。
我的实战经验
案例 1:LLM 性能测试框架
我用 AI 生成了一个 pytest 框架的骨架。AI 给了我:
- ✅ 基础测试结构
- ✅ pytest fixture 定义
- ✅ 常规测试用例模板
- ❌ 漏掉了:测试结果采集到数据库的逻辑
- ❌ 漏掉了:多平台兼容性处理(Ascend/CUDA)
- ❌ 漏掉了:测试阶段的划分(单元/冒烟/回归)
我补上了这些边缘情况,最终框架才好用。
案例 2:KV Cache 计算器
AI 生成了核心计算逻辑:
- ✅ MLA/GQA/Hybrid 的公式
- ✅ 基础 UI 框架
- ❌ 漏掉了:不同精度的影响(FP16/FP32/INT8)
- ❌ 漏掉了:多卡场景的计算
- ❌ 漏掉了:实际内存和显存的换算
这些需要我自己补充,因为 AI 不知道实际生产环境的复杂性。
成为更好的「善后工程师」
接受 AI 是超级实习生后,我们要做的不是「对抗 AI」,而是「成为更好的善后工程师」:
1. 提升领域知识
你越懂领域,越能发现 AI 漏掉的部分。
- LLM 推理:了解 KV Cache、显存计算、推理延迟
- 容器部署:了解镜像分层、Registry API、多架构
- 性能测试:了解 pytest 架构、测试阶段划分、结果采集
2. 建立检查清单
每次 AI 给代码后,按「四维把控法」检查:
元素: 有遗漏吗?关系: 连接正确吗?逻辑: 有 bug 吗?状态: 并发安全吗?3. 沉淀 Prompt
把「修正后的经验」沉淀到 Prompt:
# 修正前"写一个 pytest 测试框架"
# 修正后(更精准)"写一个 pytest 测试框架,支持:- 多测试阶段:单元、冒烟、回归、版本- 多平台兼容:Ascend NPU 和 CUDA GPU- 结果采集:自动导出到数据库- 错误处理:超时、空指针、边界值"Prompt 越精准,AI 覆盖率越高。
结语
VibeCoding 不是一种「方法论」,更像一种「心态」:
- 不要神话 AI:它不是万能代码生成器
- 不要对抗 AI:它是高效的超级实习生
- 要善后:边缘情况、核心决策,必须有人兜底
当我们从「AI 写代码」变成「人机协作」,效率和质量才能真正提升。
愿我们都是好的「善后工程师」,在 AI 时代找到自己的位置。