TOON: новый формат данных экономит до 60% токенов при работе с языковыми моделями

TOON: новый формат данных экономит до 60% токенов при работе с языковыми моделями

Разработан формат данных 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:

JSON
{
  "users": [
    { "id": 1, "name": "Alice", "role": "admin" },
    { "id": 2, "name": "Bob", "role": "user" }
  ]
}

TOON:

Markdown
users[2]{id,name,role}:
  1,Alice,admin
  2,Bob,user

Формат показывает лучшие результаты для однородных массивов объектов с примитивными значениями — одинаковыми полями и простыми типами данных. Для неоднородных данных, глубоко вложенных структур и объектов с различающимися наборами полей JSON остается более эффективным. Доступны официальные реализации на JavaScript, Python и Rust, а также версии от сообщества для .NET, Go, Java, Ruby и других языков.

Источник новости и обложки: github.com


Главред proglib.io. Опубликовал более 800 статей и создал популярные рассылки о нейросетях и разработке. Помимо редактуры пишу Python.

Аватар пользователя Мирослав Кунгуров