Agent 创收指南免费公开资源
中文 EN العربية

返回目录 / Agent 可靠性

在用户取消或客户端断开时停止Agent运行

把前端取消信号传给Runner,使长工具或工作流节点停止并正确关闭事件流。

目标

用户不再等待时及时停止计算,减少无用费用并避免后续副作用。

步骤

  1. 确定取消事件的来源,例如停止按钮、请求超时或SSE连接关闭。 [abort]
  2. 将 asyncio.Event() 作为 abort_signal 传入 runner.run_async(..., abort_signal=signal);用户停止时调用 signal.set()。 [abort]
  3. 同步长循环定期检查 ctx.is_aborted;SDK会取消活动子任务、封口待处理tool call并以abort event结束流。 [abort]
  4. 覆盖正常完成、客户端断开和中途取消场景,检查历史记录结构仍有效。 [abort]

验证方式

取消时应产生 `INVOCATION_ABORTED` 事件(无待完成工具调用时),或为未完成调用追加合成响应;事件流干净结束且session可用于后续turn。

故障处理

若工具仍继续执行,检查取消信号是否传到下游I/O;对不可取消动作增加安全检查点。

权限边界

前置条件

权限边界

限制

内容依据固定提交中的Google ADK实现;不同版本、模型或远端服务可能有不同接口与事件语义。上线前验证权限、数据保留和失败恢复。

固定上游来源

https://github.com/google/adk-python/blob/e9b74d36140f2594b24c481fb7a3825b2cb01e96/docs/guides/runners/runner/abort.md

仓库
google/adk-python
文件路径
docs/guides/runners/runner/abort.md
固定提交
e9b74d36140f2594b24c481fb7a3825b2cb01e96
来源检查
2026-10-14 · 已按固定上游来源核对

仓库指标

以下数字属于上游仓库整体,不代表单个 Skill 或指南的点赞/热度。

Stars
未取得
Forks
未取得
观测时间
未取得

尚未取得指标快照。

许可证: Apache-2.0

主主题

把电商活动资料整理成可复核周报

相关资源