Repolode
toon-format

toon-format/toon

Компактное, удобное для чтения представление данных JSON, которое сокращает расход токенов при передаче структурированных данных в промпты LLM.

Звёзды
25,528
Форки
1,280
Открытые issues
2
Последний коммит
12 дней назад

Что это?

TOON (Token-Oriented Object Notation) преобразует модель данных JSON в формат, сочетающий отступы в стиле YAML для вложенных объектов и табличные строки в стиле CSV для однородных массивов. В заголовке каждого массива указываются его длина и список полей, поэтому модели видят, сколько строк ожидать и какие поля есть в каждой из них.

В проекте есть TypeScript SDK с функциями encode и decode, потоковыми API для больших наборов данных и CLI, который преобразует JSON в TOON и обратно, а также показывает примерную экономию токенов. Кодирование выполняется без потерь, поэтому данные можно преобразовать обратно в исходный JSON. Официальные реализации и порты сообщества соответствуют общей спецификации и проходят набор тестов на совместимость.

TOON лучше всего подходит для массивов однородных объектов. Для глубоко вложенных или неоднородных данных, как отмечают авторы проекта, компактный JSON может быть эффективнее, а для полностью плоских таблиц CSV занимает меньше места. В репозитории есть бенчмарки, сравнивающие точность поиска и количество токенов в JSON, YAML, XML и CSV.

Ключевые возможности

  • 01Кодирует объекты и массивы JSON в формат с отступами в стиле YAML и таблицами в стиле CSV для однородных данных.
  • 02В заголовках массивов указываются количество строк и имена полей — это помогает моделям обнаруживать обрезанный или некорректный вывод.
  • 03Преобразование между JSON и TOON без потерь.
  • 04TypeScript SDK с encode, decode и потоковыми API.
  • 05CLI для преобразования файлов или stdin и отображения экономии токенов с помощью --stats.
  • 06Поддерживаются разделители-запятые, табуляция и вертикальная черта.

Сценарии использования

  • Передача в LLM больших списков однородных записей, например результатов запросов к базе данных, с сокращением размера промпта.
  • Преобразование ответов JSON API в компактный формат перед добавлением в промпты.
  • Оценка количества токенов в JSON-данных при использовании TOON и других форматов.
  • Создание конвейеров LLM на TypeScript, которым нужно обратимое представление данных с проверкой корректности.

Быстрый старт

  1. 1

    Попробуйте TOON на собственных данных JSON с помощью npx — установка не требуется

    cat data.json | npx @toon-format/cli --stats

Что важно знать

  • Лучше всего подходит для однородных массивов или объектов с ключами; для глубоко вложенных или неоднородных данных обычный JSON часто даёт лучшие результаты.
  • Формат описывается как стабильный, но он продолжает развиваться, поэтому детали могут измениться.

Темы

Частые вопросы

Что такое toon?
Компактное, удобное для чтения представление данных JSON, которое сокращает расход токенов при передаче структурированных данных в промпты LLM. TOON (Token-Oriented Object Notation) преобразует модель данных JSON в формат, сочетающий отступы в стиле YAML для вложенных объектов и табличные строки в стиле CSV для однородных массивов. В заголовке каждого массива указываются его длина и список полей, поэтому модели видят, сколько строк ожидать и какие поля есть в каждой из них.
toon можно использовать бесплатно? Какая у него лицензия?
toon распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
toon всё ещё поддерживается?
Активно поддерживается. Последний коммит в toon — 9 окт. 2026 г..
Для чего можно использовать toon?
Передача в LLM больших списков однородных записей, например результатов запросов к базе данных, с сокращением размера промпта. Преобразование ответов JSON API в компактный формат перед добавлением в промпты. Оценка количества токенов в JSON-данных при использовании TOON и других форматов. Создание конвейеров LLM на TypeScript, которым нужно обратимое представление данных с проверкой корректности.
Как установить toon?
Попробуйте TOON на собственных данных JSON с помощью npx — установка не требуется: cat data.json | npx @toon-format/cli --stats
Где скачать toon?
Исходный код и инструкции по установке — на GitHub: https://github.com/toon-format/toon

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

AI-оптимизатор промптов: улучшает промпты, тестирует и сравнивает их результаты и сохраняет как готовые шаблоны; доступен как веб-сервис, десктопное приложение, расширение для Chrome и Docker.

38,6 тыс.4,4 тыс.TypeScriptOtherОбновлён позавчера