尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

Graph 工程实战:把一个 Agent Loop 组织成可治理的工作图

Graph 工程实战:把一个 Agent Loop 组织成可治理的工作图 ℹ️读者定位适合你如果你已经使用过 AI IDE 或 Agent开始遇到长任务交接、并行验证、失败回退和人工审批问题。开始前需要理解基本的 Prompt、工具调用和 Agent Loop不要求先学某个 Graph 框架。读完可以完成看懂 Graph 工程的核心对象判断什么时候值得从单 Loop 升级并写出一张框架无关的最小工作图。暂时不适合想直接得到某个框架的完整部署教程或只想学习 Knowledge Graph / GraphRAG 数据建模的人。最近又开始有人讨论 Graph 工程了。先说结论Graph 工程不是把几个 Agent 画成框图而是把多个受控的工作节点组织成一张可执行、可恢复、可审计的任务图。这件事为什么会出现因为我们刚学会让一个 Agent 在 Loop 里自己做事马上又遇到一个更现实的问题当任务需要研究、实现、测试、审查和审批时究竟谁接着做什么这篇内容分为以下几个部分先看单个 Loop 为什么会遇到边界。拆开一张 Graph 的核心对象。理解 Graph 如何承载并行、验证、回退和人工接管。分清 Graph 工程、前四个工程和 GraphRAG 的边界。给出从单 Loop 升级到 Graph 的判断路径。一、先破题Graph 不是把流程图画复杂1.1. 一个 Agent 会做事不代表多个步骤能协作一个典型 Agent Loop 大概是这样1 读取任务 → 规划 → 调用工具 → 观察结果 → 修正 → 再验证它很适合修一个小 Bug、查一段资料或改一个配置。但任务一旦变成“研究影响范围、修改代码、跑测试、做安全检查、等待审批、生成交付报告”隐含的交接就越来越多。你可能需要人工把研究结果复制给实现 Agent再把实现结果交给测试 Agent最后自己判断几个结果能不能合并。ℹ️读者既然每个 Agent 都能跑自己的 Loop为什么不能让它们自己聊天ℹ️作者可以但“自己聊天”不是工程边界。你还得说清楚状态放在哪里、谁有权否决、失败往哪走、什么证据才算完成。1.2. Loop 和 Graph 的区别你可以先记住这句话1 Loop 管一个节点怎么做事Graph 管多个节点怎样共同完成一件事。Loop 关注下一步行动Graph 还要关注节点之间的依赖、路由、权限、产物版本、验证和停止条件。Graph 工程是一个正在形成的工程视角不是已经统一标准化的技术名词。近期讨论通常把它理解为把多个 Agent Loop 连接成带分支、验证器、交接和停止条件的工作系统。1.3. 先别急着上 Graph如果一个单 Agent Loop 已经稳定完成任务而且没有需要隔离的角色、可独立执行的并行工作、跨步骤审批或复杂回退就先不要增加拓扑复杂度。Graph 不是 Agent 的默认高级版而是复杂协作出现以后才值得引入的控制层。二、一张工作图由什么组成2.1. Node节点不是只能放 AgentGraph 中的节点可以是 Agent、检索器、数据库查询、规则引擎、测试命令、人工审批点或者普通的确定性函数。这点很关键多 Agent 只是 Graph 的一种实现方式Graph 的本质是工作节点之间的关系。每个节点都应该有一个小而明确的契约契约字段要写清楚什么输入需要哪些事实、文件引用或上游产物输出交付什么结构化结果权限能读什么、写什么、执行什么完成条件什么证据说明这一步完成失败处理重试、回退、换节点还是交给人预算最大时间、调用次数、token 或费用2.2. Edge边是控制流也是权威关系Agent Graph 里的边至少包含三种信息数据依赖、路由条件和控制权变化。1 2 3 实现节点 → 测试节点 测试通过 → 审查节点 测试失败 → 实现节点第一条是正常依赖后两条是条件路由。把条件写在边上系统才不会靠模型自由发挥来决定失败后的下一步。2.3. State不要把共享状态退化成聊天记录节点之间需要共享信息但不等于把全部聊天记录拼进下一个 Prompt。更稳的做法是维护一个可版本化的任务状态1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 state: task: 修复空邮箱导致登录接口返回 500 acceptance: - 空邮箱返回 400 - 回归测试通过 - 不修改公开 API facts: - 入口位于 src/auth/login.ts artifacts: code_map: artifacts/code-map.v2.json patch: artifacts/login-fix.v1.diff evidence: tests: pending budget: max_rounds: 8 next: verify状态里保存的是已确认事实、产物引用、验证证据、预算和下一步而不是所有中间废话。这样节点拿到的是最小必要 Context长任务也更容易暂停和恢复。2.4. Gate让 Graph 知道什么时候不能继续门控节点可以是测试、规则检查、评审 Agent 或人。它们把“我觉得可以了”变成可检查的证据。1 2 3 实现 → 回归测试 ├─ 通过 → 安全检查 → 人工审批 → 交付 └─ 失败 → 回到实现并附上失败日志没有 GateGraph 只是把不确定性拆成了更多步骤有了 Gate失败才能被识别、路由和记录。三、Graph 如何承载复杂协作3.1. 串行把关键依赖写出来最简单的工作图是流水线1 需求澄清 → 影响分析 → 实现 → 测试 → 审查 → 交付串行不是落后。对于有强依赖的任务串行更容易观察也更容易定位失败。第一次建 Graph建议先把主干做成串行再根据数据找并行机会。3.2. 并行与汇合独立工作才值得拆开如果代码影响分析、测试设计和安全检查可以基于同一份稳定输入独立进行可以这样组织1 2 3 ┌→ 代码影响分析 ─┐ 任务 → Context ──┼→ 测试设计 ─────┼→ 汇合与决策 → 实现 └→ 安全风险扫描 ─┘三条分支的输入版本必须固定汇合节点还要能处理冲突而不是盲目拼接结果。并行不会自动带来更快。模型调用、数据锁、汇合等待和重复上下文都可能让总成本更高。3.3. 回退失败是一条路径不是一句错误消息失败类型下一步缺少文件或事实回到探索节点测试失败把失败报告交给实现节点需求冲突升级人工澄清权限不足进入审批节点不自动绕过超出预算保存 checkpoint暂停任务这就是 Graph 比“多个 Agent 自由对话”更像工程系统的地方失败不会只停留在文本里而会改变执行路径。3.4. 人工接管把权威边界放到图里涉及生产发布、数据删除、资金、隐私或安全敏感操作时人工应该是一个真实节点1 自动分析 → 自动修改 → 自动验证 → 人工审批 → 发布人工节点需要看到摘要、差异、测试证据、风险和可回滚方式。不要只显示“Agent 说已完成”。四、Graph 工程和其他工程怎么分工4.1. 五个工程面不是互相替代工程主要问题在 Graph 中的职责Prompt这次要做什么定义节点的意图和行为边界Context此刻应该看什么生成节点输入和状态视图Harness能做什么、怎样验证提供工具、权限、沙箱和证据Loop这一步如何行动和修正驱动节点内部的连续执行Graph谁先做、谁检查、失败去哪组织拓扑、状态转移和治理1 2 3 4 5 6 7 8 9 Prompt表达意图 ↓ Context准备工作记忆 ↓ Harness提供手脚和护栏 ↓ Loop完成局部任务 ↓ Graph组织多个局部任务Graph 并没有消灭前四个工程。相反Graph 的每个节点仍然需要自己的 Prompt、Context、Harness 和 Loop。4.2. Graph 工程不是 Knowledge Graph方向解决的问题典型内容Graph 工程工作应该怎样流动和被治理Agent、工具、测试、审批、状态、路由Knowledge Graph领域里的实体怎样关联人、组织、产品、事件、概念、关系GraphRAG怎样利用知识关系检索和回答实体抽取、关系、社区、摘要、向量Microsoft GraphRAG 的官方流程会从原始文本抽取实体、关系和声明再进行社区检测并生成摘要。这种图主要服务于知识组织和检索Agent Graph 主要服务于工作编排。两者可以组合一个研究节点从 Knowledge Graph 或 GraphRAG 取证据再把结构化结果交给工作图中的分析或决策节点。但它们不是同一层。4.3. 框架是实现不是定义LangGraph 的官方定位是为长时间运行、有状态的 Agent 和工作流提供底层编排能力强调持久化执行、人机协同、记忆和可观察性。OpenAI Agents SDK 则提供 Agent、Runner、handoff、guardrails、工具和 tracing 等编排构件。这些工具可以帮助实现 Graph但 Graph 工程应该先回答工作图的设计问题再决定使用什么框架。否则很容易把框架 API 当成架构。五、什么时候值得从 Loop 升级到 Graph5.1. 先用这张判断表现象是否值得升级原因一个 Agent 能在几轮内完成小任务暂不升级Graph 的管理成本没有收益需要多个角色但结果仍由人手工搬运值得评估交接关系已经成为瓶颈有明显的并行分支和汇合条件值得评估Graph 能表达依赖和冲突处理失败需要回退到不同步骤值得升级条件边比自由对话更可控高风险动作必须审批和审计值得升级人工节点和证据链需要显式存在只是希望“看起来更智能”不推荐增加节点不会自动增加可靠性5.2. 一条务实的升级路径保留现有单 Agent Loop记录真实轨迹读取了什么、调用了什么、在哪一步返工。只把反复出现的交接和失败路径画出来不要先画十几个 Agent。为每个候选节点定义输入、输出、权限、完成条件、预算和失败处理。先实现一条可观察的串行主干再加入真正独立的并行分支。把测试、规则检查和人工审批放进 Graph而不是继续写在一段长 Prompt 里。用成功率、返工次数、总时延、token/工具成本、人工介入次数和恢复成功率评估升级是否值得。5.3. 三个最容易踩的坑节点爆炸。 每个小动作都创建一个 Agent导致上下文搬运和故障定位成本上升。状态漂移。 节点各自保存一份事实最后无法判断哪个版本可信。只画成功路径。 没有失败、超时、权限拒绝、人工接管和回滚路径的图不能算可治理的 Graph。⚠️注意Graph 只能把关系和边界显式化不能替你解决错误的业务规则、低质量的测试或不可信的数据。图越复杂越需要稳定的状态模型、观测和验证。六、收束Graph 是协作与治理层Graph 工程真正新增的不是“更多 Agent”而是三件事把交接关系变成显式的边把状态、产物、权限和证据变成可追踪对象把失败、审批和停止条件变成运行路径。所以它和前面的四个工程是递进关系Prompt 说清意图Context 准备工作记忆Harness 提供手脚与护栏Loop 驱动一个节点行动Graph 组织多个节点共同交付。最后记住一句话1 2 不要因为 Graph 看起来更高级就使用它 当交接、分支、回退和权威边界已经成为问题时再用 Graph 把它们工程化。学AI大模型的正确顺序千万不要搞错了2026年AI风口已来各行各业的AI渗透肉眼可见超多公司要么转型做AI相关产品要么高薪挖AI技术人才机遇直接摆在眼前有往AI方向发展或者本身有后端编程基础的朋友直接冲AI大模型应用开发转岗超合适就算暂时不打算转岗了解大模型、RAG、Prompt、Agent这些热门概念能上手做简单项目也绝对是求职加分王给大家整理了超全最新的AI大模型应用开发学习清单和资料手把手帮你快速入门学习路线:✅大模型基础认知—大模型核心原理、发展历程、主流模型GPT、文心一言等特点解析✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑✅开发基础能力—Python进阶、API接口调用、大模型开发框架LangChain等实操✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经以上6大模块看似清晰好上手实则每个部分都有扎实的核心内容需要吃透我把大模型的学习全流程已经整理好了抓住AI时代风口轻松解锁职业新可能希望大家都能把握机遇实现薪资/职业跃迁这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
返回列表