Vercel Eve 从入门到精通 §04 ← 目录
Part 2 · 核心能力

§04 Durable:Agent 不害怕重启

04.1 普通请求扛不住长任务

普通聊天接口一问一答,请求结束任务就结束。Agent 却经常不是这样。

它可能等一个慢查询,可能让用户补材料,可能在危险操作前等审批。一次任务持续几小时甚至几天,不奇怪。

把这种任务绑在普通 HTTP 请求上,超时、断线、进程重启迟早找上门。

04.2 会话即工作流

Eve 把每段会话作为 durable workflow 运行。底层用开源的 Workflow SDK。工作流步骤会被 checkpoint;任务等待消息时可以暂停,收到新消息从原位置恢复。

按官方说法,中间崩溃或重新部署,会话也能继续推进。

类比一下:

标叔的经验

Durable 不是免费魔法。

框架能存执行状态,但决定不了"这笔退款能不能再调一次"。工具有没有副作用、恢复后会不会重复执行、操作是否幂等,仍要你设计。

04.3 实战:一个跨天的会话

# 第一天:开会话,Agent 跑到一半等你补材料
curl -X POST http://127.0.0.1:2000/eve/v1/session \
  -d '{"message":"帮我分析上季度日志,缺的部分告诉我"}'
# 返回 continuationToken,进程重启也不怕

# 第二天:拿 token 续聊,从停的地方继续
curl -X POST http://127.0.0.1:2000/eve/v1/session/<id> \
  -d '{"continuationToken":"<token>","message":"数据补上了,继续"}'
维度普通 HTTP AgentEve Durable标叔的结论
进程重启会话丢失从 checkpoint 恢复Durable 赢
等审批连接常驻暂停后恢复Durable 赢
实现成本自己写队列框架默认Durable 赢
幂等责任你自己管还是你自己管平手
→ 能恢复还不够。Agent 跑出来的代码,得关进笼子里。下一章讲 Sandbox。