Konwerter TOON JSON
Konwertuj między formatami JSON i TOON (Token-Oriented Object Notation). TOON to kompaktowy, czytelny dla człowieka format zaprojektowany, aby zmniejszyć zużycie tokenów o 30‑60 % w LLM, szczególnie efektywny dla jednorodnych tablic obiektów.
Wejście
Wyjście
Instrukcja
Co to jest format TOON?
TOON (Token‑Oriented Object Notation) to zwarty, czytelny dla człowieka format serializacji danych, zaprojektowany specjalnie dla dużych modeli językowych (LLM). W przeciwieństwie do JSON, który powtarza nazwy pól dla każdego obiektu w tablicy, TOON deklaruje nazwy pól raz, a następnie strumieniuje dane w wierszach — podobnie jak CSV, ale z wyraźną strukturą. Dzięki temu projekt zazwyczaj zmniejsza zużycie tokenów o 30‑60 % w porównaniu z formatowanym JSON, szczególnie w przypadku jednorodnych tablic obiektów. TOON łączy w sobie wcięciową strukturę YAML dla zagnieżdżonych obiektów z wydajnością tabelaryczną CSV, zoptymalizowaną pod kątem kontekstów LLM, gdzie koszt tokenów ma znaczenie.
Opis narzędzia
Ten konwerter przekształca dane pomiędzy formatami JSON i TOON dwukierunkowo. Wystarczy wkleić swoje dane JSON, aby wygenerować zwarty wynik TOON, lub przekształcić TOON z powrotem do standardowego JSON. Narzędzie korzysta z oficjalnej biblioteki @toon-format/toon, aby zapewnić dokładną konwersję. TOON jest szczególnie skuteczny dla zestawów danych o powtarzalnych strukturach — takich jak rekordy użytkowników, dzienniki transakcji, odpowiedzi API lub dowolne dane tabelaryczne — gdzie zmniejszenie liczby tokenów zwiększa wydajność przy pracy z LLM.
Przykłady
Wejście JSON:
{
"users": [
{ "id": 1, "name": "Alice", "role": "admin" },
{ "id": 2, "name": "Bob", "role": "user" }
]
}
Wyjście TOON:
users[2]{id,name,role}:
1,Alice,admin
2,Bob,user
Przykład struktury zagnieżdżonej:
JSON z zagnieżdżonymi obiektami konwertuje się na wcięty format TOON:
{
"order": {
"id": "ORD-456",
"items": [
{ "sku": "A1", "qty": 2, "price": 19.99 },
{ "sku": "B2", "qty": 1, "price": 29.99 }
],
"total": 69.97
}
}
Staje się:
order:
id: ORD-456
items[2]{sku,qty,price}:
A1,2,19.99
B2,1,29.99
total: 69.97
Funkcje
- Dwukierunkowa konwersja między formatami JSON i TOON z pełną wiernością
- Znacząca redukcja tokenów (30‑60 % mniej tokenów w porównaniu z JSON dla jednorodnych tablic)
- Zachowuje strukturę danych, w tym zagnieżdżone obiekty, tablice i wartości prymitywne
- Automatyczne wykrywanie formatu i optymalna strategia kodowania
- Czytelny dla człowieka wynik z przejrzystą strukturą tabelaryczną dla jednorodnych danych
- Konwersja typ‑bezpieczna, prawidłowo obsługująca liczby, wartości logiczne, null i ciągi znaków
- Obsługa przypadków brzegowych, w tym pustych tablic, struktur zagnieżdżonych i mieszanych typów
- Konwersja w czasie rzeczywistym z natychmiastowymi rezultatami podczas pisania
Zastosowania
- Optymalizacja API LLM – zmniejsz koszty tokenów przy wysyłaniu danych strukturalnych do GPT, Claude lub innych LLM, konwertując ładunki JSON do formatu TOON przed wywołaniami API
- Promptowanie analizy danych – przygotuj zestawy danych do analizy przez LLM przy bardziej efektywnym kodowaniu, umożliwiając większe zbiory danych w granicach kontekstu
- Generowanie danych strukturalnych – używaj TOON w promptach, aby poprosić LLM o generowanie danych tabelarycznych wydajniej niż w JSON
- Przetwarzanie logów – konwertuj logi aplikacji lub dane analityczne do zwartego formatu dla analizy i podsumowań opartych na LLM
- Zarządzanie konfiguracją – przekształcaj pliki konfiguracyjne do formatu oszczędzającego tokeny, gdy używasz LLM do zarządzania infrastrukturą lub zadań DevOps
Szczegóły efektywności tokenów
TOON osiąga znaczące oszczędności tokenów dzięki kilku optymalizacjom:
- Brak powtarzających się nazw pól – pola deklarowane są raz w nagłówku zamiast powtarzania przy każdym obiekcie
- Minimalna interpunkcja – usuwa zbędne nawiasy, klamry i cudzysłowy tam, gdzie jest to bezpieczne
- Format tabelaryczny – używa wierszy podobnych do CSV dla jednorodnych tablic obiektów
- Elastyczność separatora – obsługuje przecinek (domyślnie), tabulator lub pionową kreskę jako delimitery dla optymalnej tokenizacji
Przykład porównania tokenów (przy użyciu tokenizera GPT‑5):
- JSON (sformatowany): 100 rekordów pracowników ≈ 49 776 tokenów
- TOON: te same dane ≈ 17 635 tokenów (redukcja 64,6 %)
- CSV: ≈ 15 583 tokenów (najbardziej zwarty, ale bez struktury)
TOON zapewnia najlepszy kompromis między zwartą formą a integralnością strukturalną dla aplikacji LLM.
Przegląd formatu
Obiekty: proste pary klucz‑wartość z wcięciem dla zagnieżdżenia
id: 123
name: Ada
active: true
Tablice: długość deklarowana w nawiasach, tablice prymitywne w jednej linii
tags[3]: reading,gaming,coding
Tablice tabelaryczne: jednorodne obiekty formatowane jako tabele z nagłówkami pól
items[2]{sku,qty,price}:
A1,2,9.99
B2,1,14.5
Zasady cytowania: ciągi znaków są cytowane tylko wtedy, gdy jest to konieczne (zawierają delimitery, dwukropki lub wyglądają jak inne typy)
Uwagi dotyczące konwersji
Podczas konwersji JSON → TOON:
- Jednorodne tablice obiektów automatycznie używają formatu tabelarycznego
- Struktury zagnieżdżone zachowują prawidłowe wcięcia
- Typy nie‑JSON (undefined, funkcje) konwertowane są na null
- Daty konwertowane są na ciągi ISO
- Liczby nie używają notacji naukowej
Podczas konwersji TOON → JSON:
- Zachowuje standardowe formatowanie JSON z wcięciem 2 spacji
- Waliduje długości tablic i spójność pól
- Poprawnie escapuje znaki specjalne
- Zachowuje informacje o typach (liczby, wartości logiczne, null)