Technical Analysis · 多智能体编排

构建可靠的多智能体编排系统

从核心概念到架构模式,从通信协议到工程落地,系统梳理 Multi-Agent Orchestration 的技术栈、设计取舍与主流框架,帮助你在合适的场景做出合适的选择。

📐 10 个章节 🧩 6 类架构模式 🔧 8+ 主流框架 🎯 多个落地案例

#1. 概览与定义

什么是「多智能体编排」,以及它解决了单智能体难以处理的哪些问题。

智能体 (Agent) 是以 LLM 为推理核心、能够自主调用工具、维护状态、 在循环中朝着目标迭代的程序实体。多智能体编排 (Multi-Agent Orchestration) 则是把一个复杂任务拆分给多个角色或职能各异的 Agent,通过显式或隐式的协议进行通信、分工与协作, 最终汇总产出结果的系统设计方法。

🧠 自主性 Autonomy

每个 Agent 拥有独立的目标、提示词、工具集与决策循环,不依赖中心化的硬编码流程。

🤝 协作性 Collaboration

通过消息、事件、共享状态或交接 (hand-off) 在多个 Agent 之间传递任务和上下文。

🎯 专业化 Specialization

不同 Agent 承担不同角色(规划、检索、写作、审查),降低单个上下文窗口的认知负担。

单智能体 vs 多智能体

维度单智能体 (Single-Agent)多智能体 (Multi-Agent)
认知边界单一上下文窗口承载全部信息每个 Agent 维护独立、精简的上下文
工具数量工具过多时易选择错误按角色分配工具,决策空间收敛
并行性串行思考,难以并发子任务可并行处理,整体延迟更低
可靠性错误累积,难以局部恢复角色隔离 + 审查者,可发现并修正错误
调试成本提示词复杂,日志难追踪角色边界清晰,但通信链路更复杂
Token 成本低 (单次调用)显著更高 (Anthropic 报告 ~15x)
适用场景明确流程、低分支、低风险研究型、探索型、需多视角验证
💡 经验法则
Anthropic 在 Claude 多智能体研究中给出的结论:多智能体在「广度优先、可并行、价值密度高」 的任务上收益最大(如深度研究、代码库重构);在线性、状态强耦合的任务上往往得不偿失。

#2. 何时该用多智能体

在引入复杂度之前,先验证它真的能换回收益。

✅ 适合的场景

  • 任务可天然拆解为并行子任务(如同时检索多个来源)
  • 需要多视角评审(生成 → 审查 → 修订)
  • 子任务工具集差异大,单 Agent 工具过载
  • 需要角色化输出(PM/Dev/QA 模拟工作流)
  • 任务路径不确定,需要动态路由
  • 结果价值远高于 Token 成本(深度研究、专家咨询)

⚠️ 不适合的场景

  • 流程线性确定,用 Workflow / DAG 更稳定
  • 子任务强耦合,需共享大量中间状态
  • 延迟敏感(IM 客服首响 < 1s)
  • 预算紧张,Token 成本是关键约束
  • 结果需严格一致性(金融交易、合规审批)
  • 团队尚未建立完善的可观测性能力

决策光谱:Workflow ↔ Agent

复杂度递增 →
硬编码脚本
LLM 单步调用
Workflow (固定 DAG)
Router + Workflow
单 Agent 循环
多智能体编排

建议沿光谱从左到右渐进式演进,避免一上来就引入最复杂的方案。

#3. 架构模式

六种最常见的多智能体拓扑结构,及各自的取舍。

3.1 Orchestrator-Worker(编排者-工作者)

一个中心 Orchestrator 负责拆解任务、分发给若干 Worker,再汇总结果。最常见、最易实现, Anthropic Research、OpenAI Deep Research 多采用此模式。

User Query
🧭 Orchestrator
Worker A
(Search)
Worker B
(Analyze)
Worker C
(Code)
📝 Synthesizer
Result

优点 易控制、易并行、责任清晰。 缺点 Orchestrator 上下文可能膨胀,单点瓶颈。

3.2 Hierarchical(层级式 / Supervisor-of-Supervisors)

多层 Supervisor 嵌套,每层 Supervisor 管理一组下属 Agent。适合大型团队模拟 (MetaGPT) 或 跨业务域的企业级编排。LangGraph 官方推荐用于复杂场景。

🎩 CEO Supervisor
🧭 Research Lead
🧭 Engineering Lead
↙ ↓ ↘↙ ↓ ↘
Searcher
Analyst
Writer
Coder
Tester
Reviewer

优点 关注点分离,可扩展到大规模。 缺点 链路长,延迟高,需要严格的接口契约。

3.3 Sequential / Pipeline(顺序管道)

多个 Agent 串行执行,前一个的输出作为下一个的输入。本质接近 Workflow, 但每个节点保留 LLM 推理能力。CrewAI 默认即为顺序模式。

📋 Planner
✍️ Writer
🔍 Editor
📤 Publisher

优点 简单、可预测、便于调试。 缺点 无并行、无回溯,无法应对分支决策。

3.4 Network / Mesh(网状自由协作)

所有 Agent 互相可见、可发起对话,没有中心节点。AutoGen GroupChat 是典型实现。 灵活但难以预测,适合开放式头脑风暴。

Agent A
Agent B
⇅ ⇄ ⇅
Agent C
Agent D

优点 灵活、涌现性强。 风险 易陷入死循环、跑题、Token 失控,必须设置终止条件。

3.5 Hand-off / Swarm(交接式)

OpenAI Swarm / Agents SDK 推广的范式:每个 Agent 通过transfer_to_xxx工具 把会话「移交」给另一个 Agent,控制权显式传递。介于 Sequential 与 Network 之间。

🤖 Triage Agent
— handoff →
💳 Billing Agent
— handoff →
🧑‍💼 Human

优点 路由清晰、上下文随会话流转。 缺点 不天然支持并行。

3.6 Plan-Execute-Reflect(规划-执行-反思)

Planner 制定计划 → Executors 执行 → Critic 反思与修订,循环直至满足。 LangGraph、Devin、Claude Code 的核心循环都是这一模式的变体。

🗺️ Planner
⚙️ Executor(s)
🪞 Critic / Reflector
↑ ─────── 修订计划 ─────── ↓

优点 适合开放式、长周期任务,可自我纠错。 风险 反思循环可能不收敛,需限制最大迭代次数。

#4. 关键技术点

把多智能体系统真正跑起来,必须解决的 8 个核心问题。

4.1 通信协议与接口标准

🔌 MCP Model Context Protocol

Anthropic 主导,2024 开源。标准化 Agent ↔ 工具/数据源的连接。 类比「USB-C for AI」。已被 OpenAI、Google、Microsoft 采纳,成为事实标准。

🤝 A2A Agent-to-Agent

Google 2025 提出,标准化Agent ↔ Agent 的发现、协商、任务委派。 基于 JSON-RPC,定义 AgentCard、Task、Artifact 概念。与 MCP 互补。

📨 消息格式

主流:OpenAI Chat Message (role/content/tool_calls)。多 Agent 场景需扩展 name / sender / recipient 字段以区分发言者。

🎫 ACP / ANP 等

IBM ACP、ANP (Agent Network Protocol) 等多个候选协议正在演进, 目前生态尚未完全收敛,建议优先 MCP + A2A。

4.2 上下文工程 (Context Engineering)

多 Agent 系统中,上下文如何在 Agent 间传递是决定成败的核心问题。 Anthropic 与 LangChain 都强调:"Context engineering is the new prompt engineering"。

  • 压缩 (Compression):长对话用 summary 替换原始消息;子 Agent 返回结果时只回传"结论 + 关键证据"。
  • 隔离 (Isolation):子 Agent 拥有独立窗口,只接收必要的任务描述,避免无关历史污染。
  • 共享黑板 (Blackboard):所有 Agent 读写一个结构化共享状态(LangGraph 的 State、CrewAI 的 shared_memory)。
  • 检索式上下文 (RAG over history):长期任务把历史存入向量库,按需检索而非全量注入。

4.3 记忆系统 (Memory)

类型作用实现代表方案
短期记忆 (Working)当前会话/任务的上下文消息列表 + 滑动窗口所有框架内置
长期记忆 (Long-term)跨会话的事实、偏好向量库 + 语义检索Mem0、Zep、Letta (MemGPT)
情景记忆 (Episodic)过往任务的成功/失败案例结构化日志 + 检索自建 + RAG
语义记忆 (Semantic)领域知识库RAG / 知识图谱LlamaIndex、GraphRAG
程序性记忆 (Procedural)常用流程/技能Skill Library、缓存的计划Voyager、Claude Skills

4.4 任务规划与分解

  • 静态规划:Planner 一次性产出全部步骤(ReWOO、Plan-and-Solve)。低延迟、易并行,但缺乏适应性。
  • 动态规划:每步根据观察结果决定下一步(ReAct)。灵活但慢,token 开销大。
  • 树搜索式:LATS、Tree-of-Thought,把规划视为搜索问题,可回溯。
  • 分层规划:高层 Planner 出大纲,子 Agent 内部再规划。Devin、Manus 的典型做法。

4.5 工具调用 (Tool Use)

  • 原生 Function Calling:依赖模型的 tool_use 能力,需注意 JSON-Schema 设计、参数描述质量。
  • MCP Server:把工具封装为独立进程,跨 Agent / 跨项目复用。
  • 代码即工具 (Code as Action):让 Agent 输出 Python 代码并在沙箱中执行 (CodeAct、SmolAgents), 表达力远高于 JSON 工具调用。
  • 子 Agent 即工具:把另一个 Agent 包装成一个 tool,是构建层级编排最简洁的模式(OpenAI Agents SDK agent.as_tool())。

4.6 路由与决策

  • LLM 路由:由 LLM 根据 query 选择下游 Agent,最灵活但有不确定性。
  • 规则路由:基于关键词/正则/分类器,快且稳定,适合明确意图。
  • 语义路由:embedding 相似度匹配 Agent 描述,介于二者之间。
  • 混合路由:先规则兜底,未命中再 LLM 兜底(推荐生产实践)。

4.7 人在环路 (Human-in-the-Loop)

关键决策点暂停,等待人工 approve / edit / reject。LangGraph 的 interrupt()、 OpenAI Agents SDK 的 HumanApprovalTool、Temporal 的 signal 都是常见实现。 用于:高风险操作、低置信度兜底、训练数据回流。

4.8 可观测性 (Observability)

这是多 Agent 系统能否进入生产的分水岭。必备能力:

  • 完整 trace:跨 Agent / 跨 LLM 调用的因果链(OpenTelemetry GenAI 语义约定)
  • 结构化日志:每次 LLM 调用的 prompt、response、token、latency、cost
  • 重放 (replay):定位 bug 时能从任意一步重放
  • 评估 (eval):离线数据集 + 在线 LLM-as-Judge

主流工具:LangSmithLangfuseArize PhoenixHeliconeBraintrustW&B Weave

#5. 工程考虑点

从原型到生产,无法绕开的非功能性问题。

💰 成本控制

  • 多 Agent token 消耗常达单 Agent 的 10-20×,必须做 budget 监控
  • 分层模型:Planner 用强模型 (Opus/GPT-5),Worker 用便宜模型 (Haiku/4o-mini)
  • Prompt caching、上下文复用、结果缓存
  • Early-stop:信息已足够时尽快结束循环

⏱️ 延迟优化

  • 并行调用:asyncio.gather / fan-out
  • 流式输出:Orchestrator 边收边转发
  • 预热常用上下文(prompt caching)
  • 预测式执行 / speculative routing

🔁 错误处理与重试

  • 区分瞬时错误 (rate limit、超时) 与语义错误 (Agent 输出不符合要求)
  • 瞬时错误:指数退避重试,多 provider fallback
  • 语义错误:交给 Critic / Validator Agent,或回退给 Orchestrator 重新规划
  • 最大步数 / 最大成本熔断必须存在

🛡️ 安全与权限

  • Prompt Injection:来自工具返回值的对抗性指令(特别危险)
  • 最小权限原则:每个 Agent 只授予完成职责所需的工具
  • 沙箱执行:代码执行、shell 命令必须在隔离容器
  • 敏感操作:HITL 强制审批 + 审计日志
  • OWASP LLM Top 10、Lethal Trifecta 模型

🔄 状态管理与持久化

  • 对话 / 任务状态需可序列化、可恢复(崩溃续跑)
  • LangGraph Checkpointer、Temporal Workflow 是参考实现
  • 并发写共享状态时需考虑锁 / CRDT / 事件溯源

📏 评估 (Evaluation)

  • 组件级:单 Agent 输出质量、工具调用准确率
  • 端到端:整体任务成功率、用户满意度
  • 过程级:步数、绕路率、回溯次数
  • 方法:黄金数据集 + LLM-as-Judge + 人工抽检

🚦 非确定性治理

  • 同一 query 两次结果不一致是常态,需容差区间而非精确匹配
  • 关键路径用 temperature=0 + structured output 收敛
  • 关键工具调用用 schema 校验 + 重试

🌐 部署与扩展

  • Stateless API + 外部状态存储是首选
  • 长任务用异步队列 (Celery / Temporal / SQS),避免 HTTP 超时
  • WebSocket / SSE 推送中间过程,提升体感
  • 多租户:隔离上下文、配额、计费
⚠️ 三大常见失败模式
  1. Token 黑洞:Agent 之间互相 ping 不收敛,账单一夜暴涨。→ 强制设置 max_iterations / max_cost。
  2. 上下文崩塌:Orchestrator 把所有子 Agent 的原始输出全部塞回自己窗口。→ 用 Summarizer 中间件。
  3. 静默漂移:没有评估集,模型一升级就退化无人发觉。→ 上线 eval pipeline 是非选项。

#6. 主流框架对比

截至 2026 年,多智能体编排领域已形成「代码框架 + 低代码平台 + 协议层」三大梯队。

6.1 代码框架(开发者主战场)

框架厂商核心抽象编排范式定位适用
LangGraphLangChain StateGraph (节点+边+共享 State) 图 / 任意拓扑 底层最灵活,生产级首选 复杂工作流、需 HITL/持久化的项目
AutoGen v0.4Microsoft Actor / Event-driven Agent 异步消息、GroupChat 分布式 actor 模型,研究友好 研究、原型、需异步并发
CrewAICrewAI Inc. Crew / Agent / Task Sequential / Hierarchical 角色化协作,最易上手 业务流程模拟、内容生产
OpenAI Agents SDKOpenAI Agent + Handoff + Guardrail Handoff (Swarm 继任者) 轻量、官方支持、自带 trace OpenAI 生态、客服/路由类
Google ADKGoogle Agent / Workflow / Tool 顺序/并行/循环 + LLM 路由 原生 A2A 支持,Gemini 优化 GCP/Vertex 用户、企业级
Semantic KernelMicrosoft Kernel / Plugin / Planner Planner + Plugin .NET / Java 生态、企业集成 企业 Java/.NET 项目
LlamaIndex AgentsLlamaIndex AgentWorkflow / Event 事件驱动 workflow RAG 深度整合 知识密集型 + Agent
MetaGPT开源 角色 (SOP) 软件公司模拟 预置软件研发 SOP 代码生成研究、Demo
SmolAgentsHuggingFace CodeAgent 代码即行动 极简 (~1k LOC),行动用代码 研究、教学、小型 Agent

6.2 低代码 / 可视化平台

Dify 开源

可视化 Workflow + Agent,自带 RAG、知识库、监控。国内最流行,企业私有化部署友好。

Coze / 扣子 字节

面向 C 端 Bot 生态,插件市场丰富,海外/国内双版本。低代码工作流 + 多 Agent。

n8n 开源

通用自动化平台,2025 加入 AI 节点后成为热门 Agent 编排选项,集成 500+ 应用。

Flowise 开源

LangChain 的可视化前端,拖拽即可构建 Chain 与 Agent。

Microsoft Copilot Studio

面向企业 IT,深度集成 M365、Power Platform、Azure。无代码 Agent 构建。

百炼 / 千帆 / 文心智能体

阿里、百度的云上 Agent 平台,绑定自家模型,适合国内合规与生态用户。

6.3 协议与基础设施

MCP 协议

Agent ↔ 工具/数据的标准。生态:mcp-servers 已覆盖 GitHub、Slack、DB、Browser 等数百个。

A2A 协议

Agent ↔ Agent 标准。AgentCard 描述能力,便于跨厂商发现与调用。

Temporal / Restate 运行时

Durable Execution。长任务、崩溃恢复、人工审批的可靠底座。

LangSmith / Langfuse 观测

Agent 调用链 trace、prompt 管理、eval pipeline。生产必备。

Inngest / Trigger.dev 事件

事件驱动后台任务,对 Agent 长流程友好。

Mem0 / Letta 记忆

独立的 memory layer,可挂在任何 Agent 框架前。

#7. 选型决策

没有银弹,只有匹配。按团队特征 + 场景特征做组合选择。

7.1 决策矩阵

你的情境推荐方案理由
Python 团队,复杂工作流,需 HITL + 持久化 LangGraph + LangSmith 图抽象灵活,checkpointer 成熟,生态最全
已在用 OpenAI,需要轻量编排 + 客服路由 OpenAI Agents SDK handoff 范式简洁,trace 开箱即用
业务模拟:销售/PM/Dev 协作 CrewAI 角色 + 任务抽象贴近真实组织
研究 / 实验异步多 Agent 拓扑 AutoGen v0.4 actor 模型 + 灵活 GroupChat
.NET / Java 企业系统 Semantic Kernel 原生支持,企业集成完善
非技术团队主导 / 快速 POC Dify / Coze / n8n 低代码、内置 RAG 与监控
GCP + Gemini,需 A2A 跨厂商互通 Google ADK 原生 A2A,Vertex AI 深度整合
RAG 是核心,Agent 是增强 LlamaIndex 索引与查询引擎一流
金融 / 医疗等高可靠场景 LangGraph + Temporal Durable execution 保证恢复与审计

7.2 选型核对清单

  • 编排范式是否匹配你的任务结构(DAG / 自由消息 / 层级)
  • 状态持久化是否原生支持(崩溃恢复、长任务)
  • HITL 是否一等公民(中断、审批、编辑)
  • 可观测性是否自带或易接入(OpenTelemetry、LangSmith)
  • 模型抽象是否支持多 provider 与 fallback
  • 工具生态 是否兼容 MCP,是否有现成集成
  • 部署模型是否符合你的合规要求(开源/私有化/SaaS)
  • 团队学习曲线与社区活跃度(GitHub star、issue 响应、文档质量)
  • License(Apache 2.0 vs BSL vs 商业)
  • 对接成本(与现有 LLM Gateway、向量库、Auth 系统)
💡 务实建议
不要在一开始就为「未来扩展」选最重的框架。从单 Agent + 显式 Workflow 起步, 把可观测性 / 评估管线先搭好;当业务确实出现多 Agent 价值时,再换到 LangGraph 等图框架。 底层换框架的成本远小于踩坑成本。

#8. 实现路径与参考架构

从 0 到 1 到生产的渐进式路线图,以及一个通用的部署参考架构。

8.1 五阶段演进路径

阶段 1 · POC
单 Agent + 1-2 个工具,跑通主链路,确认 LLM 能完成核心任务
阶段 2 · 可观测
接入 LangSmith / Langfuse,建立 prompt 版本管理与 trace 体系
阶段 3 · 评估
收集 20-100 条 golden cases,建立离线 eval + 在线 LLM-as-Judge
阶段 4 · 多 Agent
识别瓶颈(上下文过载/工具过多)→ 拆分专业化 Agent,引入 Orchestrator
阶段 5 · 生产
异步队列、Durable execution、HITL、配额、灰度发布、A/B 测试

8.2 参考部署架构

生产级多 Agent 系统典型分层
🌐 客户端 (Web / IM / API)
🚪 API Gateway / BFF (认证、限流、SSE 推流)
📨 Async Queue
(Temporal / Celery)
🎛️ Orchestrator Service
(LangGraph / ADK)
👤 HITL Service
(审批 UI)
🤖 Agent Pool
🧰 Tool Layer
(MCP Servers)
🧠 Memory
(Mem0 / Vector DB)
🧪 LLM Gateway
(LiteLLM / Portkey)
📊 Observability
(Langfuse / OTel)
🔐 Secrets / Policy
OpenAI
Anthropic
Gemini
Qwen / DeepSeek
自部署

8.3 工程实践清单

🧱 代码组织

  • 每个 Agent 一个独立模块:prompt / tools / schema 分离
  • Prompt 用模板引擎 (Jinja2) 管理,禁止硬编码
  • Tool 描述与实现解耦,便于跨 Agent 复用
  • State Schema 用 Pydantic / TypedDict 强类型

🧪 测试策略

  • 单元测试:Mock LLM,验证工具调用 schema、状态转移
  • 回归测试:黄金数据集 + 输出快照 + 语义相似度
  • 对抗测试:Prompt injection、越权工具调用
  • 压测:并发任务下的 token 与延迟

🚀 发布策略

  • Prompt 与代码同等对待,走 PR + Review + 版本号
  • 金丝雀发布:5% 流量验证新 prompt / 新模型
  • 影子模式 (shadow):新 Agent 静默并行,仅记录不返回
  • 自动回滚:质量指标低于阈值自动切回旧版

💡 上下文管理技巧

  • 子 Agent 返回值用 schema 约束,避免长文本污染
  • 每轮结束后由 Summarizer 压缩历史
  • 关键事实写入 Memory,非关键信息丢弃
  • 使用 Prompt Caching 复用稳定前缀

#9. 典型案例剖析

四个有代表性的真实多智能体系统,看模式如何落地。

9.1 Deep Research(Anthropic / OpenAI / Perplexity)

模式:Orchestrator-Worker。

流程:用户提交研究问题 → LeadResearcher 拆解为子问题 → 并行 fan-out 给多个 Subagent 检索 + 阅读 → 各 Subagent 返回结构化摘要 → Synthesizer 汇总 + CitationAgent 加引用。

关键设计

  • 子 Agent 独立窗口,原始网页内容不回传,只回压缩摘要
  • Lead 使用强模型 (Opus),Sub 使用快模型 (Sonnet/Haiku)
  • 显式 token 预算,超额自动停止
  • 报告:相比单 Agent 任务质量提升 ~90%,token 消耗 ~15×

9.2 编程智能体(Claude Code / Cursor / Devin)

模式:Plan-Execute-Reflect + 子 Agent 即工具。

流程:主 Agent 接收需求 → 制定计划 → 调用 search/edit/run 工具循环执行 → 复杂子任务(如大型重构)派生子 Agent,子 Agent 拥有独立上下文,完成后只回传 diff + 摘要 → 失败时 Critic 重新规划。

关键设计

  • 主 Agent 上下文只保留高层计划与文件级摘要,避免被代码淹没
  • 每步都有 sandbox 执行 + 测试反馈作为闭环
  • HITL 在敏感操作(删除、push)必须 approve

9.3 智能客服 (Triage + Specialist Handoff)

模式:Hand-off / Swarm。

流程:Triage Agent 识别意图 → 移交给 Billing / Tech / Sales Agent → Agent 调用 CRM / KB 工具 → 不确定或高风险时再 hand-off 给 Human Agent。

关键设计

  • 每个 Specialist 只暴露自己领域的工具,减小决策空间
  • Guardrail Agent 拦截违规请求、PII 泄露
  • 所有 hand-off 事件结构化记录,便于质检与训练

9.4 通用 Agent 助手 (Manus / GenSpark)

模式:分层 Planner + 异步 Workers + 虚拟桌面环境。

流程:主 Planner 维护待办清单 → 拉起子 Agent 在云端虚拟机内执行浏览/代码/文件操作 → 过程异步推送给用户 → 用户可中途打断 / 修改目标。

关键设计

  • 任务级而非对话级交付,用户离线后继续执行
  • 所有副作用在隔离环境内,便于回滚与审计
  • 事件流式 UI,让长任务可解释

#10. 常见陷阱与反模式

真实项目中最常见的踩坑清单。

❌ 过度多智能体化

把本可用 if-else / Workflow 解决的简单逻辑硬塞给一群 Agent 协作。 结果:成本 10×、延迟 5×、可靠性反而下降。
对策:保持「确定性优先,LLM 兜底」的设计原则。

❌ Orchestrator 上下文爆炸

子 Agent 把原始网页/代码/日志全部回传给 Orchestrator,几轮后窗口被挤爆。
对策:约定子 Agent 必须返回 schema 化的「结论 + 引用 ID」。

❌ 没有终止条件

GroupChat 模式下 Agent 互相 "thanks, anything else?",token 失控。
对策:max_iterations、max_cost、显式 done 信号缺一不可。

❌ 提示词散落

各 Agent prompt 拷贝在不同文件里,改一处忘十处。
对策:集中 prompt registry + 版本号 + 引用。

❌ 用聊天日志当评估

没有 golden set,靠"感觉好像更好了"上线。
对策:上线前必须有可重复的 eval 脚本与分数。

❌ 忽视工具描述质量

Tool 的 description / 参数说明写得含糊,模型频繁选错或传错参。
对策:把工具描述当成 prompt 的核心部分迭代。

❌ Prompt Injection 防线缺失

来自检索结果 / 工具返回值 / 用户上传文件中的指令被 Agent 当真执行。
对策:区分可信/不可信上下文,敏感工具加 HITL。

❌ 试图让 Agent 学会一切

把整本手册塞进 system prompt,结果模型抓不到重点。
对策:让 Agent 学会"按需检索"而非"全量记忆"。

🚨 关于「Lethal Trifecta」
Simon Willison 提出的致命三件套:访问私有数据 + 接触不可信内容 + 外发能力。 任何 Agent 同时具备这三项即存在被窃取数据的风险。设计权限时务必打破其中至少一项(如禁止外发, 或对外发内容人工审批)。