普通聊天接口一问一答,请求结束任务就结束。Agent 却经常不是这样。
它可能等一个慢查询,可能让用户补材料,可能在危险操作前等审批。一次任务持续几小时甚至几天,不奇怪。
把这种任务绑在普通 HTTP 请求上,超时、断线、进程重启迟早找上门。
Eve 把每段会话作为 durable workflow 运行。底层用开源的 Workflow SDK。工作流步骤会被 checkpoint;任务等待消息时可以暂停,收到新消息从原位置恢复。
按官方说法,中间崩溃或重新部署,会话也能继续推进。
类比一下:
Durable 不是免费魔法。
框架能存执行状态,但决定不了"这笔退款能不能再调一次"。工具有没有副作用、恢复后会不会重复执行、操作是否幂等,仍要你设计。
# 第一天:开会话,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 Agent | Eve Durable | 标叔的结论 |
|---|---|---|---|
| 进程重启 | 会话丢失 | 从 checkpoint 恢复 | Durable 赢 |
| 等审批 | 连接常驻 | 暂停后恢复 | Durable 赢 |
| 实现成本 | 自己写队列 | 框架默认 | Durable 赢 |
| 幂等责任 | 你自己管 | 还是你自己管 | 平手 |