TOON — это ещё один способ записать те же самые JSON-данные, но компактнее и понятнее для моделей. Вместо «key»: «value» он использует отступы как YAML и табличную запись для массивов объектов: шапка с названиями полей, дальше строки с данными.
Пример из README: вместо обычного JSON с пользователями — строка users[2]{id,name,role}: и две строки 1,Alice,admin и 2,Bob,user. Структура при этом не теряется: объекты, массивы и примитивы остаются теми же, формат — просто «другая запись» того же JSON.
Главная идея — экономия токенов и более предсказуемое поведение LLM на больших массивах данных. Помните, мы даже рассказывали про то, что от формата напрямую может зависеть результат генерации. (Какой табличный формат LLM понимают лучше всего? (Результаты по 11 форматам))
В бенчмарках TOON даёт порядка 30–60% экономии токенов на больших ровных массивах объектов по сравнению с форматированным JSON и заметно меньше, но всё равно ощутимо — против compact JSON. Плюс за счёт явных длин массивов ([N]) и списков полей в шапке модели чаще замечают обрезанные данные, расхождения в количестве столбцов и прочие артефакты. На ряде задач TOON показывает чуть более высокую точность ответов, чем обычный JSON при меньшем числе токенов.
При этом авторы честно фиксируют зоны, где TOON не выгоден. Если структура сильно вложенная, неравномерная и почти не подходит под табличный вид, компактный JSON в тестах иногда оказывается короче.
Если данные вообще чисто табличные и плоские, CSV по-прежнему даёт минимальный размер, а TOON добавляет небольшой оверхед ради явной структуры и валидации. То есть формат заточен именно под «много однотипных объектов с примитивными полями», а не под любые данные подряд.
Для использования уже есть CLI через npx @toon-format/cli и TypeScript-библиотека @toon-format/toon. В README есть и плейграунды, где можно погонять свои данные и сравнить токены для TOON, JSON, YAML, CSV и XML.
Подводя итог, это не «замена JSON», а дополнительный слой кодировки специально для LLM-промптов.
Русскоязычное сообщество про AI в разработке
Друзья! Эту новость подготовила команда ТГК «AI for Devs» — канала, где мы рассказываем про AI-ассистентов, плагины для IDE, делимся практическими кейсами и свежими новостями из мира ИИ. Подписывайтесь, чтобы быть в курсе и ничего не упустить!
Источник: habr.com