斯坦福 CS230 课程笔记:Beyond the Model —— 从 base model 到 Multi-Agent
CS230(2025 秋)第 8 讲完整笔记:base model 的六类限制、Prompt / Fine-tuning / RAG 三件套、Agentic Workflow、评估体系与 Multi-Agent,附课堂真实案例。
这是斯坦福 CS230(2025 秋)第 8 讲的完整笔记。 课程由 Andrew Ng 与 Kian Katanforoosh 主讲, 标题是 "Beyond the model: Enhancing LLM applications"(一小时的完整录像见 Stanford Online)。 我上一篇笔记整理了 Gary Chen 的 27 分钟浓缩版,这篇则基于课堂逐字稿, 把整节课的推理过程、课堂互动和案例尽量完整地还原出来。
这是 CS230 里最"实战"的一讲:不讲怎么训练模型,而是讲当你在创业公司或大厂里用模型构建 Agent 系统时,工程师已经摸索出的那些技术。
一、为什么要增强 base model:六类限制
课程从开放问题开始:只用裸的预训练模型,会遇到什么限制?学生给出了各种回答, Kian 补充归纳成六类:
- 领域知识缺失——比如自动驾驶农机判断作物是否生病的数据集,市面上根本找不到;
- 数据分布漂移——真实世界数据质量和训练集不一致;
- 知识过时——模型训练截止后就无法跟上新词、新趋势。Kian 举了特朗普当年一条拼错的推文"covfefe"导致推荐系统崩溃的例子;
- 难以控制——微软 2016 年的 Tay 聊天机器人在 16 小时内被用户教坏成种族主义者;Grok 和 OpenAI 两大团队也没能完全控制自家模型;
- 窄任务上表现不足——医疗诊断、法律文书这类高精度领域,通用模型不够;
- 上下文窗口有限——最好的模型输入也就是几十万 token(约等于两本书)。"大海捞针"(Needle in a Haystack)基准揭示了长上下文中注意力失焦的问题。
由此引出全课的方法论框架——纵轴思维:横轴是换更好的 base model(GPT-3.5 → GPT-4 → GPT-4o), 纵轴是围绕同一个模型做工程增强(prompt、RAG、agentic workflow、multi-agent)。 本课讲的就是纵轴。
二、第一层优化:Prompt Engineering
开篇引用一项 BCG 顾问研究(哈佛商学院、沃顿等参与):把顾问分成「无 AI / 有 GPT-4 / 有 GPT-4 + 提示培训」三组。 结论有几点:存在一个 JAG 前沿——前沿之外的任务,AI 不仅没帮助反而拖后腿 (人们过度信任 AI、不认真复核输出,即"方向盘睡着"行为);受过提示培训的一组表现最好; 还区分了两种人机协作风格:半人马(把大任务整体委派给 AI,等待结果)与赛博格(高频来回、边改边做)。
具体方法按从浅到深排列:
- 基本提示设计——"总结这份文档"远不如"用 5 个要点总结这篇 10 页可再生能源论文, 聚焦关键发现、面向政策制定者"。越具体,越贴合受众,输出越好。
- 角色扮演模板——"扮演可再生能源专家在达沃斯做报告"这类模板很流行也确实有效; GitHub 上有大量开源 prompt 仓库(如 awesome-prompts),可以借鉴并沉淀成代码里可复用的模板, 用元数据(用户职位、语言偏好等)做个性化填充。
- 零样本 vs 少样本——同样是"把评论分类为正面/负面/中性", "产品还行但期待更多"有人判负面有人判中性。给一两个对齐的例子(few-shot)就能把模型校准到你所在行业的尺度。 有的 AI 创业公司会把用户反馈人工标注后持续追加进 few-shot 提示,相当于不碰参数的"活数据集"。
- 思维链(Chain-of-Thought)——"一步步来、不要跳过任何一步",配合显式的步骤指令。Kian 提到对话超过一定轮数后模型会"迷失",工程上的 hack 是给对话分段、把前文总结成摘要再接续。
- 提示链(Chaining)——这是 Kian 认为最重要、也最容易被误解的一条:它不同于思维链,而是把一个复杂任务拆成多个独立提示串联(提取问题 → 起草大纲 → 写全文)。 价值不只是效果好,而是每一环都能单独调试——你可以看到是"大纲生成得不好"还是"最后一步没把大纲翻译成合适的邮件",从而精准优化。代价是增加延迟。
关于测试提示:先从人工评价开始建立直觉,规模化了再用 LLM-as-judge—— 成对比较(两个摘要哪个更好)、按 1-5 打分、加评分细则(rubric)、甚至给裁判少样本示例。 Workera 团队就靠 PromptFu 之类的平台在多个 LLM 之间跑同一批提示来对比。
三、Fine-Tuning:为什么能不用就不用
Kian 明确表示:"我尽量不做 fine-tuning。"理由:
- 需要大量标注数据;
- 可能过拟合到特定数据、丧失通用能力;
- 耗时耗钱,且当你调完,下一代模型已经发布并超过你微调的老版本。相比之下,把更好的预训练模型直接换进代码,立竿见影。
他用 Ross Lazerovitz 的例子佐证:给公司 Slack 消息做了微调,模型学会了"像同事那样说话", 结果你让它写 500 字博客,它回答"我明天早上再写"——它学到了人的工作习惯,却忘了听话。 微调仍适用的场景:需要持续高精度输出(法律、科学解释)、领域语言特殊到通用模型搞不定时。
四、RAG:给模型接上外部知识
RAG 是"把 RAG 解释给 5 岁小孩听"级别的面试常考题,也是课堂互动最热烈的部分。基本流程:把知识库文档嵌入成低维向量存进向量数据库 → 用户查询用同一嵌入算法编码 → 按距离检索相关文档 → 连同系统提示模板("基于以下文档回答,文档里没有就说不知道")一并喂给模型 → 输出被文档"锚定",还能要求标注页码章节甚至附上链接。
针对大文档的局限,讲了几种增强:分块(chunking)——同时存文档级和章节级向量, 检索更精确;HyDE(假设性文档嵌入)——用户短查询和长文档向量对不齐, 干脆先用查询生成一篇"假想的回答文档"再嵌入去匹配。课程还提及 RAG 研究 2020–2025 年已枝繁叶茂, 有大量分支方向可以学习。
关于"RAG 是否长久"的争论:理论上无限算力下直接通读全部语料就行,但延迟与溯源让检索依然必要——就像搜索引擎不会让你每次搜都读完整张网。
五、Agentic Workflow:从一步到多步
术语由 Andrew Ng 提出:业界把什么复杂系统都叫"agent",一词模糊了太多东西。Agentic workflow 的核心是多步过程——一堆提示 + 工具 + API 调用组织成工作流。 对比:RAG 式客服回答"30 天内可退";agentic 式客服会先查退换政策、追问订单号、 调 API 核验、再确认"您的订单符合退款条件,3-5 个工作日到账"。
一个 agent 的核心组件:提示、上下文/记忆管理(工作记忆 + 长期档案记忆,高频信息进工作记忆以控制延迟)、工具(API、数据库查找、资源访问)。课程还讲了 MCP(Model Context Protocol):相比逐个手把手教模型对接 API,MCP 是 agent 与端点之间的中间层,支持 agent 间"对话式"获取需求,更易扩展——但同样依赖底层 API 更新,也存在安全面(MCP server 会接收来自任意 LLM 的输入)。
自主度谱系:最左是硬编码步骤;中间是硬编码工具、让 agent 自己决定步骤; 最右是 agent 不仅决定步骤还能自行创建工具、写代码、做计算。
Kian 特别讲了一个工程文化转变——从确定性思维到 fuzzy(模糊)工程: 传统软件是结构化数据、确定性逻辑;agentic 软件接受自由文本,天然脆弱。 他也坦言"模糊工程比 Twitter 上吹的难得多",好的做法是把能确定的部分做成确定, 模糊的部分加护栏(human-in-the-loop)。引用麦肯锡研究:GenAI 能把信用风险备忘录的产出时间缩短 20–60%, 但最难的从来不是技术,而是"改变 1 万名分析师的岗位流程"——那需要十年二十年。
六、案例:客服 Agent 与评估体系
课堂现场演练了完整工作流:从「用户要改收货地址」开始 → 任务分解(提取信息 / 查数据库 / 查策略 / 起草回复 / 发送)→ 判断每步是确定性还是模糊的、 需要 vanilla LLM、RAG、工具、记忆还是 MCP → 设计 workflow。
Kian 给了一条实用的求职建议:去 AI 创业公司面试,一定问他们"有没有 LLM traces"—— 没有 trace 就无法对复杂提示链做可见性调试。
评估可以从三个维度切分,组合使用:
- 端到端 vs 组件级——端到端看用户满意度;组件级分别检查每步(工具是否总忘了更新邮箱?),更容易定位。
- 客观 vs 主观——客观问题(提取错了订单号)可以直接写脚本断言;主观问题(语气不够友好)交给人类评分或 LLM 裁判 + rubric。
- 定量 vs 定性——定量看地址更新成功率、各组件延迟;定性做错误分析,看幻觉集中在哪、用户被什么搞糊涂。
七、Multi-Agent:何时才需要
Multi-agent 不是新东西。它的两大价值是并行(独立子任务同时跑)和复用(一个设计 agent 同时服务市场与产品团队)。课程用"智能家居"做课堂互动: 学生构思了气候控制、照明、安防、能耗、娱乐、通知、家电补货等 agent,再加一个编排者(orchestrator)统一对用户沟通。组织形态有扁平(全互连)与层级(经编排者)之分;agent 之间通信本质就是 MCP—— 把 agent 当成工具来暴露接口。
八、关于未来的几个信号
- 是否在平台期?——Ilya Sutskever 提出"我们是否在 plateau",社区普遍感觉上一代 GPT 提升低于预期。Kian 认为 scaling law 不会无限持续,下一步要靠 架构搜索——可能有某个团队像当年发现 Transformer 一样,把算力需求降一个数量级。
- 多模态增益——模型在图像上变强,也让文本更强;再加音频视频,整个系统再上一层。所有模态汇聚的终局之一是机器人。
- 多种方法融合——婴儿的学习是元学习(基因预训练)+ 监督学习(父母指认)+ 强化学习(摔倒的奖励信号)+ 无监督学习(观察他人)的混合。未来的 AI 系统很可能是 CS230 这门课里所有方法的融合。
我的收获
- "纵轴思维"是全课题眼——别再问"该换哪个模型",先问"我还能在模型外面加哪一层杠杆"。
- 提示链 > 思维链是工程层面的洞见——可调试性比一次成事的魔法更重要。
- Eval 是 Agent 工程的地基——没有 trace、没有客观/主观评估矩阵,Agent 系统就没法被迭代。
- 最贵的成本是组织变革——麦肯锡案例提醒我,技术增益到头来要穿过"改变人的流程"这道最慢的瓶颈。
这堂 1 小时 50 分的课信息密度极高,一篇笔记不可能覆盖全部,但我尽量保留了课堂上的真实案例与 Kian 的原话立场。原课在 Stanford Online 频道, 强烈建议配合上一篇 Gary Chen 的浓缩版一起看。