为什么每个 AI 智能体框架最终都会重新发明一个工作流引擎?

Reddit r/AI_Agents 新闻

摘要

关于为何 AI 智能体框架往往会逐渐产生类似工作流引擎的需求——持久化状态、重试策略和可恢复的流程——以及应由智能体框架还是外部执行系统来管理这一持久化生命周期的思考。

我总是反复想到这个分界点:智能体不再只是一个循环,而是开始成为一个必须在原始 Python 进程消失后仍能存续的流程。假设它已经检索了一些文档,调用了两个 API,并正在等待批准后再做出更改。如果工作进程消失了,“再运行一遍提示词”作为恢复策略就相当奇怪了。因为模型的下一次响应可能会选择不同的路径,而那些 API 可能已经执行了某些操作。到了这个阶段,我需要的是已完成工作的记录、持久化的等待状态、重试策略,以及恢复执行的方法。这是一组非常熟悉的工作流引擎需求。标题中的“每一个”是有分量的。一个短暂运行、只读的智能体可能不太需要这些机制。LangGraph 已经具备持久化和中断机制;Temporal 从持久化工作流出发;自定义的队列加数据库方案则可以实现一套范围更窄的约定。这些方案不能相互替代,但它们正在面对一些相同的问题。Diagrid Catalyst 让我感兴趣,因为它提供了另一种划定这条边界的方式:保留智能体框架,在其底层加入持久化执行能力。我不会把这理解为外部副作用就可以自动安全地重复执行。应用仍然必须定义什么才算同一个操作。我更倾向于让模型选择有用的下一步,同时明确记录执行过程和恢复规则。我不确定的部分是归属问题:智能体框架应该负责这一持久化生命周期,还是应该与一个也能运行普通非 AI 任务的执行系统集成???
查看原文

相似文章

@djfarrelly: https://x.com/djfarrelly/status/2052779234234380479

X AI KOLs Timeline

本文主张,AI Agent 的开发应基于稳定的执行原语,而非会随新兴编排模式频繁更迭的僵化框架。文章强调,采用持久化步骤、持久状态、并行协调、事件驱动流程以及可观测性设计,可有效避免因最佳实践不断演进而付出的高昂重写代价。

代理的重试逻辑会随代理一起消亡

Reddit r/AI_Agents

作者分享了将一个具有写入权限的 AI 代理投入生产环境后的经验教训,指出当进程终止时,代理循环内部的重试逻辑会失效。他们主张将有副作用的工具调用视为带有幂等键的持久后台任务。