人工智能時代一種全新的技術——Agent正在崛起。這是一種能夠理解自然語言并生成對應回復以及執(zhí)行具體行動的人工智能體。它不僅是內容生成工具,而且是連接復雜任務的關鍵紐帶。本書將探索Agent的奧秘,內容包括從技術框架到開發(fā)工具,從實操項目到前沿進展,通過帶著讀者動手做7個功能強大的Agent,全方位解析Agent的設計與實現。本書最后展望了Agent的發(fā)展前景和未來趨勢。
本書適合對Agent技術感興趣或致力于該領域的研究人員、開發(fā)人員、產品經理、企業(yè)負責人,以及高等院校相關專業(yè)師生等閱讀。讀者將跟隨咖哥和小雪的腳步,踏上饒有趣味的Agent開發(fā)之旅,零距離接觸GPT-4模型、OpenAI Assistants API、LangChain、LlamaIndex和MetaGPT等尖端技術,見證Agent在辦公自動化、智能調度、知識整合以及檢索增強生成(RAG)等領域的非凡表現,攜手開啟人工智能時代的無限可能,在人機協作的星空中共同探尋那顆最閃亮的Agent之星!
從零開始,循序漸進,圖解直擊痛難點:
本書以圖解的方式從基礎概念入手,逐步深入技術原理和應用,以啟發(fā)式教學幫助讀者逐步深入了解Agent的各個方面,而不會感到晦澀難懂。
理論與實踐相結合,7個Agent實例,技術路線全面:
本書不僅介紹Agent的理論知識,而且涉及相關的實際應用和案例分析,可以幫助讀者更好地理解理論知識在實際問題中的應用。
案例實用,內容豐富,有趣又有料:
本書涵蓋Agent的多個主題,包括基本概念、技術原理、應用領域和案例分析等,內容豐富多樣,語言風趣幽默,能夠滿足不同層次讀者的需求。
黃佳,筆名咖哥,新加坡科技研究局人工智能研究員。他在 NLP、大模型、AI in MedTech、AI in FinTech 等領域積累了豐富的項目經驗。著有《GPT 圖解 大模型是怎樣構建的》《零基礎學機器學習》《數據分析咖哥十話:從思維到實踐促進運營增長》等圖書。同時他還在極客時間、CSDN 和深藍學院開設專欄和課程,主要有“LangChain 實戰(zhàn)課”“零基礎實戰(zhàn)機器學習”“AI 應用實戰(zhàn)課”“大模型應用開發(fā)實戰(zhàn)課”和“生成式預訓練語言模型:理論與實戰(zhàn)”等。他樂于保持好奇的心、擁抱變化、持續(xù)學習,希望借助 AI 的“慧眼”和“注意力”來觀察世界,并以輕松幽默的方式分享知識,收獲本真的快樂。
第 1章 何謂Agent,為何Agent 001
1.1 大開腦洞的演講:Life 3.0 001
1.2 那么,究竟何謂Agent 003
1.3 Agent的大腦:大模型的通用推理能力 006
1.3.1 人類的大腦了不起 006
1.3.2 大模型出現之前的Agent 007
1.3.3 大模型就是Agent的大腦 008
1.3.4 期望頂峰和失望低谷 010
1.3.5 知識、記憶、理解、表達、推理、反思、泛化和自我提升 012
1.3.6 基于大模型的推理能力構筑AI應用 015
1.4 Agent的感知力:語言交互能力和多模態(tài)能力 016
1.4.1 語言交互能力 016
1.4.2 多模態(tài)能力 016
1.4.3 結合語言交互能力和多模態(tài)能力 017
1.5 Agent的行動力:語言輸出能力和工具使用能力 017
1.5.1 語言輸出能力 017
1.5.2 工具使用能力 018
1.5.3 具身智能的實現 019
1.6 Agent對各行業(yè)的效能提升 019
1.6.1 自動辦公好助手 020
1.6.2 客戶服務革命 020
1.6.3 個性化推薦 020
1.6.4 流程的自動化與資源的優(yōu)化 021
1.6.5 醫(yī)療保健的變革 021
1.7 Agent帶來新的商業(yè)模式和變革 022
1.7.1 Gartner的8項重要預測 023
1.7.2 Agent即服務 024
1.7.3 多Agent協作 025
1.7.4 自我演進的AI 026
1.7.5 具身智能的發(fā)展 026
1.8 小結 027
第 2章 基于大模型的Agent技術框架 029
2.1 Agent的四大要素 029
2.2 Agent的規(guī)劃和決策能力 031
2.3 Agent的各種記憶機制 032
2.4 Agent的核心技能:調用工具 033
2.5 Agent的推理引擎:ReAct框架 035
2.5.1 何謂ReAct 035
2.5.2 用ReAct框架實現簡單Agent 038
2.5.3 基于ReAct框架的提示 040
2.5.4 創(chuàng)建大模型實例 043
2.5.5 定義搜索工具 044
2.5.6 構建ReAct Agent 044
2.5.7 執(zhí)行ReAct Agent 045
2.6 其他Agent認知框架 047
2.6.1 函數調用 047
2.6.2 計劃與執(zhí)行 048
2.6.3 自問自答 048
2.6.4 批判修正 048
2.6.5 思維鏈 048
2.6.6 思維樹 048
2.7 小結 049
第3章 OpenAI API、LangChain和LlamaIndex 051
3.1 何謂OpenAI API 052
3.1.1 說說OpenAI這家公司 052
3.1.2 OpenAI API和Agent開發(fā) 055
3.1.3 OpenAI API的聊天程序示例 057
3.1.4 OpenAI API的圖片生成示例 063
3.1.5 OpenAI API實踐 065
3.2 何謂LangChain 067
3.2.1 說說LangChain 068
3.2.2 LangChain中的六大模塊 073
3.2.3 LangChain和Agent開發(fā) 074
3.2.4 LangSmith的使用方法 075
3.3 何謂LlamaIndex 077
3.3.1 說說LlamaIndex 077
3.3.2 LlamaIndex和基于RAG的AI開發(fā) 078
3.3.3 簡單的LlamaIndex開發(fā)示例 081
3.4 小結 084
第4章 Agent 1:自動化辦公的實現——通過Assistants API和DALL·E 3模型創(chuàng)作PPT 085
4.1 OpenAI公司的Assistants是什么 086
4.2 不寫代碼,在Playground中玩Assistants 086
4.3 Assistants API的簡單示例 090
4.3.1 創(chuàng)建助手 091
4.3.2 創(chuàng)建線程 095
4.3.3 添加消息 097
4.3.4 運行助手 099
4.3.5 顯示響應 103
4.4 創(chuàng)建一個簡短的虛構PPT 105
4.4.1 數據的收集與整理 106
4.4.2 創(chuàng)建OpenAI助手 106
4.4.3 自主創(chuàng)建數據分析圖表 108
4.4.4 自主創(chuàng)建數據洞察 112
4.4.5 自主創(chuàng)建頁面標題 114
4.4.6 用DALL·E 3模型為PPT首頁配圖 115
4.4.7 自主創(chuàng)建PPT 116
4.5 小結 121
第5章 Agent 2:多功能選擇的引擎——通過Function Calling調用函數 122
5.1 OpenAI中的Functions 122
5.1.1 什么是Functions 123
5.1.2 Function的說明文字很重要 124
5.1.3 Function定義中的Sample是什么 124
5.1.4 什么是Function Calling 126
5.2 在Playground中定義Function 127
5.3 通過Assistants API實現Function Calling 130
5.3.1 創(chuàng)建能使用Function的助手 131
5.3.2 不調用Function,直接運行助手 133
5.3.3 在Run進入requires_action狀態(tài)之后跳出循環(huán) 140
5.3.4 拿到助手返回的元數據信息 141
5.3.5 通過助手的返回信息調用函數 141
5.3.6 通過submit_tool_outputs提交結果以完成任務 143
5.4 通過ChatCompletion API來實現Tool Calls 147
5.4.1 初始化對話和定義可用函數 148
5.4.2 第 一次調用大模型,向模型發(fā)送對話及工具定義,并獲取響應 149
5.4.3 調用模型選擇的工具并構建新消息 151
5.4.4 第二次向大模型發(fā)送對話以獲取最終響應 153
5.5 小結 154
第6章 Agent 3:推理與行動的協同——通過LangChain中的ReAct框架實現自動定價 156
6.1 復習ReAct框架 156
6.2 LangChain中ReAct Agent 的實現 159
6.3 LangChain中的工具和工具包 160
6.4 通過create_react_agent創(chuàng)建鮮花定價Agent 162
6.5 深挖AgentExecutor的運行機制 166
6.5.1 在AgentExecutor中設置斷點 166
6.5.2 第 一輪思考:模型決定搜索 169
6.5.3 第 一輪行動:工具執(zhí)行搜索 175
6.5.4 第二輪思考:模型決定計算 179
6.5.5 第二輪行動:工具執(zhí)行計算 180
6.5.6 第三輪思考:模型完成任務 182
6.6 小結 185
第7章 Agent 4:計劃和執(zhí)行的解耦——通過LangChain中的Plan-and-Execute實現智能調度庫存 186
7.1 Plan-and-Solve策略的提出 186
7.2 LangChain中的Plan-and-Execute Agent 190
7.3 通過Plan-and-Execute Agent實現物流管理 192
7.3.1 為Agent定義一系列進行自動庫存調度的工具 192
7.3.2 創(chuàng)建Plan-and-Execute Agent并嘗試一個“不可能完成的任務” 193
7.3.3 完善請求,讓Agent完成任務 200
7.4 從單Agent到多Agent 203
7.5 小結 204
第8章 Agent 5:知識的提取與整合——通過LlamaIndex實現檢索增強生成 205
8.1 何謂檢索增強生成 206
8.1.1 提示工程、RAG與微調 206
8.1.2 從技術角度看檢索部分的Pipeline 208
8.1.3 從用戶角度看RAG流程 209
8.2 RAG和Agent 210
8.3 通過LlamaIndex的ReAct RAG Agent實現花語秘境財報檢索 211
8.3.1 獲取并加載電商的財報文件 211
8.3.2 將財報文件的數據轉換為向量數據 211
8.3.3 構建查詢引擎和工具 213
8.3.4 配置文本生成引擎大模型 214
8.3.5 創(chuàng)建 Agent以查詢財務信息 214
8.4 小結 215
第9章 Agent 6:GitHub的網紅聚落——AutoGPT、BabyAGI和CAMEL 216
9.1 AutoGPT 217
9.1.1 AutoGPT簡介 217
9.1.2 AutoGPT實戰(zhàn) 218
9.2 BabyAGI 222
9.2.1 BabyAGI簡介 222
9.2.2 BabyAGI實戰(zhàn) 224
9.3 CAMEL 236
9.3.1 CAMEL簡介 236
9.3.2 CAMEL論文中的股票交易場景 237
9.3.3 CAMEL實戰(zhàn) 241
9.4 小結 248
第 10章 Agent 7:多Agent框架——AutoGen和MetaGPT 250
10.1 AutoGen 250
10.1.1 AutoGen簡介 250
10.1.2 AutoGen實戰(zhàn) 253
10.2 MetaGPT 256
10.2.1 MetaGPT簡介 256
10.2.2 MetaGPT實戰(zhàn) 257
10.3 小結 263
附錄A 下一代Agent的誕生地:科研論文中的新思路 264
A.1 兩篇高質量的Agent綜述論文 264
A.2 論文選讀:Agent自主學習、多Agent合作、Agent可信度的評估、邊緣系統(tǒng)部署以及具身智能落地 266
A.3 小結 267
參考文獻 269
后記 創(chuàng)新與變革的交匯點 271