目 录
第1篇 基础篇
第 1 章 理解A2A:概念、架构与演进 2
1.1 A2A核心概念解析 2
1.1.1 A2A的基本概念 2
1.1.2 A2A的主要特性 3
1.1.3 A2A的核心价值 4
1.2 A2A生态演进之路 5
1.2.1 A2A产生背景 5
1.2.2 A2A关键版本迭代 5
1.2.3 A2A社区生态 6
1.3 A2A协议概览 7
1.3.1 A2A核心概念 7
1.3.2 A2A基本通信元素 8
1.3.3 A2A传输方式 11
1.3.4 A2A安全框架 12
1.4 横向技术对比 12
1.4.1 A2A与MCP对比 13
1.4.2 A2A与Function-Calling对比 13
1.5 本章小结 14
第 2 章 极简入门:快速构建第一个A2A应用 15
2.1 开发环境全栈指南 15
2.1.1 操作系统要求 16
2.1.2 大模型服务要求 16
2.1.3 Python虚拟化环境 17
2.2 实验环境安装与配置 18
2.2.1 Ollama安装与配置 19
2.2.2 Miniconda的安装与验证 19
2.3 入门案例场景设计 20
2.4 架构与核心组件 20
2.4.1 Agent Card服务能力描述 21
2.4.2 HTTP Server通信通道的实现 21
2.4.3 A2A Application HTTP服务载体 21
2.4.4 RequestHandler的分发职责 22
2.4.5 TaskStore持久化方案 22
2.4.6 AgentExecutor调度者角色 22
2.4.7 Agent具体业务实现 23
2.4.8 Client请求发起方的职能 23
2.5 最简A2A应用实现过程 23
2.5.1 源代码结构详解 23
2.5.2 运行最简A2A应用 28
2.6 本章小结 30
第2篇 开发篇
第 3 章 实战基础应用:单次、任务与流式处理 32
3.1 案例应用场景设计 32
3.2 对话型Agent实现过程 33
3.2.1 实现原理与主要组件 33
3.2.2 对话型Agent源代码 34
3.2.3 单独测试Agent功能 36
3.3 案例一:消息单次返回模式 36
3.3.1 实现原理与架构 37
3.3.2 消息单次返回模式案例源代码 37
3.3.3 运行消息单次返回模式案例 41
3.4 案例二:异步任务处理模式 41
3.4.1 实现原理与架构 41
3.4.2 异步任务处理模式案例源代码 43
3.4.3 运行异步任务处理模式案例 47
3.5 流式响应模式探讨 47
3.6 本章小结 48
第 4 章 构建A2A验证器:服务治理与验证 49
4.1 验证器的应用场景与价值 49
4.2 A2A验证器的实现原理 50
4.2.1 Agent Card的获取与兼容性处理 51
4.2.2 A2A返回消息的解析 51
4.2.3 Web界面的构建方法 51
4.3 A2A验证器实现过程 52
4.3.1 A2A验证器源代码 52
4.3.2 运行A2A验证器 57
4.3.3 验证A2A Server 58
4.4 A2A验证器的产品化探讨 60
4.5 本章小结 61
第 5 章 实现多轮交互:状态管理与上下文保持 62
5.1 复杂交互场景设计 62
5.2 实现原理与架构 63
5.3 多轮交互实现过程 64
5.3.1 拥有状态维护机制的Agent实现 64
5.3.2 A2A Server源代码 67
5.3.3 A2A Client源代码 69
5.3.4 运行多轮交互应用 70
5.4 存储与消息交互优化措施探讨 71
5.5 本章小结 72
第 6 章 多Agent协作系统:从原理到实现 73
6.1 多Agent协作应用场景 73
6.2 多Agent协作实现原理 74
6.2.1 多Agent协作流程设计 74
6.2.2 WebUI工作原理分析 75
6.3 多Agent协作实现过程 76
6.3.1 多Agent协作源代码 76
6.3.2 运行多Agent协作应用 78
6.4 其他协作方案探讨 80
6.5 本章小结 81
第 7 章 开发多模态A2A应用:视频下载与传输 82
7.1 多模态应用场景 82
7.2 实现原理与通信设计 83
7.2.1 多模态交互流程设计 83
7.2.2 通信协议与数据支持 84
7.3 多模态应用实现过程 86
7.3.1 视频下载Agent实现 86
7.3.2 A2A Server源代码 89
7.3.3 A2A Client源代码 92
7.3.4 运行多模态应用 94
7.4 本章小结 95
第 8 章 构建企业级安全框架:认证与通道保护 96
8.1 A2A安全框架概述 96
8.2 Bearer身份认证实现 97
8.2.1 Bearer认证原理 97
8.2.2 Bearer认证过程 97
8.2.3 Bearer认证实例实现详解 99
8.2.4 运行Bearer认证实例 104
8.3 动态Token身份认证实现 105
8.3.1 动态Token认证原理 106
8.3.2 动态Token认证过程 106
8.3.3 动态Token认证实例 108
8.3.4 运行动态认证实例 117
8.4 A2A通道安全保障 118
8.4.1 整体安全要求 118
8.4.2 HTTPS配置详解 119
8.5 本章小结 122
第3篇 应用篇
第 9 章 ADK集成:专为Agent开发而设计 125
9.1 将Agent封装到A2A Server 126
9.2 使用ADK高效开发Agent 127
9.2.1 ADK应用场景 127
9.2.2 ADK关键概念 127
9.2.3 ADK开发的极简Agent源代码 128
9.2.4 运行ADK开发的极简Agent 130
9.3 用Web页面测试Agent 132
9.3.1 可用于Web页面测试的Agent源代码 132
9.3.2 在Web页面测试Agent 133
9.4 ADK与A2A-SDK互操作 134
9.4.1 互操作A2A Client源代码 134
9.4.2 运行互操作A2A Client 135
9.5 基于ADK的多Agent协作 135
9.5.1 多Agent协作源代码 136
9.5.2 运行多Agent协作应用 137
9.6 本章小结 138
第 10 章 BeeAI集成:ReAct与需求Agent实战 139
10.1 BeeAI简要介绍 139
10.1.1 BeeAI主要特性 139
10.1.2 BeeAI与A2A的关系 140
10.2 ReAct Agent与A2A集成 140
10.2.1 ReAct Agent应用流程 140
10.2.2 ReAct Agent应用场景 141
10.2.3 ReAct Agent源代码 142
10.2.4 运行ReAct Agent 144
10.3 需求Agent与A2A集成 146
10.3.1 需求Agent应用流程 146
10.3.2 需求Agent应用场景 147
10.3.3 需求Agent源代码 147
10.3.4 运行需求Agent 149
10.4 本章小结 150
第 11 章 Pydantic AI集成:多种集成方案 151
11.1 Pydantic AI介绍 151
11.1.1 Pydantic AI设计理念 151
11.1.2 Pydantic AI主要特性 152
11.2 基于Fast A2A的轻量级集成 152
11.2.1 集成原理与架构 153
11.2.2 典型应用场景 154
11.2.3 A2A Server端实现 154
11.2.4 A2A Client端实现 156
11.3 基于A2A-SDK的完整功能集成 159
11.3.1 集成原理与流程 159
11.3.2 典型应用场景 159
11.3.3 A2A集成源代码 159
11.3.4 A2A-SDK集成案例 162
11.4 本章小结 163
第 12 章 MCP集成:扩展AI模型的能力边界 164
12.1 MCP应用场景与价值 164
12.2 实现原理与跨语言架构 165
12.3 A2A与MCP集成实现过程 166
12.3.1 集成Agent实现 166
12.3.2 A2A Client实现 171
12.4 MCP与A2A其他集成方式探讨 172
12.4.1 整合远程MCP服务 172
12.4.2 MCP-SDK与A2A-SDK对接 173
12.5 本章小结 174
第 13 章 CrewAI集成:构建角色驱动的协作系统 175
13.1 CrewAI工作模式与主要特性 176
13.1.1 CrewAI简介 176
13.1.2 CrewAI工作模式 176
13.1.3 CrewAI主要特性与优势 178
13.2 CrewAIAgent案例 179
13.2.1 CrewAIAgent应用场景 179
13.2.2 CrewAIAgent实现原理 179
13.2.3 CrewAIAgent源代码 180
13.2.4 运行CrewAIAgent 182
13.3 CrewAI与A2A集成方法 183
13.3.1 A2A Server源代码 183
13.3.2 A2A Client源代码 185
13.3.3 运行CrewAI与A2A集成案例 186
13.4 集成MLflow实现实验追踪 187
13.4.1 MLflow简介 187
13.4.2 MLflow服务配置 188
13.4.3 源代码改造过程 190
13.4.4 追踪实例与分析 191
13.5 本章小结 192
第 14 章 LlamaIndex集成:构建知识增强应用 193
14.1 LlamaIndex介绍 194
14.1.1 LlamaIndex简介 194
14.1.2 LlamaIndex主要特性 194
14.2 LlamaIndex应用案例 195
14.2.1 ReAct Agent应用场景 195
14.2.2 ReAct Agent实现原理 195
14.2.3 ReAct Agent源代码 197
14.2.4 运行ReAct Agent 201
14.3 LlamaIndex与A2A集成 202
14.3.1 A2A Server源代码 202
14.3.2 A2A Client源代码 204
14.3.3 运行LlamaIndex与A2A集成案例 205
14.4 集成MLflow追踪LlamaIndex 206
14.5 本章小结 207
第 15 章 LangGraph集成:构建有状态的AI工作流 208
15.1 LangGraph介绍 208
15.1.1 LangGraph简介 209
15.1.2 LangGraph适用场景 209
15.1.3 LangGraph与LangChain的对比 209
15.2 智能问答系统应用场景 210
15.3 智能问答系统实现原理 211
15.4 智能问答系统实现过程 212
15.4.1 LangGraph Agent源代码 212
15.4.2 单独测试Agent功能 216
15.4.3 LangGraph与A2A的集成 217
15.4.4 A2A Client实现 219
15.5 本章小结 221
第 16 章 Semantic Kernel集成:微软语义应用生态 222
16.1 Semantic Kernel介绍 222
16.1.1 Semantic Kernel简介 223
16.1.2 Semantic Kernel主要特性 223
16.1.3 Semantic Kernel与微软另两款产品的对比 224
16.2 线上询价应用场景 224
16.3 线上询价应用实现原理 224
16.4 线上询价应用实现过程 225
16.4.1 Semantic Kernel Agent 225
16.4.2 基于A2A-SDK的集成 228
16.5 本章小结 232
第 17 章 AG2集成:多智能体编程助理应用 233
17.1 AG2介绍 233
17.1.1 AG2主要特性 233
17.1.2 AG2对A2A的支持 234
17.2 多智能体编程助理应用场景 235
17.3 多智能体编程助理实现过程 236
17.3.1 A2A Server源代码 236
17.3.2 A2A Client源代码 237
17.3.3 运行编程助理应用 239
17.4 AG2与其他Agent框架的互操作性 240
17.4.1 AG2 Agent调用Pydantic AI Agent 241
17.4.2 A2A-SDK Client调用AG2 Agent 243
17.5 本章小结 246
第 18 章 Agent Framework集成:Deep Research的Agent实现 247
18.1 Agent Framework介绍 247
18.1.1 Agent Framework主要特性 247
18.1.2 Agent Framework对A2A的支持 248
18.2 基于工作流的Deep Research的应用场景 248
18.2.1 Deep Research基本概念 248
18.2.2 Deep Research Agent工作流程 249
18.3 基于工作流的Deep Research Agent的实现过程 250
18.3.1 Deep Research Agent源程序 250
18.3.2 运行Deep Research Agent 253
18.4 Agent Framework与A2A的集成方法 254
18.4.1 A2A Server源程序 254
18.4.2 A2A Client源程序 256
18.4.3 测试Agent Framework与A2A的集成 257
18.5 本章小结 258
