Конвертер JSON ↔ TOON - Оптимизированный формат для токенов LLM

Ввод JSON
Вывод TOON

Часто задаваемые вопросы

Что такое TOON (Token-Oriented Object Notation)?

TOON (Token-Oriented Object Notation) - компактный, читаемый человеком формат сериализации данных, специально разработанный для приложений больших языковых моделей (LLM). Он был создан для решения растущей проблемы затрат на потребление токенов при работе с AI-моделями, такими как ChatGPT, Claude, Gemini и другими LLM.

Почему использовать TOON вместо JSON для промптов LLM?

Есть несколько убедительных причин использовать TOON вместо JSON при работе с большими языковыми моделями. Во-первых, снижение затрат - API LLM, такие как GPT-4 от OpenAI, Claude от Anthropic и Gemini от Google, взимают плату на основе использования токенов, и TOON может сократить ваше потребление токенов на 30-50%.

Как работает формат TOON?

TOON работает путём преобразования повторяющихся структур JSON в более эффективное табличное представление. Ключевое понимание в том, что когда у вас есть массив объектов с одинаковыми свойствами, JSON повторяет все имена свойств для каждого объекта. TOON устраняет эту избыточность.

// JSON (89 characters)
[{"id":1,"name":"Alice"},{"id":2,"name":"Bob"}]

// TOON (42 characters, 53% smaller)
[2](id,name):
  1,Alice
  2,Bob

Каковы основные различия между TOON и JSON?

Хотя TOON и JSON являются форматами сериализации данных, они имеют фундаментальные различия в подходе и случаях использования. JSON использует многословный синтаксис пар ключ-значение, где каждый объект явно называет все свои свойства. TOON использует подход schema-first.

Какую экономию токенов можно ожидать с TOON?

Экономия токенов с TOON варьируется в зависимости от структуры данных, но типичная экономия составляет от 30% до 60% для структурированных данных с повторяющимися схемами.

Какой базовый синтаксис формата TOON?

Синтаксис TOON разработан минимальным, но выразительным. Основные строительные блоки: 1) Простые пары ключ-значение записываются как 'ключ: значение' на отдельных строках.

// Array with schema header
products[3](id,name,price):
  1,Widget,9.99
  2,Gadget,19.99
  3,Gizmo,29.99

// Nested object
user:
  name: John Doe
  age: 30
  address:{city: New York, zip: 10001}

Какие типы данных поддерживает TOON?

TOON поддерживает все те же типы данных, что и JSON, обеспечивая полную точность данных при конвертации.

Как использовать формат TOON с ChatGPT, Claude и другими LLM?

Использование TOON с LLM просто и следует подходу 'показывать, а не рассказывать'. Наиболее эффективный метод - обернуть данные TOON в блоки кода с идентификатором языка 'toon'.

// LLM Prompt Example:
Here is user data in TOON format:

users[3](id,name,email):
  1,Alice,[email protected]
  2,Bob,[email protected]
  3,Charlie,[email protected]

Please analyze this data and respond in the same TOON format.

Какие языки программирования поддерживают TOON?

TOON имеет растущую поддержку во многих языках программирования с официальными и community реализациями.

Когда использовать TOON, а когда оставаться с JSON?

TOON идеален для определённых сценариев, тогда как JSON остаётся лучшим для других. Используйте TOON, когда: 1) Вы отправляете структурированные данные в LLM и хотите сократить затраты на токены.

Каковы ограничения формата TOON?

Хотя TOON предлагает значительные преимущества, важно понимать его ограничения. Во-первых, TOON оптимизирован для массивов объектов с согласованными схемами.

Каковы лучшие практики использования TOON с LLM?

Чтобы максимизировать преимущества TOON при работе с LLM, следуйте этим лучшим практикам: 1) Всегда проверяйте JSON перед конвертацией в TOON.