歡迎閱讀《Agentic Design Patterns: A Hands-On Guide to Building Intelligent Systems》。放眼現代人工智慧的發展,有一條清晰的演化路徑:從簡單、被動回應的程式,到精密、自主的實體──它們能理解上下文、做出決策,並與環境和其他系統動態互動。這就是智慧 Agent,以及由它們組成的 Agentic 系統。
強大的大型語言模型(LLM)帶來了前所未有的能力,能理解並生成如同人類水準的文字與媒體內容,成為許多 Agent 的認知引擎。然而,要把這些能力組織成能可靠達成複雜目標的系統,光有強大的模型還不夠。你需要結構、需要設計,需要仔細思考 Agent 如何感知、規劃、行動與互動。
你可以把打造智慧系統想像成在一張畫布上完成一件複雜的藝術品或工程作品。這張畫布不是空白的視覺空間,而是底層的基礎設施與框架:它提供環境和工具,讓你的 Agent 得以存在和運作。它是你搭建智慧應用的地基,負責管理狀態、通訊、工具存取,以及邏輯的流動。
想在這張 Agentic 畫布上蓋出好東西,不能只是把元件隨便堆在一起。你需要掌握經過驗證的技術──也就是模式(patterns)──來應對設計與實作 Agent 行為時常見的挑戰。就像建築模式指導房子怎麼蓋、設計模式讓軟體有章法一樣,Agentic 設計模式為你提供可重用的解法,處理那些在畫布上打造智慧 Agent 時反覆出現的問題。
什麼是 Agentic 系統?
本質上,Agentic 系統是一種計算實體,它被設計來感知環境(數位的,也可能是實體的),根據這些感知以及預先定義或學來的目標做出決策,然後自主執行行動來達成目標。傳統軟體按照僵硬的步驟一步步執行;Agent 則展現出一定程度的靈活性和主動性。
想像你需要一個系統來處理客戶詢問。傳統系統可能照著固定腳本走;Agentic 系統卻能察覺客戶問題裡的細微差異、查詢知識庫、跟其他內部系統(例如訂單管理)互動,必要時提出釐清問題,主動把問題解決掉,甚至預判客戶接下來的需求。這些 Agent 就運行在你的應用基礎設施這張畫布上,利用手邊可用的服務和資料。
Agentic 系統通常有幾個特徵:自主性(autonomy),不需要人類隨時盯著也能行動;主動性(proactiveness),會朝著目標主動出擊;反應性(reactiveness),能有效回應環境的變化。它們本質上是目標導向的,持續朝著目標努力。一項關鍵能力是工具使用(tool use),讓它們能與外部 API、資料庫或服務互動,等於把手伸出了自己的畫布之外。它們擁有記憶,能跨互動保留資訊,還能與使用者、其他系統,甚至同一張或相連畫布上的其他 Agent 溝通。
要真正實現這些特性,複雜度可不小。Agent 如何在畫布上跨多個步驟維持狀態?它怎麼決定「何時」以及「如何」使用工具?不同 Agent 之間的通訊怎麼管理?系統遇到意外結果或錯誤時,韌性從哪裡來?
為什麼模式對 Agent 開發很重要
正是這種複雜度,讓 Agentic 設計模式變得不可或缺。它們不是死板的規則,而是久經實戰考驗的模板或藍圖,為 Agentic 領域的標準設計與實作挑戰提供了經過驗證的解法。認得這些模式並運用它們,你打造出來的 Agent 會有更好的結構、可維護性、可靠性和效率。
用設計模式,你就不必為「管理對話流程」「整合外部能力」「協調多個 Agent 的行動」這類任務重新發明輪子。模式提供了共通的語言和結構,讓你的 Agent 邏輯更清楚,別人(以及未來的你自己)更容易理解和維護。針對錯誤處理或狀態管理的模式,直接幫助你打造更穩健可靠的系統。站在這些成熟做法的肩膀上,開發速度會快很多,你可以把心力放在應用本身獨特的部分,而不是 Agent 行為的基礎機制。
本書萃取了 21 個關鍵設計模式,它們是各種技術畫布上打造精密 Agent 的基礎積木與技術。理解並運用這些模式,你設計和實作智慧系統的能力會有顯著的提升。
本書概覽與使用方式
本書的定位是一本實用、易讀的資源。重點在於把每個 Agentic 模式講清楚,並提供具體、可執行的程式碼範例來示範實作。全書 21 章,涵蓋的模式從基礎到進階:從安排循序操作(Prompt Chaining)、與外部互動(Tool Use)這類基本概念,到協同工作(Multi-Agent Collaboration)、自我改進(Self-Correction)等進階主題。
本書按章節組織,每章深入一個 Agentic 模式。每章包含:
- 模式概觀:清楚解釋這個模式是什麼,以及它在 Agentic 設計中扮演的角色。
- 實際應用與使用情境:說明這個模式在哪些真實場景中特別有價值,以及它帶來的好處。
- 實作範例:實用、可執行的程式碼,示範如何用主流的 Agent 開發框架實作這個模式。你會在這裡看到模式如何落在具體的技術畫布上。
- 重點回顧:整理最重要的幾個要點,方便快速複習。
- 參考資料:延伸閱讀的資源,供你深入研究這個模式和相關概念。
章節的排序是循序漸進的,但你完全可以把這本書當參考書用,直接跳到能解決你手上問題的那一章。附錄完整介紹了進階 Prompt 技巧、AI Agent 應用於真實世界環境的原則,以及主要 Agentic 框架的概覽。另外還有線上限定的實作教學,一步步帶你用 AgentSpace 等平台以及在命令列介面上打造 Agent。全書強調動手實作:我們強烈建議你執行這些程式碼範例、動手改改看,把它們改造成你自己的智慧系統。
常有人問我一個很好的問題:「AI 變化這麼快,為什麼要寫一本可能很快過時的書?」我的動機恰恰相反。正因為一切變動得太快,我們才需要退一步,找出那些正在沉澱下來的底層原則。RAG、Reflection、Routing、Memory 這些我在書中討論的模式,正在成為基礎積木。這本書是一份邀請,邀請你回頭思考這些核心概念──它們是我們往上蓋的地基。人需要這種回望基礎模式的時刻。
本書使用的框架
為了讓程式碼範例有一張具體的「畫布」(另見附錄),我們主要使用三個主流的 Agent 開發框架。LangChain 及其有狀態的擴充 LangGraph,提供了把語言模型和其他元件串接起來的靈活方式,是打造複雜操作序列和操作圖的穩健畫布。CrewAI 是專為協調多個 AI Agent、角色與任務而設計的結構化框架,特別適合協作型 Agent 系統。**Google Agent Developer Kit(Google ADK)**則提供打造、評估與部署 Agent 的工具和元件,通常與 Google 的 AI 基礎設施整合,是另一張很有價值的畫布。
這些框架代表了 Agent 開發畫布的不同面向,各有所長。透過跨這幾套工具的範例,你會更全面地理解:不管你為 Agentic 系統選擇哪種技術環境,這些模式都能派上用場。範例的設計以清楚、實用為原則,重點是呈現模式的核心邏輯,以及它在框架畫布上的實作方式。
讀完這本書,你不只會理解 21 個核心 Agentic 模式背後的基本概念,還會帶走能實際運用的知識和程式碼範例,讓你在自己選擇的開發畫布上,打造更聰明、更有能力、更自主的系統。讓我們開始動手吧!