❝本文档作为 企业从 0 到 1 设计开发 Agent 的通用方法论框架。❞
调研维度 | 关键问题 |
|---|---|
「痛点分析」 | 当前业务中哪些环节重复性高、耗时长、易出错? |
「价值评估」 | 引入 Agent 能带来多少效率提升/成本节约? |
「可行性判断」 | 该场景是否适合用 LLM + Agent 解决?(vs 传统规则引擎/RPA) |
「优先级排序」 | 哪些场景 ROI 最高、风险最低、最适合先行试点? |
高
┌───────────────────────┐
│ ★ 最佳场景 │
任 │ - 需要推理决策 │
务 │ - 多步骤协作 │
复 │ - 知识密集型 │
杂 ├───────────────────────┤
度 │ 考虑混合方案 │
│ Agent + 规则引擎 │
├───────────────────────┤
│ 传统方案更优 │
│ RPA / 脚本 / 规则 │
└───────────────────────┘
低
低 ──────────── 高
不确定性程度
Agent Profile:
名称:[Agent名称]
定位:[一句话描述Agent的核心职责]
目标用户:[谁会使用这个Agent]
核心能力:
-能力1:[描述]
-能力2:[描述]
边界约束:
-不能做:[明确限制]
-需要人工介入:[哪些场景]
用户意图 → 意图识别 → 任务规划 → 工具调用 → 结果整合 → 响应生成
│ │ │
▼ ▼ ▼
[分类器] [Planner] [Tool Router]
「关键决策点:」
决策项 | 选项 | 适用场景 |
|---|---|---|
「执行模式」 | 单轮 / 多轮对话 / 自主循环 | 根据任务复杂度选择 |
「规划策略」 | ReAct / Plan-Execute / 无规划 | 根据任务确定性选择 |
「工具调用」 | 串行 / 并行 / 条件分支 | 根据工具依赖关系选择 |
┌─────────────────────────────────────────────────────────────┐
│ 接入层 │
│ Web UI │ API Gateway │ 企业IM │ CLI │ SDK │
└─────────────────────────┬───────────────────────────────────┘
│
┌─────────────────────────▼───────────────────────────────────┐
│ Agent 核心层 │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ Router │ │ Planner │ │ Executor │ │
│ │ 意图路由 │→│ 任务规划 │→│ 执行引擎 │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
│ │ │ │ │
│ ┌──────▼────────────────▼────────────────▼──────┐ │
│ │ Memory Manager │ │
│ │ 短期记忆 │ 长期记忆 │ 知识库 │ 上下文 │ │
│ └───────────────────────────────────────────────┘ │
└─────────────────────────┬───────────────────────────────────┘
│
┌─────────────────────────▼───────────────────────────────────┐
│ 工具层 │
│ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ │
│ │内部API │ │ 数据库 │ │外部服务│ │代码执行│ │ 搜索 │ │
│ └────────┘ └────────┘ └────────┘ └────────┘ └────────┘ │
└─────────────────────────────────────────────────────────────┘
│
┌─────────────────────────▼───────────────────────────────────┐
│ 基础设施层 │
│ LLM Provider │ Vector DB │ Cache │ Queue │ 可观测性 │
└─────────────────────────────────────────────────────────────┘
考量因素 | 评估要点 |
|---|---|
「能力匹配」 | 推理能力、上下文长度、多语言支持 |
「部署方式」 | 云端 API / 私有化部署 / 混合 |
「成本模型」 | Token 计费 / 并发限制 / 包月 |
「合规要求」 | 数据出境、隐私保护、行业监管 |
「响应延迟」 | 首 Token 时间、吞吐量 |
┌─────────────────────────────────────────┐
│ Memory System │
├─────────────────────────────────────────┤
│ 短期记忆 (Working Memory) │
│ - 当前对话上下文 │
│ - 滑动窗口 / 摘要压缩 │
├─────────────────────────────────────────┤
│ 长期记忆 (Long-term Memory) │
│ - 用户画像 / 偏好 │
│ - 历史交互摘要 │
│ - 向量化存储 + 检索 │
├─────────────────────────────────────────┤
│ 知识库 (Knowledge Base) │
│ - 企业文档 / FAQ │
│ - 结构化数据 │
│ - RAG 检索增强 │
└─────────────────────────────────────────┘
「工具定义规范(参考 MCP 协议):」
{
"name": "query_order",
"description": "查询用户订单信息,支持按订单号或时间范围查询",
"parameters": {
"type": "object",
"properties": {
"order_id": {
"type": "string",
"description": "订单号,可选"
},
"start_date": {
"type": "string",
"description": "开始日期,格式 YYYY-MM-DD"
}
},
"required": []
}
}
「工具分类管理:」
类别 | 示例 | 权限级别 |
|---|---|---|
查询类 | 订单查询、库存查询 | 低风险 |
操作类 | 创建工单、发送通知 | 中风险 |
变更类 | 修改配置、审批流程 | 高风险,需确认 |
# 角色定义
你是 [角色名称],[角色职责描述]。
# 能力边界
## 你可以:
- [能力1]
- [能力2]
## 你不能:
- [限制1]
- [限制2]
# 工作流程
1. [步骤1]
2. [步骤2]
3. [步骤3]
# 输出格式
[定义输出的结构和格式要求]
# 示例
[提供 Few-shot 示例]
# 安全规则
- [安全约束1]
- [安全约束2]
原则 | 说明 |
|---|---|
「明确性」 | 清晰定义角色、任务、约束 |
「结构化」 | 使用 Markdown、XML 标签组织 |
「可控性」 | 设置明确的边界和兜底策略 |
「可迭代」 | 预留版本管理和 A/B 测试能力 |
┌─────────────────────────────────────────┐
│ 安全威胁矩阵 │
├──────────────┬──────────────────────────┤
│ 威胁类型 │ 防护措施 │
├──────────────┼──────────────────────────┤
│ Prompt 注入 │ 输入过滤、角色隔离 │
│ 数据泄露 │ 脱敏处理、权限控制 │
│ 越权操作 │ 工具权限分级、人工确认 │
│ 有害输出 │ 输出过滤、内容审核 │
│ 滥用攻击 │ 速率限制、异常检测 │
└──────────────┴──────────────────────────┘
用户请求 → 身份认证 → 意图识别 → 权限校验 → 工具执行
│
┌──────────┴──────────┐
│ 权限决策引擎 │
│ - 用户角色 │
│ - 操作类型 │
│ - 资源范围 │
│ - 风险等级 │
└─────────────────────┘
层级 | 指标 | 说明 |
|---|---|---|
「业务层」 | 任务成功率、用户满意度 | 衡量 Agent 业务价值 |
「应用层」 | 响应延迟、Token 消耗、工具调用次数 | 衡量 Agent 性能 |
「模型层」 | LLM 调用延迟、错误率 | 衡量模型服务质量 |
「基础设施」 | CPU/内存、队列积压 | 衡量系统健康度 |
Trace 结构:
├── 用户请求 (trace_id)
│ ├── 意图识别 (span)
│ │ └── LLM 调用 (span)
│ ├── 任务规划 (span)
│ │ └── LLM 调用 (span)
│ ├── 工具执行 (span)
│ │ ├── Tool A (span)
│ │ └── Tool B (span)
│ └── 响应生成 (span)
│ └── LLM 调用 (span)
维度 | 评测方法 | 指标 |
|---|---|---|
「功能正确性」 | 测试用例集 | 通过率 |
「响应质量」 | 人工评估 / LLM 评估 | 评分 |
「安全性」 | 红队测试 | 漏洞数 |
「性能」 | 压力测试 | P99 延迟 |
「成本」 | 统计分析 | 单次成本 |
┌─────────────────────────────────────────────────────┐
│ │
│ 上线运行 → 数据收集 → 分析诊断 → 优化改进 → 上线 │
│ ▲ │ │
│ └──────────────────────────────────────┘ │
│ │
│ 关键数据: │
│ - Bad Case 收集 │
│ - 用户反馈 │
│ - 性能瓶颈 │
│ - 成本分析 │
└─────────────────────────────────────────────────────┘
阶段 | 交付物 |
|---|---|
需求调研 | 业务场景分析报告、可行性评估、ROI 分析 |
能力规划 | Agent 角色定义、工作流设计、能力边界说明 |
技术架构 | 架构设计文档、技术选型决策、组件设计 |
Prompt 工程 | System Prompt、测试用例、版本管理规范 |
安全合规 | 安全设计文档、权限矩阵、合规检查清单 |
可观测性 | 监控指标、告警规则、Dashboard |
评测迭代 | 评测方案、基准测试集、迭代计划 |
陷阱 | 建议 |
|---|---|
期望过高 | 明确 Agent 能力边界,设置合理预期 |
场景过泛 | 聚焦高价值场景,小步快跑验证 |
忽视安全 | 安全设计前置,不要事后补救 |
缺乏评测 | 建立评测体系,数据驱动优化 |
成本失控 | 监控 Token 消耗,优化调用链路 |