LLM驅動的自主智慧體
本文深入探討了以大語言模型(LLM)為核心控制器的自主智慧體系統。系統包含規劃、記憶和工具使用三大元件:規劃透過任務分解和自我反思實現複雜任務處理;記憶分為短期(上下文學習)和長期(外部向量儲存);工具使用使智慧體能呼叫外部API。文章還介紹了多個案例(如ChemCrow、生成式智慧體)和概念驗證(AutoGPT、GPT-Engineer、BabyAGI),並討論了有限上下文視窗等挑戰。
自主智慧體是人工智慧領域一個極具前景的發展方向,而大語言模型(LLM)作為其核心控制器正展現出巨大潛力。透過將LLM與規劃、記憶和工具使用等關鍵元件相結合,這些智慧體能夠完成從簡單問答到複雜科學實驗的各類任務。
規劃是智慧體處理複雜任務的基礎,包含任務分解和自我反思兩個關鍵過程。任務分解透過鏈式思考(Chain of Thought, CoT)或思維樹(Tree of Thoughts, ToT)等方法將大型任務拆解為更小的子目標,使智慧體能夠逐步解決問題。CoT已成為提升模型在複雜任務上效能的標準提示技術,它指示模型“一步一步思考”,利用更多測試時計算將困難任務分解為更小、更簡單的步驟。ToT進一步擴充套件了CoT,在每個步驟探索多種推理可能性,建立樹狀結構,並使用廣度優先或深度優先搜尋來評估狀態。自我反思則允許智慧體從過去的行動中學習,透過ReAct、Reflexion和鏈式事後思考(Chain of Hindsight, CoH)等框架不斷最佳化決策。ReAct將推理和行動整合到LLM中,透過擴充套件動作空間以包含任務特定的離散動作和語言空間,使模型能夠與環境互動並生成推理軌跡。Reflexion為智慧體配備動態記憶和自我反思能力,使用強化學習設定,其中獎勵模型提供二元獎勵,智慧體根據啟發式函式決定是否重置環境。CoH透過向模型展示一系列過去輸出及其註釋反饋,鼓勵模型改進自身輸出,類似於演算法蒸餾(Algorithm Distillation)在跨回合軌跡上的應用。
記憶系統為智慧體提供了持久化知識的能力。短期記憶相當於上下文學習,受限於Transformer模型的上下文視窗長度。而長期記憶則透過外部向量資料庫實現,支援最大內積搜尋(MIPS)以快速檢索相關資訊。MIPS常用的近似最近鄰演算法包括區域性敏感雜湊(LSH)、隨機投影樹(ANNOY)、分層可導航小世界圖(HNSW)、Facebook AI相似度搜尋(FAISS)以及可擴充套件最近鄰(ScaNN)。這些演算法在召回率和速度之間取得平衡,使得智慧體能夠從海量儲存中高效檢索相關記憶。將人腦記憶型別對映到AI系統:感覺記憶對應原始輸入的嵌入表示,短期記憶對應上下文學習,長期記憶對應外部向量儲存。
工具使用是智慧體超越自身能力的關鍵。透過呼叫外部API,智慧體可以獲取即時資訊、執行程式碼、訪問專有資料來源等。MRKL(模組化推理、知識和語言)架構將LLM作為路由器,將查詢分發給最合適的專家模組,這些模組可以是神經網路或符號系統,如計算器、貨幣轉換器或天氣API。實驗表明,LLM在正確識別何時及如何使用工具方面仍面臨挑戰,尤其是處理口頭數學問題時。TALM和Toolformer透過微調語言模型學習使用外部工具API,根據API呼叫註釋是否能提升輸出質量來擴充套件資料集。ChatGPT外掛和OpenAI API函式呼叫是實際應用中工具使用能力的良好示例。HuggingGPT是一個框架,使用ChatGPT作為任務規劃器,根據模型描述從HuggingFace平臺選擇模型並基於執行結果生成響應,系統包括任務規劃、模型選擇、任務執行和響應生成四個階段。API-Bank是一個評估工具增強型LLM效能的基準,包含53個常用API工具、完整的工作流程和264個帶註釋的對話,評估代理在三個級別上的工具使用能力:API呼叫、API檢索和API規劃。
案例研究展示了這些技術的實際應用。ChemCrow是一個化學領域的智慧體,結合了13個專家工具用於有機合成、藥物發現和材料設計。有趣的是,儘管基於LLM的評估認為GPT-4和ChemCrow效能相近,但專家的人工評估顯示ChemCrow大幅優於GPT-4,這表明使用LLM評估深度專業領域任務存在潛在問題。Boiko等人的研究探索了LLM賦能的科學發現代理,能夠自主設計、規劃和執行復雜科學實驗,例如開發新型抗癌藥物,但同時也揭示了與非法藥物和生物武器相關的風險。生成式智慧體(Generative Agents)模擬了25個虛擬角色在沙盒環境中的生活,每個角色由LLM驅動,具備記憶流、檢索模型和反思機制。記憶流記錄所有經驗,檢索模型根據相關性、時效性和重要性提供上下文,反思機制將記憶綜合為高階推斷以指導未來行為。
概念驗證專案如AutoGPT、GPT-Engineer和BabyAGI進一步展示了LLM智慧體的潛力。AutoGPT是一個實驗性開源應用,展示了大語言模型驅動自主代理的能力,包含網際網路訪問、長期記憶管理、GPT-3.5代理委託和檔案輸出等功能,並透過命令列表執行多樣化任務。GPT-Engineer根據自然語言描述生成完整程式碼倉庫,先進行任務澄清,然後生成包括所有程式碼的檔案。BabyAGI專注於任務管理和執行,構建了一個簡單的任務驅動框架。
儘管前景廣闊,當前系統仍面臨挑戰。最大的限制是有限的上下文視窗,這影響了歷史資訊的包含和長期學習。系統設計必須在這種有限的通訊頻寬下工作,而自我反思等機制若能擁有長或無限上下文視窗將大為受益。此外,LLM輸出的穩定性和外部工具呼叫的可靠性也是需要改進的方向。隨著研究的深入,這些挑戰有望逐步得到解決,LLM驅動的自主智慧體將在更多領域發揮重要作用。