Token-Oriented Object Notation vs JSON: A Benchmark of Plain and Constrained Decoding Generation

Dit onderzoek vergelijkt de nieuwe Token-Oriented Object Notation (TOON) met JSON en concludeert dat TOON, ondanks een gunstige token-efficiëntie bij complexe taken, vaak wordt beperkt door prompt-overhead en dat geconstrueerde JSON-decodering voor eenvoudige structuren zelfs nog efficiënter kan zijn dan TOON.

Ivan Matveev

Gepubliceerd 2026-03-05
📖 4 min leestijd☕ Koffiepauze-leesvoer

Each language version is independently generated for its own context, not a direct translation.

De Kern: Een nieuwe taal voor AI?

Stel je voor dat je een robot (een Large Language Model of LLM) instructies geeft om een complexe lijst te maken, zoals een bestelling of een personeelsbestand. Normaal gesproken praten we met deze robots in JSON. JSON is als een zeer strikte, maar soms wat rommelige taal die computers al jaren begrijpen.

De auteur van dit paper, Ivan Matveev, heeft gekeken naar een nieuwe, experimentele taal genaamd TOON (Token-Oriented Object Notation). De belofte van TOON is simpel: "Het is korter, dus het kost minder geld en tijd om te versturen."

Maar is het echt beter? De auteur heeft een race georganiseerd tussen drie deelnemers om dat te testen.

De Drie Deelnemers in de Race

  1. De Vrije Kunstenaar (Plain JSON): De robot mag gewoon JSON schrijven zoals hij dat gewend is. Geen regels, geen hulp. Hij moet het zelf weten.
  2. De Strikte Bouwmeester (JSON-SO): De robot krijgt een strakke bouwtekening (constrained decoding). Hij mag alleen de juiste stenen leggen. Als hij een fout maakt, wordt de steen direct weggegooid. Dit is als een robot die een muur bouwt met een laser die elke afwijking corrigeert.
  3. De Nieuwe Talenstudent (TOON): De robot moet een nieuwe, compacte taal leren. Omdat hij deze taal niet kent, moet de mens eerst een heel groot "handleiding" (prompt) geven met voorbeelden. Daarna moet hij de tekst in die nieuwe stijl schrijven.

Wat bleek er uit de race?

De resultaten zijn verrassend en hangen af van wat je precies laat bouwen.

1. De "Handleiding-Boete" (De Prompt Tax)

Dit is het grootste probleem voor TOON. Omdat de robot de taal TOON niet kent, moet je hem eerst een hele lange uitleg geven (de handleiding).

  • Vergelijking: Stel je voor dat je iemand vraagt om een brief te schrijven.
    • Bij JSON zeg je gewoon: "Schrijf een brief." (Kort).
    • Bij TOON moet je eerst 3 pagina's uitleggen: "Gebruik twee spaties, zet de komma hier, en schrijf zo..." voordat je überhaupt begint met de brief.
  • Het gevolg: Voor kleine taken (een korte lijst) kost TOON meer tijd en geld dan JSON, omdat de uitleg langer is dan de brief zelf. Het is alsof je een vrachtwagen huurt om een postzegel te bezorgen.

2. De "Grote Lijst" Winst (Amortisatie)

Maar als je een enorme lijst moet maken (bijvoorbeeld duizenden producten in een magazijn), verandert het spel.

  • Vergelijking: Als je die vrachtwagen (TOON) gebruikt voor een heel groot pakket, bespaar je op de verpakking (de tekst zelf) veel ruimte. De lange uitleg aan het begin telt dan minder zwaar.
  • Resultaat: Bij grote, gestructureerde data (zoals bestellingen of facturen) wint TOON vaak. Het is korter en efficiënter, mits de data niet te ingewikkeld is.

3. De Strikte Bouwmeester (JSON-SO) is verrassend goed

De "Strikte Bouwmeester" (JSON met beperkingen) deed het verrassend goed bij simpele taken.

  • Vergelijking: Bij het maken van een simpele lijst (zoals een lijst met gebruikers) was deze methode de snelste en goedkoopste. De robot hoefde niet te denken, hij volgde gewoon de regels.
  • Nadeel: Bij complexe, ingewikkelde structuren (zoals een diep vertakt bedrijfshierarchie) raakte de robot in de war. De regels werden te strak, en de robot begon vast te lopen.

De Grote Ontdekking: Het hangt af van de vorm

De paper concludeert dat TOON geen "wondermiddel" is voor alles. Het werkt alleen goed in een specifieke omgeving:

  • Waar TOON wint: Bij "platte" of "uniforme" data. Denk aan tabellen, lijsten met bestellingen, of logboeken. Hier is de structuur altijd hetzelfde. TOON is hier als een strakke, efficiënte trein die op een vast spoor rijdt.
  • Waar TOON faalt: Bij "diepe" en "chaotische" data. Denk aan een ingewikkeld familieboomdiagram of een software-configuratie met veel lagen. Hier faalt TOON compleet. De robot raakt de draad kwijt omdat de nieuwe taal niet is gemaakt voor zulke ingewikkelde vormen.

De Conclusie in Eén Zin

TOON is als een speciaal gereedschap: het is fantastisch om duizenden identieke schroeven in te draaien (grote lijsten), maar het is een slechte keuze om een ingewikkeld houten poppenkastje te bouwen (complexe hiërarchieën).

Voor nu is de beste strategie:

  1. Gebruik gewone JSON voor alles wat complex of klein is.
  2. Gebruik TOON alleen als je enorme hoeveelheden simpele, gestructureerde data (zoals bestellingen) moet verwerken en je echt elke seconde en elke cent wilt besparen.
  3. Gebruik Strikte JSON (JSON-SO) als je zekerheid wilt bij simpele taken zonder de "handleiding-Boete" van TOON.

Kortom: TOON heeft potentie, maar het is nog geen vervanging voor JSON. Het is meer een gespecialiseerd hulpmiddel voor specifieke, grote taken.