本文深入探讨了 Agent 成功率差异的关键因素——Harness 运行时工程。通过对比不同团队在相同模型、Prompt 和工具下的结果差异,揭示了 Harness 的重要性。文章详细解析了从 LLM 调用到 Agent 运行的完整循环,包括 Intent 解析、Planner 规划、Context Assembly 上下文组装、Tool Selection 工具选择等九个阶段,并阐述了 Harness 的核心组件如 Planner、Tool Router、State Manager 等。此外,还讨论了 Workflow 与 Agent 的混合范式、不同规划策略的选择、工具系统的治理以及多 Agent 架构等关键议题,最后提供了生产环境 Agent 开发的 Checklist,旨在帮助读者全面理解并构建高效稳定的 Agent 系统。
同一个模型、同一个 Prompt、同样的 Tool,两个团队的 Agent 成功率可能天差地别。差异不在模型,不在 Prompt,而在那层看不见的 Runtime 工程——Harness。
导读
我们讨论了 Context Engineering——给 Agent 一个正确的世界。Agent 拿到了正确的 Knowledge、Data、State、Memory,意味着它「知道该做什么」。但知道该做什么,和真正稳定地做完、做对、做到生产可用,中间还有巨大的鸿沟。这个鸿沟,就是 Harness。
从 LLM Call 到 Agent Runtime
一、同一个模型,为什么结果天差地别
想象一个场景:A 团队和 B 团队拿到了同一个 LLM——同样的参数规模、同样的系统提示词、同样的工具集。A 团队的 Agent 在生产环境中稳定运行,任务成功率 92%;B 团队的 Agent 频繁崩溃,成功率只有 47%。
模型一样、Prompt 一样、Tool 一样,结果天差地别。差异从哪来?
答案藏在一层大多数人看不见的工程系统里——Harness。
Harness,中文可以理解为「驾驭系统」或「运行时框架」。它不是 Prompt,不是 Tool,也不是模型本身。它是包围在模型周围、约束模型行为、向模型提供工具和环境、负责 Agent 完整执行生命周期的那套 Runtime 工程。
模型决定下限,Harness 决定上限。
一个没有 Harness 的 Agent,就像一辆只有发动机没有底盘、没有刹车、没有转向系统的车。发动机再强,你也开不稳、停不住、拐不了弯。Prompt 告诉发动机「往哪开」,Context 告诉发动机「路况怎样」,而 Harness 才是那辆真正能上路的车。
Meta 在 2026 年 9 月发布的 Muse Spark 1.3 提供了一个有力佐证:通过对 Agent 运行时层的优化——更智能的工具选择、更精准的上下文裁剪、更高效的状态传递——Muse Spark 1.3 在不改变底层模型的前提下,减少了 20% 的工具调用和 25% 的 Token 消耗(https://research.meta.ai/blog/introducing-muse-spark-1-3)。模型没换,Prompt 没换,Tool 没换,但 Harness 的优化直接带来了可观的效果提升。这正是 Harness 作为核心壁垒的实证。
二、从 LLM Call 到 Agent Runtime
简单版:三行代码的幻觉
大多数 Agent Demo 长这样:一个 Prompt,一次 LLM 调用,几个 Tool 定义,然后等待输出。流程是线性的:
Prompt → LLM → Tool → Result → End
这个结构在 Demo 里很完美。它简单、直观、容易理解。但生产环境从来不是线性的。真实世界的任务充满了不确定性:网络超时、工具返回异常数据、用户中途改变意图、上下文窗口溢出、成本超出预算。线性流程遇到任何一个异常,就会崩溃。
生产版:一个完整的 Agent 循环
生产级 Agent 的 Runtime 不是一条线,而是一个循环。完整流程包含九个阶段:
Intent → Planner → Context Assembly → Tool Selection → Execution → Observation → Verification → Replan → Result
Intent 解析: 用户说「帮我查下上周的订单状态」,这句话背后可能包含多个意图——查时间范围、查订单列表、查物流状态。Intent Parser 负责将自然语言拆解为结构化任务目标。
Planner 规划: 拿到 Intent 后,Planner 决定执行策略。是直接调一个工具就够了,还是需要多步执行?步骤之间有没有依赖关系?哪些步骤可以并行?
Context Assembly 上下文组装: 在每一步执行前,Runtime 需要组装当前步骤所需的上下文:系统提示词、历史对话摘要、工具定义、当前状态、相关记忆。上下文窗口有限,不可能全塞进去,所以需要智能裁剪和优先级排序。
Tool Selection 工具选择: Agent 可能有几十甚至上百个工具。Tool Router 负责根据当前任务从工具池中选择合适的工具,先做一轮检索和过滤,而不是让 LLM 每次都看全部工具定义。
Execution 执行: 选定工具后,Runtime 负责实际调用,涉及参数验证、权限检查、调用日志、超时控制。执行不是「调用就完事」,而是一个有完整生命周期的操作。
Observation 观察: 工具返回结果后,Runtime 先观察:返回是否正常?数据格式是否符合预期?是否触发了异常?
Verification 验证: 这是最容易被忽略但最关键的一步。调用退款 API 后,需要验证退款状态是否真的变为了「已退款」,而不只是 API 返回了 200。
Replan 重规划: 如果验证失败,或者执行过程中环境发生了变化,Runtime 触发重规划,重新生成执行路径。这就是为什么 Agent 是循环而非线性的。
Result 结果输出: 所有步骤完成后,Runtime 将最终结果组装并返回给用户,包含执行轨迹、工具调用记录、成本统计。
这九个阶段不是可选的「高级功能」,而是生产级 Agent 的最低要求。缺少任何一个,Agent 就会在某些场景下失控。而实现这些阶段的整套系统,就是 Harness。
Workflow vs Agent 对比
三、什么是 Agent Harness
定义
Agent Harness 是包围模型、约束模型、向模型提供工具和环境、负责 Agent 完整执行生命周期的 Runtime 系统。
用一个比喻:如果 LLM 是马,Harness 就是缰绳、马鞍、马蹄铁和骑手的组合。马再强,没有这些,你也骑不稳、跑不快、停不住。Harness 不是一个组件,而是一整套组件的集合,共同构成了 Agent 的运行时基础设施。
核心组件
一个完整的 Agent Harness 包含以下核心组件:
Planner(规划器): 负责将用户意图分解为可执行的步骤序列。Planner 不是「让 LLM 自己想」——它是一套有结构的规划框架,包含任务分解规则、依赖关系识别和并行执行策略。
Tool Router(工具路由器): 当 Agent 有几十个工具时,Tool Router 负责在每一步只把相关工具的 Schema 暴露给 LLM。这既减少 Token 消耗,也降低工具选择的错误率。
State Manager(状态管理器): 记录 Agent 当前处于哪个步骤、已经执行了哪些工具调用、每个调用的结果是什么、有哪些待执行的动作。State Manager 是 Agent 的「短期记忆」。
Context Manager(上下文管理器): 负责在每一步组装 LLM 需要的上下文。这包括系统提示词的动态拼接、历史对话的压缩与裁剪、工具定义的按需加载、外部知识的检索注入。
Workflow Engine(工作流引擎): 负责协调确定性流程和动态决策的混合执行。不是所有步骤都需要 Agent 动态决策——有些步骤是固定的工作流,用确定性逻辑执行更可靠。
Retry / Verification / Timeout / Checkpoint / Fallback(容错与恢复机制): Retry 处理瞬时故障,Verification 确认执行结果,Timeout 防止无限等待,Checkpoint 支持断点恢复,Fallback 在主路径失败时切换到备选方案。
Harness 不是框架
一个常见误解:Harness 就是 LangChain 或 AutoGen 这样的 Agent 框架。不是。
框架提供的是构建 Agent 的工具库和抽象接口。Harness 是你用这些框架(或不用框架)构建出来的具体运行时系统。两个团队都用 LangChain,但构建出的 Harness 可能完全不同——一个有完整的 State Management、Verification 和 Fallback,另一个只有基础的 Agent Loop。框架是建材,Harness 是建筑。
TypeSafe 在 2026 年推出的 Jev 系统进一步印证了这一点。Jev 是一个独立的 Decision Model,专门用于 Agent 运行时中的快速决策环节——每百万 Token 仅 $0.042,响应时间 70-500ms(https://typesafe.ai/blog/introducing-system-one-models-and-jev)。这说明行业正在将 Agent 运行时中的不同职能拆分——决策、规划、执行不再是同一个模型的兼职,而是由专门的组件各司其职。Harness 的设计正在从「一个模型干所有事」走向「组件化、专业化」。
四、Workflow vs Agent:不是非此即彼
两种范式
Workflow(工作流): A → B → C,每一步都是预先定义好的,执行路径确定、可预测、可测试。优点是稳定、可靠、容易调试。缺点是不灵活——遇到未预料的情况无法自适应。
Agent(智能体): Goal → 动态决定下一步。每一步的执行都由 LLM 根据当前状态和目标来决定。优点是灵活、能处理未知情况。缺点是不确定——同样的输入可能产生不同的执行路径,难以测试和复现。
生产最佳实践:Deterministic Workflow + Agentic Decision
生产环境中,纯 Workflow 和纯 Agent 都不是最优解。最佳实践是两者的混合:用确定性 Workflow 处理可预测的流程,用 Agentic Decision 处理需要灵活判断的决策点。
具体来说:
流程编排用 Workflow: 任务的整体骨架用确定性工作流定义。比如「处理退款」的骨架是:查订单 → 验证资格 → 执行退款 → 通知用户 → 记录日志。这个骨架不需要 Agent 来「想」,用 Workflow 固定下来更可靠。
决策节点用 Agent: 在流程的某些节点,需要 LLM 做判断。比如「验证资格」这一步,可能需要理解退款原因、判断是否在政策范围内、评估风险等级。这些判断用规则引擎覆盖不全,用 Agent 做更灵活。
OpenAI 的 ChatGPT Work 是这种混合模式的典型实践。ChatGPT Work 能够跨应用执行复杂任务——在邮件中找到信息、在日历中创建事件、在文档中更新内容——但并非每一步都由 Agent 动态决策。任务的整体流程是确定性的编排,而理解邮件内容、提取关键信息、判断创建什么事件则是 Agentic Decision(https://help.openai.com/en/articles/11391654-chatgpt-business-release-notes)。这种「骨架确定 + 关节点智能」的模式,正是生产级 Agent 的标准范式。
这种混合模式的好处是:80% 的执行路径是确定性的,可测试、可审计;只有 20% 的决策点是不确定的,但这些点都有明确的输入输出边界,可以单独做 Evals。
Agent Tool Layer 架构
五、Planning 策略:不是越复杂越好
五种规划模式
Single Step(单步规划): 最简单的模式。Agent 看到任务后直接决定一个动作执行。适用于简单任务,比如「今天天气怎么样」——查一次天气 API 就够了。
ReAct(推理-行动循环): Agent 在每一步先推理(Thought),再决定行动(Action),观察结果(Observation),然后进入下一轮推理。这是目前最常用的 Agent 规划模式。适用于中等复杂度的任务。
Plan-and-Execute(先规划后执行): Agent 先生成一个完整的计划,然后逐步执行。执行过程中如果发现计划不可行,可以修改计划。比 ReAct 更适合复杂任务,因为先规划可以减少执行中的来回试错。
Hierarchical Planning(层次化规划): 将大任务分解为子任务,子任务再分解为子子任务,形成树状结构。每个层级可以由不同的 Agent 或不同的规划逻辑处理。适用于大型复杂任务。
Dynamic Replanning(动态重规划): 在执行过程中,如果环境发生变化或原计划失败,Agent 能够动态生成新的计划。这不是一种独立的规划模式,而是叠加在上述任何模式之上的能力。动态重规划是生产级 Agent 的必备能力——真实世界总是在变化。
选择原则
规划复杂度应该匹配任务复杂度,不是越高越好。
一个简单的查询任务用 Hierarchical Planning 是杀鸡用牛刀——不仅浪费 Token 和时间,还增加了不必要的失败点。一个复杂的多阶段任务用 Single Step 则会力不从心——Agent 可能在第三步就迷失了。
选择原则:
- 任务步骤 ≤ 2 步 → Single Step
- 任务步骤 3-5 步,路径基本确定 → ReAct
- 任务步骤 5+ 步,需要全局规划 → Plan-and-Execute
- 任务可分解为独立子任务 → Hierarchical Planning
- 环境变化频繁 → 以上任一 + Dynamic Replanning
关键洞察: 过度规划比规划不足更危险。好的 Harness 会在规划深度和执行效率之间找到平衡。Meta Muse Spark 1.3 减少工具调用和 Token 消耗的优化(https://research.meta.ai/blog/introducing-muse-spark-1-3),很大一部分就来自更精准的规划——不是规划得更深,而是规划得更「刚刚好」。
六、Tool System:工具不是越多越好
工具类型全景
Agent 的工具系统是 Harness 与外部世界交互的接口。当前主流的工具类型包括:
API / Function Calling: 最基础的工具形式。LLM 输出结构化的函数调用请求,Harness 负责实际执行。这是 OpenAI Function Calling 和 Anthropic Tool Use 的基础范式。
MCP(Model Context Protocol): MCP 的核心价值是工具标准化——不同的工具提供方按照统一协议暴露能力,Agent 可以即插即用地使用任何 MCP 兼容的工具,不需要为每个工具写定制适配。MCP 正在成为 Agent 工具生态的底层标准。
CLI(命令行工具): 很多开发者场景下,Agent 需要执行 shell 命令——创建文件、运行测试、查看 Git 状态。CLI 工具是最灵活但也最危险的工具类型,需要严格的权限控制。
Skill(技能): 更高层次的工具抽象。一个 Skill 可能封装了一整套工作流。Anthropic 在 2026 年推出的 Claude Agent Skills 是这一方向的标杆——可动态加载的 instructions + scripts + resources 三件套,让 Agent 在需要时才加载特定能力,不用时卸载,既节省上下文窗口又保持能力可扩展(https://www.anthropic.com/engineering/equipping-agents-for-the-real-world-with-agent-skills)。Skill 模式的本质是:工具不只是函数调用,而是「能力包」。
工具治理
生产环境中,工具不是「定义了就能用」。每个工具都需要完整的治理:
Schema: 每个工具有严格的输入输出 Schema 定义。参数类型、必填项、默认值、取值范围、错误码。Schema 越严格,LLM 调用工具的准确率越高。
Description(工具描述): 工具描述是 LLM 理解工具的唯一信息来源。好的描述应该包含:工具做什么、什么时候用、什么时候不用、参数含义、返回格式、异常情况。
Permission(权限): 查询类工具可以是低权限,写操作类工具需要高权限,涉及资金或用户数据的工具需要最高权限和审批流程。
Version(版本管理): 工具会迭代——API 接口会变、参数会增减、行为会调整。每个工具需要有版本号,Harness 记录每个 Agent 使用了哪个版本的工具。
Owner(负责人): 每个工具有明确的负责人。没有 Owner 的工具就是定时炸弹——出了问题没人修,Agent 会持续失败。
Eval(工具评估): 每个工具有自己的评估集——测试用例验证工具在各种输入下的行为是否符合预期。
工具数量与性能的关系
工具越多,Agent 性能越差。 当工具列表从 10 个增长到 100 个时,LLM 需要处理的 Tool Schema 从几千 Token 增长到几万 Token,上下文窗口被工具定义占满,留给任务推理的空间急剧减少。
最佳实践: Tool Router 在每一步只暴露 5-10 个最相关的工具给 LLM。工具池可以很大(100+),但每次调用的可见工具集应该很小。
Anthropic 的 Agent Skills 机制恰好解决了这个问题——通过动态加载,Agent 当前上下文中只有与当前任务相关的 Skill,其余 Skill 不占上下文空间(https://www.anthropic.com/engineering/equipping-agents-for-the-real-world-with-agent-skills)。这比静态地把所有工具定义塞进 System Prompt 高效得多。
Agent 失败处理决策树
七、State Management:Agent 的短期记忆
为什么需要状态管理
Agent 是循环执行的。每一步执行后,下一步需要知道:当前在哪个阶段、之前做了什么、结果是什么、还有什么没做。如果没有状态管理,Agent 每一步都像「失忆」一样从头开始——重复执行已经完成的步骤,或者跳过还没做的步骤。
状态包含什么
一个完整的 Agent State 包含以下信息:
Current Step(当前步骤): Agent 在执行计划中的位置。是第 3 步还是第 7 步?是在规划阶段还是执行阶段?
Executed Tools(已执行工具列表): 哪些工具已经被调用过、按什么顺序、结果如何。这不仅用于避免重复调用,也用于 Replan 时理解「已经做了什么」。
Tool Results(工具结果缓存): 每个工具调用的完整结果。如果 Replan 后需要重新使用之前的结果,不需要重复调用工具——直接从 State 中读取。
Pending Actions(待执行动作): 计划中已生成但尚未执行的动作。这些动作构成了 Agent 的「待办事项清单」。
Checkpoint(检查点): Agent 在关键节点保存的状态快照。如果后续执行失败,可以从最近的 Checkpoint 恢复,而不是从头开始。一个运行 30 分钟的 Agent,如果在第 25 分钟失败,不能接受从头重来。
Error Log(错误日志): 执行过程中发生的所有异常记录。错误日志不仅用于调试,也用于 Replan——如果某个工具连续失败两次,Replan 时应该跳过这个工具或切换到 Fallback。
状态存储方案
State 可以存储在内存中(适用于短时 Agent)、Redis 中(适用于中等时长、需要共享状态的场景)、或持久化数据库中(适用于长时 Agent 和需要审计的场景)。
Glean 在其 Agent Dev Lifecycle 的博客中特别强调了 Sandbox 安全运行时与 State 管理的结合——Agent 的状态不只是「记得做了什么」,还涉及状态中的敏感数据隔离、执行环境的沙箱化,以及 Agent 生命周期中状态的版本化管理(https://www.glean.com/blog/agent-dev-lifecycle-2026)。这意味着 State Manager 不仅是功能组件,也是安全组件。
八、Failure Handling:当 Agent 出错时
五层容错体系
生产环境中,Agent 出错是常态而非例外。好的 Harness 不是追求「不出错」,而是确保「出错时能优雅处理」。完整的失败处理包含五个层次:
Retry(重试): 处理瞬时故障。网络超时、API 限流、临时不可用——这些错误重试一次就好了。Retry 需要设置最大重试次数(通常 2-3 次)和退避策略(指数退避,避免雪崩)。成本最低。
Replan(重规划): 处理计划不可行的情况。原计划是「调用工具 A 获取数据,然后调用工具 B 处理」,但工具 A 返回的数据格式不符合预期。此时不是重试 A,而是触发 Replan——重新规划一条不依赖工具 A 原始格式的路径。Replan 需要理解「为什么原计划失败了」。
Fallback(降级): 处理工具或模型不可用的情况。主工具不可用时切换到备选工具,主模型不可用时切换到备选模型。Fallback 需要预设备选方案。
Escalation(升级转人工): 处理 Agent 无法解决的情况。当 Retry、Replan、Fallback 都无法解决问题时,Harness 应该将任务升级给人工处理。Escalation 不是「失败」,而是「负责任的停止」——Agent 识别到自己的能力边界,将控制权交给人类。没有 Escalation 的 Agent 不应该上生产。
Stop(强制停止): 处理 Agent 失控的情况。当 Agent 超过运行限制(步数、时间、成本)时,Harness 强制停止执行。Stop 不需要理解 Agent 在做什么,超限即停。
设计原则
失败处理的设计原则是「分层降级」: 先尝试最低成本的恢复方式(Retry),不行再升级到中等成本的方式(Replan),再不行用预设备选(Fallback),最后才转人工(Escalation)或强制停止(Stop)。
每一层的触发条件必须明确:
- Retry 触发条件:瞬时错误(超时、限流、5xx)
- Replan 触发条件:工具返回结果不符合预期、环境状态已变化
- Fallback 触发条件:工具或模型连续失败超过阈值
- Escalation 触发条件:Replan 和 Fallback 均无法解决
- Stop 触发条件:超过 Runtime Boundary 限制
Single Agent vs Multi-Agent
九、Runtime Boundary:给 Agent 划红线
为什么需要边界
Agent 是循环执行的。如果没有边界限制,Agent 可能因为以下原因无限运行:工具持续返回异常数据、LLM 陷入循环推理、任务本身无法完成但 Agent 不知道该放弃、恶意输入诱导 Agent 执行无限操作。
无限运行不只是「卡住」——它在持续消耗 Token、调用 API、产生成本。一个失控的 Agent 可能在 10 分钟内消耗数百美元的 API 费用。
六条红线
Max Steps(最大步数): Agent 执行循环的最大次数。通常设置为 10-50 步,取决于任务复杂度。
Max Tool Calls(最大工具调用数): 所有工具调用的总数限制。比 Max Steps 更精确——一个步骤可能调用多个工具,也可能不调用工具。通常设置为 Max Steps 的 2-3 倍。
Max Runtime(最大运行时间): 从 Agent 开始执行到必须结束的时间限制。通常设置为 30 秒到 10 分钟。时间限制保护下游系统——用户不能等一个 Agent 跑 30 分钟。
Max Token(最大 Token 消耗): 所有 LLM 调用的 Token 总量限制。这是成本控制的核心指标。
Max Cost(最大成本): 以美元为单位的总成本限制。包括 LLM 调用成本、工具调用成本、外部服务成本。即使其他指标没超,总成本超标也要停。
Max Retry(最大重试次数): 单个工具或单个步骤的最大重试次数。防止 Agent 在单个失败点上无限重试。通常设置为 2-3 次。
边界值的设定
边界值不是拍脑袋定的,而是基于业务需求和历史数据动态调整:
先跑 Evals,用测试集跑出 Agent 在正常情况下的步数、时间、Token、成本的分布
以 P95 值的 2-3 倍作为初始边界
上线后持续监控,如果边界值经常被触发,说明 Agent 的效率有问题,需要优化而非放宽边界
随着优化迭代,逐步收紧边界值,推动 Agent 变得更高效
Meta Muse Secure VM 的实践提供了一个值得参考的安全范式:每个用户专属云端 Linux VM,使用 systemd-nspawn 容器隔离,配合 Sentinel 权限管理系统(https://research.meta.ai/blog/security-and-safety-for-ai-agents-our-approach-with-muse)。这意味着 Runtime Boundary 不只是软件层面的步数和 Token 限制,还包括操作系统级别的资源隔离——CPU、内存、文件系统、网络访问都被沙箱限制。Agent 的失控被物理边界兜底,而非仅靠软件逻辑。
十、Single Agent vs Multi-Agent
什么时候用 Single Agent
Single Agent 是默认选择。只有在明确需要时才考虑 Multi-Agent。适合 Single Agent 的条件:
Context 集中: 任务所需的所有信息可以放在一个上下文窗口里。
工具有限: 工具数量在 10 个以内,一个 Agent 可以管理所有工具。
任务简单: 任务可以在 10 步以内完成,不需要并行执行多个子任务。
满足以上条件的任务,用 Single Agent 就够了。强行拆成 Multi-Agent 只会增加协调成本和失败点。
什么时候用 Multi-Agent
Multi Agent 适合以下条件:
专业差异大: 不同子任务需要不同的系统提示词、不同的工具集、不同的推理模式。比如「分析代码并写技术文档」——代码分析需要精准的技术工具和严谨的推理风格,文档写作需要创造性表达和用户友好的语言。
权限不同: 不同子任务需要不同权限级别。查询 Agent 只有只读权限,执行 Agent 有写权限,审批 Agent 有最高权限。
Context 需隔离: 不同子任务的上下文不应该交叉。处理用户隐私数据的 Agent 和处理公开数据的 Agent 应该隔离。
可并行: 多个子任务可以同时执行,没有依赖关系。并行可以显著缩短总执行时间。
Multi-Agent 的代价
Multi-Agent 不是越多越先进。 每增加一个 Agent,就增加:协调成本(Orchestrator 需要管理更多 Agent 的状态和任务分配)、通信开销(Agent 之间传递信息消耗 Token)、失败点(每个 Agent 都可能失败)、调试难度(多个 Agent 的交互行为更难追踪)、成本倍增(每个 Agent 独立调用 LLM)。
决策原则: 如果 Single Agent 能完成任务,就不要用 Multi-Agent。只有当 Single Agent 明显力不从心时,才考虑拆分。
交易异常 Multi-Agent 架构
十一、企业实践案例:交易异常 Multi-Agent
场景
电商平台每天都有交易异常:订单支付成功但库存未扣减、物流显示已签收但用户反馈未收到、退款已发起但状态未更新。这些异常涉及订单系统、物流系统、风控系统、退款系统,单一 Agent 难以处理。
架构设计
这个场景适合 Multi-Agent 架构,因为:专业差异大(风控判断 vs 物流查询 vs 退款执行)、权限不同(查询权限 vs 执行权限 vs 审批权限)、Context 需隔离(风控数据不应暴露给物流模块)、可并行(查订单和查物流可以同时进行)。
架构如下:
Trading Orchestrator(交易协调器): 不是 Agent,而是确定性的 Workflow Engine。负责接收异常事件、分配任务给各 Agent、汇总结果、决定后续流程。Orchestrator 是纯确定性的——它不做「推理」,只做「编排」。
Order Agent(订单 Agent): 查询订单系统,获取订单详情、支付状态、库存状态。只读权限。工具集:订单查询 API、库存查询 API、支付状态查询 API。
Risk Agent(风控 Agent): 评估异常是否涉及欺诈风险。分析订单模式、用户历史、设备指纹。只读权限 + 分析工具。
Logistics Agent(物流 Agent): 查询物流系统,获取配送状态、签收记录、异常标记。只读权限。
Refund Agent(退款 Agent): 执行退款操作。写权限,但需要 Risk Agent 的评估结果和 Human Approval 才能执行。
执行流程
交易系统检测到异常,发送事件给 Trading Orchestrator
Orchestrator 同时启动 Order Agent 和 Logistics Agent,并行查询
查询结果返回后,Orchestrator 将汇总信息发给 Risk Agent 进行风险评估
根据 Risk Agent 的评估结果路由:低风险 + 金额低 → 直接退款;低风险 + 金额高 → 人工审批;高风险 → 人工审批 + 风控标记
审批通过后,Refund Agent 执行退款操作
Refund Agent 执行后,验证退款状态是否确实变更
Orchestrator 汇总所有 Agent 的执行结果,生成异常处理报告
所有步骤的执行轨迹、工具调用记录、Agent 决策日志写入持久化存储
为什么这个架构是生产级的
Workflow + Agent 混合:
Orchestrator 是确定性 Workflow,各 Agent 在自己的领域内做 Agentic Decision
权限分层:
查询 Agent 只有只读权限,执行 Agent 需要审批才能写入
并行执行:
Order Agent 和 Logistics Agent 并行运行,总执行时间显著缩短
Escalation 机制:
高风险或高金额自动转人工
完整审计:
每个 Agent 的每一步决策都有记录,满足金融场景的合规要求
Runtime Boundary:
每个 Agent 有独立的 Max Steps、Max Runtime 和 Max Cost 限制
LangChain 的 Agent Improvement Loop 为这类 Multi-Agent 系统的持续优化提供了方法论支撑——通过 Trace 捕获 Agent 的每一步决策和工具调用,建立「Trace → 分析 → 改进 → 重新评估」的闭环,让 Agent 系统在生产中持续迭代而非一锤子买卖(https://langchain.com/blog/traces-start-agent-improvement-loop)。而 Microsoft Foundry 在 Build 2026 的发布进一步将这种能力扩展到跨框架层面——不管你用 LangChain、AutoGen 还是自研框架,Foundry 提供统一的 Trace 和 Eval 能力(https://devblogs.microsoft.com/foundry/build-2026-from-observability-to-roi-for-ai-agents-on-any-framework)。这意味着 Agent 的可观测性和评估能力正在从框架特定走向平台统一。
十二、常见踩坑
坑 1:把 Agent Loop 写成递归调用。 Agent 的执行循环如果用递归实现,在长任务中会导致栈溢出。正确做法是用迭代循环——while 循环 + 状态机,每一步的执行结果存入 State,而不是依赖调用栈。
坑 2:没有给工具设 Timeout。 工具调用没有超时限制,遇到外部 API 卡住时 Agent 会无限等待。每个工具调用必须设 Timeout(通常 5-30 秒),超时后触发 Retry 或 Fallback。
坑 3:把全部工具塞给 LLM。 Agent 有 50 个工具,每次调用都把 50 个工具的 Schema 放进上下文。Token 消耗大、准确率低。正确做法是 Tool Router 先检索相关工具,每次只暴露 5-10 个。
坑 4:没有 Verification 就认为执行成功。 工具 API 返回 200 就认为操作成功了。但 200 只表示「请求被接受」,不表示「操作完成」。必须做 Verification——查询实际状态确认操作确实完成。
坑 5:Replan 没有保留已完成的工作。 Agent 在第 5 步失败需要 Replan,但 Replan 时从头开始规划,导致前 4 步的工作被丢弃。正确做法是 Replan 时读取 State,在新计划中保留已完成的部分。
坑 6:Checkpoint 太频繁或太少。 太频繁(每步都存)会导致性能下降;太少(只在开始和结束存)意味着失败后回退距离太远。最佳实践是在关键节点(每完成一个主要步骤后)做 Checkpoint。
坑 7:多 Agent 之间没有明确的消息协议。 Multi-Agent 系统中 Agent 之间的通信用自然语言传递信息,导致信息丢失和误解。应该定义明确的消息格式:任务 ID、发送方、接收方、消息类型、数据载荷。
坑 8:没有对 Agent 做成本监控。 Agent 上线后发现 API 账单暴涨,但不知道哪个任务、哪个 Agent、哪个工具消耗了最多。Harness 必须有成本监控——每次 LLM 调用和工具调用的成本都被记录,按任务、Agent、工具维度聚合。
十三、Production Checklist
在将 Agent 推向生产前,逐项检查:
Agent Loop 是否为迭代而非递归? 确认执行循环用 while + 状态机实现,不会因长任务导致栈溢出。
每个工具是否有 Timeout? 所有工具调用都有超时限制,超时后触发容错流程。
是否有完整的 State Management? State 包含当前步骤、已执行工具、结果缓存、Pending Actions、Checkpoint、Error Log。
是否有五层容错(Retry / Replan / Fallback / Escalation / Stop)? 每层的触发条件明确,执行逻辑经过测试。
是否设定了六条 Runtime Boundary? Max Steps、Max Tool Calls、Max Runtime、Max Token、Max Cost、Max Retry 全部设置且值合理。
Tool Router 是否在每步只暴露相关工具? 工具池可以大,但每次调用 LLM 可见的工具集不超过 10 个。
是否有 Verification 机制? 关键操作执行后有验证步骤,不只依赖 API 返回码。
是否有 Escalation 转人工机制? Agent 识别到无法解决的情况时,能将控制权交给人工。
是否有完整的审计日志? 每一步的决策、工具调用、参数、结果、成本都有记录,支持事后回溯。
是否有 Sandbox 隔离? 对于执行代码、CLI、文件操作的 Agent,是否有操作系统级别的资源隔离?
这 10 项不是「建议有」,而是「必须有」。缺任何一项,你的 Agent 运行时都有漏洞——而这个漏洞,在 Agent 出错的那一刻就会暴露。
大模型的知识又多又杂,到底怎么学?
做这行久了,被问最多的问题就一个:大模型的知识又多又杂,我到底先学啥?翻了一堆资料,看啥都像重点,结果啥都没学进去。今天把我自己一路摸出来的顺序捋一遍,零基础、应届生、转行的都适用。跟着走,至少方向不乱、不瞎忙,学完拿得出手。
第一阶段(10天):初阶应用
这一阶段就一个目标:把大模型真正"玩明白",不是只会聊天那种,而是能调教它、能用代码把大模型和业务接起来。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
这阶段正式进实战,目标很实在:做出两个能拿出手的东西——一个私有知识库,一个 agent 对话机器人。
为什么要做 RAG
搭建一个简单的 ChatPDF
检索的基础概念
什么是向量表示(Embeddings)
向量数据库与向量检索
基于向量检索的 RAG
搭建 RAG 系统的扩展知识
混合检索与 RAG-Fusion 简介
向量模型本地部署
…
走完这 30 天,Python 或 JavaScript 背景的基本能独立做一套 RAG 应用,简历上也敢写"大模型应用开发"了。
第三阶段(约20天):动手微调
学到这,你已经开始 “造” 模型了 —— 通过微调,搞出垂直领域的专用小模型。
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你从 “只会用” 变成 “能造” 的 AI 小子。那么你还想往下探索吗?
想要入局AI大模型赛道、抢占行业红利的朋友,微信扫描下方CSDN官方认证二维码,即可100%免费领取全套学习资料!
第四阶段(20天):商业闭环,部署落地
技术学完,落地才算数。这阶段带你搞明白大模型怎么真正跑起来、用起来。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
想要入坑大模型的朋友,给大家准备了一份2026 年最新 AI 大模型全套学习资料:
1、大模型系统化学习路线
2、大模型学习视频教程
3、大模型学习书籍&电子文档
4、AI大模型最新行业报告
5、大模型项目实战&配套源码
6、2026大模型大厂面试真题
7、为什么要学习大模型?
我国在A大模型领域面临人才短缺,数量与质量均落后于发达国家。2023年,人才缺口已超百万,凸显培养不足。随着AI技术飞速发展,预计到2025年,这一缺口将急剧扩大至400万,严重制约我国AI产业的创新步伐。加强人才培养,优化教育体系,国际合作并进是破解困局、推动AI发展的关键。
8、适合谁学?
- 传统后端 / Java / 前端开发,想转型 AI 应用
- 大学生、应届生,想拿更好的 offer
- 产品经理、运营,想武装职业竞争力
- 技术负责人,想给团队落地提效
学习是反人性的,但回报是真金白银。技术会更新,赛道会切换,但只要你先动手,机会就永远站在你这边。
9、这些资料真的有用吗?
这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。
资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。
想要入局AI大模型赛道、抢占行业红利的朋友,微信扫描下方CSDN官方认证二维码,即可100%免费领取全套学习资料!