|
在AI应用开发中,JSON格式的数据传输消耗了大量token。开发者Mahesh Vaikri提出了一种名为ISON(Interchange Simple Object Notation)的新格式,能在保持数据完整性的同时显著减少token使用。 JSON的token浪费问题传统JSON格式充斥着大量括号、引号和冒号。以一个典型的用户数据为例: { "users": [ {"id": 1, "name": "Alice", "email": "alice@example.com", "active": true}, {"id": 2, "name": "Bob", "email": "bob@example.com", "active": false}, {"id": 3, "name": "Charlie", "email": "charlie@example.com", "active": true} ] }
这个结构需要87个token,其中大部分被语法符号占用。 ISON的简洁设计同样的数据用ISON表示: table.users id:int name:string email active:bool 1 Alice alice@example.com true 2 Bob bob@example.com false 3 Charlie charlie@example.com true
仅需34个token,减少了61%。ISON采用表格状结构,基于LLM训练时已熟悉的TSV模式。 核心特性详解数据块类型: 引用系统: 类型注解: - 支持
:int、:string、:bool、:float
权威性能测试项目进行了300道题目的大规模基准测试,覆盖20个数据集,使用GPT-4o标准分词器: | 格式 | Token数 | 相比JSON | 准确率 | 每千Token准确率 |
|---|
| ISON | 3,550 | -72.0% | 88.3% | 24.88 | | TOON | 4,847 | -61.7% | 88.7% | 18.29 | | JSON压缩 | 7,339 | -42.1% | 89.0% | 12.13 | | JSON | 12,668 | 基准线 | 84.7% | 6.68 |
ISON在所有20项token效率测试中获胜,比JSON高出272%的token效率。 完整生态系统ISON已构建跨5种编程语言的11个包,通过303+项测试: 安装使用: # JavaScript/TypeScript npm install ison-parser ison-ts isonantic-ts
# Python pip install ison-py isonantic
# Rust cargo add ison-rs isonantic-rs
# Go go get github.com/maheshvaikri-code/ison/ison-go
代码示例(Python): from ison_py import parse, to_json
doc = parse(""" table.users id:int name:string active:bool 1 Alice true 2 Bob false """)
# 访问数据 for row in doc['users']['rows']: print(f"{row['id']}: {row['name']}")
# 转换为JSON print(to_json(doc))
ISONL流式格式对于大数据集,ISON提供基于行的ISONL格式: table.users|id name email|1 Alice alice@example.com table.users|id name email|2 Bob bob@example.com
每行自包含,适合流式处理和大数据场景。 类型安全验证ISONantic提供类似Pydantic的验证功能: import { table, string, int, boolean } from 'isonantic-ts';
const userSchema = table('users') .field('id', int().required()) .field('name', string().min(1).max(100)) .field('email', string().email()) .field('active', boolean().default(true));
const users = userSchema.validate(doc);
小结对于需要频繁与LLM交换数据的应用,ISON提供了一个更高效的替代方案。特别是在RAG、智能体等场景下,每个token都值得精打细算。 |