AIxiv專欄是機器之心釋出學術、技術內容的欄目。過去數年,機器之心AIxiv專欄接收報導了2000多篇內容,覆蓋全球各大高校與企業的頂級實驗室,有效促進了學術交流與傳播。如果您有優秀的工作想要分享,歡迎投稿或者聯絡報導。投稿郵箱:liyazhou@jiqizhixin.com;zhaoyunfeng@jiqizhixin.com
文章由NEXA AI團隊聯合MIT-IBM Watson AI Lab一起開發。一作Wei Chen(陳偉)是NEXA AI聯合創始人,CEO兼首席科學家,史丹佛大學博士,擁有豐富的人工智慧研究經驗。共同一作Zhiyuan Li(李志遠)是NEXA AI聯合創始人兼CTO,史丹佛大學校友,並在Google和Amazon Lab126實驗室擁有多年端側AI的一線研發經驗。另外兩位共同一作分別來自 MIT 和 IBM 的Zhen Guo和Yikang Shen。
AI 代理得越來越重要,能夠實現自主決策和解決問題。為了有效運作,這些代理需要一個確定最佳行動方案的規劃過程,然後執行計劃的行動。
在本文中,我們提出了一種高效的裝置端計劃-行動框架,將計劃和行動執行分為兩個元件:一個最佳化用於邊緣裝置的計劃代理,或稱為 Octo-planner,以及一個使用 Octopus 模型執行函式的行動代理。Octo-planner 首先透過將任務分解為一系列子步驟來響應使用者查詢,然後由 Octopus 行動代理執行這些子步驟。為了最佳化資源受限裝置上的效能,我們採用模型微調而不是上下文學習,減少計算成本和能耗,同時提高響應時間。
我們的方法包括使用 GPT-4 生成基於可用函式的多樣化規劃查詢和響應,並進行後續驗證以確保資料質量。我們在精心整理的資料集上微調 Phi-3 Mini 模型,在域內測試環境中實現了 97% 的成功率。
為了解決多域規劃挑戰,我們開發了一種多 LoRA 訓練方法,將在不同函式子集上訓練的 LoRA 權重合併。此方法在保持資源受限裝置上的計算效率的同時,靈活處理複雜的多域查詢。
Paper:https://arxiv.org/pdf/2406.18082
Demo:https://www.nexa4ai.com/octo-planner#video
Model Page: https://huggingface.co/NexaAIDev/octopus-planning
1 介紹
人工智慧(AI)代理透過實現自主決策和提高操作效率顯著改變了各個行業。這些代理依賴於一個關鍵的規劃過程,該過程包括確定最佳行動方案,執行計劃的行動,以及總結結果。大型語言模型(LLM)如 Gemini-Pro 和 GPT-4 在這一領域顯示出潛力。
雖然這些模型在執行復雜的規劃任務時面臨挑戰,難以達到與人類表現相當的水平,但它們在處理簡單任務方面仍然有效,從而促進實際應用。一個這樣的應用是來自 MultiOn、Simular AI 和 Adept AI 等公司的 AI 助手工具,它們利用 LLM 的能力在各個領域提供智慧助手。
此外,消費者導向的 AI 硬體產品,如 Rabbit R1、Humane AI Pin 和 Limitless Pendant,將 LLM 整合到使用者友好的裝置中,使智慧助手更易於訪問,並推動顯著的吸引力。AI 代理的成功取決於基礎 LLM 的效能。使用預訓練模型而未在任務示範上進行微調的代理,其成功率相對較低,從桌面應用的 12% 到移動應用的 46% 不等,而利用微調模型的代理在類似於其訓練資料的任務上可實現高達 80% 的成功率。
然而,使用 LLM 的 AI 代理由於高計算需求和基礎設施費用而成本高昂,限制了廣泛採用。缺乏裝置端 AI 代理限制了需要實時處理、離線函式或增強隱私的應用。裝置端 AI 代理提供了包括降低延遲、離線操作、降低成本和改善資料安全性等優勢。雖然如 Octopus V2 的行動模型在函式呼叫上實現了 95% 以上的準確率,但仍缺乏一個裝置端規劃模型。通用代理框架使用單模型上下文學習,需要在每個提示中包含冗長的函式描述和規劃說明。這種方法對於上下文長度有限的裝置端模型而言不切實際,導致高延遲和邊緣裝置上的電池消耗。
在本文中,我們介紹了 Octo-planner,一個裝置端規劃代理,解決了效率、適應性和資源約束的關鍵挑戰。我們的計劃 - 行動框架將計劃和行動執行分為兩個元件:一個最佳化用於邊緣裝置的計劃代理,或稱為 Octo-planner,以及一個使用 Octopus 模型執行函式的行動代理。
透過優先考慮微調而不是少樣本提示,我們減少了計算成本,並最小化了鍵值(KV)快取需求。我們的方法使用 GPT-4 生成和驗證規劃資料,然後用於微調 Phi-3 Mini 以進行裝置端部署。在域內測試中表明,這種微調提高了規劃成功率至 97%。為了解決多域規劃挑戰,我們開發了一種多 LoRA 訓練方法,將在不同函式子集上訓練的 LoRA 權重合併。這種方法在保持資源受限裝置上的計算效率的同時,靈活處理複雜的多域查詢。
透過專注於簡單任務的預定義函式和利用微調,我們旨在使 AI 代理在實際應用中更加實用、可訪問和經濟高效。
這項工作旨在為使 AI 更加可訪問和實用的持續努力做出貢獻。透過彌合 AI 代理潛力與邊緣計算限制之間的差距,我們希望促進智慧裝置端助手在各個領域的採用。透過開源我們的方法,我們希望激發裝置端 AI 的進一步創新,擴充套件先進規劃能力的應用範圍。
2 相關工作
計劃代理:語言模型已成為計劃代理系統中的關鍵。OpenAI 的助手 API 等專有模型在基於使用者查詢和可用函式生成策略方面表現出色。最近的進展進一步擴充套件了語言模型在計劃中的能力。ReAct 框架將計劃和行動整合在有限的動作空間中,而阿里巴巴集團的研究強調了單獨的計劃和行動模型在複雜任務中的有效性。在機器人技術中,語言模型也越來越多地應用於任務級別的計劃。值得注意的例子包括 SayCan,它使用 LLM 將高層任務分解為具體的子任務,以及影片語言計劃(VLP),透過文字到影片動態模型增強了長時間計劃。語言模型在計劃系統中的廣泛應用,從一般策略到特定的機器人任務,突顯了其在各種決策過程中日益重要和適應性的地位。
微調替代長上下文:微調語言模型以內部化特定的提示或上下文資訊可以減少輸入長度並提高效率。這種方法包括在精心整理的特定任務資料集上訓練模型。對於上下文視窗有限的模型,這種技術尤其有價值,因為它可以在不犧牲響應質量的情況下提高查詢處理效率。微調的成功在很大程度上取決於使用多樣化、高質量的資料集,以確保模型可以在各種提示措辭中進行概括。如果實施得當,微調可以簡化特定應用的互動,解決實際部署中的上下文長度限制和計算挑戰。
LoRA 和 Multi-LoRA: 低秩適應(LoRA)可以高效地將預訓練語言模型適應特定任務。與微調不同,微調更新所有引數,而 LoRA 則凍結預訓練權重並在每一層新增可訓練的低秩矩陣,顯著減少了可訓練引數和計算需求。Multi-LoRA 擴充套件了這一概念,使多個特定任務的介面卡可以訓練、組合或在推理時切換,允許單一基礎模型高效處理各種任務。在這些方法的基礎上,研究人員開發了幾種相關變體,以解決模型適應的不同方面:LoRA + 最佳化學習率,VeRA 使用隨機投影,AdaLoRA 實現了自適應秩,DoRA 分解權重,Delta-LoRA 更新預訓練權重。這些變體旨在在特定場景下進一步提高效率或效能。
3 方法
本節介紹我們用於裝置端計劃 - 行動代理的框架。我們首先描述計劃和行動代理的整合,以實現高效的問題解決。然後詳細說明我們用於規劃代理的資料集設計和訓練過程,包括對廣泛函式的支援以及附加函式集的即插即用能力。最後,我們概述了用於評估代理效能的基準測試。
3.1 計劃和行動代理框架
我們的計劃 - 行動方法透過將計劃和行動執行過程分為兩個元件來區別於通用代理框架。這種分離提高了模組化,使每個元件的專門最佳化成為可能。該框架的操作如下:
計劃階段:給定使用者查詢 q,我們的計劃模型 πplan 將任務分解為一系列子步驟。形式上:
{τ1, τ2, ..., τn} - πplan (q;F )
其中 F 是可用函式描述的集合,τi 是第 i 個執行步驟。πplan 在指令微調期間內部化 F。
行動階段:對於執行序列中的每一步,我們採用行動模型 πaction。在步驟 i,給定當前狀態的觀察 Oi,行動模型執行:
Oi+1 = πaction (τi, Oi),(2)
其中 Oi+1 和 τi+1 傳遞給下一步以繼續執行。這個迭代過程確保任務子步驟的連貫進展。
對於行動模型,我們使用專為裝置端函式呼叫設計的 Octopus 模型。圖 2 展示了我們計劃 - 行動框架與單模型 LLM 代理的區別。
圖 2:單 LLM 代理和計劃 - 行動代理框架的比較。(左)單 LLM 代理:統一模型執行任務規劃和行動執行。(右)計劃 - 行動代理:專門的計劃模型將任務分解為子任務,而單獨的行動模型依次執行每個子任務。
我們的框架模組化設計提供了幾個優勢:
專業化:將計劃和行動執行分開,使每個模型針對其特定角色進行最佳化,從而提高複雜任務的效能。
可擴充套件性:獨立擴充套件計劃和行動能力,能高效適應不同任務的複雜性。
可解釋性:顯式分離階段,提高了決策過程的透明度。
適應性:更容易將領域特定知識或約束整合到任一階段,而無需系統範圍內的變更。
3.2 計劃資料集
我們的框架使用 Octopus 模型作為行動模型,只需訓練計劃代理。我們使用以下資料集格式微調計劃代理:
用於聊天模型預訓練的特殊標記如 <|user|> 和 <|assistant|> 是可選的。我們設定 n 為 1-5,根據我們的發現,大多數移動應用上的任務由少於 5 步組成。資料集生成和整理過程包括:
1. 資料集收集:給定可用函式 F,我們使用大型語言模型(GPT-4)生成由這些函式回答的多樣化查詢。我們增加模型的溫度設定以確保查詢多樣性。然後按指定的資料集格式生成響應。重要的是,在生成過程中使用函式描述,但在最終資料集中不包括它們。相反,計劃模型在訓練期間內部化此函式資訊。
2. 資料驗證:我們使用相同的語言模型作為驗證工具來評估查詢 - 響應對的正確性。儘管初始生成過程中存在一些錯誤,但我們發現模型有效地將生成的內容分類為有效或無效,從而使我們能夠過濾出錯誤的輸出並保持資料集質量。
下面顯示了不同子步驟數量的示例資料點:
有關資料集收集的視覺化,請參見圖 3。示例函式描述在附錄 7.1 中。
3.3 基準設計
我們的評估依賴於精心構建的測試資料集。該資料集旨在代表現實世界規劃的複雜性,採用多階段方法,結合自動生成、專家驗證和實證測試。
過程始於使用 GPT-4 自動生成的包含 1000 個資料點的初始資料集。這些資料點然後經歷嚴格的質量保證過程,以確保其完整性和相關性。質量評估標準如下:
每個步驟必須對應於現有函式;
步驟的順序必須正確。
為了確保評估的可靠性,我們加入了一個額外的人工驗證階段。此階段涉及選擇一個子集示例進行端到端模型執行,從而驗證結果的準確性,並對模型效能進行全面評估。
為了評估我們提出的計劃模型,我們使用 GPT-4 作為 Oracle 來確定生成計劃的正確性。這個選擇基於經驗觀察,表明 GPT-4 在我們的特定用例中表現出高效。
4 實驗設計
我們的實驗設計評估了 Octo-planner 在裝置端 AI 代理規劃中的表現。我們的目標是確定在資源受限裝置上部署高效、準確的規劃模型的最佳配置,同時保持對新領域和函式的適應性。我們的實驗主要集中在四個關鍵領域:
全微調與 LoRA 之間的效能和效率權衡。
Multi-LoRA 在同時處理不同函式集時的準確性。
各種基礎模型和規模的效能比較。
資料集大小對準確性的影響,範圍從 100 到 1000 個訓練示例。
我們在精心整理的資料集上進行監督微調,使用 Phi-3 Mini 和其他一些替代品作為基礎模型。訓練包括全微調和 LoRA 技術。對於所有實驗,我們將資料集大小設定為可用函式數量的 800 倍,並在 NVIDIA A100 GPU 上進行微調。我們在兩種技術上使用最佳化的超引數:學習率為 5×10-6,批次大小為 4,預熱比例為 0.2,訓練 2 個週期。對於 LoRA,我們將 target_modules 設定為所有線性。
5 結果
5.1 全微調與 LoRA
表 1 展示了我們的計劃模型在全微調和 LoRA 方法上的詳細比較。我們的實驗顯示了這些方法在效能上的顯著差異。全微調在 98.1% 的準確率上實現了最高效能,表現出優越的效能。相比之下,LoRA 的效能取決於秩大小。在秩 64 和 alpha 256 下,LoRA 達到 85.1% 的準確率,而減少到秩 16 和 alpha 32 時,準確率降至 72.9%。這些結果突顯了使用 LoRA 時模型效能與計算效率之間的權衡。儘管全微調提供了更好的準確率,LoRA 在資源效率方面提供了更具吸引力的替代方案,效能取決於秩配置。
表 1:全微調與 LoRA 基準
5.2 多 LoRA 訓練和合並
儘管基於 LoRA 的訓練在特定函式集上有效,現實世界的應用通常需要處理新的或擴充套件的函式集。為了解決這個挑戰,我們提出將每個在不同函式子集上訓練的 LoRA 權重合併到同一個基礎模型中的方法。這種方法建立了一個組合模型,結合了各種函式集的知識,為資源受限環境中的複雜多域查詢提供了可擴充套件的解決方案。
為了評估此方法,我們構建了一個基準資料集,透過隨機選擇每個 LoRA 領域的函式並將它們組合成工作流。查詢和計劃由 GPT-4 生成。例如,在測試兩個合併的 LoRA 時,查詢可能涉及 Android 函式、電子商務函式或兩者,機率相等。
以下程式碼塊顯示了我們的基準資料集中的示例查詢及多 LoRA 合併模型的對應推理結果:
表 2 展示了我們多 LoRA 合併技術的效能結果。每個獨立的 LoRA 都使用一致的超引數進行訓練:秩 64,lora_alpha 256,target_modules 設定為 “all-linear”。單域 Android 函式集 LoRA 達到 85.1% 的準確率。當合並兩個域(Android 和電子商務)的 LoRA 時,準確率略降至 82.2%。進一步合併的準確率下降如下:三個域(增加影片流)的準確率為 78.9%,四個域(增加旅行)的準確率為 69.7%。這些結果揭示了隨著我們整合更多函式集,準確率逐漸下降的趨勢,尤其是在新增第三個域後下降更明顯。
表 2:多 LoRA 基準
5.3 使用不同基礎模型的全微調
表 3 展示了在全微調後使用不同基礎模型的基準準確率。谷歌 Gemma 2b 實現了 85.6% 的準確率,而更大的 Gemma 7b 以 99.7% 的準確率表現出色。微軟 Phi-3 Mini 也表現強勁,達到 98.1% 的準確率。這些結果表明我們的框架適應各種裝置端 LLM,較大的模型通常實現更高的準確率。
5.4 使用不同資料集規模的全微調
我們的預設訓練資料集包含 1000 個資料點,均勻分佈在 1-5 步序列中(每個 200 個),以代表不同任務的複雜性。我們研究了資料集規模對模型效能的影響,以最佳化函式集整合效率並解決合成資料生成成本。表 4 展示了不同訓練資料集規模的基準準確率:
結果顯示資料集規模與準確率之間存在明顯的相關性。完整的 1000 點資料集達到 98.1% 的準確率,而減少到 500 個資料點的準確率下降至 92.5%。進一步減少到 250 和 100 個資料點,準確率分別為 85.3% 和 78.1%。這些發現表明,為了達到最佳效能,建議使用超過 1000 個資料點的訓練資料集。
6 結論
本文介紹了 Octo-planner,一個設計用於與 Octopus V2 等行動代理協作的裝置端規劃代理。
透過分離計劃和行動執行,我們提高了專業化和適應性。我們的方法微調了 Phi-3 Mini(一種 38 億引數的 LLM),使其能夠在邊緣裝置上本地執行,在域內測試中達到 97% 的成功率。我們減少了計算需求,提高了延遲和電池壽命,並實現了多 LoRA 技術,用於在不進行完全再訓練的情況下擴充套件模型能力。Octo-planner 為解決 AI 部署問題做出了貢獻,包括資料隱私、延遲和離線函式。它代表了向實用、複雜的個人裝置 AI 代理的進步。
透過開源我們的模型權重,我們旨在推動裝置端 AI 的創新,促進高效、尊重隱私的應用程式的開發,增強日常生活,而不影響效能或安全性。
7. 侷限性和未來工作
儘管我們的當前模型在特定的手機使用案例中表現有效,但在更廣泛的適用性方面存在侷限性。
與 ReAct 等框架不同,它們基於實時反饋在計劃步驟和執行行動之間交替,我們的模型在前進行所有計劃。這種事先計劃的方法在處理簡單任務方面效率較高,但在條件可能在執行過程中變化的複雜或不可預測的場景中可能不那麼適應。
未來的工作將重點探索基於實時觀察的迭代計劃方法,改進對動態環境的適應性。我們還計劃研究將我們的計劃模型與多樣化的行動模型整合,將其能力擴充套件到移動應用之外的領域,如物聯網、機器人技術和智慧家居系統。這些進展將解決當前的侷限性,擴充套件我們裝置端規劃模型的多函式性,彌合高效、本地化 AI 處理與複雜的現實世界需求之間的差距。