Skip to content

基准测试

本页的基准测试从两个关键维度衡量 TOON 的表现:

  • 检索准确率:大语言模型理解不同输入格式并从中提取信息的能力。
  • Token 使用效率:每种格式表示相同数据所需的 token 数量。

为了保证公平比较,基准测试被划分为两个赛道:

  • 混合结构赛道:嵌套和半一致数据集(TOON vs JSON, YAML, XML)。CSV 被排除在外,因为它无法在无损扁平化的情况下表示这些结构。
  • 纯扁平结构赛道:完全适合表格化的扁平数据集,此时 CSV 是公平的竞争者(CSV vs TOON vs JSON, YAML, XML)。

检索准确率

基准测试包含 244 个数据检索问题,用于评估 4 个大语言模型对不同输入格式的理解能力。

查看数据集目录

数据集目录

数据集行数结构CSV 支持表格化适用率
字段一致的员工记录100字段一致100%
带嵌套结构的电商订单50嵌套33%
时间序列分析数据60字段一致100%
GitHub 前 100 仓库100字段一致100%
部分一致的事件日志75部分一致50%
深度嵌套配置1深度嵌套0%
有效的完整数据集(对照组)20字段一致100%
数组被截断:末尾移除 3 行20字段一致100%
超出声明长度的多余行20字段一致100%
字段数量不一致
(第 10 行缺少 salary 字段)
20字段一致100%
缺少必需字段
(多行缺少 email 字段)
20字段一致100%
以名称为键的特性标志记录40字段一致100%
带嵌套地址和套餐组的联系人50嵌套100%

结构类别:

  • 字段一致:所有对象都具有完全相同的字段,且字段值均为基本类型
  • 部分一致:部分对象共享相同字段结构,其他对象包含不同字段或嵌套结构
  • 嵌套:包含嵌套结构(嵌套对象或数组)的对象
  • 深度嵌套:高度嵌套,表格化适用率极低

CSV 支持: ✓(支持),✗(不支持,需要有损的扁平化处理)

表格化适用率: 符合 TOON 表格化形式条件的数组和带键映射所占百分比(由基本类型或可折叠为嵌套字段组的一致嵌套对象组成的一致结构记录)

检索效率排名(每 1K token 的准确率)

按检索效率(每 1,000 个 token 对应的准确率百分比)对各格式进行排名:

TOON           ████████████████████   29.2 acc%/1K tok  │  72.2%  ±2.8 acc  │  2,474 tokens
JSON compact   ████████████████░░░░   23.8 acc%/1K tok  │  69.0%  ±2.9 acc  │  2,892 tokens
YAML           ██████████████░░░░░░   20.1 acc%/1K tok  │  70.1%  ±2.9 acc  │  3,487 tokens
JSON           ███████████░░░░░░░░░   16.6 acc%/1K tok  │  71.4%  ±2.8 acc  │  4,308 tokens
XML            ██████████░░░░░░░░░░   14.4 acc%/1K tok  │  70.7%  ±2.9 acc  │  4,909 tokens

检索效率分数 = (准确率 % ÷ Token 数) × 1,000。数值越高越好。

TIP

TOON 达到了 72.2% 的准确率(JSON 为 71.4%),同时所用 token 减少了 42.6%

NOTE

CSV 未列入排名,因为它仅支持 244 个问题中的 109 个(仅限扁平表格数据)。虽然 CSV 对简单表格数据的 token 使用效率极高,但它无法表示其他格式可处理的嵌套结构。

扁平数据集准确率

在这里,每种格式都回答同样的 109 个扁平数据集问题(每个模型各一轮),因此 CSV 可以在同等条件下比较。

格式准确率正确数/总数平均 Token
toon63.1% ±4.5275/4361,994
csv62.2% ±4.5271/4361,851
json-pretty60.3% ±4.6263/4363,950
xml60.1% ±4.6262/4364,516
yaml59.9% ±4.6261/4363,270
json-compact58.0% ±4.6253/4362,718

各模型准确率

4 个大语言模型在 244 个数据检索问题上的准确率:

claude-haiku-4-5-20251001
→ TOON           █████████████░░░░░░░    65.6% ±5.9 (160/244)
  JSON           █████████████░░░░░░░    63.5% ±6.0 (155/244)
  XML            ████████████░░░░░░░░    62.3% ±6.0 (152/244)
  YAML           ████████████░░░░░░░░    62.3% ±6.0 (152/244)
  JSON compact   ████████████░░░░░░░░    61.9% ±6.0 (151/244)
  CSV            ██████████░░░░░░░░░░    49.5% ±9.2 (54/109)

gemini-3.6-flash
→ TOON           ██████████████░░░░░░    69.3% ±5.8 (169/244)
  JSON           ██████████████░░░░░░    68.4% ±5.8 (167/244)
  YAML           ██████████████░░░░░░    67.6% ±5.8 (165/244)
  XML            █████████████░░░░░░░    65.2% ±5.9 (159/244)
  JSON compact   █████████████░░░░░░░    63.5% ±6.0 (155/244)
  CSV            ████████████░░░░░░░░    57.8% ±9.1 (63/109)

gpt-5.4-nano
  XML            ████████████░░░░░░░░    59.4% ±6.1 (145/244)
  JSON           ███████████░░░░░░░░░    57.4% ±6.2 (140/244)
→ TOON           ███████████░░░░░░░░░    57.0% ±6.2 (139/244)
  JSON compact   ███████████░░░░░░░░░    54.9% ±6.2 (134/244)
  YAML           ███████████░░░░░░░░░    54.5% ±6.2 (133/244)
  CSV            █████████░░░░░░░░░░░    46.8% ±9.2 (51/109)

grok-4.5
→ TOON           ███████████████████░    97.1% ±2.2 (237/244)
  JSON           ███████████████████░    96.3% ±2.5 (235/244)
  XML            ███████████████████░    95.9% ±2.6 (234/244)
  YAML           ███████████████████░    95.9% ±2.6 (234/244)
  JSON compact   ███████████████████░    95.5% ±2.7 (233/244)
  CSV            ███████████████████░    94.5% ±4.5 (103/109)

NOTE

准确率包含 Wilson 95% 置信区间(±);当两种格式的区间重叠时,它们之间的差异不具备统计显著性。CSV 只回答 109 个扁平数据集问题,因此其按模型统计覆盖的是更小、更容易的数据群体。

按数据集和问题类型划分的表现

按问题类型划分的表现

问题类型TOONJSONXMLYAMLJSON compactCSV
字段检索97.8%99.2%99.2%99.7%98.9%100.0%
聚合运算48.4%48.4%46.0%46.0%45.2%32.8%
筛选过滤38.0%41.1%37.5%40.1%38.0%33.3%
结构感知90.3%84.0%84.0%79.2%78.5%82.8%
结构校验100.0%50.0%80.0%50.0%45.0%80.0%

按数据集划分的表现

字段一致的员工记录
格式准确率Token 数正确数/总数
csv64.6%2,336106/164
toon62.8%2,537103/164
json-compact62.2%3,919102/164
yaml64.0%4,982105/164
json-pretty62.2%6,326102/164
xml61.0%7,286100/164
带嵌套结构的电商订单
格式准确率Token 数正确数/总数
json-compact70.7%6,875116/164
toon71.3%7,344117/164
yaml72.0%8,456118/164
json-pretty71.3%10,842117/164
xml74.4%12,180122/164
时间序列分析数据
格式准确率Token 数正确数/总数
csv64.2%1,40877/120
toon63.3%1,59576/120
json-compact59.2%2,35171/120
yaml62.5%2,95175/120
json-pretty65.0%3,67878/120
xml62.5%4,38675/120
GitHub 前 100 仓库
格式准确率Token 数正确数/总数
toon57.6%9,01776/132
csv54.5%8,72672/132
json-compact53.8%11,65071/132
yaml53.8%13,35071/132
json-pretty55.3%15,35073/132
xml53.8%17,30471/132
部分一致的事件日志
格式准确率Token 数正确数/总数
json-compact56.7%4,79368/120
toon60.8%5,81473/120
json-pretty60.0%6,75972/120
yaml55.0%5,79866/120
xml50.8%7,66861/120
深度嵌套配置
格式准确率Token 数正确数/总数
json-compact91.4%562106/116
yaml93.1%675108/116
toon91.4%669106/116
json-pretty94.8%918110/116
xml94.0%1,007109/116
有效的完整数据集(对照组)
格式准确率Token 数正确数/总数
toon100.0%5664/4
json-compact100.0%7724/4
yaml100.0%9844/4
json-pretty100.0%1,2594/4
xml0.0%1,4410/4
csv0.0%4730/4
数组被截断:末尾移除 3 行
格式准确率Token 数正确数/总数
csv100.0%4084/4
toon100.0%4984/4
xml100.0%1,2294/4
json-pretty0.0%1,0750/4
yaml0.0%8410/4
json-compact0.0%6600/4
超出声明长度的多余行
格式准确率Token 数正确数/总数
csv100.0%5474/4
toon100.0%6444/4
xml100.0%1,6634/4
json-pretty0.0%1,4520/4
yaml0.0%1,1350/4
json-compact0.0%8930/4
字段数量不一致(第 10 行缺少 salary 字段)
格式准确率Token 数正确数/总数
csv100.0%4704/4
toon100.0%5634/4
json-compact75.0%7673/4
xml100.0%1,4324/4
yaml75.0%9773/4
json-pretty75.0%1,2513/4
缺少必需字段(多行缺少 email 字段)
格式准确率Token 数正确数/总数
csv100.0%4424/4
toon100.0%5354/4
xml100.0%1,3864/4
yaml75.0%9413/4
json-pretty75.0%1,2073/4
json-compact50.0%7322/4
以名称为键的特性标志记录
格式准确率Token 数正确数/总数
toon97.1%93166/68
json-compact94.1%1,26464/68
yaml92.6%1,44363/68
json-pretty95.6%1,87365/68
xml95.6%2,30665/68
带嵌套地址和套餐组的联系人
格式准确率Token 数正确数/总数
toon94.4%1,44468/72
json-compact91.7%2,35766/72
yaml94.4%2,79768/72
json-pretty97.2%4,01470/72
xml98.6%4,53471/72

运行配置

  • 测试模型claude-haiku-4-5-20251001gemini-3.6-flashgpt-5.4-nanogrok-4.5
  • 对比格式:TOON、JSON、XML、YAML、JSON compact、CSV
  • Token 计数:使用 gpt-tokenizero200k_base 编码(GPT-5 分词器)。因服务商的分词方式不同,Token 绝对数量与分词器相关;但相对数量差异仍具参考意义。
  • 推理:通过 AI SDK 的通用 reasoning: 'none' 禁用(Gemini 3 最低为 minimal thinking,grok-4.5low
  • 温度参数:未设置(使用模型默认值)
  • 评测总数:244 个问题 × 6 种格式 × 4 个模型 = 5,856 次大语言模型调用

数据集内容、问题生成方式和答案校验方式详见 benchmark README

Token 使用效率

Token 数量使用 GPT-5 的 o200k_base 分词器,并通过 gpt-tokenizer 测量。节省比例以格式化 JSON(2 空格缩进)为主要基线计算,并额外对比 JSON compact、YAML 和 XML。实际节省效果因模型和分词器而异。

基准测试涵盖了不同结构模式(字段一致、部分一致、嵌套、深度嵌套)的数据集,以展示 TOON 的优势场景以及其他格式可能更适用的场景。

混合结构赛道

具有嵌套或部分一致结构的数据集。CSV 被排除在外,因为它无法正确表示这些结构。

🛒 带嵌套结构的电商订单  ┊  表格化适用率:33%

   TOON                █████████████░░░░░░░    72,832 tokens
   ├─ vs JSON          (−32.9%)               108,611 tokens
   ├─ vs JSON compact  (+5.6%)                 68,944 tokens
   ├─ vs YAML          (−14.0%)                84,701 tokens
   └─ vs XML           (−40.4%)               122,119 tokens

🧾 部分一致的事件日志  ┊  表格化适用率:50%

   TOON                █████████████████░░░   154,084 tokens
   ├─ vs JSON          (−15.0%)               181,201 tokens
   ├─ vs JSON compact  (+19.9%)               128,529 tokens
   ├─ vs YAML          (−0.8%)                155,397 tokens
   └─ vs XML           (−25.2%)               205,859 tokens

🧩 深度嵌套配置  ┊  表格化适用率:0%

   TOON                █████████████░░░░░░░       589 tokens
   ├─ vs JSON          (−34.9%)                   905 tokens
   ├─ vs JSON compact  (+6.7%)                    552 tokens
   ├─ vs YAML          (−11.0%)                   662 tokens
   └─ vs XML           (−40.9%)                   997 tokens

📊 以名称为键的特性标志记录  ┊  表格化适用率:100%

   TOON                █████████░░░░░░░░░░░    10,503 tokens
   ├─ vs JSON          (−54.6%)                23,141 tokens
   ├─ vs JSON compact  (−32.8%)                15,635 tokens
   ├─ vs YAML          (−41.3%)                17,905 tokens
   └─ vs XML           (−63.3%)                28,655 tokens

📊 带嵌套地址和套餐组的联系人  ┊  表格化适用率:100%

   TOON                ███████░░░░░░░░░░░░░    26,726 tokens
   ├─ vs JSON          (−66.5%)                79,779 tokens
   ├─ vs JSON compact  (−42.9%)                46,791 tokens
   ├─ vs YAML          (−51.8%)                55,475 tokens
   └─ vs XML           (−70.4%)                90,306 tokens

──────────────────────────────────── 总计 ────────────────────────────────────
   TOON                █████████████░░░░░░░   264,734 tokens
   ├─ vs JSON          (−32.7%)               393,637 tokens
   ├─ vs JSON compact  (+1.6%)                260,451 tokens
   ├─ vs YAML          (−15.7%)               314,140 tokens
   └─ vs XML           (−40.9%)               447,936 tokens

纯扁平结构赛道

具有扁平、完全适合表格化的数据,CSV 也适用。

👥 字段一致的员工记录  ┊  表格化适用率:100%

   CSV                 ███████████████████░    47,153 tokens
   TOON                ████████████████████    49,978 tokens   (+6.0% vs CSV)
   ├─ vs JSON          (−60.7%)               127,061 tokens
   ├─ vs JSON compact  (−36.8%)                79,057 tokens
   ├─ vs YAML          (−50.0%)               100,054 tokens
   └─ vs XML           (−65.9%)               146,605 tokens

📈 时间序列分析数据  ┊  表格化适用率:100%

   CSV                 ██████████████████░░     8,383 tokens
   TOON                ████████████████████     9,115 tokens   (+8.7% vs CSV)
   ├─ vs JSON          (−59.0%)                22,245 tokens
   ├─ vs JSON compact  (−35.9%)                14,211 tokens
   ├─ vs YAML          (−49.0%)                17,858 tokens
   └─ vs XML           (−65.8%)                26,616 tokens

⭐ GitHub 前 100 仓库  ┊  表格化适用率:100%

   CSV                 ███████████████████░     8,711 tokens
   TOON                ████████████████████     8,937 tokens   (+2.6% vs CSV)
   ├─ vs JSON          (−41.7%)                15,337 tokens
   ├─ vs JSON compact  (−23.2%)                11,640 tokens
   ├─ vs YAML          (−33.0%)                13,337 tokens
   └─ vs XML           (−48.3%)                17,294 tokens

──────────────────────────────────── 总计 ────────────────────────────────────
   CSV                 ███████████████████░    64,247 tokens
   TOON                ████████████████████    68,030 tokens   (+5.9% vs CSV)
   ├─ vs JSON          (−58.7%)               164,643 tokens
   ├─ vs JSON compact  (−35.2%)               104,908 tokens
   ├─ vs YAML          (−48.2%)               131,249 tokens
   └─ vs XML           (−64.3%)               190,515 tokens

Token 数量使用 gpt-tokenizero200k_base 编码(GPT-5 分词器)。因服务商的分词方式不同,Token 绝对数量与分词器相关;但相对数量差异仍具参考意义。

查看详细示例

📈 时间序列分析数据

节省: 13,130 个 token(相较 JSON 减少 59.0%)

JSON(22,245 个 token):

json
{
  "metrics": [
    {
      "date": "2025-01-01",
      "views": 6138,
      "clicks": 174,
      "conversions": 12,
      "revenue": 2712.49,
      "bounceRate": 0.35
    },
    {
      "date": "2025-01-02",
      "views": 4616,
      "clicks": 274,
      "conversions": 34,
      "revenue": 9156.29,
      "bounceRate": 0.56
    },
    {
      "date": "2025-01-03",
      "views": 4460,
      "clicks": 143,
      "conversions": 8,
      "revenue": 1317.98,
      "bounceRate": 0.59
    },
    {
      "date": "2025-01-04",
      "views": 4740,
      "clicks": 125,
      "conversions": 13,
      "revenue": 2934.77,
      "bounceRate": 0.37
    },
    {
      "date": "2025-01-05",
      "views": 6428,
      "clicks": 369,
      "conversions": 19,
      "revenue": 1317.24,
      "bounceRate": 0.3
    }
  ]
}

TOON(9,115 个 token):

metrics[5]{date,views,clicks,conversions,revenue,bounceRate}:
  2025-01-01,6138,174,12,2712.49,0.35
  2025-01-02,4616,274,34,9156.29,0.56
  2025-01-03,4460,143,8,1317.98,0.59
  2025-01-04,4740,125,13,2934.77,0.37
  2025-01-05,6428,369,19,1317.24,0.3

⭐ GitHub 前 100 仓库

节省: 6,400 个 token(相较 JSON 减少 41.7%)

JSON(15,337 个 token):

json
{
  "repositories": [
    {
      "id": 132750724,
      "name": "build-your-own-x",
      "repo": "codecrafters-io/build-your-own-x",
      "description": "Master programming by recreating your favorite technologies from scratch.",
      "createdAt": "2018-05-09T12:03:18Z",
      "updatedAt": "2026-07-23T18:57:15Z",
      "pushedAt": "2026-07-14T19:25:58Z",
      "stars": 530712,
      "watchers": 6778,
      "forks": 50205,
      "defaultBranch": "master"
    },
    {
      "id": 21737465,
      "name": "awesome",
      "repo": "sindresorhus/awesome",
      "description": "😎 Awesome lists about all kinds of interesting topics",
      "createdAt": "2014-07-11T13:42:37Z",
      "updatedAt": "2026-07-23T18:57:24Z",
      "pushedAt": "2026-06-30T18:21:16Z",
      "stars": 488074,
      "watchers": 8292,
      "forks": 36010,
      "defaultBranch": "main"
    },
    {
      "id": 28457823,
      "name": "freeCodeCamp",
      "repo": "freeCodeCamp/freeCodeCamp",
      "description": "freeCodeCamp.org's open-source codebase and curriculum. Learn math, programming,…",
      "createdAt": "2014-12-24T17:49:19Z",
      "updatedAt": "2026-07-22T07:01:33Z",
      "pushedAt": "2026-07-21T18:00:51Z",
      "stars": 452380,
      "watchers": 8590,
      "forks": 45624,
      "defaultBranch": "main"
    }
  ]
}

TOON(8,937 个 token):

repositories[3]{id,name,repo,description,createdAt,updatedAt,pushedAt,stars,watchers,forks,defaultBranch}:
  132750724,build-your-own-x,codecrafters-io/build-your-own-x,Master programming by recreating your favorite technologies from scratch.,"2018-05-09T12:03:18Z","2026-07-23T18:57:15Z","2026-07-14T19:25:58Z",530712,6778,50205,master
  21737465,awesome,sindresorhus/awesome,😎 Awesome lists about all kinds of interesting topics,"2014-07-11T13:42:37Z","2026-07-23T18:57:24Z","2026-06-30T18:21:16Z",488074,8292,36010,main
  28457823,freeCodeCamp,freeCodeCamp/freeCodeCamp,"freeCodeCamp.org's open-source codebase and curriculum. Learn math, programming,…","2014-12-24T17:49:19Z","2026-07-22T07:01:33Z","2026-07-21T18:00:51Z",452380,8590,45624,main

相关资源