逐日AI微信小程序
7 天多 Agent 与 A2A 协议:从单机编排到跨团队协作
第 1 周 · D4🔒 锁定约 4 小时

任务生命周期:长任务、流式、多轮与取消

别家的 Agent 不会秒回。今天给任务装上状态机与事件日志:用流式把进度一块块推回来,断线后重订不丢也不重,中途缺信息时停下来追问、补齐后接着做,用户不要了能取消。顺手修掉一个本机几乎测不出来的缺陷:SSE 分片切在一个汉字的中间。

今日目标 0/3

登录后可以勾选并保存进度。

今日目标

  1. 能画出 A2A 任务的状态机,区分终态与中断态,并说出向终态任务发消息、订阅或取消时各自该返回什么
  2. 能实现流式发送与断线重订,并用一组对照实验证明重订后收到的事件与不断线时逐条相等
  3. 能实现追问式多轮与取消,并说清 contextId 与 taskId 各自的语义,以及取消为什么不保证成功

昨天的任务都是同步完成的。今天让任务像真实的活一样慢下来,并处理慢下来之后才会出现的所有问题。读完回到页面顶部把三条目标勾掉。

小白版讲解

外卖订单页:已接单、制作中、配送中

点完外卖,你不会盯着付款按钮等饭到。订单页会告诉你:商家已接单、正在制作、骑手已取餐、配送中、已送达。偶尔还会跳出一条:「您选的菜品售罄,换一个还是退款?」——这时订单停在那里,等你回话。如果你反悔了,还有一个「取消订单」,但它不保证成功:饭已经做好了,就取消不了。

还有一个你可能没注意过的细节:地铁里断网十分钟,出站后重新打开订单页,你看到的是当前状态,而不是从「已接单」开始重播一遍,也不会少掉「骑手已取餐」那一步。

这张订单页就是今天要给 A2A 任务装上的东西:状态机(订单走到哪一步)、事件推送(每一步都通知你)、断线重连(回来看到的是准确的当前状态)、中途追问(售罄了问你)、取消(不保证成功)。

登录并关联后阅读全文

请先登录网页,并在账户页关联微信小程序账号。关联后每天可免费阅读 1 篇;额外文章需在小程序看广告解锁。

小程序码

微信扫码打开「逐日AI」,进入相同课程和章节,选择看广告解锁,完成后刷新本页。

面试题库

  • 流式订阅中途断线,重连之后怎么保证事件不丢也不重?A streaming subscription drops mid-way. After reconnecting, how do you guarantee that no event is lost or repeated?
    国内高频海外高频深入#a2a#streaming#reliability

    🔒 解锁本章后查看答题要点。

  • 追问中与待授权这两种中断状态有什么区别?客户端分别该做什么?What is the difference between the input-required and auth-required interrupted states? What should a client do in each?
    国内高频海外高频进阶#a2a#task-lifecycle#authorization

    🔒 解锁本章后查看答题要点。

  • 取消为什么不保证成功?客户端该怎么处理取消失败?Why is cancellation not guaranteed to succeed? How should a client handle a failed cancellation?
    国内高频海外高频进阶#a2a#cancellation#distributed-systems

    🔒 解锁本章后查看答题要点。

  • 轮询、流式、推送三种更新方式各适合什么场景?Polling, streaming, and push notifications: which scenario suits each?
    国内高频海外高频基础#a2a#streaming#push-notifications

    🔒 解锁本章后查看答题要点。

评论