云端 Agent 的分布式架构:AgentRun 如何调度与执行

云端 Agent 需要在用户离开浏览器后继续工作,持续反馈进度,并保存最终结果。平台因此把用户交互与执行分开,将每次执行记录为有持久身份的 AgentRun。

职责分离,共用 AgentRun 模型

服务层接收请求,校验用户及工作范围,然后创建 AgentRun。分布式调度器按已授权的工作范围和执行策略派发并执行 AgentRun。对话、定时任务和后台工作共用这一模型,区别在于工作如何启动与管理。

用持久化状态协调多个实例

AgentRun 状态和结果保存在单个服务进程之外。多个服务与调度器实例由此共享排队、执行中和已完成的状态。写入进度和最终结果时还会校验 AgentRun 的归属,避免旧调度器实例的迟到响应覆盖新的终态。

实时进度与最终结果分开

进度事件帮助界面展示 AgentRun 正在处理的工作,通过事件通道传递;持久化的 AgentRun 记录仍是最终状态的事实来源。对话历史和交付物归属于获得授权的工作范围,方便用户之后继续处理。

明确执行中断后的行为

分布式设计还需要明确执行进程消失时的处理方式。平台对执行中的 AgentRun 使用有时限的归属控制;归属过期后可将其标记为失败,供用户检查。平台不会默认认为它已成功,也不会自动从中断处继续。

继续阅读