Course Overview
斯坦福 CS329A 第二轮开场:预训练缩放还在,但主线已经挪到 post-training、test-time compute,以及「有 verifier 才能自改进」的 agent。
这是什么
Fall quarter 的 CS329A Self-Improving AI Agents 第一讲(片长约 70 分钟,duration_s: 4182)。讲师:
- Aakanksha Chowdhery(课上自称 Akansha):Stanford adjunct,在 Reflection AI 做研究,长期做大模型。00:00:41
- Azalia Mirhoseini:Stanford CS 助理教授。两人在 Google Brain 相识,后到 DeepMind。字幕里还有一句「做过 Claude / Anthropic 和 Gemini」,未标说话人,不在这里点名归属。00:00:52 00:01:10
这是第二次开课,讲义和上课方式都有更新。听众以 master's 为主,PhD 和 undergrad 都有。00:00:20 00:01:10
课上念出的网站是 cs239a.stanford.edu,与课程代号 CS329A 不一致,当作口误,以官方站点页为准。[需要验证] 00:01:32
本讲结构:先用五年缩放史把人拉到同一张地图,再说明课要覆盖什么,后半是后勤(直接影响成绩)。00:01:58
素材:raw/collections/cs329a/01-course-overview.md(人工英文字幕)。
核心要点
- 预训练三维缩放(compute / 数据量 / 参数量)仍让 test loss 下降,实验室也还在推;但约 2024 年起这条轴开始显出饱和,课的重心改到 post-training + inference scaling。00:02:27 00:03:52
- 模型变大不只是刷分:出现 few-shot / zero-shot,以及事先画不出来的涌现(chain of thought、模运算、词序还原)。CoT 对小模型几乎无效,跨过规模门槛才有用。00:04:56 00:09:14
- ChatGPT(2022-11)相对 GPT-3 的跃迁,不只是参数:关键两块是 instruction tuning 和 RLHF。00:10:49
- Large Language Monkeys(Azalia 实验室,infinite monkey theorem):固定权重、反复采样,coverage 可超过单次更强的 GPT-4o;有的难题 10,000 个样本里只有 3–4 个对。缺的是 verifier,不是「模型会不会」。00:19:55 00:24:15
- DeepSeek(课上说 2024-12 / Christmas)和 o1 / Gemini thinking 把「测试时生成合成数据」折回训练,变成推理模型;o1 在难题(AIME)上展示 pass@1 对 test-time compute 的 log-linear。00:28:12 00:30:32
- Chatbot 仍是单轮聊天;agent 是目标 → 行动 → 环境反馈 → 停或改。Deep research、编码 agent 开始能端到端,但多数生产系统仍是人手搭的静态工作流。00:40:58 00:43:30
- 课的主轴按反馈从哪来串:test-time scaling → 鲁棒验证 → 工具/代码 → 规划 → 训练时 RL → 搜索/deep research → 长程评测。
机制 / 论证
预训练缩放:三条轴,一张 loss 图
GPT-3 之后最刺眼的事实:把 transformer 做大,benchmark 就涨。课上三张图同一句话:x 轴分别是 compute、数据集大小、参数量,y 轴 test loss 往下走,base model 就更好。00:02:27
参数史(课上口头数字,GPT-4 为估计):
| 模型 | 参数量 |
|---|---|
| BERT | 3.4 亿 |
| GPT-2 | 15 亿 |
| GPT-3 | 1750 亿 |
| PaLM | 5400 亿 |
| GPT-4 | 估计万亿级 |
2018→2024 几乎一直在加层、加宽;「large」首先是体积。课上说这张图已经有点过时,这条轴去年开始撞饱和,所以后面才把舞台让给推理时算力。00:03:52 00:04:44
变大的三个后果,不只是 loss:00:04:56
- 自然语言 / 推理基准持续涨。
- few-shot:以前要为每个域微调;现在给几个例子就能按模板做。
- 涌现:推理一类能力只在更大模型上突然出现,缩放定律预测不了。
Zero-shot / few-shot:cheese 不必单独训翻译
任务写在 prompt 里:「把英语译成法语」,再问 cheese → 零样本。若再塞几对英译法例子,再问 cheese → few-shot。GPT-3、PaLM 让这件事在大量任务上成立,后面的推理工作是在这层能力上长出来的。00:05:39
Chain of thought:能力是涌现的,而且有规模门槛
普通 one-shot:给一道数学题和答案,再问相似题,模型可能用上例子,也可能用不上。更好的做法是把推理过程一并写进例子。00:07:23
课上用的题:Roger 有 5 个网球,又买 2 罐、每罐 3 个,现在一共多少?正确走法是 5,两罐是 6,5+6=11——不是只给「11」。今天 10 亿参数模型不用例子也能做这道题;CoT 作为一种性质仍然成立,而且是过去一年推理模型的底座。00:08:10 00:08:56
规模门槛(数学数据上的结果):LaMDA 约 80 亿、GPT 约 70 亿时,给 CoT 几乎没帮助;PaLM 在 80 亿就能吃进上下文里的推理过程。同一张「突然出现」的图上还有模运算、word unscramble:到某个尺寸才有。00:09:14 00:10:03
所以前沿实验室仍在推缩放:要的不只是平滑的 loss 曲线,还有更多这种事先画不出来的行为。00:10:23
ChatGPT 跃迁:instruction tuning + RLHF
ChatGPT 2022 年 11 月上线,到 100 万用户只用 5 天,比课上对照的许多著名软件都快。相对 GPT-3,关键不是再堆一层参数,而是 instruction tuning 和 RLHF;整门课后面会反复回到这两块。00:10:49
预训练被说成「最容易的一步」:在各种文本上做 next-token。这时的模型统计上「知道世界长什么样」,但没有对错感,也不会听话。00:12:17 00:12:51
对齐仍是未解决的大问题。可以把 base model 在高质标注上微调 sensibleness / safety:什么安全、什么不像话,用精选数据告诉模型。00:13:21
从 base 到 ChatGPT 的四步
| 步 | 做什么 | 数据从哪来 |
|---|---|---|
| 预训练 | next-token | 互联网、书,什么都有 |
| 高质量 SFT | 仍是 next-token,数据换成书、创意作文等 | 公司花「数百万到数亿美元」量级去买 00:14:39 |
| Instruction tuning | 指令 + 问答对;也可含 CoT 微调 | 近两年常见组合:人工、角色模板、合成数据。例子:「氮的沸点是多少」;或演示一步步走到答案 00:15:15 |
| RLHF | 不直接写标准答案,先训 reward model | 人(有时是专家)给模型答案打分、比好坏;RM 再代替人,把 LLM 参数往「RM 说好」的方向推 00:16:51 |
Reward 可以按正确性、有用性、具体性、无害性等定义,再加权。课上只要求建立这张图:ChatGPT 相对 GPT-3 的差距,主要来自后三步,不是又一个更大的 base。00:18:24 00:18:50
Inference 成为新前沿:infinite monkey / Large Language Monkeys
预训练 + 微调是「直到一年 / 一年半以前」的主叙事。之后 inference 本身变成让模型变强的前线。00:19:18
Azalia 实验室 2024 夏的 Large Language Monkeys,名字来自 infinite monkey theorem:猴子无限敲键盘,终会敲出莎士比亚。这里猴子是 LLM:对同一题 并行反复采样,再用 verifier / 选择机制挑对的那条作为系统输出。00:19:55
Verifier 的直觉例子:写代码就跑单元测试,看哪份生成能过。00:21:36
为什么采样不是白做:生成有方差,可用 temperature 加大多样性,模型不是确定性机器。00:21:53
结果(数学和代码基准):每题样本数从 1 拉到 10,000,纵轴是 coverage(至少一条样本做对的题目比例)。虚线红是 GPT-4o。蓝/绿是更小的开源模型(字幕作「3HP / 7AB」,后文又说 7B Llama;专名以论文为准 [需要验证])。单次采样时它们弱于 GPT-4o;把 k 拉高后 coverage 超过 GPT-4o。00:22:13
论证:模型「已经会」的比你问一次拿到的多。Inference scaling 的定义是 不改任何参数,只在推理时换生成与选择方式,去解更难的题、出更高质量的答案。00:23:21 00:23:49
反直觉数字:有的题在 10,000 个解里只有 3 或 4 个是对的。所以要把推理规模拉到模型的真实能力,选择器比生成器更决定系统能不能用。00:24:15
采样不是穷举;温度也不是越高越好
学生问:这和遍历所有可能答案有何不同?答:答案必须由模型生成;全空间(树搜索 / 随机搜索)大到打不中。10,000 已经算 sample-efficient;部分很难的题(字幕作 math f to f,并称有 IMO 级别)7B Llama 量级也能撞上。00:25:04 00:25:40
延迟:并行采样对延迟相对友好,但仍有 cost / compute 权衡,随题目复杂度变,细节放到后面讲 test-time 的那一课。00:26:18
没有 verifier 的域:要靠 LLM-as-judge、当作 reward 的 LLM、或带工具的 LLM;整讲会单独讲 verifier。00:26:45
温度 → ∞?不行。太高是乱码。课上说通常 超过约 1.2 就不好;另有研究专门调温度。多样性还可以用别的技巧,不单靠把温度拧爆。00:27:14
把测试时算力折回训练:推理模型与「自改进」
DeepSeek 课上说是 2024 年 12 月 / Christmas 出来的(公开时间线 [需要验证])。它和 o1 系列、Gemini thinking 的核心动作:把微调和 test-time scaling 焊在一起。00:28:12
新引擎:测试时能生成大量合成数据。数学题若已知金标准答案,可让模型生成「最终能对上」的不同解法;代码同理。这些轨迹进训练集,再微调,模型变强。开放式、没有事先画好的上限——这就是这门课说的 self-improving。00:28:53 00:29:46
对照两张缩放图:
- Monkeys:有 verifier 时,coverage 对样本数 log-linear。
- OpenAI o1(课上说「去年 9 月」):在很难的 AIME 上,pass@1 对 test-time compute(对数轴)同样 log-linear。以前这种形状只在训练算力上见过;现在不改参数,推理时也成立。00:30:10
推理模型在「想」什么:分析、拆解、试错、回退
动机仿人:难题多花时间、换策略。课上列的步骤:00:31:35
- problem analysis:先看清题目。
- task decomposition:拆成可下手的子任务。
- self-evolution:试一招,看反馈(跑测试、用计算器、或自己判),再改。
- self-correction。
- alternative proposals:不行就 backtrack。
一部分来自人工策划的训练数据,很大一块是微调 + 合成数据上的 RL 里自己长出来的。00:32:39
o1 例子:写 bash,读入矩阵,输出转置。模型先像人一样想:用户要 bash;输入输出格式是什么。然后自己产出 CoT(和「人在 prompt 里写 CoT」的差别:链条是模型自己吐的)。分解:解析输入、建成 array of arrays。中途常见「wait,好像有问题」——自纠。00:33:17
相对非推理的 GPT-4o:数学计算、数据分析、编程更强;个人写作、改文本不一定更强。00:34:39
课堂问答里钉死的几件事
增益来自「把推理写出来」,还是只是被要求 think step by step(甚至不出声 / 写假痕迹)? 数据把模型变成 generalized thinker:拆解、回退、分析这些技能会泛化。Aakanksha 补了一刀:预训练后的 base 也能吐出各种推理链,只是不知道哪条对。Train-time / test-time scaling 大量工作是在教它哪条是对的,于是 pass@1 上升;Monkeys 那种图看的是 pass@k / coverage。00:35:16 00:36:31
尽管「深想」很贵,仍然要生成,因为它能换来更好的答案。00:37:07
推理和最终答案能否分给两个模型(小模型 / 专用模型)? 推理能力目前随模型变大而变强,更常见是用更大模型出 traces,再让小模型摘要。模型更喜欢自己的 traces——哪怕别人的 traces 来自更强模型。后续多步推理课会讲 SWiRL:换模型主要用在评价和给反馈,不是替它想。00:37:35 00:38:19
推理是硬编码的一套手续,还是微调出来的? 课上说没有一篇公开工作把这事讲透,两者都有。Base 本来就会一点;指令数据里的 CoT 是 bootstrap;问任意新题还能想,是泛化,已经超出训练模板。课上预告 outcome reward model vs process reward model。00:38:36 00:39:12
样本数能否随题目难度变? 当时认为还没有这样的公开工作;后续可用 reward model(若它有难度概念)决定要不要继续采。值得做。00:40:08
从 chatbot 到 agent:目标、行动、反馈、停止
LLM 作为 chatbot / 推理模型仍是单轮或聊天格式,好玩,但不替你把一件事做完。近几个月 Claude Code(字幕作 Cloud Code [需要验证])和 Deep Research、以及 OpenAI 的 Codex,开始能接真实工作流。00:40:58
例子:去斯坦福上课要租一年的房子——模型去查许多网站,做分析,给利弊。以前做不到。编码:英语指令改文件、写测试;已成为软件工程师的日常生产力工具。00:41:30
LLM → agent 的差别:给一个 goal,模型规划步骤,与环境交互,根据反馈改步骤,直到完成或承认做不到。还要调模型外的 tools,并有某种 memory 盯住任务。00:42:20
今天多数系统仍是静态工作流
Deep research 一类可以端到端。多数场景仍是 static / agentic workflows:人手把「人类会怎么做」画成图,再在节点上接 LLM。00:43:30
课上的漫画抽象:
- 一个模型出解,另一个模型当 judge,决定接不接受。
- Deep research 更像:对多个输入并行调 LLM,再聚合成综述。
开放循环(行动 → 环境 → 反馈)更难;开放式问题上,先手搭这张图 + LLM evaluator,仍然是生产上的主范式。编码和调研开始出现「活过来」的迹象。00:44:04 00:44:50
工作流积木
| 积木 | 课上的意思 |
|---|---|
| LLM call | 指令 + 输入 → 输出 |
| verifier | 可检验对错;代码就跑单测。数学、代码、强规则域适合把反馈打回模型 00:47:05 |
| critic / judge | LLM-as-judge;作业会练 |
| tool / search | Deep research 要真去搜网页;问天气也是工具 |
编排模式:00:45:41
- prompt chaining:子任务串起来,类似推理模型的分解。
- routing:复杂走重工作流,简单走轻的。
- parallelization:Deep research 对多个关键词同时搜,或拆独立子任务再合并。
- orchestrator:中央 LLM 当经理做计划;Claude Code 开始能看到这种 plan,再派生后续调用。
- evaluator:没有真实用户或单测时,用 LLM 当法官。
这些要求模型更会 planning、multi-step reasoning、self-improvement——纯推理模型还没真正覆盖,后续几讲就是这些。00:47:42
编码 agent:架构没变,可靠的是模型和 RL
循环:agent 对着电脑(现在主要是终端),「实现一个测试」→ 逛仓库、搜文件、看文件、改行、跑命令 → 根据输出再改。去年这套还不可靠,现在编码 agent 开始可靠。00:48:09
学生问:架构几乎没变,为什么现在行了?答:更强的模型 + 更好的 RL with verifiable rewards(train-time scaling)。模型一变好,自改进环会转起来:能生成测试,测试本身更可靠。去年的 Code Monkeys:给生成的代码再生成单测,看单测是否真的让东西变好,是一种验证路径。欢迎拿这个当研究项目。00:49:00 00:49:47
即使给了目标,模型仍要先 澄清用户意图(用户经常说不清),再搜相关文件,行动往往需要验证;有时它会自己生成要过的测试。o3 一类见过很多端到端 traces,能把规划、推理、多步串完。用户没把问题说清楚时,意图澄清决定它去找什么、用什么验收。00:52:47
已经能委托的重复劳动:代码迁移、版本升级、重构、数据工程(抽取 + 清洗)、数仓迁移、写单测。00:54:03
生成–验证鸿沟,以及「RL 为什么跳这么大」仍没有共识
学生把编码可靠性追到 verifier。讲师点名 generator-verifier gap:模型很容易生成大量看起来像回事的 traces,有没有用取决于反馈。创意写作能拿到的反馈很薄,人类反馈成为瓶颈。有硬反馈的域才能持续改进。鲁棒验证仍是瓶颈;Azalia 后续会讲实验室里如何 组合多个 verifier。00:50:25
另一个学生:预训练已经在超大语料上「活过」了,为什么给 reward 还能跳出这么大一截——这些行为不该已经在训练里了吗?课上明确:这是 活跃争论,没有单一共识。一种看法:若预训练后 repeated sampling 总能至少撞上一个对的解,反馈应提高 pass@1,而不该让模型「会的东西」本身跳一截。整个环还没被完全理解,只是刚有 signs of life 并开始商业化。也有迹象表明继续做 RL 仍能改进模型。00:51:20
客服、研究报告、AI scientist
客服是 agent 已经铺开的领域(「最吃力不讨好的工作之一」):00:54:34
- 实时转写,会议也在用。
- Knowledge Assist:客服不必背下全部知识库,问 LLM 再抛出相关文章,比纯索引搜索好。
- 聊天 smart reply。
- 通话摘要,用来改善体验。
多家公司在做,问题被切成不同片段。端到端也开始出现。00:55:43
第三类例子(作业会用):复杂主题的综合报告。以前要自己做文献综述、逐篇摘要、再合成。现在可以丢给 LLM。例子:2022 冬奥会开幕式——找参考文献、判断哪些相关、逐篇摘相关内容、合成长文。作业里会让学生试。00:55:54
更往前:AI scientist 论文里的三阶段——想法生成、实验迭代、论文写作。模型会幻觉,但能从网上读到的东西里给出「上过很多课 / 在领域里待很久的人未必想到」的点子,适合当头脑风暴。00:56:42
CoT 当初是发现的;今天的推理模型是训出来的
学生问:推理和 CoT 是训练里焊死的,还是 prompt 里偶然发现的大模型能力?还有没有别的涌现?00:58:04
答:CoT 不是按设计做进去的。先给难题,发现带着推理链更好。GSM8K 是第一批 signs of life;到 PaLM 才成为大事——课上举的印象例子是模型能解释笑话。模型确实见过网上更有条理的文本;但 reasoning model 是被训练去想的,整段推理不再只是涌现。模型在收敛到:知道何时需要大想、何时不需要。CoT 本身最初是涌现(「解释一遍,模型就变好」)。00:58:22 00:59:18
Agent 工作流里他们在找的,与其说是新的神秘涌现,不如说是规划、多步推理、自纠 / 自改进。这些既可叫涌现,也可说是微调强化了模型见过的行为。00:59:49
可操作
读这门课先问 反馈从哪来:有单测 / 最终答案核对的任务,走 sampling + filter;没有硬 verifier 的任务,先设计 judge / 工具 / 人类,再谈把 k 拉到 10,000。创意写作这类薄反馈域,不要指望 Monkeys 那套直接搬过去。00:26:45 00:50:41
项目不要做综述,不要只交一个能演示的 app(课上说要超过「white coding」,即只靠 vibe coding 拼出来的东西)。要有假设、要回答的问题、想看到的改进或想分析的性质。可接受方向:01:04:01
- 新的评测集 / benchmark
- 已有 agent 系统的可靠性
- 在已有 benchmark 上 hill-climb
- 质疑或改动课上论文里的某个决策,再评估
后勤(课上强调「影响成绩」):01:01:13
- 主题不变,课是讲义 + 前沿实验室客座(post-training 怎么演化、机器人里的 multimodal agents)+ 项目展示。01:00:52
- 外部网站 + Canvas(最新通知、课前上传讲义);先确认自己吃得消 prereq。作业和项目截止日期已公布。
- 本季 3 次作业(比上一轮多一次),加课程项目。
- 项目:API credits;建议 2–4 人一组(可以 1 人,但组队额度更多、能做更大)。往年成功项目会放到公开网站。独立研究可以,但不能原样复用已有工作。上一轮有学生把项目做成会议论文。01:03:02 01:07:01
- 节点:项目提案约 10 月初(以网站为准);提案后约 两周中期展示,必须已有实验进展,不能还停在提案;期末报告权重大;期末海报。
- 海报:12 月 12 日 16:00–18:00,工业界的人会来。01:07:27
- 评分:三次作业 50%,项目 50%,时间跨度与权重对齐。Honor code。Office hours 在 Canvas。问题尽量公开发 Ed(字幕作 Edson);Gradescope 交作业和里程碑。Late policy 偏松,但班很大、不破例,迟交天数要省着花。不接受 audit;录像最终会上 YouTube。01:07:44 01:09:09
术语
| 词 | 课里的意思 |
|---|---|
| scaling laws | compute / 数据 / 参数 ↑ → test loss ↓;也曾用来描述 coverage 或 pass@1 对推理算力的 log-linear |
| zero-shot / few-shot | 只给任务描述 vs 再给几个例子 |
| chain of thought (CoT) | 把推理过程写进上下文(后来模型自己生成) |
| instruction tuning | 用指令–问答对教模型听话 |
| RLHF | 人类偏好 → reward model → 优化生成 |
| test-time / inference scaling | 不改权重,推理时多花算力 |
| coverage / pass@k | k 次采样里至少一次对;Monkeys 的纵轴 |
| pass@1 | 问一次就对;o1 那张图的纵轴 |
| verifier | 判断候选对不对:单测、金标准、judge、带工具的模型 |
| generator-verifier gap | 能生成正确答案 ≠ 能选中它 |
| temperature | 控制采样多样性;过高变乱码 |
| reasoning / thinking model | 测试时生成长思考,并把合成轨迹折回训练 |
| outcome / process reward model | 只看最终对错 vs 逐步对错(本讲点名,细节在后课) |
| static / agentic workflow | 人手编排的图,而不是完全开放的行动–环境环 |
| orchestrator | 中央 LLM 做计划再派活 |
不确定 / 待验证
- 课上网站念成
cs239a.stanford.edu,与 CS329A 不符。00:01:32 - DeepSeek「2024 年 12 月 / Christmas」:以公开时间线为准。00:28:12
- o1「去年 9 月」:按秋季课推为 2024-09。00:30:32
- Monkeys 图里的小模型专名,字幕是「3HP / 7AB」,后文「7B Llama」;以 Large Language Monkeys 论文为准。
- 「Cloud Code」应为 Claude Code,与后文 Codex(OpenAI)并列。00:41:12
- GPT-4「万亿参数」是课上的估计,不是官方数字。00:04:31
- 「通常温度不要超过约 1.2」是口头经验,不是本讲实验表。00:27:51
- 提案「early October」、中期「提案后两周」以课程网站为准,本讲没有给日历日。01:05:32
相关
- CS329A Self-Improving AI Agents
- Test-time compute
- Generation-verification gap
- Process reward models
- Tool use and execution feedback
- Train-time RL for reasoning
- Long-horizon agent evaluation
- Test-Time Compute Scaling
- Robust Verification
- Learning from Feedback with Tools/Code
- Planning and Multi-Step Reasoning
- Train-Time Scaling / Scaling RL
- Self-Improvement and Deep Research Agents
- CS329A course site
来源 raw/collections/cs329a/01-course-overview.md · 更新 2026-09-04 · confidence: high