云端 Agent 的分布式架构:AgentRun 如何调度与执行
云端 Agent 需要在用户离开浏览器后继续工作,持续反馈进度,并保存最终结果。平台因此把用户交互与执行分开,将每次执行记录为有持久身份的 AgentRun。
职责分离,共用 AgentRun 模型
服务层接收请求,校验用户及工作范围,然后创建 AgentRun。分布式调度器按已授权的工作范围和执行策略派发并执行 AgentRun。对话、定时任务和后台工作共用这一模型,区别在于工作如何启动与管理。
用持久化状态协调多个实例
AgentRun 状态和结果保存在单个服务进程之外。多个服务与调度器实例由此共享排队、执行中和已完成的状态。写入进度和最终结果时还会校验 AgentRun 的归属,避免旧调度器实例的迟到响应覆盖新的终态。
实时进度与最终结果分开
进度事件帮助界面展示 AgentRun 正在处理的工作,通过事件通道传递;持久化的 AgentRun 记录仍是最终状态的事实来源。对话历史和交付物归属于获得授权的工作范围,方便用户之后继续处理。
明确执行中断后的行为
分布式设计还需要明确执行进程消失时的处理方式。平台对执行中的 AgentRun 使用有时限的归属控制;归属过期后可将其标记为失败,供用户检查。平台不会默认认为它已成功,也不会自动从中断处继续。