TOON formatı nedir?

TOON (Token‑Oriented Object Notation), Büyük Dil Modelleri (LLM’ler) için özel olarak tasarlanmış, kompakt ve insan tarafından okunabilir bir veri serileştirme formatıdır. JSON’un aksine, bir dizi içindeki her nesne için alan adlarını tekrarlamak yerine, TOON alan adlarını yalnızca bir kez bildirir ve ardından satırlar halinde veri akışı sağlar—CSV’ye benzer ancak açık bir yapıya sahiptir. Bu tasarım, özellikle aynı yapıya sahip nesne dizileri için, biçimlendirilmiş JSON’a kıyasla token kullanımını %30‑60 oranında azaltır. TOON, iç içe nesneler için YAML’ın girintili yapısını, tablo verimliliği için ise CSV’yi birleştirir; token maliyetlerinin önemli olduğu LLM bağlamları için optimize edilmiştir.

Araç Açıklaması

Bu dönüştürücü, JSON ve TOON formatları arasında çift yönlü veri dönüşümü gerçekleştirir. JSON verinizi yapıştırarak kompakt TOON çıktısı oluşturabilir veya TOON’u standart JSON’a geri dönüştürebilirsiniz. Araç, doğru dönüşüm sağlamak için resmi @toon-format/toon kütüphanesini kullanır. TOON, tekrarlanan yapıların bulunduğu veri kümeleri—kullanıcı kayıtları, işlem günlükleri, API yanıtları veya herhangi bir tablo verisi gibi—için özellikle etkilidir; token sayısını azaltmak, LLM’lerle çalışırken verimliliği artırır.

Örnekler

JSON Girişi:

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

TOON Çıktısı:

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

İç İçe Yapı Örneği:

İç içe nesneler içeren JSON, girintili TOON formatına dönüştürülür:

{
  "order": {
    "id": "ORD-456",
    "items": [
      { "sku": "A1", "qty": 2, "price": 19.99 },
      { "sku": "B2", "qty": 1, "price": 29.99 }
    ],
    "total": 69.97
  }
}

Şu şekilde olur:

order:
  id: ORD-456
  items[2]{sku,qty,price}:
    A1,2,19.99
    B2,1,29.99
  total: 69.97

Özellikler

  • İki yönlü dönüşüm JSON ve TOON formatları arasında tam tutarlılık sağlar
  • Önemli token tasarrufu (tekdüze dizilerde JSON’a göre %30‑60 daha az token)
  • Veri yapısını korur iç içe nesneler, diziler ve ilkel değerler dahil
  • Otomatik format algılama ve en uygun kodlama stratejisi
  • İnsan tarafından okunabilir çıktı tekdüze veriler için net tablo yapısı
  • Tip güvenli dönüşüm sayılar, boolean, null ve string değerleri doğru şekilde tutar
  • Köşe durumlarını yönetir boş diziler, iç içe yapılar ve karışık tipler dahil
  • Gerçek zamanlı dönüşüm yazarken anında sonuç verir

Kullanım Alanları

  1. LLM API Optimizasyonu – JSON yüklerini TOON formatına çevirerek GPT, Claude veya diğer LLM’lere gönderirken token maliyetlerini azaltın
  2. Veri Analizi İstemi – LLM analizi için veri setlerini daha verimli kodlayın, böylece bağlam limitleri içinde daha büyük veri setleri kullanılabilir
  3. Yapılandırılmış Veri Üretimi – TOON’u istemlerde kullanarak LLM’lerin tablo verisini JSON’a göre daha verimli üretmesini sağlayın
  4. Log İşleme – Uygulama günlüklerini veya analiz verilerini LLM‑tabanlı analiz ve özetleme için kompakt formata dönüştürün
  5. Yapılandırma Yönetimi – Altyapı yönetimi veya DevOps görevlerinde LLM’leri kullanırken yapılandırma dosyalarını token‑verimli formata çevirin

Token Verimliliği Detayları

TOON, çeşitli iyileştirmeler sayesinde önemli token tasarrufu sağlar:

  • Alan adları tekrarlamaz – Başlıkta bir kez bildirilen alanlar, her nesne için tekrar edilmez
  • Minimum noktalama – Güvenli olduğu sürece gereksiz köşeli parantez, süslü parantez ve tırnak işaretleri kaldırılır
  • Tablo formatı – Tekdüze nesne dizileri için CSV benzeri satırlar kullanılır
  • Ayırıcı esnekliği – Varsayılan virgülün yanı sıra sekme veya boru (pipe) ayırıcıları desteklenir, böylece en iyi tokenizasyon elde edilir

Token Karşılaştırma Örneği (GPT‑5 tokenlayıcı kullanılarak):

  • JSON (biçimlendirilmiş): 100 çalışan kaydı ≈ 49.776 token
  • TOON: Aynı veri ≈ 17.635 token (%64,6 azalma)
  • CSV: ≈ 15.583 token (en kompakt, ancak yapı eksik)

TOON, LLM uygulamaları için kompaktlık ve yapısal bütünlük arasında en iyi dengeyi sunar.

Format Genel Bakışı

Nesneler: Girintili basit anahtar‑değer çiftleri

id: 123
name: Ada
active: true

Diziler: Uzunluk köşeli parantez içinde bildirilir, ilkel diziler satır içinde

tags[3]: reading,gaming,coding

Tablo Dizileri: Tekdüze nesneler, alan başlıklarıyla tablo olarak formatlanır

items[2]{sku,qty,price}:
  A1,2,9.99
  B2,1,14.5

Alıntı Kuralları: Dizeler yalnızca gerektiğinde (ayırıcı, iki nokta üst üste içerdiğinde veya başka bir tipe benzer göründüğünde) tırnak içinde olur

Dönüştürme Notları

JSON’dan TOON’a dönüştürürken:

  • Tekdüze nesne dizileri otomatik olarak tablo formatını kullanır
  • İç içe yapılar doğru girintiyi korur
  • JSON dışı tipler (undefined, fonksiyonlar) null’a dönüştürülür
  • Tarihler ISO stringe çevrilir
  • Sayılar bilimsel gösterimden kaçınır

TOON’dan JSON’a dönüştürürken:

  • Standart JSON formatı 2 boşluk girinti ile üretilir
  • Dizi uzunlukları ve alan tutarlılığı doğrulanır
  • Özel karakterler doğru şekilde kaçış yapılır
  • Tip bilgisi korunur (sayilar, boolean, null)