Graph Engineering 到底是什么?一口气讲清楚。
Graph Engineering 不是给多 Agent 换名字,而是 AI 工程从管理单次回答,走向管理多个执行单元关系。本文用一份 AI 资讯日报,串起 Prompt、Context、Harness、Loop 和 Graph 五层,讲清两类 Graph、适用条件与复杂度成本。读完你能判断:何时该用 Graph,何时简单 loop 更好。

AI圈又又又又发明了一个新词:Graph Engineering。
Prompt Engineering 还没学明白,已经来了 Context、Harness、Loop,现在又来了一个 Graph?这是不是同一件事换了五次名字?
但这一次,变化的不是 Agent 数量,而是 AI 工程开始管理“关系”了。
Prompt Engineering 关心的是一句指令怎么写,Graph Engineering 关心的是:当研究、检索、写作、核查和审批分别由不同的 Agent、工具与人来完成时,它们怎样传递信息,谁能做什么,谁来验证谁,失败后从哪里恢复。
理解这条变化,最好的方法不是背五个定义,而是看同一项工作如何一步步长大。
假设我们要做一份“每日 AI 资讯报告”。它需要自动找到重要新闻,读取视频逐字稿和论文,排除重复消息,核对关键事实,最后把成稿存进 Obsidian。
如果把这个系统想成一家公司,那么 Prompt 是任务说明,Context 是员工手里的资料,Harness 是电脑、账号和工具,Loop 是日常工作制度,Graph 则是组织架构、信息流和责任链。
今天就一口气来讲清楚。
01 这些新词没有互相替代,而是在扩大 AI 工程的边界
先说结论:Prompt Engineering、Context Engineering、Harness Engineering、Loop Engineering 和 Graph Engineering,并不是五种彼此竞争的方法。
它们更像五层嵌套的工程对象。
Prompt 被放进 Context,Context 通过 Harness 送到模型面前,Harness 支撑 Agent loop(Agent 循环)持续运行,多个 loop、工具、数据库和人再组成一张 Graph。
它们解决的问题,也在一层层向系统外部扩展:
- Prompt Engineering 管理“怎么说”;
- Context Engineering 管理“让模型看到什么”;
- Harness Engineering 管理“模型能用什么”;
- Loop Engineering 管理“任务怎样持续推进”;
- Graph Engineering 管理“多个执行单元怎样共同负责”。
这里有一个非常重要的区别:模型变聪明,不等于系统变可靠。
一个能力很强的 Agent,可能依然拿错资料、调用错工具、在错误结果上反复重试,也可能把未经验证的结论交给下游。单点智能解决不了分工、交接、权限、验证和恢复这些问题。
越往后走,工程对象就越远离模型本身,越接近一个完整的生产系统。
因此,这条路线并不是严格的历史时间表,也不是“新技术淘汰旧技术”的升级榜。它更像一条能力阶梯:任务越长、参与者越多、失败成本越高,我们就越需要管理模型之外的东西。
一个人完成一项临时任务,靠清楚的说明就可能够了。一家公司要长期交付结果,仅靠老板把要求说得更漂亮,显然不够。

02 同一份“AI 资讯日报”,走完五层会发生什么
为了避免概念悬在空中,我们继续用这份 AI 资讯日报,看五层工程分别增加了什么。
Prompt Engineering:把任务说清楚
最初,我们可能只对模型说:
帮我整理今天最重要的 AI 新闻。
这个要求太模糊。什么叫“重要”?看融资金额、技术影响,还是社交媒体热度?“今天”按哪个时区?要不要排除未经证实的传言?最终交付清单、表格还是文章?
Prompt Engineering 的工作,是把目标、边界、格式和判断标准说清楚。比如要求模型覆盖模型研究、Agent 工程和芯片三个方向,每条新闻至少给出两个独立来源,并解释为什么值得关注。
它解决的是“员工没有听懂任务”的问题。
但即使指令写得无比精确,模型也不一定知道今天发生了什么。Prompt 只能规定任务,不能凭空创造资料。
Context Engineering:把正确的材料放到正确的位置
于是,问题从“怎么提问”转向“模型在回答前看到了什么”。
一份可靠的 AI 资讯日报,至少需要当天新闻源、论文、YouTube 逐字稿、历史报告、用户偏好、术语表和时间范围。更关键的是,这些资料不能一股脑塞进上下文,而要在需要时被选择、压缩、排序和更新。
如果模型同时看到旧消息、重复稿件和互相矛盾的来源,再长的上下文也只会放大噪声。Context Engineering 的核心并不是“多给资料”,而是让当前任务在当前步骤拿到最有用的资料。
它解决的是“员工听懂了任务,但手里的材料不对”的问题。
不过,看到资料仍然不等于能够完成工作。模型要搜索网页、读取逐字稿、调用数据库、保存文件,还要知道哪些动作被允许。
Harness Engineering:给 Agent 一张真正能工作的桌子
Agent harness(运行与工具编排层)把模型接入浏览器、搜索、文件系统、代码执行环境、数据库和权限系统,并负责把工具返回的结果整理成模型能够继续使用的形式。
在 AI 资讯日报里,Harness 决定 Agent 能否:
- 找到当天发布的视频与论文;
- 获取网页正文或公开视频逐字稿;
- 识别并合并重复来源;
- 在本地仓库中读取历史记录;
- 将结果写入指定目录,同时不越过权限边界。
可以把它理解成公司给员工配备的电脑、账号、资料库和工作台。没有 Harness,Agent 只是会说;有了 Harness,它才开始能做。
但能调用一次工具,仍然不等于能把任务做到底。网页可能打不开,字幕可能缺失,来源可能不足,写完之后也可能没有检查。
Loop Engineering:让一次回答变成持续交付
Agent loop 把任务变成“执行—观察—判断—修正—再执行”的闭环。
对于 AI 资讯日报,一个简单 loop 可能这样运转:
- 搜索当天候选信息;
- 读取来源并抽取关键事实;
- 判断来源数量是否达标;
- 若证据不足,则更换关键词继续搜索;
- 生成初稿并检查重复、日期和引用;
- 未通过检查就返工,通过后保存。
Loop Engineering 管理的是停止条件、重试策略、检查规则、状态保存和异常处理。它让 Agent 不再“一次回答完就算了”,而是对结果是否达到标准负责。
到这里,一个 Agent 已经可能独立完成整份报告。那为什么还需要 Graph?
因为随着任务变长,单个 loop 会遇到三类结构性问题:上下文越来越脏;同一个执行者很难真正独立地检查自己;所有工作串行进行,速度越来越慢。
Graph Engineering:让多个 loop 开始分工协作
这时,我们可以把一份大任务拆成多个相对独立的执行单元:
- YouTube 研究 Agent 负责视频与逐字稿;
- 论文研究 Agent 负责原始论文与实验结果;
- 新闻研究 Agent 负责公司动态与产品发布;
- 综合 Agent 负责合并观点、识别冲突;
- 事实核查 Agent 负责检查日期、数字和来源;
- 编辑 Agent 负责结构、语言与最终交付;
- 人类编辑负责高风险判断和发布批准。
Graph Engineering 关心的不是再增加几个 Agent,而是明确这些执行单元之间的关系:研究结果以什么格式交给综合 Agent,什么情况触发返工,核查 Agent 能否否决成稿,人类在哪个节点介入,某一步失败后是否需要全部重来。
Prompt 管理一句话,Graph 管理一家公司。

03 Graph Engineering 不是多放几个 Agent,而是把关系变成系统
现在可以给出一个更准确的定义:
Graph Engineering,是设计和治理多个执行单元之间的关系,让节点有边界、边有契约、状态可恢复、结果可验证。
一张 Graph 由三类东西构成:节点、边和状态。
节点是完成某种工作的执行单元。它可以是 Agent,也可以是普通代码、搜索工具、数据库、规则引擎,甚至是一名人类审核者。
这点很容易被忽略。很多系统一谈 Graph,就恨不得把每个步骤都做成 Agent。实际上,格式转换、数字校验、去重和权限判断,如果确定性代码能完成,就没有必要交给模型。
Agent 适合处理开放判断,代码适合处理确定规则,人适合承担高风险决策。好的 Graph 不是 Agent 最多,而是每个节点都用了最合适的执行方式。
边则定义节点之间怎样发生关系。它不只是一根箭头,还应该回答:
- 上游必须交付哪些字段,下游才可以开始?
- 传递的是原始资料、结构化结论,还是验证结果?
- 谁可以读取、修改或否决这份信息?
- 哪种状态走正常路径,哪种状态触发重试或升级?
- 下游发现问题后,应该退回哪个节点?
如果边只表示“下一步”,系统就只是画成图的流水线。真正的工程价值来自边上的契约:输入输出格式、路由条件、权限边界、证据要求与失败语义。
状态则让整张 Graph 不必每次从头开始。系统需要知道已经抓取了哪些来源、哪些结论通过了核查、哪一步正在等待人工确认,以及当前结果由哪个版本的资料生成。
没有状态,复杂工作流只是一个更难排查的黑箱;有了状态,系统才能暂停、恢复、回放和局部重做。
因此,Graph Engineering 的重点从来不是把流程画得漂亮,而是让责任可定位、信息可追踪、失败可恢复。
04 Graph 里面其实有两张图
谈 Graph Engineering 时,人们常把两种不同的 Graph 混在一起:控制 Graph 与知识 Graph。
它们都使用节点和边,但解决的不是同一个问题。
控制 Graph:谁在什么时候做什么
控制 Graph 描述任务如何流动。
在 AI 资讯日报里,它会规定:三个研究节点可以并行工作;只有当至少两类来源返回结果后,综合节点才能开始;如果事实核查发现关键数字没有原始来源,任务就退回对应研究节点;如果涉及高风险判断,则交给人类编辑。
它回答的是:现在该轮到谁?满足什么条件才往下走?失败后去哪里?
知识 Graph:我们知道什么,以及它们怎样关联
知识 Graph 描述信息之间的关系。
例如,“某家公司”发布了“某个模型”,“某位研究者”参与了“某篇论文”,“某个视频中的说法”引用了“某项实验”,而这项实验又支持或反驳“某个结论”。
相比把文本切成相互独立的小块再做相似度搜索,知识 Graph 更擅长回答跨多个实体和关系的问题:这项技术来自谁?它依赖哪些前置成果?两家公司的说法是否指向同一项研究?一条结论经过了几层转述?
它回答的是:这些事实、人物、组织、证据与结论之间是什么关系?
两张图通过“决策轨迹”连接起来。
事实核查节点为什么驳回一条新闻?它读取了哪些证据?当时使用的是哪个版本?哪个关系支持了最终判断?控制 Graph 记录决策怎样发生,知识 Graph 提供决策依据的语义关系。
把两张图连起来,系统才不只是知道“做过什么”,还知道“为什么这样做”。

05 只有三种瓶颈出现时,Graph 才真正值得
Graph 并不是所有 AI 应用的最终形态。它是一种用额外协调成本换取可靠性、可追踪性和并行能力的架构。
当下面三种瓶颈没有出现时,一个设计良好的单 loop 往往更简单。
瓶颈一:Context rot,让单个 Agent 越做越糊涂
长任务会不断积累搜索结果、工具日志、中间草稿和错误尝试。上下文虽然还没有超过长度限制,但有效信息会被噪声稀释,早期约束也可能逐渐失去影响。
这就是 context rot:问题不是“放不下”,而是上下文越长,判断质量越不稳定。
Graph 可以把研究、写作和核查分开。每个节点只接收完成本职工作所需的信息,并通过结构化交接传递结果。它不是无限扩张上下文,而是主动控制每个节点看到什么。
瓶颈二:同一个 loop 无法提供真正独立的复核
让一个 Agent 写完文章后再说“请认真检查”,经常只能得到表面修补。它仍然受到原始推理路径、已有上下文和自身偏好的影响。
Graph 可以建立独立核查节点,但“多一个 Agent”并不自动等于独立。如果写作者和核查者使用同一模型、同一上下文、同一组证据,它们很可能以相同方式犯错。
真正的独立性来自信息边界和验证方法:核查节点可以不读写作者的推理,只根据原始来源重新验证关键命题;也可以使用确定性代码校验数字,或在高风险节点交给人类。
瓶颈三:所有工作串行,时间都耗在等待上
视频研究、论文搜索和新闻检索之间通常没有强依赖。如果让一个 Agent 依次完成,它们会形成冗长的串行链路。
Graph 可以把真正独立的工作并行化,再由综合节点汇总。只要并行节省的时间大于协调与合并成本,系统就能获得实际收益。
反过来,如果任务只需一次回答,步骤高度耦合,数据量很小,或者系统连结果好坏都没有评估标准,那么上 Graph 通常是在提前购买复杂度。
一个简单 loop 能稳定完成的事,不必拆成六个节点。Graph 不是成熟的勋章,而是瓶颈出现后的工程选择。
先证明单 loop 为什么失败,再决定哪一条关系值得被工程化。

06 反方说得对一半:名字是新的,底层技术并不新
最常见的反对意见是:这不就是工作流、状态机、DAG、知识图谱和多 Agent 系统吗?为什么还要发明一个新词?
这句话说对了一半。
节点、边、路由、状态、检查点、知识图谱都不是新技术。LangGraph 等框架也早就在处理 Agent 工作流。Graph Engineering 并没有突然发明一种前所未有的计算结构。
但一个新概念是否有价值,不只取决于底层零件是不是第一次出现,还取决于它是否准确指出了新的主要矛盾。
当单个 Agent 的能力还很弱时,大家重点研究怎样写 Prompt。模型能够使用更长上下文后,问题转向怎样选择信息。Agent 能调用工具并持续运行后,真正限制系统的越来越不是某个节点够不够聪明,而是节点之间能否正确协作。
换句话说,旧零件还在,工程注意力却发生了迁移。
Graph Engineering 这个名字真正捕捉到的,是 AI 系统的瓶颈从“单点能力”转向“关系质量”。这也是它与简单“多 Agent”最重要的区别:多 Agent 描述系统里有多少个 Agent,Graph Engineering 讨论这些执行单元为什么连接、怎样连接,以及连接失败时怎么办。
这并不意味着凡是有 Graph 就更先进。
以 GraphRAG 为例,知识 Graph 能沿实体关系完成多跳检索,也更适合发现跨文档关联和回答全局性问题。但如果用户只问一个简单、局部、单跳的问题,向量检索可能更快、更便宜,结果也更直接。
成熟的系统不会把所有问题强行送进同一张图,而会先判断问题类型,再选择向量检索、Graph 检索,或两者结合。
同样,多节点工作流也有明显成本:
- 更多模型调用带来费用和延迟;
- 节点越多,版本兼容与维护越复杂;
- 边上的格式变化可能造成连锁故障;
- 知识关系会过期,需要持续更新;
- 并行结果可能互相冲突,还需要额外仲裁。
所以,Graph Engineering 不是一场新名词竞赛。它要求工程师同时计算“协作收益”和“复杂度税”。
07 判断一张 Graph 好不好,不看 Agent 数量
一个演示可以在屏幕上放十几个会闪烁的 Agent 节点,看起来非常先进。但判断它有没有工程价值,只需要追问四件事。
第一,结果是否更可靠
Graph 应该让关键错误更少,而不是让错误经过更多节点后显得更正式。
可以故意给某个研究节点一条错误来源,观察核查节点能否发现;也可以让一个工具超时,看系统是否会切换路径。只有经过失败测试,可靠性才不是主观感觉。
第二,过程是否可追踪
最终文章中的一个数字,应该能够回到原始来源、抽取节点、验证结果和使用版本。
如果系统只留下最后一段文字,出了问题却没人知道结论从哪里来,那么 Graph 只是把黑箱放大了。
第三,失败是否可恢复
某个视频逐字稿获取失败,不应该迫使所有研究重新执行。一个编辑节点修改语气,也不应该改变已经通过核查的事实。
检查点、幂等操作、版本化状态和明确的返工路径,决定系统能不能只重做出错的局部。
第四,净收益是否为正
可靠性提高了多少?交付时间缩短了多少?额外增加了多少模型调用、维护工作和人为审批?
如果一张 Graph 把原本五分钟的稳定任务变成二十分钟,并且没有可测量的质量提升,它就不应该存在。
好的 Graph,不是让系统看起来更复杂,而是让复杂任务变得可控。
这四条标准——可靠、可追踪、可恢复、净收益为正——比“用了几个 Agent”更能区分架构与表演。
08 Graph Engineer 不是画图的人,而是为关系负责的人
“Graph Engineering”正在获得关注,不代表市场上一定会立刻出现大量名为“Graph Engineer”的独立岗位。
岗位名称可能变化,责任却会长期存在:只要 AI 系统从一个 Agent 扩展为多个执行单元,就需要有人为它们之间的关系负责。
这个人要处理的,不只是画流程图,而是一组横跨 AI 工程与系统工程的能力:
- 定义节点职责,避免两个 Agent 同时对同一结果“共同负责”;
- 设计输入输出契约,让交接信息可验证而不是靠猜;
- 区分控制 Graph 与知识 Graph,并把决策连回证据;
- 管理状态、版本、检查点和局部恢复;
- 设计真正独立的验证,而不是让模型重复赞同自己;
- 衡量延迟、费用、质量与维护成本;
在权限、风险和发布节点保留必要的人类控制。
这更像一种平台能力或架构责任,可能落在 AI Engineer、Agent Engineer、应用架构师或平台团队身上。概念的价值不在于催生一个新头衔,而在于提醒团队:关系本身已经成为需要被设计、测试和治理的工程对象。
如果你今天就想开始实践,最稳妥的方法不是先画一张宏大的 Graph。
先做出一个能够工作的单 loop,记录它最常失败的地方。是上下文被噪声淹没?是自我检查无效?还是多个独立任务串行太慢?
找到一个真实瓶颈后,再增加一个节点和一条边,为它写清职责、输入、输出、失败条件和评估指标。验证净收益以后,再扩展下一段关系。
Graph 应该从故障中生长,而不是从架构图中生长。
Prompt Engineering 教会一个 Agent 做事。
Graph Engineering 设计一群 Agent 如何共同负责。
从一个聪明员工到一家可靠公司,中间差的不是智力,而是组织。
本文由 @冲量AI 原创发布于人人都是产品经理。未经作者许可,禁止转载
题图来自Unsplash,基于CC0协议

起点课堂会员权益





非常认同“单点智能解决不了分工交接”这个判断。实际做AI应用的时候,最头疼的往往不是模型不够聪明,而是A结果传给B时格式没对齐、字段缺失,或者B以为能处理但实际上不行。Graph Engineering把这种隐形成本摆到台面上来讨论了。