Agent —— 大语言模型基础与工程演进三阶段

Agent 的核心决策能力来自 LLM。理解 LLM 的运作方式,以及围绕它的工程思路是如何演进的,是构建可靠 Agent 的前提。

一、LLM 的技术基础

1.1 Transformer:注意力是核心

现代 LLM 都建立在 Transformer 架构上。理解它不需要推导数学,只需要掌握两个核心直觉:

自注意力机制(Self-Attention):对序列中的每一个 Token,模型会计算它与序列内所有其他 Token 的”相关性权重”,并据此聚合信息。简单说:每个词在生成时都会”回望”整个上下文,决定哪些词对自己最重要。

这解释了为什么 LLM 能理解长距离依赖(”他”指代的是三段前的”张三”),但也解释了为什么上下文越长,注意力的计算开销越大(复杂度随长度平方增长)。

自回归生成(Autoregressive):LLM 逐 Token 生成文本,每次生成下一个 Token 时,都将已生成的内容作为输入的一部分。这意味着:

  • 生成是串行的,无法并行加速单次请求
  • 生成的每一步都有随机性(由温度参数控制)
  • 错误会累积传播——早期生成的错误 Token 会影响后续所有输出

1.2 与 LLM 交互的关键参数

Temperature(温度):控制输出的随机性。

  • 趋近 0:几乎总是选择概率最高的 Token,输出确定性强,适合需要稳定答案的场景
  • 趋近 1 及以上:输出更多样,更有创造性,但也更不稳定

Top-P(核采样):从累积概率超过 P 的最小 Token 集合中采样。比 Temperature 更精细地控制多样性与质量的平衡。

System Prompt:在对话开始前注入的指令,定义 LLM 的角色、能力边界、输出格式和行为约束。对于 Agent,System Prompt 是定义”工具列表”和”行为规范”的核心载体。

Token 经济:LLM 的计费和能力上限都以 Token 为单位(中文约 1.5-2 个字符 = 1 Token)。输入 Token 和输出 Token 分别计价,长上下文窗口意味着更高的成本和延迟。

1.3 缩放法则与涌现能力

缩放法则(Scaling Laws):模型性能与参数量、训练数据量、计算量之间存在可预测的幂律关系。Chinchilla 研究表明,在给定计算预算下,同时增大模型参数和训练数据才是最优的。

涌现能力(Emergent Abilities):随着模型规模的增大,某些能力会突然出现,而非线性增长。典型案例包括:少样本学习(Few-shot Learning)、思维链推理(Chain-of-Thought)、代码生成能力。这些能力在小模型中几乎不存在,但在超过某个规模阈值后突然涌现。涌现能力是 LLM 能够驱动 Agent 的根本原因。


二、LLM 的局限性:Agent 设计的出发点

理解 LLM 的局限性,才能理解为什么 Agent 需要 Memory、Tools 和 Harness。

2.1 幻觉(Hallucination)

LLM 生成的内容是对训练数据统计模式的延续,而不是基于事实的推理。当模型对某个问题的训练数据不足,或问题超出训练截止时间,它仍然会以高置信度生成看似合理但实际错误的内容。

幻觉的根本原因:模型学到的是语言的统计规律,不是世界的真相。

Agent 的工具调用(搜索、计算、数据库查询)是对抗幻觉的主要手段——用真实的外部信息替代模型的内部猜测。

2.2 上下文窗口的约束

尽管 Context Window 已经从早期的 4K Token 扩展到现在的 100K-1M Token,但仍存在两个问题:

  • 成本与延迟:长上下文意味着更高的推理成本和响应延迟
  • “迷失在中间”(Lost in the Middle):研究表明,LLM 对位于上下文开头和结尾的信息有更强的关注,中间部分的信息容易被忽视

这两个问题是 Memory 系统和 Context Engineering 存在的原因。

2.3 多步推理的不稳定性

LLM 在单步推理上表现强大,但在需要连续多步、每步都正确的复杂推理任务上表现不稳定。错误在链式推理中会累积——第 N 步的错误会被第 N+1 步当作正确前提继续推进。

这是 Reflection 机制(自我批评和迭代)存在的原因,也是为什么复杂 Agent 需要”规划-执行-验证”的分层结构。


三、工程演进三阶段:PE → CE → Harness Engineering

这是过去三年 AI 工程领域最重要的认知升级。三个阶段不是替代关系,而是层层叠加。

1
2
3
4
5
6
7
8
9
10
11
12
┌─────────────────────────────────────────────┐
│ Harness Engineering(系统层) │
│ 工具注册、执行控制、错误重试、权限沙箱、可观测 │
│ ┌───────────────────────────────────────┐ │
│ │ Context Engineering(信息层) │ │
│ │ 检索什么、放多少、压缩什么、记住什么 │ │
│ │ ┌─────────────────────────────────┐ │ │
│ │ │ Prompt Engineering(词层) │ │ │
│ │ │ CoT / Few-shot / System Prompt │ │ │
│ │ └─────────────────────────────────┘ │ │
│ └───────────────────────────────────────┘ │
└─────────────────────────────────────────────┘

3.1 第一阶段:Prompt Engineering(2022-2023)

关注点:如何写好提示词。

核心技术

  • CoT(Chain-of-Thought):在 Prompt 中加入”让我们一步一步思考”或示例推理链,显著提升复杂推理准确率。论文发现,这种效果只在足够大的模型上出现,是涌现能力之一
  • Few-shot Learning:在 Prompt 中提供少量示例(输入-输出对),引导模型输出期望格式
  • Zero-shot CoT:无需示例,只需在末尾添加”Let’s think step by step”
  • Self-Consistency:对同一问题生成多个推理链,用多数投票选择最终答案

局限:Prompt Engineering 假设所有所需信息都已经在 LLM 的权重中,或者可以通过巧妙的提示引出。但当任务需要最新信息、大量私有数据或精确计算时,这个假设就失效了。

3.2 第二阶段:Context Engineering(2024)

关注点:什么信息应该进入 Context Window,以什么形式进入。

这个词由 Andrej Karpathy 推广,他认为 Context Engineering 才是 AI 应用开发的核心技能,而不只是提示词技巧。

核心问题

  • 检索什么:从知识库、记忆、工具结果中,哪些信息对当前任务有帮助?(RAG 是这个问题的主要答案)
  • 放多少:上下文窗口有限,信息太少不够,太多导致注意力分散和成本上升
  • 如何压缩:长对话历史、大型文档怎么在不丢失关键信息的前提下压缩
  • 放在哪里:重要信息放在开头和结尾,因为中间位置容易被忽视

Context Engineering 的典型实践包括:动态选择相关记忆注入上下文、在工具调用后只保留关键 Observation 而不是原始响应、对长文档做层次化摘要。

3.3 第三阶段:Harness Engineering(2025-)

关注点:LLM 外部的系统基础设施,即让 Agent 在真实环境中可靠运行的”脚手架”。

核心论点:“Agency comes from the model. The harness makes agency real.”(能力来自模型,Harness 让能力真实落地。)

模型是”驾驶员”,Harness 是”车辆”。一个出色的驾驶员在没有可靠车辆的情况下无法发挥能力。

Harness Engineering 的主要组成:

组件 职责
工具注册与发现 定义 Agent 能使用哪些工具,及其参数 Schema
执行控制 解析 Agent 的 Action,调用对应函数,处理超时
错误处理与重试 工具调用失败时的降级和重试策略
权限沙箱 限制 Agent 能访问的资源,防止越权操作
状态管理 维护多轮对话和多步任务的状态
可观测性 记录每一步的 Thought/Action/Observation,供调试和审计

为什么 Harness 重要:同样的 LLM,配备优秀 Harness 的 Agent 在生产环境的可靠性、安全性和可维护性上远优于只关注 Prompt 的 Agent。

现实锚点:开源项目 learn-claude-code 将这套理念落地为 12 个渐进式课程,从基础 Agent Loop 到多 Agent 协调,系统性地教授 Harness Engineering。Claude Code 本身也是 Harness Engineering 的典型实践——它围绕 Claude 构建了完整的工具执行、权限控制和 Hook 机制。


四、三个阶段的协同

在实际构建 Agent 时,三个层次都不可缺少:

Prompt Engineering 决定质量上限:再好的 Harness 也无法弥补糟糕的 System Prompt,工具描述不清晰会导致 Agent 乱选工具。

Context Engineering 决定信息质量:进入上下文的信息是否相关、是否足够、是否有效压缩,直接影响 LLM 的决策质量。

Harness Engineering 决定可靠性:工具是否能稳定调用、失败是否能优雅处理、权限是否受控——这是生产环境能否运行的基础。

三者的关系:先想清楚 Prompt(词层),再设计信息流(信息层),最后构建执行环境(系统层)。


五、总结

概念 核心要点
Transformer 自注意力让每个词”看到”全局;自回归生成逐步累积,错误会传播
关键参数 Temperature 控制随机性;System Prompt 定义角色和工具;Token 是计费单位
涌现能力 CoT、Few-shot 等能力在规模超过阈值后突然出现,是 LLM Agent 可行的根基
三大局限 幻觉(统计模式非真相)、上下文约束(成本+注意力)、多步推理不稳定
PE 词层,写好提示词,CoT/Few-shot 是代表技术
CE 信息层,管理上下文窗口中的内容,RAG 是核心工具
HE 系统层,工具注册/执行控制/沙箱/可观测——让 Agent 在生产中稳定运行

下一篇:Agent 如何决策和行动——从 Anthropic 的五种编排模式,到 ReAct/Plan-and-Solve/Reflection 三大经典范式,再到 Function Calling 的工程机制。