Jak przekonwertować JSON do TOON
- Wklej JSON lub otwórz plik. Wynik w formacie TOON i szacowana liczba zaoszczędzonych tokenów pojawią się od razu.
- Wybierz separator: przecinek (domyślnie), tabulator lub pionową kreskę. Tabulatory często wymagają jeszcze mniej tokenów.
- Skopiuj TOON do swojego promptu. Aby odczytać odpowiedź modelu w formacie TOON, przełącz kierunek na TOON → JSON.
TOON vs JSON: przykład
Ci sami dwaj użytkownicy w JSON:
{"users":[{"id":1,"name":"Ada","role":"admin"},{"id":2,"name":"Bob","role":"user"}]}
i w TOON:
users[2]{id,name,role}:1,Ada,admin2,Bob,user
Nazwy pól są zapisywane raz w nagłówku zamiast w każdym obiekcie, a cudzysłowy, nawiasy klamrowe i większość znaków interpunkcyjnych znikają. W przypadku jednorodnych tablic obiektów – wierszy z bazy danych, logów, wyników wyszukiwania, list produktów – oszczędności są duże: w naszym teście ze 100 rekordami klientów TOON potrzebował o około 65% mniej tokenów niż sformatowany JSON i o 47% mniej niż zminifikowany JSON. Znacznik długości [2] pozwala też modelowi i dekoderowi sprawdzić, czy nie brakuje żadnego wiersza.
Format TOON w skrócie
| Dane | TOON |
|---|---|
| Pole obiektu | name: Ada |
| Zagnieżdżony obiekt | address:, a pod nim pola z wcięciem |
| Tablica prostych wartości | tags[3]: red,green,blue |
| Tablica obiektów z tymi samymi kluczami | users[2]{id,name}:, a pod nim jeden wiersz na obiekt |
| Tablice mieszane lub zagnieżdżone | items[2]:, a pod nim elementy listy zaczynające się od - |
| Ciągi znaków | bez cudzysłowów, chyba że zawierają separator, dwukropek, cudzysłowy lub nawiasy, mają spacje na początku lub końcu albo wyglądają jak liczba, true, false lub null |
Kiedy JSON nadal jest lepszym wyborem
- Głęboko zagnieżdżone lub nieregularne dane – gdy obiekty mają różne klucze lub zawierają zagnieżdżone obiekty, TOON przechodzi na listy z wcięciami, a oszczędności maleją lub znikają. Przy 20 rekordach, z których każdy zawierał zagnieżdżony adres i listę tagów, TOON był nadal o 34% mniejszy od sformatowanego JSON, ale o 12% większy od zminifikowanego JSON. Konwerter pokazuje oba porównania dla Twoich danych.
- Interfejsy maszynowe – API, function calling i structured outputs oczekują JSON.
- Znajomość formatu przez model – modele językowe widziały znacznie więcej JSON niż TOON; przed zmianą sprawdź jakość odpowiedzi na własnych promptach.
- Bardzo małe dane – przy kilku wartościach różnica jest pomijalna.
Liczba tokenów jest szacowana jako liczba znaków ÷ 4. Dokładne wartości zależą od tokenizera Twojego modelu, ale względna różnica jest dobrym wskaźnikiem.
Najczęściej zadawane pytania
Co to jest TOON?
TOON (Token-Oriented Object Notation) to zwarty, czytelny dla człowieka zapis modelu danych JSON, zaprojektowany z myślą o promptach dla LLM. Łączy wcięcia w stylu YAML dla obiektów z wierszami w stylu CSV dla jednorodnych tablic.
Czy TOON jest lepszy niż JSON?
Przy przekazywaniu danych tabelarycznych lub jednorodnych do modelu językowego zwykle tak: mniej tokenów i jawne długości tablic. W API, do przechowywania danych i przy głęboko zagnieżdżonych strukturach JSON pozostaje lepszym wyborem.
Jak szacowana jest liczba tokenów?
Narzędzie dzieli liczbę znaków przez cztery – to popularna reguła dla tekstu angielskiego i kodu (tekst po polsku zwykle zajmuje więcej tokenów). Dokładna liczba zależy od tokenizera Twojego modelu.
Czy mogę przekonwertować TOON z powrotem do JSON?
Tak. Przełącz kierunek na TOON → JSON; dekoder sprawdza zadeklarowane długości tablic i wskazuje wiersz, w którym wystąpił problem.