Разработан формат данных Token-Oriented Object Notation (TOON), который уменьшает количество токенов при передаче информации большим языковым моделям на 30-60% по сравнению с форматированным JSON. Формат оптимален для однородных массивов объектов — структур с одинаковыми полями и множеством строк данных.
TOON заимствует табличный формат из CSV и структуру с отступами из YAML, оптимизируя оба подхода для контекста языковых моделей. Вместо повторения названий полей в каждом объекте, формат объявляет их один раз в заголовке массива, а данные передаются как строки таблицы. Например, массив из трех пользователей записывается как users[3]{id,name,role}: с последующими строками значений, разделенными запятыми. Бенчмарки на 209 вопросах извлечения данных показали точность 73,9% для TOON против 69,7% для JSON при использовании на 39,6% меньше токенов.
JSON:
{
"users": [
{ "id": 1, "name": "Alice", "role": "admin" },
{ "id": 2, "name": "Bob", "role": "user" }
]
}TOON:
users[2]{id,name,role}:
1,Alice,admin
2,Bob,userФормат показывает лучшие результаты для однородных массивов объектов с примитивными значениями — одинаковыми полями и простыми типами данных. Для неоднородных данных, глубоко вложенных структур и объектов с различающимися наборами полей JSON остается более эффективным. Доступны официальные реализации на JavaScript, Python и Rust, а также версии от сообщества для .NET, Go, Java, Ruby и других языков.
Источник новости и обложки: github.com