mobile wallpaper 1mobile wallpaper 2mobile wallpaper 3mobile wallpaper 4
1846 字
5 分钟
(Aside) - LLM, Agents 和 Scaling Law
2026-06-22
2026-06-02

Lecture 4 Aside: Scaling Law 和 Agentic AI#

核心模型:AI 时代的关键变化不是“模型会写代码”,而是原来不可 scale 的高级智能活动开始被 scale。操作系统仍然重要,因为 OS 训练的是接口、抽象、状态机、硬件边界和系统正确性。

1. LLM: 大、语言、模型#

大语言模型可以拆成三个词:

  • :足够大的系统会出现稳定的宏观规律和涌现能力。类比 Schrödinger 的问题:单个原子不可预测,但宏观物体可预测;模型参数、数据和计算量足够大后,也会出现训练目标之外的能力。
  • 语言:语言是人类长期沉淀的世界模型接口。LLM 不是直接接触物理世界,而是从人类文本中学习一个已经被人类社会对齐过的世界表示。
  • 模型:模型不需要精确复制世界,只需要形成一个足够有用的近似。它通过 token 预测吸收语言结构、知识和推理模式。

所以 LLM 的能力不是魔法,而是:

大量数据 + 大模型 + 可扩展训练目标
-> 学到人类语言中的世界模型
-> 涌现推理、代码、规划等能力

2. Agent: 从回答问题到操作系统#

LLM 本身更像一个强大的策略函数;Agent 则是把它放进一个可行动的闭环:

工作区/记忆 -> 计划 -> 工具调用 -> 观察结果 -> 修正计划 -> 继续执行

Agent 的关键组件:

  • 记忆:完整工作区、上下文、Git repository,而不是单轮 prompt。
  • 分解:把任务拆成可执行的步骤。早期 prompt 里的 think step by step,在 Agent 中变成持续的规划和检查。
  • 工具:搜索、编译、运行测试、编辑文件、调用 sub-agent/skills。工具弥补 LLM 在精确计算、环境感知和真实副作用上的短板。
  • 协议:MCP 这类协议把工具调用标准化,使 Agent 能接入不同系统。

OS 类比:

程序 -> syscall/POSIX -> 操作系统资源
Agent -> MCP/tools -> 外部世界资源

这个类比很重要:syscall 让普通程序以受控方式操作文件、进程、地址空间;MCP/tools 让 Agent 以受控方式操作代码库、浏览器、数据库、命令行等环境。接口设计决定了能力边界,也决定了错误会以什么方式传播。

3. Scaling Law: 量变为什么能引起质变#

The Bitter Lesson 的观点:不要把太多人工启发式硬编码进系统,而要构造能利用计算规模的通用方法。历史上的 Google、DeepBlue、AlphaGo 都体现了类似路径:当数据、存储、搜索或计算能持续扩大时,能力曲线会发生质变。

LLM 的 Scaling Law 把这种经验变成了实验规律:

loss 与参数量 N、数据量 D、计算量 C 近似呈幂律关系

含义不是“只要堆算力就自动正确”,而是:

  • 能力提升具有可预测性,投资更大训练规模有实验依据。
  • 训练时 scaling 提升基础能力。
  • 推理时 scaling 通过更长思考、多次采样、搜索、工具调用提升单次任务表现。

可以把它理解成两条正交轴:

训练时 scaling: 更大模型 + 更多数据 + 更多 FLOPs
推理时 scaling: 更多中间计算 + 搜索 + 工具 + 验证

Agentic AI 的意义在于把推理时 scaling 工程化:一次回答不够,就拆任务、调用工具、跑测试、回读结果、迭代。

4. Prompt Engineering 本质是 Attention Engineering#

Transformer 的核心是 attention。所谓 prompt engineering,本质上是在管理模型注意力:

  • 给出正确上下文,避免模型在无关信息上耗费注意力。
  • 显式分解问题,降低单次推理跨度。
  • 定义检查条件,让模型知道什么算完成。
  • 把可验证的部分交给工具,而不是让模型凭语言直觉猜。

没有合适的上下文和接口,LLM 容易输出“看似合理但不可验证”的车轱辘话;有工具和检查闭环后,它才更像一个能工作的工程系统。

5. 软件工程视角: 构建合适的抽象#

软件工程的核心仍然是复杂性分解:

软件生态 -> 系统调用 -> OS 实现
OS/软件生态 -> ISA -> 硬件实现
大型软件 -> 函数接口/模块协议 -> 子系统实现

接口带来组合性和复用性,但也引入约束:一旦接口改变,调用方和实现方都可能失配。LLM 可以帮忙维护这些连接,但如果接口文档、测试和协议不清晰,它也会把局部看似合理的修改扩散成全局失控。

因此 AI 编程不是取消软件工程,而是提高了对工程边界的要求:

  • 写清楚 API、输入输出、错误语义和不变量。
  • 把系统拆成能独立验证的子系统。
  • 让 Agent 面对文件系统、测试脚本、协议文档,而不是只面对一段含糊需求。

6. Vibe Coding 的边界#

AI 可以快速生成框架代码、脚本、应用逻辑和常见模式,但 OS/系统级代码的风险在于:正确性依赖不可含糊的底层事实。

危险区域包括:

  • 寄存器、ABI、调用约定、栈布局。
  • 中断、异常、特权级切换。
  • 并发原语、内存序、lost wakeup、data race。
  • 内存管理、页表、地址空间、对象生命周期。
  • 设备寄存器、MMIO、同步和缓存一致性。

这些地方不能只看“代码像不像”。必须问:

状态机是什么?
不变量是什么?
硬件/ABI/内核接口保证了什么?
哪里有 UB、竞争、重排或平台假设?
测试能否覆盖错误路径?

这就是 OS 课在 AI 时代仍然有价值的原因:代码变便宜后,真正稀缺的是系统模型、抽象边界、调试能力和验证意识。

7. 本讲 takeaway#

  1. LLM 的核心是可 scale 的世界模型近似:大模型从语言中吸收人类知识和推理模式。
  2. Agent = LLM + 工作区记忆 + 计划 + 工具 + 反馈闭环;它更像一个能调用 syscall 的程序,而不只是 chatbot。
  3. MCP/tools 对 Agent 的意义类似 syscall/POSIX 对普通程序的意义:提供标准化、受控、可组合的外部能力。
  4. Scaling Law 说明 AI 能力增长有经验规律;推理时 scaling 让 Agent 能通过迭代和验证提升任务质量。
  5. Vibe Coding 适合高层、可快速验证的代码;在 OS、并发、ABI、内存管理等底层场景,必须回到状态机、不变量和硬件事实。

8. 和 OS 主线的连接#

  • 第 1 讲强调 “Code is cheap, show me the talk”:AI 让代码生成更便宜,但系统设计和解释能力更贵。
  • 第 2 讲从应用看 OS:程序通过 syscall 访问 OS;本讲对应 Agent 通过 tools/MCP 访问外部世界。
  • 第 3 讲从硬件看 OS:硬件只执行状态迁移;本讲提醒我们 AI 也可能缺乏精确硬件模型,不能用语言流畅性替代系统正确性。

最终结论:AI 是强大的外部执行器,但 OS 能力决定你能不能给它正确的抽象、检查它的输出,并在底层出错时定位真实原因。

分享

如果这篇文章对你有帮助,欢迎分享给更多人!

(Aside) - LLM, Agents 和 Scaling Law
https://katyusha-blog.com/posts/nju-os/aside/ai-agent/
作者
katyusha
发布于
2026-06-22
许可协议
CC BY-NC-SA 4.0

部分信息可能已经过时

目录