4.4 KiB
4.4 KiB
title, type, domain, status, tags, created, updated, aliases, related, source
| title | type | domain | status | tags | created | updated | aliases | related | source | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Agent架构 | concept | Agent工程 | growing |
|
2026-07-16 | 2026-07-17 |
|
|
Agent架构
一句话定义
Agent 架构是一套让大语言模型围绕目标进行规划、调用工具、观察结果并持续调整行动的系统设计。
为什么重要
LLM 只能生成内容,而 Agent 架构把模型的推理能力连接到状态、记忆和外部工具,使系统能够真正执行多步骤任务。清晰的架构还能限制工具权限、记录执行过程,并在出现错误时重试、恢复或请求人工介入。
核心执行闭环
Agent 的基本运行流程是:
flowchart TD
A[输入目标] --> B[理解目标与当前状态]
B --> C[Planning:规划下一步]
C --> D[选择并调用工具]
D --> E[执行行动]
E --> F[观察执行结果]
F --> G{目标是否完成?}
G -- 否 --> H[调整计划与状态]
H --> C
G -- 是 --> I[输出结果]
F --> J{是否需要人工介入?}
J -- 是 --> K[请求确认或补充信息]
K --> C
这不是一条只运行一次的流水线,而是一个反馈循环:Agent 根据观察结果更新当前状态,然后决定下一步行动,直到目标完成、达到停止条件或需要人工决策。
架构组成
| 组成 | 作用 | 典型内容 |
|---|---|---|
| 目标与约束 | 定义要完成什么以及不能做什么 | 用户请求、成功标准、权限边界 |
| LLM | 理解上下文并决定下一步行动 | 推理、生成计划、选择工具 |
| Planning | 将目标拆成可执行步骤 | 任务分解、优先级、计划调整 |
| Tools | 提供与外部环境交互的能力 | 搜索、代码执行、文件操作、API |
| State | 保存当前任务的即时状态 | 当前步骤、工具结果、错误信息 |
| Memory | 保存需要跨步骤或跨会话复用的信息 | 对话历史、用户偏好、经验与知识 |
| Execution Loop | 驱动“行动—观察—调整”循环 | 调度、重试、超时、终止判断 |
| Guardrails | 控制风险并保证执行边界 | 权限检查、参数校验、人工确认 |
| Observability | 让执行过程可检查和调试 | 日志、轨迹、指标、错误记录 |
工作原理
- 接收目标:读取用户目标、上下文、约束和成功标准。
- 读取状态:确定已知信息、可用工具和当前任务进度。
- 制定计划:把目标拆解为步骤,选择当前最合适的行动。
- 调用工具:生成符合工具接口要求的参数,并交由运行时执行。
- 观察结果:读取工具返回值,判断行动是否成功以及信息是否充分。
- 调整行动:更新状态,必要时修改计划、重试或选择其他工具。
- 终止循环:目标完成时输出结果;无法安全继续时停止并请求人工介入。
示例:整理一份行业报告
当目标是“整理一份 AI Agent 行业报告”时,Agent 可以:
- 明确报告范围、读者和交付格式。
- 规划资料搜索、信息筛选、提纲设计和正文撰写等步骤。
- 调用搜索或知识库工具收集资料。
- 检查资料是否可靠、完整,并记录来源。
- 如果证据不足,调整关键词并继续搜索。
- 根据成功标准生成报告并检查遗漏。
其中,LLM 负责判断和规划,工具负责获取或处理外部信息,状态与记忆负责保存过程信息,执行循环负责持续推进任务。
常见误区
- 把 Agent 等同于 LLM:LLM 是核心组件之一,但完整 Agent 还需要工具、状态和执行循环。
- 认为计划生成后不会变化:现实任务包含不确定性,计划应根据工具结果动态调整。
- 工具越多越好:工具数量会增加选择成本和安全风险,应只开放任务需要的能力。
- 忽略终止条件:没有完成标准、步数限制或超时机制,Agent 可能重复执行或无限循环。
- 只关注成功结果:工程系统还需要记录失败原因、工具调用轨迹和恢复过程。
相关知识
参考资料
- 待补充。