HelloSun commited on
Commit
abb0c00
·
verified ·
1 Parent(s): aa61f8c

Add tool-use benchmark report

Browse files
Files changed (1) hide show
  1. results/tool_use_levels.md +20 -0
results/tool_use_levels.md ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Ling-3.0-tiny:實際工具使用 workload(10 輪平均)
2
+
3
+ 每一輪都包含兩段真實 tool-use 往返:
4
+
5
+ 1. 模型產生 `get_weather(city=Tokyo)` 呼叫,harness 查詢 Open-Meteo geocoding/current-weather API,將即時結果再交給模型摘要。
6
+ 2. 模型產生 `compile_project(project=tiny_fixture)` 呼叫,harness 清除前次 build 目錄、執行 CMake configure 與 `cmake --build -j 1`,再將 build 結果交給模型摘要。
7
+
8
+ 每個模型生成/摘要子行程都使用指定 `prlimit --data` 匿名記憶體上限;每次啟動前逐出 GGUF page cache。每一級 10 輪全部成功。模型每個回合按 EOG 停止生成,工具呼叫從 Ling chat template 的 `<tool_call>` 格式辨識。回合分開啟動 process,因此不保留跨工具呼叫的模型 KV 對話狀態;工具結果以新 prompt 送入。這讓每次推論的記憶體峰值可對照,並實際驗證工具使用與結果摘要。
9
+
10
+ decode tok/s、SSD MiB/token 與 hot rate 先在單輪的 4 個模型階段取平均,再跨 10 輪計算平均 ± 樣本標準差。anon/RSS 欄位是每輪所有模型階段的峰值,再取 10 輪平均。weather 工具輸出按輪保存,天氣是查詢當時的即時資料。RSS 含不受 RLIMIT_DATA 限制的 file-backed pages。
11
+
12
+ | RAM 上限 | 成功輪次 | decode tok/s 平均 ± SD | SSD MiB/token 平均 ± SD | hot rate % 平均 ± SD | anon 峰值 MB 平均 | RSS 峰值 MB 平均 | 全輪耗時秒平均 |
13
+ |---:|---:|---:|---:|---:|---:|---:|---:|
14
+ | 1 GiB | 10/10 | 7.71 ± 0.12 | 205.4 ± 0.1 | 9.6 ± 0.0 | 432 | 916 | 34.7 |
15
+ | 2 GiB | 10/10 | 11.09 ± 0.36 | 71.3 ± 0.1 | 43.7 ± 0.0 | 1423 | 1906 | 33.0 |
16
+ | 4 GiB | 10/10 | 15.19 ± 0.81 | 22.1 ± 0.0 | 58.0 ± 0.1 | 3404 | 3888 | 39.8 |
17
+ | 8 GiB | 10/10 | 16.81 ± 0.64 | 7.1 ± 0.0 | 74.8 ± 0.0 | 7076 | 7560 | 49.8 |
18
+ | 16 GiB | 10/10 | 17.60 ± 0.45 | 6.5 ± 0.0 | 75.5 ± 0.0 | 14612 | 15096 | 78.2 |
19
+
20
+ 原始每輪 tool calls、weather/build 結果與每次 decode 指標:[`tool_use_levels.json`](tool_use_levels.json)。可重跑腳本:[`../sdq-ling/tool_use_bench.py`](../sdq-ling/tool_use_bench.py)。CMake 工具實際編譯的 fixture:[`../tools/tiny_fixture`](../tools/tiny_fixture)。工具失敗的嘗試保留在 `tool_use_runs/` log;修正後的正式 10 輪皆成功。