用途:解释 ADK 运行时如何组合运作,帮助开发者理解节点与图的执行模型、Context 与 Event 的数据流、检查点与恢复机制、追踪以及 API 设计规则。
主要能力:运行时被描述为一张节点图,BaseNode 是执行单元,Workflow 是按声明边调度其他节点的节点,NodeRunner 只执行一个节点,Runner 拥有调用与会话;BaseAgent 继承 BaseNode,因此智能体也是节点。节点通过每次执行独立的 Context 与父节点通信,通过 yield 的 Event 与会话通信,二者是分离通道:ctx 向上传递结果,event 负责持久化与流式输出。文档还覆盖动态子节点去重、中断传播、人工介入的暂停与恢复、工作流可恢复性、span 创建与属性、以及模型为何看不到原始事件日志。
使用方式:文档以“问题—参考”表形式指引读者查阅对应源码,例如 BaseNode、Workflow、Runner、Agent、BaseAgent、Event、Context、NodeRunner、Runner roles、Checkpoint and resume、Workflow resumability、Observability、LLM context orchestration、API principles。并列出概念与模块路径的对应关系,如 workflow/_base_node.py、workflow/_workflow.py、workflow/_graph.py、workflow/_node_runner.py、workflow/_dynamic_node_scheduler.py、workflow/utils/_replay_manager.py、workflow/utils/_replay_interceptor.py、workflow/_errors.py、agents/context.py、agents/readonly_context.py、agents/invocation_context.py、agents/base_agent.py、agents/llm_agent.py、flows/llm_flows/、events/event.py、events/event_actions.py、events/_branch_path.py、events/_node_path_builder.py、runners.py、live/live_request_queue.py、telemetry/node_tracing.py、apps/_configs.py。路径相对 src/google/adk/。
适用场景:需要理解或扩展 ADK 运行时、子类化智能体、处理中断与恢复、或判断某改动是否为破坏性变更的开发者。
限制:文档明确提示应先阅读源码再依赖其中任何签名,这些笔记会漂移而代码不会;workflow/ 下均为前导下划线模块,视为内部实现,可能不随主版本号变更而改变,因此那里的改动不自动构成破坏性变更。具体安装命令、收费与平台信息暂未提供。