Agent 统一工程模型与概念边界
Freshness metadata
last_verified:2026-08-24version_scope:stable engineering conceptssource_type:primary-paper + engineering synthesisstability:stable-concept
1. 十个概念各自回答什么
| 概念 | 核心问题 | 生命周期 | 不等同于 |
|---|---|---|---|
| Model | 下一段 token、结构化决定或工具意图是什么 | 一次推理请求 | Agent 系统 |
| Context | 本轮模型实际可见的信息是什么 | 单次请求 | 数据库中的全部历史 |
| Agent Loop | 何时观察、推理、行动、停止 | 一次任务/会话 | 固定业务流程 |
| Tool | 模型可请求的外部能力契约 | 注册到一次调用 | OS 进程本身 |
| Runtime | 调用如何真正执行、取消和回收 | 调用/进程/沙箱 | Tool schema |
| Skill | 可发现、可加载、可版本化的能力说明或工作方法 | 安装到加载再执行 | 单次 prompt |
| Memory | 哪些状态跨步骤或跨会话保存、检索、更新、遗忘 | session 到长期 | Context 与 RAG |
| Harness | 谁组织上下文、工具、权限、控制、恢复、trace | Agent 进程/服务 | Model 权重 |
| Workflow | 谁按预定义结构控制节点与转移 | 一次业务实例 | 开放式自主 loop |
| Multi-Agent | 多个控制主体如何分工、通信、终止 | 多任务/多会话 | 单 Agent 的多个工具 |
2. 两层心智模型
Agent = Model + Context + Tools 用于阅读一次最小循环。缺少 context,模型没有任务状态;缺少 tools,它只能输出文本;缺少模型或其他决策器,就不具备基于语义的选择。
Agent = Model + Harness 用于生产分层。Harness 通常包含:
- context management;
- tool interface 与 runtime;
- permission / policy;
- execution control、timeout、cancellation;
- validation 与 output parser;
- retry、recovery、checkpoint;
- trace、session、cost accounting。
公式是工程抽象。某些系统把检索、policy 或 planner 放在模型服务外部;某些模型原生支持工具协议;责任边界仍需在具体架构中标注。
3. Agent 与 Workflow 的控制权
- Workflow:允许的节点、边和多数转移在运行前已确定。模型可填参数或生成内容,但流程控制主要属于程序。
- Agent:模型根据观察选择下一动作;程序仍设权限、预算、停止与验证边界。
- 混合系统:外层 workflow 管理审批与 durable state,内层 Agent 解决开放式子任务。这通常比“全自主”更容易运营。
4. SWE Agent 的最小状态
TaskState = {
goal, repo_snapshot, constraints,
messages, observations, changed_files,
tests, budget, stop_reason, trace_id
}
仓库不是 prompt 的一部分,而是环境状态;只有被读取、摘要或检索出的片段进入 context。工具执行也不是“模型执行命令”,而是 Runtime 根据经验证的 invocation 创建受控副作用。
5. 常见错误模型
- Memory = 对话数组:数组只是 history;长期记忆还需要写入策略、检索、冲突合并、遗忘和权限。
- RAG = Memory:RAG 从知识库检索;Memory 保存任务或用户状态。二者可用相似向量技术,但语义与治理不同。
- Tool call = shell process:前者是协议级意图,后者是 OS 资源;中间必须经过 schema、policy、executor、timeout 和 cleanup。
- 计划越多越可靠:计划会过期并产生额外 token 与状态同步成本。短任务先用 reliable loop。
- Multi-Agent 天然更强:协调、重复上下文和不一致会降低可靠性;收益必须由评测证明。
6. 自测
- 给任意系统画五个盒子:Model、Context Builder、Control Loop、Tool Runtime、Environment。
- 标出谁拥有 state、谁可产生副作用、谁决定停止、谁提供证据。
- 删除 planner、memory、RAG、subagent 后仍可完成的部分,就是最小 Agent 核心。