核心概念
StreamBench 是一個開創性的基準測試,旨在評估大型語言模型代理在輸入回饋序列中的持續改進能力,模擬線上學習環境,讓模型從經驗中學習並逐步提升效能。
摘要
論文摘要
本研究論文介紹了 StreamBench,這是一個用於評估大型語言模型代理在線上環境中持續改進能力的基準測試。
研究背景
近年來,大型語言模型(LLM)在預訓練和指令微調方面的進展,改變了我們與語言模型互動的方式,使其在解決問題方面展現出強大的能力。然而,現有的基準測試主要評估模型的先天能力,而忽略了它們隨時間推移而改進的能力。
StreamBench 的設計理念
StreamBench 模擬了一個線上學習環境,其中 LLM 代理會接收到連續的回饋流,並迭代地提升其效能。該基準測試旨在評估 LLM 代理在輸入回饋序列中的持續改進能力,並鼓勵開發更具適應性的 LLM 代理,從而提高它們在實際應用中的效用。
主要貢獻
- 提出了 StreamBench,這是第一個專為評估 LLM 代理在線上環境中,透過輸入回饋序列提升效能而設計的基準測試,涵蓋了廣泛的任務。
- 提出了幾種簡單而有效的基準方法,用於提升 LLM 代理在串流情境下的效能,包括一種經濟高效的多代理方法,該方法在保持單一代理平均成本的同時,優於其他基準方法。
- 對所提出方法的優點和潛在缺陷進行了分析,為有效的 LLM 串流策略提供了見解。
StreamBench 的組成
- 串流序列:將現有資料集序列化,並隨機分配時間步長,模擬線上資料流。
- 回饋訊號:採用二元回饋(正確或錯誤),以簡化評估框架並確保跨不同任務的一致性和實用性。
- 評估指標:根據代理在整個輸入序列最終時間步長的總體指標來評估其效能。
資料集
StreamBench 選擇了一系列具有潛在現實應用價值的下游任務,包括:
- 文字轉 SQL
- Python 程式設計
- 工具使用
- 醫學診斷
- 問答
基準方法
- 非串流方法:零樣本、少樣本、思維鏈(CoT)、自我精煉(Self-Refine)
- 串流方法:GrowPrompt、MemPrompt、Self-StreamICL、多代理記憶體 StreamICL(MAM-StreamICL)
實驗結果
實驗結果顯示,串流方法的效能優於非串流方法,證明了利用輸入回饋流來提升代理效能的價值。其中,MAM-StreamICL 在所有資料集上都展現出最顯著且一致的效能提升,證明了多代理記憶體共享的有效性。
未來方向
- 線上主動學習
- 多代理協作視為多臂老虎機問題
- 利用不同類型的回饋訊號
總結
StreamBench 為開發更具適應性的 AI 系統奠定了基礎,鼓勵研究人員開發更有效的方法來提升 LLM 代理在線上環境中的效能。
統計資料
使用三個 LLM 模型家族:GPT、Gemini 和 Claude。
主要實驗使用 gpt-3.5-turbo-0125、gemini-1.0-pro-001 和 claude-3-haiku-20240307 模型端點。
MAM-StreamICL 中使用 K = 3 個代理。
記憶體 M 實作為向量資料庫。
使用 BAAI/bge-base-en-v1.5 編碼 xt 作為關鍵嵌入,並將 xt、ˆyt(以及 MemPrompt 的 fbt)儲存為值。
Spider、CoSQL、BIRD、ToolBench 和 DDXPlus 的 k 值設定為 16。
DS-1000 和 HotpotQA 的 k 值設定為 4。
引述
"To the best of our knowledge, StreamBench is the first benchmark to evaluate LLM agents in streaming scenarios with a diverse range of tasks."
"Our experiments show that this straightforward strategy can boost performance beyond the average performance of the individual agents."
"These findings underscore the importance of collecting and utilizing correct self-output in streaming."