新发布的面向令牌的对象表示法(TOON)有望通过减少令牌消耗来降低大型语言模型的成本
来源: InfoQ - 后端
最近发布的面向令牌的对象表示法(TOON)旨在成为一种支持模式识别的JSON替代方案,在保持相近精度的同时显著降低令牌消耗。虽然节省的令牌数量取决于数据结构,但部分基准测试表明,TOON在某些场景下比JSON消耗的令牌少40%,或许可以节省大型语言模型(LLM)及推理的成本。
TOON将自己描述为一种紧凑的、人类可读的JSON数据模型编码,用于LLM提示。
考虑以下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
}
]
}在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在在线游乐场中运行这个示例,它消耗的令牌与Pretty JSON相比减少了55%,与compact JSON相比减少了25%,与YAML相比减少了38%。

如上面的示例所示,TOON通过组合YAML(用于嵌套对象)和CSV(用于统一数组)格式来节省令牌。然而,对于非统一数据,JSON可能更有效。对于深度嵌套对象,YAML则可能更节省令牌。对于扁平化数据集,CSV仍然是最紧凑的格式。为提高LLM的准确性,TOON额外增加了一小部分开销(约5%)用于字段标题和数组声明。
“令牌效率会损害准确性吗?”
不:) TOON在GPT 5 Nano上达到了99.4%的准确度,而使用的令牌减少了46%。
已经针对大约160个问题和3个LLM进行了语义验证测试。
我认为,明确的长度+字段列表=更少的错误。
读者可以查看TOON规范、文档、在线游乐场,并运行自己的效率和准确性基准测试。在延迟关键应用中,开发人员应该比较两种格式的首次令牌获取时间和每秒令牌数。
TypeScript/JavaScript参考实现已经在github.com/toon-format/toon存储库中维护。其中包括一个完整的编码器和解码器,用于将JSON转换为TOON的CLI工具,以及性能基准测试。TOON 1.0两周前在MIT许可下发布。
声明:本文为InfoQ翻译,未经许可禁止转载。
原文链接:https://www.infoq.com/news/2025/11/toon-reduce-llm-cost-tokens/