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

TOON (Token-Oriented Object Notation) е компактен, лесно четим формат за сериализация на данни, разработен специално за големи езикови модели (LLMs). За разлика от JSON, който повтаря имената на полетата за всеки обект в масив, TOON декларира имената на полетата един път и след това потоци данни в редове—подобно на CSV, но с явна структура. Този дизайн обикновено намалява използването на tokens с 30-60% в сравнение с форматиран JSON, особено за еднородни масиви от обекти. TOON комбинира структурата на базата на отстъпи на YAML за вложени обекти с табулярната ефективност на CSV, оптимизирана за LLM контексти, където разходите за tokens имат значение.

Какво е XML?

XML (eXtensible Markup Language) е широко използван език за маркиране за кодиране на документи в формат, който е както четим за хора, така и четим за машини. XML използва тагове за определяне на елементи и атрибути, създавайки йерархична древовидна структура. Обикновено се използва за конфигурационни файлове, обмен на данни между системи, уеб услуги (SOAP), формати на документи (Office Open XML) и RSS feeds. Докато XML е подробен и експлицитен, той осигурява силни възможности за валидиране и поддържа сложни вложени структури.

Описание на инструмента

Този конвертор трансформира данни двупосочно между TOON и XML формати, използвайки JSON като междинен формат. Процесът на преобразуване е: TOON ↔ JSON ↔ XML. Този подход осигурява надежно преобразуване чрез използване на добре установени библиотеки за всяка стъпка на трансформация. Преобразувайте token-ефективни TOON данни в стандартна XML маркировка за системи, които изискват XML вход, или трансформирайте XML данни в компактен TOON формат, за да намалите използването на tokens в LLM приложения.

Примери

TOON към XML преобразуване:

Вход (TOON):

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

Изход (XML):

<?xml version="1.0" encoding="UTF-8"?>
<root>
  <users>
    <id>1</id>
    <name>Alice</name>
    <role>admin</role>
  </users>
  <users>
    <id>2</id>
    <name>Bob</name>
    <role>user</role>
  </users>
</root>

XML към TOON преобразуване:

Вход (XML):

<?xml version="1.0" encoding="UTF-8"?>
<order>
  <id>ORD-456</id>
  <customer>John Doe</customer>
  <total>99.99</total>
</order>

Изход (TOON):

order:
  id: ORD-456
  customer: John Doe
  total: 99.99

Функции

  • Двупосочно преобразуване между TOON и XML с пълно запазване на данни
  • JSON междинен формат осигурява надежно преобразуване с използване на доказани библиотеки
  • Обработка на сложни структури включително вложени елементи, атрибути и масиви
  • Автоматично разпознаване на формат и оптимална стратегия за преобразуване
  • Запазване на йерархията на данни поддържане на отношенията родител-дете
  • Преобразуване с осведоменост за типове запазване на числа, булеви стойности и низове
  • Преобразуване в реално време с незабавни резултати
  • Синтаксис подсветяване за TOON и XML формати

Случаи на употреба

  1. Интеграция на наследени системи - Преобразувайте съвременни TOON данни в XML формат за съвместимост със по-старите корпоративни системи, които изискват XML вход
  2. Трансформация на данни от API - Трансформирайте XML отговори от API в token-ефективен TOON формат преди изпращане към LLMs за обработка и анализ
  3. Преобразуване на конфигурационни файлове - Преобразувайте XML конфигурационни файлове в TOON формат, за да намалите използването на tokens при използване на LLMs за управление на инфраструктурата
  4. Обработка на документи - Трансформирайте XML документи (RSS feeds, SOAP отговори, Office документи) в TOON за ефективен анализ на базата на LLM
  5. Миграция на данни - Преобразувайте данни между системи, които използват различни формати, като TOON служи като token-ефективно междинно представяне

Процес на преобразуване

TOON към XML:

  1. Разберете TOON формат в JavaScript обект (използвайки @toon-format/toon декодиране)
  2. Преобразувайте JavaScript обект в XML маркировка (използвайки xml2js builder)
  3. Изведете форматиран XML с правилно отстъпване

XML към TOON:

  1. Разберете XML маркировка в JavaScript обект (използвайки xml2js parser)
  2. Преобразувайте JavaScript обект в TOON формат (използвайки @toon-format/toon кодиране)
  3. Изведете компактно TOON представяне

Бележки за структурата на XML

При преобразуване от TOON към XML:

  • Ключовете на коренния обект стават XML елементи
  • Масивите създават множество елементи със същото име на тага
  • Табулярни TOON масиви се разширяват до отделни XML елементи
  • Свойствата на обекта стават дочерни елементи
  • Стойностите се преобразуват в текстово съдържание

При преобразуване от XML към TOON:

  • XML елементите стават ключове на обекти
  • Повторени елементи стават масиви
  • Атрибутите се сливат със съдържанието на елемента
  • Текстовото съдържание става стойност на низ
  • Празните елементи стават празни низове или null

Съображения за формата

XML подробност:

  • XML е по своята природа подробен с отварящи/затварящи тагове
  • Всеки елемент изисква както начален, така и краен таг
  • Атрибутите добавят допълнителни символи
  • Подходящ за маркиране на документи и валидиране

TOON ефективност:

  • Значително по-компактен за структурирани данни
  • Идеален за табулярни данни с повторени структури
  • Намалява използването на tokens с 30-60% спрямо JSON
  • Оптимизиран за LLM потребление

Компромиси:

  • XML поддържа атрибути и смесено съдържание (текст + елементи)
  • TOON превъзхожда еднородни структури на данни
  • XML има по-силни възможности за валидиране
  • TOON има по-добра token ефективност за LLMs

Качество на преобразуването

Междинният JSON формат осигурява:

  • Интегритет на данни - без загуба на данни при преобразуване
  • Запазване на типове - числа, булеви стойности и null стойности се поддържат
  • Последователност на структурата - вложени отношения се запазват
  • Надежна трансформация - използвайки проверени библиотеки (xml2js и @toon-format/toon)
  • Обработка на грешки - ясни съобщения за грешки за невалиден вход