Graph Engineering:Agent 从循环走向组织

Graph Engineering:Agent 从循环走向组织
过去一年很多团队终于把 AI Agent 做出了“能跑起来”的样子它能读上下文、拆任务、调用工具、跑测试、失败后重试甚至可以在你睡觉时继续工作。这套能力背后的关键词通常叫 Loop Engineering。你不再只写一个提示词而是在设计一个循环目标进入系统Agent 行动环境返回结果系统验证再决定继续、回滚、升级或结束。但循环跑多了之后新的问题出现了。不是 Agent 不够聪明而是组织结构不够清楚。一个 Agent 可以在单个任务里循环。可是当任务跨越产品、架构、数据、安全、测试、发布、成本和合规时真正难的就不再是“让一个 Agent 多试几次”而是“让多个具有边界的 Agent 以可观察、可审计、可恢复的方式协同工作”。这就是 Graph Engineering 开始变得重要的原因。先说清楚这里的 Graph Engineering 不是知识图谱工程“Graph Engineering”这个词有两个容易混淆的语境。第一个是传统的 Knowledge Graph Engineering设计实体、关系、本体、数据集成和图数据库让系统能围绕“人、组织、事件、文档、产品、决策”等对象进行查询和推理。这个方向仍然非常重要。比如 Microsoft GraphRAG 的索引管线会从非结构化文本中抽取实体、关系和声明做社区发现生成多层级社区摘要并把结果和向量检索结合起来查询层又区分 Local Search、Global Search、DRIFT Search 等不同方式用图结构改进复杂问题的检索质量。Neo4j 也在强调 context graph很多 Agent 问题不是相似度问题而是结构问题、溯源问题和多跳关系问题。第二个语境是 2026 年围绕多 Agent 系统出现的 Graph Engineering把 Agent 系统本身设计成图。在这个语境里图里的节点不一定是知识实体而是• 一个 Agent• 一个 deterministic function• 一个 router• 一个 human checkpoint• 一个 evaluator• 一个 tool gateway• 一个 memory store• 一个 policy gate边也不只是“认识”“属于”“引用”这种知识关系而是• 谁可以把任务交给谁• 谁产出的 artifact 可以被谁消费• 哪个节点失败后可以重试• 哪个节点必须经过人类审批• 哪条路径允许并行• 哪些信息可以跨上下文流动• 哪些证据必须进入最终输出一句话知识图谱工程解决“系统知道什么”Agent Graph Engineering 解决“系统由谁组成、如何协作、如何被治理”。这两个方向会合流但不能混为一谈。Prompt、Loop、Graph三层工程化把 Agent 工程的演进压缩成三句话大概是这样Prompt Engineering 让一次模型调用更可靠。Loop Engineering 让一个 Agent 的行为过程更可靠。Graph Engineering 让一组 Agent 的组织协作更可靠。Prompt 的核心对象是 instruction。你关心模型看到什么、按什么格式输出、不要做什么。Loop 的核心对象是 control cycle。你关心触发条件、工具调用、状态更新、验证器、重试策略、停止条件。Graph 的核心对象是 topology。你关心节点、边、状态、artifact、权限、观测、评价和变更历史。这三层不是互相替代。Graph 不是 Loop 的升级版包装词Loop 也不会因为 Graph 出现就消失。更准确地说每个重要节点内部仍然可能有一个 LoopGraph 决定这些 Loop 如何被组织、约束和连接。如果你的任务只需要一个清晰的循环比如“每天扫描仓库 issue修复最简单的 bug跑测试开 PR”Loop 就足够了。过早上 Graph 只会增加复杂度。但如果任务天然跨域比如“重构一个支付系统同时保证 API 兼容、迁移数据、更新前端、补齐测试、评估安全风险、生成发布说明”单循环就会变成一锅粥。这时你真正需要建模的不是“Agent 下一步做什么”而是• 安全节点拥有什么否决权• 数据节点输出什么迁移证据• API 节点如何声明兼容性• 前端节点何时可以并行• Review 节点检查哪些 artifact• 发布节点必须等待哪些前置条件这已经是图问题。Graph Engineering 的第一个分解组织图和工作图讨论 Graph Engineering 时最容易犯的错误是把所有东西都画进一张大图里。生产系统通常至少有两张图。第一张是 Org Graph组织图。它相对稳定描述长期存在的角色和边界。比如一个工程团队的 Agent 组织里可以有• Product Agent负责需求澄清、用户价值、验收标准• Architecture Agent负责模块边界、接口形态、演进风险• Data Agent负责 schema、迁移、数据质量• Security Agent负责权限、审计、密钥和攻击面• Test Agent负责测试策略、失败复现、回归覆盖• Release Agent负责版本说明、发布检查、回滚预案这些节点的价值来自长期上下文。Security Agent 不只是“会看安全 checklist”而是知道这个项目历史上出过哪些认证问题、哪些接口有遗留风险、哪些日志不能打。第二张是 Work Graph工作图。它是一次具体任务运行时生成的临时图。今天做登录改造明天做账单重构后天做多租户迁移工作图都不一样。工作图描述当前任务如何拆分、并行、汇合和终止。一个任务开始时可能只有三条分支调研、方案、风险。调研过程中发现数据迁移复杂系统就新增 Data Migration 分支安全检查发现权限模型不变Security 分支可以提前结束API 和前端之间发现契约冲突则生成一个同步节点。Org Graph 回答“谁长期存在、谁负责什么”。Work Graph 回答“这次任务现在走到哪里、下一步谁依赖谁”。这一区分很关键。很多团队失败是因为他们想用一个固定流程覆盖所有任务结果简单任务被过度编排复杂任务又没有足够弹性。好的 Graph Engineering 应该允许稳定角色和动态任务共存。节点不是“多个聊天机器人”很多多 Agent Demo 看起来很热闹一个 Planner一个 Coder一个 Reviewer一个 Critic大家轮流说话。问题是这通常只是把一个混乱的聊天线程拆成多个名字。真正的图节点必须有工程含义。一个合格节点至少要定义六件事。第一职责边界。它负责什么不负责什么。比如 Security Agent 可以否决权限变更但不能擅自改产品需求。第二输入契约。它需要哪些 artifact 才能启动。比如 Test Agent 需要 spec、diff、失败日志、测试环境约束而不是一句“帮我测一下”。第三输出契约。它必须交付什么结构化结果。比如不是“看起来没问题”而是风险列表、覆盖缺口、可复现步骤、是否阻塞发布。第四工具权限。它能读哪些系统、写哪些系统、执行哪些动作。安全节点可以读审计日志不一定可以部署服务。第五状态范围。它保留哪些长期记忆哪些只是本次任务 scratchpad哪些必须写入 ADR 或项目日志。第六退出条件。它何时完成何时重试何时升级给人类。Anthropic 在多 Agent research system 的工程文章里提到过一个典型架构lead agent 负责制定策略并生成多个 specialized subagents 并行探索最后再汇总结果和引用。Claude Agent SDK 的 subagents 文档也强调了上下文隔离子 Agent 在独立的新上下文中工作父 Agent 只收到最终结果。这些设计不是为了“看起来像团队”而是为了防止上下文污染、降低主上下文负担并让并行探索可控。Graph Engineering 继续往前走一步不仅要能 spawn subagents还要把“谁能 spawn、spawn 后如何回收、结果如何验证、失败如何隔离”变成图的规则。边比节点更重要如果节点是角色边就是组织制度。很多 Agent 系统的失败不在节点而在边• Planner 把模糊任务交给 CoderCoder 自己脑补需求• Research Agent 找到证据但 Writer 没有收到来源约束• Test Agent 报告风险但 Release Agent 不把它当阻塞条件• Security Agent 发现权限问题但它的输出只是建议没有否决权• Review Agent 和 Implement Agent 共用同一段上下文最后互相污染判断所以 Graph Engineering 里真正需要设计的是 edge contract。边至少要表达五类语义。第一数据流。上游输出什么下游消费什么。比如 spec、ticket、diff、trace、eval report。第二控制流。下游何时启动。是 always、conditional、parallel、join还是 human approved。第三权限流。下游是否继承上游权限还是重新申请最小权限。第四证据流。哪些中间证据必须保留哪些可以摘要哪些必须附引用。第五失败流。上游失败后是 retry、fallback、skip、abort还是 escalate。LangGraph 的 StateGraph 已经把一部分工程直觉产品化了你定义 state添加 nodes再用 normal edges 和 conditional edges 连接节点。这个抽象有价值不是因为“图”这个词新而是因为它强迫你把隐藏在 prompt 里的流程显式化。但框架只是底层。真正的工程能力是你是否能说清楚每条边的契约。Graph Engineering 的四类状态单 Agent loop 里状态通常是会话上下文、scratchpad、工具结果和最终输出。图系统里状态会复杂得多。至少要拆成四类。第一类是 Run State这次运行当前走到哪里。哪些节点完成了哪些节点失败了哪些分支等待 join。第二类是 Artifact State系统已经产生了什么。PRD、spec、design doc、diff、test report、review finding、release note 都是 artifact不应该只藏在聊天记录里。第三类是 Memory State哪些信息要跨运行保留。LangChain 的 long-term memory 文档里把长期记忆组织成 namespace 和 key 下的 JSON 文档这个方向背后的思想是记忆应该是可定位、可更新、可搜索的工程对象而不是一团历史对话。第四类是 Evidence State哪些事实支撑了当前判断。来源链接、日志片段、trace span、测试输出、用户确认、人工审批都属于证据状态。这四类状态必须分开管理。如果把 Run State 写进长期记忆Agent 会把一次临时失败当成项目事实。如果把 Evidence State 压缩成一句总结Review Agent 就无法审计判断。如果 Artifact State 只存在聊天里下一轮任务就会重新发明设计。如果 Memory State 没有命名空间多个 Agent 会互相污染。Graph Engineering 的本质之一就是让状态不再漂在上下文窗口里而是被图的节点和边显式持有。Anchor防止图自己骗自己多 Agent 系统最危险的地方不是某个 Agent 犯错而是错误在图里被放大。一个 Research Agent 找到低质量资料Writer Agent 写得很流畅Reviewer Agent 只检查结构不查来源Publisher Agent 顺利发布。每个节点都“完成了自己的任务”但整个系统输出了错误内容。这就是图系统的自洽幻觉。所以 Graph Engineering 必须设计 anchor也就是系统不能随意改写的外部参照。Anchor 可以是• 冻结的验收标准• held-out eval set• 生产日志• 财务数据• 用户真实反馈• 人类审批• 安全策略• 合规条款• 已归档 ADR• 可复现测试Anchor 的作用不是让 Agent 少做事而是让图不要只在自己的输出里循环验证自己。一个很实用的规则是任何优化节点都不能独自修改自己的目标函数。比如 Cost Optimizer 可以建议减少模型调用但不能独自降低质量阈值Release Agent 可以建议跳过非阻塞检查但不能修改“必须通过安全审查”的策略Writer Agent 可以压缩引用但不能删除关键事实来源。没有 anchor 的图只是一个更复杂的 loop。Graph Engineering 的最小落地清单如果今天要在一个真实工程团队里做 Graph Engineering不需要一上来搭一个庞大的多 Agent 平台。可以从五份文件开始。第一份org-graph.md。写清楚长期 Agent 角色、职责边界、工具权限、长期记忆位置和升级路径。第二份work-graph-template.md。写清楚常见任务如何生成工作图。比如 feature delivery、bug diagnosis、security review、content publishing、data migration。第三份artifact-contracts.md。定义每类 artifact 的输入、输出和验收条件。Spec 是什么格式Review finding 必须包含哪些字段Test report 是否必须有复现命令。第四份edge-policies.md。定义边的规则。哪些边允许并行哪些边必须等待人类哪些边只能传摘要哪些边必须传完整证据。第五份graph-observability.md。定义每次运行必须记录什么run id、node id、edge id、artifact id、token cost、latency、tool calls、失败原因、人工介入点、最终结果。这五份文件不性感但它们比“再加三个 Agent”更接近工程。什么时候不该用 Graph EngineeringGraph Engineering 会带来真实成本。你需要设计角色定义边界维护状态记录 trace处理失败传播还要避免 Agent 之间的信息过载。对于很多任务这完全不值得。不该用图的场景很明确• 任务一次性、低风险、可人工快速检查• 所有上下文都在一个代码模块里• 不需要并行• 不需要长期记忆• 不需要跨角色审批• 失败不会造成明显损失这类任务用一个 loop甚至一个好 prompt就够了。应该考虑图的场景也很明确• 任务跨多个专业域• 子任务可以并行但必须汇总• 需要独立上下文以避免污染• 中间 artifact 需要审计• 不同节点有不同权限• 失败会向下游传播• 系统会长期运行并积累记忆• 需要回答“为什么当时这么做”判断标准不是“是不是多 Agent”而是“拓扑是否承载了真实约束”。如果图只是为了好看它是装饰。如果图决定了谁能做什么、信息怎么流、失败怎么恢复、证据怎么保留它才是工程。一个真实例子公众号生产也可以看成图拿这篇文章自己的生产流程来说它也不是一个线性 prompt。它至少包含这些节点• Research查找 Graph Engineering、GraphRAG、LangGraph、Claude subagents 等资料• Writer把概念写成适合中文技术读者的文章• Illustrator把核心抽象转成封面和插图• Formatter把 Markdown 转成公众号兼容 HTML• Publisher上传图片、创建草稿• Human Review在草稿箱里检查标题、摘要、配图和排版这些节点之间也有边• Research 必须把来源交给 Writer• Writer 必须先确定文章结构Illustrator 才能画图• Formatter 依赖本地图片路径• Publisher 依赖 coverImage 和 HTML• Human Review 是发布前 anchor如果只是“让一个 Agent 写完并发布”它也许能跑通一次。但如果这是一个长期内容系统你很快就会需要图选题图、资料图、文章图、配图图、发布图、复盘图。这也是 Graph Engineering 最朴素的价值它把“我让 AI 做事”变成“我设计一个可持续做事的系统”。结语下一代 Agent 工程难点不在更会聊天Agent 的单点能力会继续提升。模型会更强工具调用会更稳上下文会更长代码能力会更好。但工程问题不会因此消失。当一个系统里只有一个 Agent你可以靠 prompt、loop、人工盯防和一些脚本把它管住。当系统里有十几个 Agent、几十个工具、多个长期记忆区、动态任务分支和不同权限边界时你需要的就不是“更聪明的助手”而是“可治理的组织结构”。Graph Engineering 不是一个新名词就能解决的问题。它要求我们把 Agent 系统当成分布式组织来设计每个节点有职责每条边有契约每个状态有归属每个判断有证据每次变更可以回放。Prompt 让模型听懂你。Loop 让 Agent 持续行动。Graph 让一群 Agent 不至于在行动中失控。这大概就是 Agent 工程从“会用工具”走向“能进生产”的分水岭。学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%免费】

最新新闻

日新闻

周新闻

月新闻