专为 AI 打造的数据格式 TOON

TOON 是一种专为大模型优化的数据格式,用缩进和表头式结构替代 JSON 的冗余符号,大幅压缩 Token 消耗(较 JSON 减少30–60%)。在209个数据检索任务中平均准确率超越 JSON,尤其适合员工名单、商品列表等规整表格数据,已提供 TypeScript 库与命令行工具支持快速转换。

发布于2025年11月17日 03:13
编辑零重力瓦力
评论0
阅读32

专为 AI 打造的数据格式 TOON

终于有了一种专为 AI 打造的数据格式 TOON(Token-Oriented Object Notation)。它结合了 YAML 和 CSV 的优点,对 JSON 格式的数据进行了压缩,既省空间,又易于理解,尤其适合做为 LLM 的输入。

为什么需要 TOON

现在 AI 越来越强,能看懂的数据也越来越多,但用 JSON 传数据其实很浪费 Token。每个花括号、引号、逗号都要算在内,光是结构就能占掉不少篇幅。TOON 的聪明之处在于,用缩进代替大部分结构符号,数组用类似 CSV 的风格一行一行排列,把字段名提到表头,这样一来,数据的核心内容被最大程度地保留,重复的杂项被压缩、去除。

JSON

{
  "context": {
    "task": "Our favorite hikes together",
    "location": "Boulder",
    "season": "spring_2025"
  },
  "friends": ["ana", "luis", "sam"],
  "hikes": [
    {
      "id": 1,
      "name": "Blue Lake Trail",
      "distanceKm": 7.5,
      "elevationGain": 320,
      "companion": "ana",
      "wasSunny": true
    },
    {
      "id": 2,
      "name": "Ridge Overlook",
      "distanceKm": 9.2,
      "elevationGain": 540,
      "companion": "luis",
      "wasSunny": false
    },
    {
      "id": 3,
      "name": "Wildflower Loop",
      "distanceKm": 5.1,
      "elevationGain": 180,
      "companion": "sam",
      "wasSunny": true
    }
  ]
}

YAML

context:
  task: Our favorite hikes together
  location: Boulder
  season: spring_2025

friends:
  - ana
  - luis
  - sam

hikes:
  - id: 1
    name: Blue Lake Trail
    distanceKm: 7.5
    elevationGain: 320
    companion: ana
    wasSunny: true
  - id: 2
    name: Ridge Overlook
    distanceKm: 9.2
    elevationGain: 540
    companion: luis
    wasSunny: false
  - id: 3
    name: Wildflower Loop
    distanceKm: 5.1
    elevationGain: 180
    companion: sam
    wasSunny: true

TOON

context:
  task: Our favorite hikes together
  location: Boulder
  season: spring_2025

friends[3]: ana,luis,sam

hikes[3]{id,name,distanceKm,elevationGain,companion,wasSunny}:
  1,Blue Lake Trail,7.5,320,ana,true
  2,Ridge Overlook,9.2,540,luis,false
  3,Wildflower Loop,5.1,180,sam,true

不同格式的准确率和 Token 成本

TOON           ████████████████████   26.9  │  73.9% acc  │  2,744 tokens
JSON compact   █████████████████░░░   22.9  │  70.7% acc  │  3,081 tokens
YAML           ██████████████░░░░░░   18.6  │  69.0% acc  │  3,719 tokens
JSON           ███████████░░░░░░░░░   15.3  │  69.7% acc  │  4,545 tokens
XML            ██████████░░░░░░░░░░   13.0  │  67.1% acc  │  5,167 tokens

在 4 个 LLM 上对 209 个数据检索问题的准确率

claude-haiku-4-5-20251001
→ TOON           ████████████░░░░░░░░    59.8% (125/209)
  JSON           ███████████░░░░░░░░░    57.4% (120/209)
  YAML           ███████████░░░░░░░░░    56.0% (117/209)
  XML            ███████████░░░░░░░░░    55.5% (116/209)
  JSON compact   ███████████░░░░░░░░░    55.0% (115/209)
  CSV            ██████████░░░░░░░░░░    50.5% (55/109)

gemini-2.5-flash
→ TOON           ██████████████████░░    87.6% (183/209)
  CSV            █████████████████░░░    86.2% (94/109)
  JSON compact   ████████████████░░░░    82.3% (172/209)
  YAML           ████████████████░░░░    79.4% (166/209)
  XML            ████████████████░░░░    79.4% (166/209)
  JSON           ███████████████░░░░░    77.0% (161/209)

gpt-5-nano
→ TOON           ██████████████████░░    90.9% (190/209)
  JSON compact   ██████████████████░░    90.9% (190/209)
  JSON           ██████████████████░░    89.0% (186/209)
  CSV            ██████████████████░░    89.0% (97/109)
  YAML           █████████████████░░░    87.1% (182/209)
  XML            ████████████████░░░░    80.9% (169/209)

grok-4-fast-non-reasoning
→ TOON           ███████████░░░░░░░░░    57.4% (120/209)
  JSON           ███████████░░░░░░░░░    55.5% (116/209)
  JSON compact   ███████████░░░░░░░░░    54.5% (114/209)
  YAML           ███████████░░░░░░░░░    53.6% (112/209)
  XML            ███████████░░░░░░░░░    52.6% (110/209)
  CSV            ██████████░░░░░░░░░░    52.3% (57/109)

TOON 适合什么场景

最适合用来表示 “表格状” 的数据,像员工名单、商品列表、时间序列这些,每一行都是结构一致的对象。如果你的数据本来就很规整,TOON 就能最大程度节省 Token。官方的测试里,经常能比 JSON 少掉 30-60% 的长度。

TOON 的实现细节

  1. 支持缩进和不同分隔符(逗号、Tab、竖线),能进一步压缩体积
  2. 字符串只有在必须时才加引号,省掉大量标点
  3. 提供 TypeScript 库和命令行工具,支持一键格式转换,能够轻松和 JSON 格式进行切换
  4. 支持 “key folding”,能够把一层一层的嵌套字段折叠成一行,比如 data.metadata.items[2]: a,b,让数据更紧凑

更重要的是,LLM 更喜欢结构简单明的数据,对 TOON 数据的理解更精准,不容易出错。

当然,并不是所有情况下 TOON 都比 JSON 好。比如数据结构很深、每个对象的字段都不一样,这种情况还得老老实实用 JSON。

Github:github.com/toon-format/toon

相关文章

上下文工程实战:让 AI Agent 在超长对话中不失忆的三大策略
智能体工程
2026年5月8日
0 条评论
零重力瓦力

上下文工程实战:让 AI Agent 在超长对话中不失忆的三大策略

GPT-5.5 等模型虽推理强劲,却常因“上下文衰退”在长任务中遗忘关键信息。文章剖析滑窗截断、分层摘要及记忆卸载三大策略,指出单纯扩大窗口无效,需构建外部记忆架构。通过热温冷三层结构与增量更新机制,可显著提升多步骤工程任务的稳定性与 Token 利用率,为开发长程 AI Agent 提供核心设计思路。

#上下文工程#提示词工程#智能体工程
阅读全文
NVIDIA 开源 Nemotron 3 Nano Omni:一个模型通吃视频音频文字
AI 产品工具
2026年5月7日
0 条评论
零重力瓦力

NVIDIA 开源 Nemotron 3 Nano Omni:一个模型通吃视频音频文字

NVIDIA 开源 Nemotron 3 Nano Omni,以 30B 总参数、3B 激活的混合专家架构,实现视频、音频与文字的统一处理。该模型通过 Mamba 与 Transformer 结合及高效视频采样技术,将多模态推理吞吐量提升最高 9 倍,显著降低延迟与显存占用。相比传统三模型拼接方案,它更适合构建高并发 AI Agent,支持本地消费级显卡运行,已在文档智能、客服等场景验证实际价值。

#开源模型
阅读全文
NVIDIA 给 ComfyUI 装了三把刀:拆层、擦除、转3D,本地一条龙搞定
AI 产品工具
2026年5月7日
0 条评论
零重力瓦力

NVIDIA 给 ComfyUI 装了三把刀:拆层、擦除、转3D,本地一条龙搞定

NVIDIA 开源 GenAI Creator Toolkit,为 ComfyUI 提供三个核心本地工作流:一键图像分层、精准物体擦除及照片转 3D 模型。该工具利用深度估计与生成式 AI 技术,解决商业设计中抠图繁琐、修图不自然及 3D 建模门槛高的问题。支持 RTX 显卡在本地运行,保障数据安全,适用于需要高效处理视觉素材的设计师、视频师及 3D 美术人员,标志着 ComfyUI 向通用创作执行器的关键转变。

#ComfyUI
阅读全文
互动讨论

评论区

围绕《专为 AI 打造的数据格式 TOON》展开交流,未登录用户可浏览评论,登录后可参与讨论。

评论数
0
登录后参与评论
支持发表观点与回复一级评论,互动后将同步到消息中心。
登录后评论
暂无评论,欢迎成为第一个参与讨论的人。