構建自主AI:深入A2A協議的智能體開發
高強文
商品描述
"《構建自主AI:深入A2A協議的智能體開發》從實戰的角度講解A2A協議的相關知識,涵蓋A2A的基本概念和工作原理、基於該協議的開發流程,以及將A2A融入各種AI Agent開發框架的實際案例。在內容組織上,《構建自主AI:深入A2A協議的智能體開發》分為基礎篇、開發篇和應用篇三大部分,共18章。基礎篇(第1、2章)講解A2A的基本概念、核心價值、發展歷程、技術原理,並提供一個極簡入門案例;開發篇(第3~8章)圍繞A2A的各關鍵技術展開,介紹A2A的基礎應用、Agent多輪交互、Agent協作、多模態應用、安全框架等的開發方法,同時開發了一個簡易的A2A驗證器,以Web界面的形式展示A2A消息封裝的過程與Agent Card的內容解析;應用篇(第9~18章)面向A2A應用與AI Agent集成的實際需求,提供10個實用案例,涵蓋使用ADK、BeeAI、Pydantic AI、MCP、CrewAI、LlamaIndex、LangGraph、Semantic Kernel、AG2和Agent Framework等框架開發Agent的方法,並講解如何通過A2A對外發布這些Agent的服務能力。 《構建自主AI:深入A2A協議的智能體開發》內容全面、技術體系完整、操作步驟詳盡、源代碼完整,適合作為A2A及Agent初學者和開發者的實踐指南。"
作者簡介
"高強文畢業於電子科技大學,數字技術正高級工程師,現任互鏈高科(北京)技術發展有限公司總經理,從事醫療醫保信息化工作20多年,近年來積極投身於開源生態建設,開發和運營著多個開源社區,著有《大模型項目實戰:多領域智能應用開發》和《大模型項目實戰:Agent開發與應用》。"
目錄大綱
目 錄
第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



