AsyncTool 點樣測試代理多工工具能力

Dataset construction pipeline

AsyncTool 是一個基準測試項目,重點不在教模型怎樣調用工具,而是檢查它在多個任務同時進行、而 Function Calling 回應又有延遲時,會否亂了節奏。一般工具使用測試多數假設結果即時返回,但這個項目刻意加入等待時間,看看代理能否先處理其他不相依的步驟。

AsyncTool 主要是透過儲存庫內的 runner 與評估腳本,將模型接到模擬工具環境,再比較它在同步與非同步情境下的表現。同時可配合 OpenRouter API 的 deepseek/deepseek-chat-v3.1:free,亦可接本地 vLLM endpoint 上的 Qwen/Qwen2.5-7B-Instruct,對想測試不同部署方式的人算是方便。

AsyncTool 把「等工具結果時應否轉做別的事」變成可量化問題。它不單看工具有沒有調對,還會檢查代理是否記得任務狀態、能否遵守步驟依賴、何時切換任務,以及最後能否完整完成整個流程。

  • 核心焦點是 asynchronous tool calling,不是假設工具即時回應
  • 評分分成 step-level、sub-task-level、task-level 三層
  • 會觀察 task switching 時機,而非只計切換次數
  • 內含 benchmark data、tool executors、evaluation scripts

項目顯示不少模型在同步設定下尚可,但遇上非同步延遲後,成功率會明顯下跌。這反映問題未必在於模型不懂用工具,而是它未必擅長長時間追蹤依賴關係和維持多項目狀態。

這項目適合研究 LLM-based agents、agentic workflow、工具調用編排的人,也適合想替自家代理流程做壓力測試的團隊。若你關心的不是單一步驟答對,而是代理在繁忙環境下能否穩定完成工作,AsyncTool 的測試角度相當有參考價值。

項目由中國科學技術大學及多倫多大學合作

GitHub: https://github.com/StoKou/repo-asynctool

Categories: 開源, Agentic, 中國, 框架