TOML formatı nedir?

TOML (Tom's Obvious, Minimal Language) açık anlamları sayesinde okunması ve yazılması kolay olacak şekilde tasarlanmış bir yapılandırma dosyası formatıdır. GitHub kurucu ortağı Tom Preston‑Werner tarafından oluşturulan TOML, hash tablosuna açıkça eşlenir ve Rust projelerindeki (Cargo.toml) yapılandırma dosyaları, Python araçları ve birçok başka uygulama için yaygın olarak kullanılır. Köşeli parantezlerle belirtilen bölümler ve INI dosyalarına benzer anahtar‑değer çiftleri içeren net, minimal bir sözdizimi kullanır; ancak diziler, iç içe tablolar, tarih değerleri ve doğru tip işleme gibi daha zengin veri tiplerini destekler.

Araç Açıklaması

Bu dönüştürücü, verileri TOML ve TOON formatları arasında çift yönlü olarak dönüştürür. LLM işleme için token‑verimli TOON formatına TOML yapılandırma dosyalarını dönüştürün veya TOON verisini standart TOML’a geri dönüştürün. Araç, resmi @toon-format/toon ve smol-toml kütüphanelerini kullanarak doğru dönüşüm sağlar. Bu, özellikle LLM’lerle yapılandırma yönetimi görevleri, altyapı‑kod‑olarak senaryoları veya token kısıtlamaları içinde TOML verisini verimli işlemek gerektiğinde faydalıdır.

Örnekler

TOML Girdi:

[database]
server = "192.168.1.1"
ports = [8000, 8001, 8002]
enabled = true

[[servers]]
name = "alpha"
ip = "10.0.0.1"
role = "frontend"

[[servers]]
name = "beta"
ip = "10.0.0.2"
role = "backend"

TOON Çıktı:

database:
  server: 192.168.1.1
  ports: [8000,8001,8002]
  enabled: true
servers[2]{name,ip,role}:
  alpha,10.0.0.1,frontend
  beta,10.0.0.2,backend

Yapılandırma Dosyası Örneği:

TOML yapılandırması iç içe yapılarla:

[app]
name = "MyApp"
version = "1.0.0"

[app.settings]
debug = false
timeout = 30

[[app.features]]
id = 1
name = "feature-a"
enabled = true

[[app.features]]
id = 2
name = "feature-b"
enabled = false

Kompakt TOON hâline dönüşür:

app:
  name: MyApp
  version: 1.0.0
  settings:
    debug: false
    timeout: 30
  features[2]{id,name,enabled}:
    1,feature-a,true
    2,feature-b,false

Özellikler

  • İki yönlü dönüşüm TOML ve TOON formatları arasında tam doğrulukla
  • Token azaltma LLM işleme için (yapılandırılmış dosyalarda %30‑50 daha az token)
  • TOML sözdizimini korur tablolar, tablo dizileri ve iç içe yapılar dahil
  • Tip güvenli dönüşüm tamsayılar, ondalık sayılar, boolean, string ve dizileri korur
  • Gerçek zamanlı dönüşüm yazarken anında sonuç verir

Kullanım Durumları

  1. LLM'lerle Yapılandırma Analizi – TOML yapılandırma dosyalarını LLM'lere göndermeden önce TOON formatına dönüştürün; analiz, öneri veya dokümantasyon üretiminde token maliyetlerini azaltın
  2. Kod olarak Altyapı İşleme – Terraform, Cargo veya diğer TOML‑tabanlı yapılandırmaları verimli LLM‑tabanlı altyapı incelemeleri ve değişiklikler için dönüştürün
  3. CI/CD Yapılandırma Yönetimi – Derleme yapılandırma dosyalarını LLM'ler aracılığıyla işleyerek optimizasyon veya taşıma yapın ve API maliyetlerini en aza indirin
  4. Ayar Göçü – LLM destekli yapılandırma yönetim araçlarıyla entegrasyon sırasında uygulama ayarlarını formatlar arasında dönüştürün
  5. Dokümantasyon Oluşturma – Token verimli kodlama kullanarak TOML yapılandırmalarını LLM‑tabanlı dokümantasyon yazarları için hazırlayın

Dönüşüm Detayları

Dönüştürücü, TOML‑özel özellikleri uygun şekilde ele alır:

  • Tablolar ([section]) TOON’da girintili iç içe nesnelere dönüştürülür
  • Tablo dizileri ([[array]]) uniform olduğunda TOON’un tablo biçimine dönüştürülür
  • Satır içi tablolar ({key = value}) doğru iç içe yapı korunarak aktarılır
  • Veri tipleri (string, integer, float, boolean, dates) tip güvenliği sağlanır
  • Diziler TOON dizi gösterimiyle uygun biçimde dönüştürülür
  • Noktalı anahtarlar (a.b.c = value) iç içe yapıya genişletilir

Token Verimliliği

LLM işleme öncesinde TOML’u TOON’a dönüştürmek önemli tasarruf sağlar:

Örnek Token Karşılaştırması (50 sunucu yapılandırması):

  • TOML (formatlı): ≈ 12.500 token
  • TOON: ≈ 7.200 token (%42 azalma)
  • TOON avantajı: Bağlam penceresinde daha fazla veri, daha düşük API maliyetleri

Tasarruflar özellikle şu durumlarda belirgindir:

  • Tekrarlanan tablo yapıları (ör. [[servers]], [[databases]])
  • Benzer yapılandırma nesnelerinin dizileri
  • Büyük yapılandırma dosyaları, tutarlı bölümlerle
  • Çok ortamlı yapılandırmalar, benzer yapı ile

Format Uyumluluğu

Desteklenen TOML Özellikleri:

  • Temel anahtar‑değer çiftleri
  • Tablolar ve iç içe tablolar
  • Tablo dizileri
  • Satır içi tablolar ve diziler
  • Tüm TOML veri tipleri (string, integer, float, boolean, datetime, array, table)
  • Yorumlar (yapıda korunur, ancak TOON temsili içinde yer almaz)

Yuvarlak Dönüş Güvenilirliği:
TOML → TOON → TOML dönüşümü veri bütünlüğünü korur; ancak biçimlendirme ve yorumlar normalleştirilebilir. Anlam ve tüm değerler korunur.

Bu Dönüştürücüyü Ne Zaman Kullanmalısınız

TOML → TOON kullanın şu durumlarda:

  • Yapılandırma dosyalarını analiz veya değişiklik için LLM'lere gönderirken
  • Token limitleri içinde büyük TOML yapılandırmalarını işlerken
  • Birden fazla yapılandırma