1. 簡介
本文探討咗利用大型語言模型(LLMs)令軟件應用程式介面(APIs)更易用嘅挑戰。傳統API互動需要對結構、參數同特定調用有技術知識,對非技術用戶構成障礙。提出嘅系統使用LLMs實現兩個主要功能:1)將自然語言用戶輸入分類為相應嘅API調用;2)自動生成合成、針對特定任務嘅數據集,用於評估LLM喺API分類任務中嘅表現。呢種雙重方法旨在降低軟件使用門檻,同時為開發者提供一個實用工具,用於評估LLM喺客製化API管理中嘅適用性。
2. 相關研究
呢項研究建基於NLP同軟件工程嘅現有工作,重點係橋接人類語言同機器可執行指令。
2.1 用於自然語言到API映射嘅LLMs
先前嘅研究探索過使用序列到序列模型同微調嘅BERT變體,將自然語言映射到代碼或API序列。強大嘅通用LLMs(例如GPT-4)嘅出現改變咗範式,無需大量針對特定任務嘅訓練,就能實現更靈活、更具上下文感知能力嘅映射。
2.2 NLP中嘅合成數據生成
合成數據生成對於真實數據稀缺嘅訓練同評估至關重要,已從基於規則嘅模板演變為由LLM驅動嘅生成。像GPT-4咁樣嘅模型可以產生多樣化、語境相關嘅文本示例,呢項工作就利用呢一點為特定API功能創建數據集。
3. 提出嘅框架
核心創新係一個統一框架,同時處理分類任務同創建其自身嘅評估基準。
3.1 系統架構
系統由兩個相互連接嘅模組組成:分類模組同合成數據生成模組。一個中央協調器管理工作流程,以API規格作為輸入,輸出分類後嘅API調用或生成嘅評估數據集。
3.2 自然語言到API分類
給定一個自然語言查詢 $q$ 同一個可能嘅API調用集合 $A = \{a_1, a_2, ..., a_n\}$,LLM充當分類器 $C$。目標係找到令條件概率最大化嘅API $a_i$:$a^* = \arg\max_{a_i \in A} P(a_i | q, \theta)$,其中 $\theta$ 代表LLM嘅參數。系統使用帶有示例嘅少量提示(few-shot prompting)來引導模型。
3.3 合成數據集生成流程
對於目標API功能,生成模組使用LLM(例如GPT-4-turbo)創建一組多樣化嘅自然語言查詢 $Q = \{q_1, q_2, ..., q_m\}$,呢啲查詢對應於該API。過程由提示引導,提示指定咗API嘅用途、參數,以及喺措辭、複雜性同用戶意圖方面所需嘅變化。
4. 實驗設置與結果
4.1 數據集生成過程
使用GPT-4-turbo為多個API功能(例如天氣查詢、數據庫查詢、支付處理)生成咗樣本數據集。每個數據集包含數百個自然語言查詢,並配對咗正確嘅API調用標籤,涵蓋咗一系列嘅改寫同用戶表達方式。
4.2 模型性能比較
使用標準分類準確率,喺生成嘅數據集上評估咗幾個LLMs。
GPT-4
0.996
準確率
GPT-4o-mini
0.982
準確率
Gemini-1.5
0.961
準確率
LLaMA-3-8B
0.759
準確率
4.3 結果分析
結果顯示,領先嘅專有模型(GPT-4)同一個強大嘅開源競爭者(LLaMA-3-8B)之間存在顯著嘅性能差距。呢一點突顯出模型能力對於可靠嘅實際部署至關重要。頂級模型嘅高準確率驗證咗使用LLMs進行精確API調用分類嘅可行性。
5. 技術分析與核心見解
核心見解:本文唔單止係關於使用LLM作為API分類器;佢係一個用於評估應該使用邊個LLM來做呢項特定工作嘅元框架。真正嘅產品係合成數據生成引擎,佢將「LLM適用性」呢個模糊問題轉化為一個可衡量、可基準化嘅指標。呢個係一個精明嘅舉動,認識到喺LLM時代,創建自己高質量評估數據嘅能力同模型本身一樣有價值。
邏輯流程:論證優雅地形成一個循環並自我強化:1)我哋需要LLMs來理解用於APIs嘅自然語言。2)要選擇正確嘅LLM,我哋需要針對特定任務嘅數據。3)真實數據好難獲得。4)因此,我哋使用一個強大嘅LLM(GPT-4-turbo)來生成呢啲數據。5)然後我哋用呢啲數據來測試其他LLMs。呢個係一個引導過程,利用現有最強嘅模型來評估整個領域。
優點與缺陷:主要優點係實用性。呢個框架為面對一系列APIs同可用LLMs(OpenAI、Anthropic、Google、開源)儀表板嘅企業提供咗一個立即可用嘅解決方案。作者承認嘅缺陷係「LLM嵌套」風險:使用LLM生成數據來測試LLMs可能會繼承同放大偏見。如果GPT-4喺理解某類查詢時存在盲點,佢就會生成有缺陷嘅測試數據,而所有模型都會根據一個有缺陷嘅標準被評判。呢個情況反映咗其他生成領域(例如GANs嘅訓練循環,其中生成器同鑑別器可能會發展出共同嘅病態)中見到嘅挑戰。
可行見解:對於CTOs同產品經理嚟講,結論好清晰:唔好只係試用GPT-4嚟做你嘅API自然語言介面。試用呢個框架。用佢喺你實際嘅API規格上,喺GPT-4o、Claude 3同Gemini之間進行一次比試。GPT-4同LLaMA-3-8B之間24個百分點嘅準確率差距係一個嚴厲警告,模型選擇並非小事,而成本(免費 vs. 付費)係性能嘅一個危險替代指標。呢個框架提供咗做出數百萬美元平台決策所需嘅定量證據。
6. 框架應用示例
場景:一間金融科技公司希望為其內部「交易分析API」添加一個自然語言介面,該API具有以下功能:get_transactions_by_date(date_range, user_id)、flag_anomalous_transaction(transaction_id, reason)同generate_spending_report(user_id, category)。
框架應用:
- 數據集生成:公司使用合成數據生成模組(由GPT-4-turbo驅動),配合描述每個API功能嘅提示。對於
get_transactions_by_date,可能會生成類似以下嘅查詢:「顯示我上星期嘅購買記錄」、「我喺3月1號到10號之間使咗幾多錢?」、「可唔可以睇返我上個月嘅交易記錄?」 - 模型評估:佢哋使用生成嘅數據集(例如,橫跨3個API功能嘅500個查詢)來測試候選LLMs:GPT-4o、Claude 3 Sonnet,以及一個內部微調嘅Llama 3。佢哋測量準確率同延遲。
- 選擇與部署:結果顯示Claude 3 Sonnet達到98.5%準確率,而每次調用成本係GPT-4o嘅一半,令佢成為最佳選擇。微調嘅Llama 3得分為89%,但提供數據私隱。定量輸出指導咗一個清晰、基於證據嘅決策。
7. 未來應用與方向
呢項工作嘅意義超越咗簡單嘅API分類:
- 低代碼/無代碼平台增強:將呢個框架整合到像Zapier或Microsoft Power Platform咁樣嘅平台中,可以讓用戶使用純自然語言構建複雜嘅自動化流程,系統會將其翻譯成跨唔同服務嘅一系列API調用。
- 企業軟件民主化:具有數百個APIs嘅複雜企業軟件套件(例如SAP、Salesforce)可以通過對話介面變得對業務分析師可訪問,從而顯著減少培訓開銷並擴展效用。
- 動態API生態系統:喺物聯網或微服務架構中,APIs經常更改或新增,合成數據生成模組可以定期運行,以更新評估數據集並重新評估性能最佳嘅LLM,從而創建一個自適應介面層。
- 研究方向 - 減少幻覺:關鍵嘅下一步係整合形式驗證或約束檢查,靈感來自程序合成技術,以確保分類出嘅API調用唔單止合理,而且語義上有效且執行安全。
- 研究方向 - 多模態輸入:未來嘅框架可以接受多模態查詢(例如,用戶指住儀表板元素同時提出問題),並將其映射到一個複合API調用,將計算機視覺同NLP結合。
8. 參考文獻
- Brown, T. B., et al. (2020). Language Models are Few-Shot Learners. Advances in Neural Information Processing Systems, 33.
- OpenAI. (2023). GPT-4 Technical Report. arXiv:2303.08774.
- Zhu, J. Y., Park, T., Isola, P., & Efros, A. A. (2017). Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks. Proceedings of the IEEE International Conference on Computer Vision.
- Raffel, C., et al. (2020). Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer. Journal of Machine Learning Research, 21.
- Schick, T., & Schütze, H. (2021). Generating Datasets with Pretrained Language Models. Proceedings of the 2021 Conference on Empirical Methods in Natural Language Processing.
- Microsoft Research. (2023). The Era of Copilots: AI-Powered Software Development. Retrieved from Microsoft Research Blog.
- Google AI. (2024). Gemini: A Family of Highly Capable Multimodal Models. Technical Report.