110 lines
4.4 KiB
Markdown
110 lines
4.4 KiB
Markdown
---
|
||
title: Agent架构
|
||
type: concept
|
||
domain: Agent工程
|
||
status: growing
|
||
tags:
|
||
- Agent
|
||
- Architecture
|
||
created: 2026-07-16
|
||
updated: 2026-07-17
|
||
aliases:
|
||
- 智能体架构
|
||
related:
|
||
- AI Agent概念
|
||
- Planning规划
|
||
- Function Calling
|
||
- Memory记忆系统
|
||
- Loop Engineering
|
||
source: []
|
||
---
|
||
|
||
# Agent架构
|
||
|
||
## 一句话定义
|
||
|
||
Agent 架构是一套让大语言模型围绕目标进行规划、调用工具、观察结果并持续调整行动的系统设计。
|
||
|
||
## 为什么重要
|
||
|
||
LLM 只能生成内容,而 Agent 架构把模型的推理能力连接到状态、记忆和外部工具,使系统能够真正执行多步骤任务。清晰的架构还能限制工具权限、记录执行过程,并在出现错误时重试、恢复或请求人工介入。
|
||
|
||
## 核心执行闭环
|
||
|
||
Agent 的基本运行流程是:
|
||
|
||
```mermaid
|
||
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 | 让执行过程可检查和调试 | 日志、轨迹、指标、错误记录 |
|
||
|
||
## 工作原理
|
||
|
||
1. **接收目标**:读取用户目标、上下文、约束和成功标准。
|
||
2. **读取状态**:确定已知信息、可用工具和当前任务进度。
|
||
3. **制定计划**:把目标拆解为步骤,选择当前最合适的行动。
|
||
4. **调用工具**:生成符合工具接口要求的参数,并交由运行时执行。
|
||
5. **观察结果**:读取工具返回值,判断行动是否成功以及信息是否充分。
|
||
6. **调整行动**:更新状态,必要时修改计划、重试或选择其他工具。
|
||
7. **终止循环**:目标完成时输出结果;无法安全继续时停止并请求人工介入。
|
||
|
||
## 示例:整理一份行业报告
|
||
|
||
当目标是“整理一份 AI Agent 行业报告”时,Agent 可以:
|
||
|
||
1. 明确报告范围、读者和交付格式。
|
||
2. 规划资料搜索、信息筛选、提纲设计和正文撰写等步骤。
|
||
3. 调用搜索或知识库工具收集资料。
|
||
4. 检查资料是否可靠、完整,并记录来源。
|
||
5. 如果证据不足,调整关键词并继续搜索。
|
||
6. 根据成功标准生成报告并检查遗漏。
|
||
|
||
其中,LLM 负责判断和规划,工具负责获取或处理外部信息,状态与记忆负责保存过程信息,执行循环负责持续推进任务。
|
||
|
||
## 常见误区
|
||
|
||
- **把 Agent 等同于 LLM**:LLM 是核心组件之一,但完整 Agent 还需要工具、状态和执行循环。
|
||
- **认为计划生成后不会变化**:现实任务包含不确定性,计划应根据工具结果动态调整。
|
||
- **工具越多越好**:工具数量会增加选择成本和安全风险,应只开放任务需要的能力。
|
||
- **忽略终止条件**:没有完成标准、步数限制或超时机制,Agent 可能重复执行或无限循环。
|
||
- **只关注成功结果**:工程系统还需要记录失败原因、工具调用轨迹和恢复过程。
|
||
|
||
## 相关知识
|
||
|
||
- [[AI Agent概念]]
|
||
- [[Planning规划]]
|
||
- [[Function Calling]]
|
||
- [[Memory记忆系统]]
|
||
- [[Loop Engineering]]
|
||
|
||
## 参考资料
|
||
|
||
- 待补充。
|