jsonl-cc
LLM ajan transkriptleri ve yapılandırılmış loglar için sıfırdan yazılmış, yapı-farkında kayıpsız bir JSONL sıkıştırıcı. Tek bir Rust binary’si (vsk) olarak çalışır ve her çıktı tasarım gereği bayt-birebir’dir.
Proje Hakkında
Genel amaçlı sıkıştırıcılar, LLM çağının ürettiği yapılandırılmış verinin (ajan transkriptleri, API logları) yapısını görmez. jsonl-cc bu boşluğu doldurmak için JSONL’in kayıt/kolon yapısını anlayan, çekirdeği sıkıştırma kütüphaneleri kullanılmadan elle yazılmış bir kodlayıcıdır.
Dürüst başlık: sentetik transkript verisinde genel sıkıştırıcıları ~%25 geçiyor; ancak kendi gerçek Claude transkriptlerimde brotli ile pratikte başa baş (+%0,35). Bunun nedenini araştırdım (gerçek transkript metni ~%99 yüksek-entropili düz yazı ve brotli’nin penceresi bunu zaten yakalıyor) ve asıl çift haneli kazancın yapılandırılmış/log verisinde olduğunu gösterdim. Kendime göre ayarladığım bir benchmark yerine dürüst sonucu göstermeyi tercih ettim.
Sıfırdan Yazılanlar
Aritmetik kodlayıcı
Taşımasız (carryless) range coder, lpaq tarzı. Tamamen tamsayı ve deterministik.
Bağlam karıştırma (PAQ-sınıfı)
order 0..6 bayt bağlamları, kelime / kelime-bigram modelleri, bir eşleşme modeli, lojistik karıştırma ve iki SSE/APM iyileştirme aşaması.
BWT hattı
Sonek dizisi (suffix array) ile Burrows–Wheeler dönüşümü; klasik MTF+RLE yerine özel post-BWT modeller (çalışma-uzunluğu çarpanlama + uyarlanır sayım azalmalı order 0/1/2/3 bağlamları).
JSONL için sütunlu dönüşüm
Kayıtlar tipli sütunlara aktarılır (etiket / int / float / string / iç içe json); zigzag+delta varint tamsayılar, paketlenmiş UUID'ler, sözlük tabanlı string kodlama ve kayıt-şekli sözlüğü. Sayı ve metin ayrı akışlara yönlendirilir.
Yapısal doğruluk
Kayıpsız sıkıştırıcı ancak veriyi hiç bozmuyorsa işe yarar; doğruluk tasarım gereği garanti altına alınmıştır (her çıktı bayt-birebir roundtrip).
Sonuçlar
Gerçek Claude transkriptleri — 6 dosya, ~25 MB, 0 istisna, bayt-birebir:
| Toplam bayt | brotli-11 | bz2-9 | vsk |
|---|---|---|---|
| 25.290.419 | 9.555.952 | 11.042.413 | 9.522.899 |
→ gerçek transkriptlerde brotli ile pratikte başa baş (metnin çoğu opak düz yazı).
Sentetik yapılandırılmış loglar (sütunlu dönüşümün işe yaradığı yer):
| 16 MB API log | brotli-11 | xz-9e | zstd-22 | vsk |
|---|---|---|---|---|
| bayt | 2.042.364 | 1.998.400 | 2.109.336 | 1.505.939 |
→ veri gerçekten yapılandırılmışken brotli’den ~%26 daha küçük.
Kullanılan Teknolojiler
Kod tamamen açık
jsonl-cc açık kaynak olarak GitHub’da yayımlanmıştır. Kaynak kodu inceleyebilir, derleyebilir ve katkıda bulunabilirsiniz.