17 · 大模型时代的架构判断:vibe coding 时代,你靠什么不可替代
一句话点题:当「写代码」坍缩成几秒钟、几句自然语言就能完成的廉价动作,真正稀缺、真正值钱的,只剩下一件事——在动手之前判断「这个系统该长什么样、会死在哪、我在拿什么换什么」。 这是进阶篇的收官:把前面所有的硬道理,投射到我们正身处的这个 AI 时刻。
🏁 进阶篇到这里收尾。 入门篇(01–09)教你看懂系统、并从 0 设计一个中小系统;进阶篇(10–16)教你驾驭做大做关键后才咬人的硬骨头:分布式、失败、规模、演进、组织、安全。这一章不引入新的"硬骨头",而是做一件更重要的事——把这套判断力,对准当下:一个 AI 替你写代码(vibe coding)、同时又催生出一批全新系统(LLM / Agent)的时代。
一、两个同时发生的转变
我们这一代工程师,正同时被两股力量改写:
转变 A:AI 改变了"怎么造" 转变 B:AI 带来了"造什么"的新物种
───────────────────────── ──────────────────────────────────
vibe coding:自然语言 → 代码 LLM / Agent 系统:对话、RAG、
实现从"稀缺手艺"坍塌成"几秒生成" agent、推理服务……一批前所未有的系统
↓ ↓
人从"敲实现"转向"定义 + 判断" 它们有自己的硬骨头(不确定性、上下文、成本)转变 A 有了名字。2025 年 2 月 2 日,Andrej Karpathy 造了个词——vibe coding:「完全交给感觉,拥抱指数,甚至忘了代码的存在」。它是他 2023 年那句「最热的编程语言是英语」的兑现。这个词当年就成了 Collins 词典的年度词汇。它描述的是一个事实:「把代码写对、写快」这门手艺,正在贬值。
转变 B 是:大模型不只是写代码的工具,它本身成了一类新系统的核心零件。本仓库新增的那批 AI 模板——AI 对话产品、RAG 知识库、AI Agent 平台、以及四个真实 Agent 产品(Claude Code、Codex、OpenClaw、Hermes)——就是这批新物种的架构地图。
把两股力合起来,得到本章、乃至本仓库的核心论断:实现越来越廉价,判断越来越值钱。 当 AI 几秒就能产出能跑的代码,你的护城河不再是"会写",而是"会判断"——这正是 README 开篇那句「未来优秀的开发者,首先是会做架构判断的人」的时代注脚。
二、vibe coding 放大了一切——包括架构错误
vibe coding 很爽,也很危险。Simon Willison 有一个清醒的区分:不是所有"AI 辅助编程"都叫 vibe coding——vibe coding 特指不审查就接受 AI 产出的代码。拿来做玩具、做原型,绝妙;但直接推上生产,等于把一座你没读过的房子交给用户住。
为什么危险?因为 AI 把"产出"加速了,却没有同步加速"判断":
传统时代: 想清楚(慢) → 写实现(慢) 瓶颈在"写"
vibe时代: 想清楚(慢) → 生成实现(秒!) 瓶颈整个移到了"想清楚"
↑
"AI 写得快" 同时意味着 "架构错得也快、错得更大、债积得更猛"- AI 默认给你乐观路径的代码:能跑通 demo,但没有超时、没有重试与幂等([11]/[12])、没有降级与隔离([12])、没想过分片与热点([13])、没考虑提示注入([16])。这些恰恰是前面六章的全部内容。
- 原型到生产的鸿沟,从未如此容易被"它看起来能跑"所掩盖。
架构智慧:vibe coding 时代,代码是 AI 产的,但规格、约束、验收标准、和"这玩意儿会死在哪"的判断,是你的。 越是能一键生成实现,"想清楚要造什么、容忍什么、放弃什么"就越是唯一的瓶颈和唯一的护城河。会写,正在贬值;会判断,正在升值。
三、非确定性:LLM 系统的头号新约束
传统系统的地基是确定性(同样的输入永远得到同样的输出)。LLM 把这块地基抽走了——这就是非确定性:同样一句话问两遍,因为采样随机性、模型版本更新、上下文变化,它可能给你两个不一样的答案。过去你能写精确断言、能复现 bug、能回归测试,全靠「输入定、输出就定」;这块地基一抽走,整套测试和验收的打法都得换。
这是架构级的新约束,逼出一套新打法:
传统: assert output == expected (二元:对 / 错)
LLM: 用"评测集 + 评分"衡量一个分布 (光谱:够不够好 / 退化没退化)
• 准备一批有代表性的输入 • 评分:规则、或"模型当裁判(LLM-as-judge)"
• CI 里跑 eval,看分数有没有掉 • 关注的是"质量分布",不是"单条正确"判断要点:面对非确定性,架构上要做三件事——① 评测驱动(eval-driven):用数据集和评分把"够好"量化,放进 CI,防止换模型/改提示后悄悄退化;② 护栏与人审关卡:不确定的输出在产生副作用前要有兜底(承接 AI Agent 平台 的 human-in-the-loop);③ 可观测与可回退:每一步都能追溯、能回滚。把不确定性当一等约束来设计,而不是假装它不存在。
四、上下文工程:新的「内存层级」
LLM 的上下文窗口,就是它的工作内存——有限、且按 token 计费昂贵。如何"在有限且昂贵的窗口里,放进恰好够用的信息",成了 LLM 系统的核心功夫,这就是上下文工程(context engineering)。说白了就是:**模型的「脑容量」只有这么大、还按量收费,你得精挑细选往里塞什么——塞少了它没依据瞎答,塞多了又贵又让它「抓不住重点」。**它本质上是 05 · 数据与状态 的"为访问形态选存储"和 13 · 规模化的力学 的"内存层级"在 AI 时代的回响:
新的"内存层级"(越往下越便宜、越慢、越大):
┌───────────────────────────┐
│ 上下文窗口(最贵最快,工作内存) │ ← 塞太多:贵 + "迷失在中间";塞太少:缺依据
├───────────────────────────┤
│ 检索 RAG / 向量召回(按需取) │ ← 链 RAG 知识库 / 向量数据库
├───────────────────────────┤
│ 长期记忆(跨会话,落盘) │ ← 链 Hermes 的 FTS5 记忆、Claude Code 的压缩
└───────────────────────────┘- 核心取舍:长上下文 vs RAG vs 微调——塞进超长上下文简单但贵、且模型会"迷失在中间";RAG 精准但要维护检索质量;微调改变模型本身但僵化。没有最好,只有最合适(又一次)。
- 这正是 RAG 知识库、向量数据库、Hermes 的记忆设计、Claude Code 的上下文自动压缩在解决的同一个问题。
五、新的质量属性三角:成本 / 延迟 / 质量
06 · 质量属性与取舍 教你权衡性能、可用性、一致性、成本。LLM 系统在此之上,多了一组互相拉扯、且格外尖锐的新属性:
答案质量
▲
╱ ╲ 强模型:质量高,但贵、慢
╱ ╲ 弱模型:快、省,但质量打折
╱ ╲ ——你永远在这个三角里选位置
token 成本 ◀───▶ 首字延迟(TTFT)- 成本是一等公民:每次调用都在烧 token,常驻 agent 更是 7×24 地烧。OpenClaw 这类常驻 agent "心跳唤醒就烧钱"的设计,逼出了"只在到期时跑、无事就停"的克制——这本质就是 12 · 韧性工程 里的降载与预算上限。
- 破解手段都似曾相识:模型路由(简单任务用小模型,难任务才上大模型)、缓存、批处理——正是 AI 网关 和 模型推理服务 的核心看点。
六、Agentic 系统:把整个进阶篇都用上
如果说前面是"分",这一节是"合"。一个自主 Agent 系统,恰恰是前面每一章硬骨头的叠加——这也是为什么我们把四个真实 Agent 产品收进了模板库:
| Agent 系统的难点 | 它其实就是进阶篇的哪一章 |
|---|---|
| 行动循环必须有步数/成本/超时上限,防失控烧钱 | 12 · 韧性工程的降载与熔断 |
| 工具调用要幂等、多步任务像一个分布式 Saga | 11 · 数据一致性工程 |
| 长任务跑很久、节点会失败、分不清死活、要可恢复 | 10 · 分布式系统的硬道理的部分失败 |
| 多 Agent 协作 / 并发子任务 = 分布式 + 扇出放大 | 10 / 13 · 规模化的力学 |
| 提示注入是头号威胁,工具权限要最小化、要沙箱 | 16 · 安全与多租户架构 |
| Agent 作为"虚拟同事"重塑团队与分工 | 15 · 组织即架构 |
| 从能跑的原型渐进演化为可控系统 | 14 · 演进与拆分大型系统 |
这就是为什么 Anthropic 反复强调那句克制的话——「能用确定的工作流解决,就别上自主 Agent」:自主性越强,上面这些硬骨头叠加得越狠。读 Claude Code/Codex(编码 Agent)与 OpenClaw/Hermes(常驻自治 Agent)这四张地图,你会发现它们的"灵魂"全在如何给放飞的自主性装上刹车——而刹车的设计原理,你已经在进阶篇里学完了。
七、什么没有变(而且永远不会变)
技术换了一茬又一茬,但有一层东西,AI 不仅没让它过时,反而把它的稀缺性推到了顶:
- 02 · 架构师的思考框架 那套**「需求 → 约束 → 质量属性 → 取舍」**,对 LLM 系统照样成立——只是质量属性表里多了"成本/延迟/质量/可评测性"几行。
- 「没有最好的架构,只有最合适的」——长上下文还是 RAG、强模型还是弱模型、工作流还是 Agent,全是取舍,没有银弹。
- 「先问为什么,再看怎么做」——AI 能秒答"怎么做",但"为什么是它、代价是什么"依然要人来问。
架构智慧:AI 把"实现"变成了商品,却把"判断"的稀缺性推到了历史最高。一个能对每个技术选择自然地问出「为什么是它?代价是什么?会死在哪?」的人,在 vibe coding 时代不是被替代,而是变得前所未有地不可替代。
📌 真实案例:「vibe coding」如何从一条推文,变成一记时代警钟
2025 年 2 月,Andrej Karpathy 的一条推文造出了 "vibe coding" 这个词,精准击中了时代情绪——同年它就当选 Collins 词典年度词汇。但紧接着,从业者们开始划清界限:
- Simon Willison(资深开发者、Django 联合创始人)写道:vibe coding 用于学习与原型很棒,但把"不审查就接受的 AI 代码"推上生产是另一回事——生产系统依然需要有人读懂它、测试它、并对它的架构负责。这恰好印证本章:AI 加速了产出,没有加速判断;而判断,才是把原型变成可信系统的那一步。
工具侧也给出了答案:Anthropic 在《Building Effective Agents》里反复强调"保持简单、能不放飞就别放飞";本仓库收录的四个真实 Agent 产品,无一例外把大量设计花在给自主性装刹车(沙箱、权限、预算上限、人审)。这都是同一个信号:AI 越强,架构判断越是那根定海神针。
- 📎 Vibe coding(Wikipedia,含 Karpathy 起源与年度词)
- 📎 Simon Willison《Not all AI-assisted programming is vibe coding》
- 📎 Anthropic《Building Effective Agents》
🤖 那么,vibe coding 到底该怎么用?
不是要你拒绝 vibe coding——它是这个时代最强的杠杆。而是要你带着架构判断去用它:
- 玩具与原型:尽情 vibe。 验证想法、探索方案,越快越好,别过度设计(呼应 04「能用单体就别微服务」的克制)。
- 生产系统:vibe 出草稿,用判断收口。 让 AI 生成实现,但由你来追问:数据一致吗([11])?失败了会怎样([12])?规模上来会死在哪([13])?这能演进吗([14])?安全边界在哪([16])?
- 把你的判断"喂"给 AI。 在
CLAUDE.md/AGENTS.md这类文件里写下你的架构约束与质量目标——相当于把"架构师的判断"变成 AI 能持续遵守的护栏(Claude Code / Codex 的记忆文件正是干这个的)。
🎯 随堂检验
- A打字更快、能记住更多 API 和语法
- B判断 AI 产出的系统会不会一致、扛不扛得住、会死在哪,并据此定义约束
- C把所有东西都交给 AI,完全不审查直接上线
本章小结
- 两个转变:AI 改变了"怎么造"(vibe coding:实现坍塌成廉价),也带来了"造什么"的新物种(LLM / Agent 系统)。合起来一句话:实现越来越廉价,判断越来越值钱。
- vibe coding 放大一切:它加速了产出却没加速判断,"写得快"也意味着"错得快、债积得猛";代码是 AI 产的,规格、约束、验收、和"会死在哪"的判断是你的。
- 三个 LLM 时代的新约束:① 非确定性 → 评测驱动 + 护栏 + 可回退;② 上下文工程 → 把上下文当新的"内存层级"来管(长上下文 vs RAG vs 微调);③ 成本/延迟/质量三角 → 模型路由、缓存、预算上限。
- Agentic 系统是进阶篇的总和:行动循环要降载([12])、工具要幂等([11])、长任务要容错([10])、多 Agent 是分布式([13])、提示注入是头号威胁([16])、还重塑组织([15])——四个 Agent 模板就是活案例。
- 什么没变:02 的判断框架、"没有最好只有最合适"、"先问为什么"——AI 让它们更值钱,而非过时。
🏁 结语:轮到你了。 你已经走完了入门篇(看懂系统、从 0 设计)与进阶篇(驾驭分布式、失败、规模、演进、组织、安全),并把它们对准了这个 AI 时刻。现在,挑一张 模板地图 深读,或对你正在做的系统,逐条问出那几个"为什么"和"代价是什么"。 在一个 AI 替所有人写代码的时代,愿你成为那个——先看清地图,再决定上不上路的人。
💬 评论