TOON JSON konverter
Konverteeri JSON-i ja TOON (Token-Oriented Object Notation) vormingute vahel. TOON on kompaktne, inimloetav vorming, mis on loodud vähendama tokenite kasutust 30–60% LLM-ide jaoks, eriti tõhus ühtsete objektide massiivide puhul.
Sisend
Väljund
Loe mind
Mis on TOON vorming?
TOON (Token‑Oriented Object Notation) on kompaktne, inimesele loetav andmeserialiseerimise vorming, mis on loodud spetsiaalselt suurte keelemudelite (LLM‑de) jaoks. Erinevalt JSON‑ist, kus iga objektis massiivis korduvad väljanimed, deklareerib TOON väljanimed üks kord ja seejärel voogesitab andmeid ridadena – sarnaselt CSV‑le, kuid selge struktuuriga. See disain vähendab tavaliselt tokenite kasutust 30‑60 % võrreldes vormindatud JSON‑iga, eriti ühtsete objektide massiivide puhul. TOON ühendab YAML‑i taandridade põhise struktuuri sisemiste objektide jaoks CSV‑i tabelilise tõhususega, optimeeritud LLM‑i kontekstides, kus tokenikulud on olulised.
Tööriista kirjeldus
See konverter teisendab andmeid JSON‑i ja TOON‑i vormingute vahel kahesuunaliselt. Lihtsalt kleebi oma JSON‑andmed, et genereerida kompaktne TOON‑väljund, või muuda TOON tagasi tavapäraseks JSON‑iks. Tööriist kasutab ametlikku @toon-format/toon teeki, et tagada täpne teisendus. TOON on eriti tõhus andmekogude puhul, millel on korduvad struktuurid – näiteks kasutajakirjed, tehingulogid, API‑vastused või mis tahes tabelilised andmed – kus tokenite arvu vähendamine parandab tõhusust LLM‑idega töötamisel.
Näited
JSON‑sisend:
{
"users": [
{ "id": 1, "name": "Alice", "role": "admin" },
{ "id": 2, "name": "Bob", "role": "user" }
]
}TOON‑väljund:
users[2]{id,name,role}:
1,Alice,admin
2,Bob,userSisemiste struktuuride näide
JSON, mis sisaldab sisemisi objekte, teisendatakse taandatud TOON‑vormingusse:
{
"order": {
"id": "ORD-456",
"items": [
{ "sku": "A1", "qty": 2, "price": 19.99 },
{ "sku": "B2", "qty": 1, "price": 29.99 }
],
"total": 69.97
}
}Saadud TOON‑väljund:
order:
id: ORD-456
items[2]{sku,qty,price}:
A1,2,19.99
B2,1,29.99
total: 69.97Funktsioonid
- Kahesuunaline teisendus JSON‑i ja TOON‑i vormingute vahel, säilitades täieliku täpsuse
- Oluliselt tokenite vähendamine (30‑60 % vähem tokenite võrreldes JSON‑iga ühtsete massiivide puhul)
- Andmestruktuuri säilitamine, sealhulgas sisemised objektid, massiivid ja primitiivsed väärtused
Tokeni‑efektiivsuse üksikasjad
TOON saavutab märkimisväärse tokenite säästmise läbi mitmete optimeerimiste:
- Väljanimed ei kordu – Deklareerib väljad üks kord päises, mitte iga objekti jaoks
- Vähem kirjavahemärke – Eemaldab turvalisel juhul liigsed sulud, loogused ja jutumärgid
- Tabeliline vorming – Kasutab CSV‑laadseid ridu ühtsete objektide massiivide jaoks
- Eraldaja paindlikkus – Toetab koma (vaikimisi), tabulaatori või toru eraldajaid optimaalse tokeniseerimise jaoks
Tokenite võrdlusnäide (kasutades GPT‑5 tokenisaajat):
- JSON (vormindatud): 100 töötaja kirjet ≈ 49 776 tokenit
- TOON: Sama andmestik ≈ 17 635 tokenit (64,6 % vähendus)
- CSV: ≈ 15 583 tokenit (kõige kompaktsem, kuid struktuuri puudub)
TOON pakub parimat tasakaalu kompaktse suuruse ja struktuurse terviklikkuse vahel LLM‑rakenduste jaoks.
Vormingu ülevaade
Objektid: Lihtsad võtme‑väärtuse paarid, taandridadega sisemiste elementide jaoks
id: 123
name: Ada
active: trueMassiivid: Pikkus deklareeritakse nurksulgudes, primitiivsed massiivid ühel real
tags[3]: reading,gaming,codingTabelilised massiivid: Ühtsed objektid vormindatud tabelitena väljanime päisega
items[2]{sku,qty,price}:
A1,2,9.99
B2,1,14.5Jutumärgi reeglid: Stringid on jutumärkides ainult siis, kui see on vajalik (sisalduvad eraldajad, koolonid või näivad olevat muud tüüpi väärtused)
Teisendamise märkused
JSON‑st TOON‑iks teisendamisel
- Ühtsed objektide massiivid kasutavad automaatselt tabelilist vormingut
- Sisemised struktuurid säilitavad korrektse taandridade sügavuse
- Mitte‑JSON tüübid (undefined, funktsioonid) teisendatakse null‑iks
- Kuupäevad konverteeritakse ISO‑stringideks
- Numbrid ei kasutata teaduslikku notatsiooni
TOON‑st JSON‑iks teisendamisel
- Säilitab standardse JSON‑vormingu 2‑tühiku taandridadega
- Kontrollib massiivi pikkusi ja väljanime järjepidevust
- Puhastab erimärgid õigesti
- Säilitab tüüpide teabe (numbrid, booleandid, null)