圖1 | 基于LLM的函數調用代理的工作流程??【深藍AI】編譯
函數調用智能體的工作流程,如圖1所示,揭示了AI如何將自然語言請求轉化為精確的API調用。從用戶詢問Palo Alto天氣開始,AI需要理解問題,從多個可用函數中選擇合適的API,正確構建函數調用(如get_weather:”Palo Alto”, “today”),處理返回的數據(75°F),最后生成一個全面而自然的回答。這個過程展示了AI在語言理解、函數選擇、參數填充和結果解釋等方面的復雜能力。
APIGen在這個過程中扮演著關鍵角色。它通過生成多樣化、經過驗證的訓練數據,幫助AI模型學習如何準確選擇和調用各種API,理解不同類型的查詢,并將技術信息轉化為用戶友好的回答。APIGen的創新之處在于它不僅提供了大量數據,還確保了這些數據的真實性和適用性。通過這種方式,APIGen為構建更智能、更通用的函數調用智能體鋪平了道路,使AI能夠更好地理解和執行各種復雜的用戶請求,從而在實際應用中發揮更大的作用。

3. 相關工作

本文簡要概述了函數調用智能體領域的相關工作,分為三個關鍵方面:Tool-use Agent、Agent Datasets和Benchmarks。這些研究為我們的工作奠定了基礎,同時也凸顯了當前研究中存在的一些局限性。
●Tool-use Agent: 介紹了多個使LLMs能與APIs和工具交互的框架和模型,如RestGPT、Toolformer等。這些工作為本文的函數調用智能體提供了基礎,但大多數沒有公開其訓練數據集。

●Agent Datasets:描述了幾個支持agent模型開發的數據集,如AgentInstruct、APIBank等。這些數據集雖然涵蓋多種API和場景,但大多未經嚴格驗證,可能包含噪聲數據。本文提出的APIGen旨在解決這一問題,提供高質量、經過驗證的數據集。

●Benchmarks:介紹了評估agent能力的多個基準測試,包括AgentBoard、ToolEval和Berkeley FunctionCalling Leaderboard(BFCL)。本文選擇BFCL作為測試平臺,因為它提供了最全面的LLM函數調用能力比較。

4. 詳解APIGen框架的多階段數據驗證過程

▲圖2|后處理濾波器的示意圖??【深藍AI】編譯
APIGen是一個先進的框架,專注于生成高質量、可驗證且多樣的函數調用數據集。這些數據集主要用于大型語言模型的特定任務微調。為了確保數據集的質量和實用性,APIGen實施了一個精心設計的多階段數據驗證過程。該過程包括三個主要階段:格式檢查、執行檢查和語義檢查,每個階段都對生成的數據進行細致的檢驗。

■4.1 數據生成與格式化

如圖2所示,APIGen首先從多種API來源提取函數和示例查詢-答案對,然后將它們格式化為標準的JSON格式,見圖3。這一步驟確保了數據處理的標準化和后續操作的便捷性。

圖3|JSON數據格式示例??【深藍AI】編譯

■4.2 多階段驗證過程

●格式檢查器:此階段驗證數據是否遵循正確的JSON格式,并檢查是否包含所有必要的字段。這個基礎檢查幫助確保數據的結構正確無誤。 
●執行檢查器:在這一階段,APIGen通過其API執行引擎運行函數調用,以驗證其可執行性和錯誤處理機制。這一步驟關鍵地確保了函數調用的實際可用性和功能性。
●語義檢查器:最后,APIGen通過語義檢查來評估函數調用的結果是否與預設的查詢意圖一致。這不僅檢測數據的準確性,還確保其與用戶的實際需求對齊。
只有同時通過這三個階段的數據點,才會被視為高質量,并重新加入種子數據集,以便未來使用。

■4.3 總結與潛在影響

這種細致的多階段驗證過程,可以比作是精心制作蛋糕的過程—從選擇高質量的原料開始,到精確控制烘焙時間和溫度,再到最后的裝飾。每一步都旨在確保最終產品的完美。同樣,APIGen的驗證機制確保每個數據點都能達到最高標準,從而提供可靠的數據支持大型語言模型的特定任務微調。
這種方法不僅提高了數據的準確性多樣性,還通過其標準化的格式實現了極高的擴展性,使得該框架能夠輕松適應不同來源的API。對于開發者和研究人員來說,APIGen提供了一種強大的工具,用于創建和測試新的應用程序接口或為機器學習模型提供高質量的訓練數據。這增強了模型在實際應用中的魯棒性和可靠性,同時為特定領域應用提供了新的、可靠的數據準備方式。

5. 數據準備和收集流程

▲圖4|3673個可執行API的類別分布??【深藍AI】編譯

■5.1 數據源選擇與初步處理

研究者從ToolBench數據集開始,這是一個包含16,464個REST API的大型集合。他們的目標是收集真實、可執行且文檔完善的API。這個選擇為研究奠定了實用性和多樣性的基礎。

■5.2 數據清理與優化

研究者進行了嚴格的數據清理過程,包括過濾低質量API、測試可訪問性、重新生成文檔等。這個過程確保了最終數據集的高質量和可用性。

■5.3 數據集多樣性增強

除了REST API,研究者還加入了Python函數,涵蓋了多個領域。他們還將重疊的類別整合成21個不同類別,提高了數據集的組織性和多樣性。

■5.4 數據生成與驗證

研究者使用多個大型語言模型(如DeepSeek和Mixtral系列)生成數據點。每個數據點都經過嚴格的三階段驗證:格式檢查、執行檢查和語義檢查。這個過程確保了生成數據的高質量。

■5.5 模型性能比較

研究發現,更強大的模型(如DeepSeek-V2-Chat和Mixtral-8x22B-Inst)在生成高質量數據方面表現更好,通過率更高。這為未來的數據生成任務提供了valuable insights。
■5.6 最終成果與發布
研究者計劃發布約60,000個高質量的函數調用數據集,涵蓋3673個不同的API,跨越21個類別。這個數據集經過實際API驗證,確保其有效性和實用性。

▲表1|使用不同基礎大型語言模型生成的數據集過濾統計??【深藍AI】編譯
該研究過程的意義:

●為API和函數調用研究提供了高質量、多樣化的數據基礎。

●展示了如何有效地利用大型語言模型生成和驗證復雜數據集。

●強調了嚴格數據驗證過程在AI數據集構建中的重要性。

●為未來的AI研究提供了寶貴的資源,可能促進這個領域的進一步發展。

●提供了構建和驗證大規模AI數據集的方法論指導。

6. APIGen框架的卓越表現

▲表2|不同模型在BFCL排行榜上的性能比較(截至2024年6月15日):排名基于整體準確率,這是不同評估類別的加權平均值;”FC”表示函數調用模式,與使用定制的“提示”來提取函數調用相對比。詳情見基準測試??【深藍AI】編譯

■6.1 小型模型的驚人實力

xLAM-7B和xLAM-1B這兩個模型在Berkeley Function-Calling Benchmark(BFCL)上的表現令人刮目相看。xLAM-7B(FC)在leaderboard上排名第6,超越了多個版本的GPT-4、Llama3-70B和Claude-3等知名大模型。更令人驚訝的是,僅有1B參數的xLAM-1B(FC)也取得了第24名的好成績,擊敗了許多規模更大的模型,如Claude-3 Haiku、Command-R-Plus和Mistral-large等。這就像是一個業余選手在專業賽場上連續擊敗多位重量級選手,著實令人震驚。
值得一提的是,xLAM-7B在處理復雜的并行和多重函數調用場景時表現尤為出色。
在“Parallel”和“Parallel Multiple”這兩個復雜類別中,xLAM-7B的得分分別達到了90%和87.5%,與頂級模型如GPT-4和Claude-3不相上下。這充分證明了該模型在處理復雜API調用任務時的卓越能力。

■6.2 數據質量的關鍵作用

▲圖5|使用APIGen不同階段數據集的性能比較。”+Fail Semantic Data”和”+Fail Execution Data”意味著將來自第3階段和第2階段的過濾數據集添加到訓練集中??【深藍AI】編譯

對于xLAM-7B來說,使用經過嚴格驗證的高質量數據訓練時,其在BFCL上的總體準確率為85.65%。但當加入未通過語義檢查的數據后,準確率下降了4.06個百分點;進一步加入未通過執行檢查的數據后,準確率又下降了1.88個百分點,最終降至75.71%。
xLAM-1B模型則表現出對數據質量更為敏感的特性。使用高質量數據時準確率為74.41%,但加入低質量數據后急劇下降,最終降至52.24%,總計下降了驚人的22.17個百分點。
這一結果有力地證明了高質量數據集的重要性。就像烹飪一樣,精挑細選的新鮮食材遠比大量普通食材更容易做出美味佳肴。同樣,在AI訓練中,精心篩選的高質量數據比簡單堆砌大量數據更能提升模型性能。

7. 總結

本文介紹的APIGen框架通過多階段驗證過程生成可靠且多樣化的函數調用數據集,實驗結果證明了其有效性。這一成果對開發高效語言模型具有重大意義,表明高質量數據在獲得優秀性能方面與模型規模同等重要。
APIGen的方法使較小的模型也能在復雜任務中表現出色,為AI助手開發提供了新思路。這不僅可能提高模型性能,還可能降低開發和部署成本,為AI的實際應用開辟新的可能性。
這項研究啟示我們:提升模型性能不一定要依賴于增加模型規模,改進數據質量可能是一個更有效、更經濟的方向。
盡管取得顯著成果,當前版本仍存在一些局限性:

●僅考慮了REST API和Python函數。

●僅實現了單輪函數調用的生成程序。

未來研究方向將集中在:

●擴展APIGen以支持更多場景、編程語言和API類型。

●開發處理多輪交互和更復雜的智能體-工具交互的能力。

文章轉自微信公眾號@深藍AI

上一篇:

盤點9家免費且靠譜的AI大模型API,統一封裝,任性調用!

下一篇:

還在使用網頁版AI翻譯嗎?Kimi API翻譯excel表格內容讓你的效率提升10倍
#你可能也喜歡這些API文章!

我們有何不同?

API服務商零注冊

多API并行試用

數據驅動選型,提升決策效率

查看全部API→
??

熱門場景實測,選對API

#AI文本生成大模型API

對比大模型API的內容創意新穎性、情感共鳴力、商業轉化潛力

25個渠道
一鍵對比試用API 限時免費

#AI深度推理大模型API

對比大模型API的邏輯推理準確性、分析深度、可視化建議合理性

10個渠道
一鍵對比試用API 限時免費