1 puan yazan doolayer 2025-08-20 | 2 yorum | WhatsApp'ta paylaş

Merhaba!

Yapay zeka modellerini kullanırken yapılandırılmış JSON çıktısına gerçekten ihtiyaç duyulan pek çok durum oluyor.
Ben de çeşitli projeler yürütürken JSON çıktısını kullanmam gereken durumlarla sık sık karşılaştım ve her seferinde aynı zorlukları yaşadım.

LLM yapılandırılmış çıktısındaki başlıca 3 sorun şunlardı:

  1. Kod bloğu(````json … ``` ) işleme
    Çoğu LLM, JSON döndürürken üç adet backtick ve json anahtar kelimesiyle sarılmış bir kod bloğu kullanır.
    Basit bir regex ile de işlenebilir ama bunu her seferinde tekrarlamak yorucu oluyor. Paket seviyesinde tek satırda çözülebilse çok daha kullanışlı.

  2. İç içe tırnak işareti sorunu
    JSON'da string'lerin çift tırnak(") ile çevrelenmesi gerekir. Ancak string içinde tekrar alıntı işareti geçtiğinde \" gibi escape kullanımı gerekir.
    LLM'ler bu ayrımı sık sık kaçırıp hatalı JSON döndürüyor. Bu sorunu otomatik olarak düzelten bir işlev gerekiyordu.

  3. Akıllı tırnaklar (Unicode tırnak işaretleri)
    LLM'in ürettiği cümlelerde sıkça “ ” gibi akıllı tırnaklar bulunur.
    Bunlar JSON standardına uygun olmadığından, bunları normal çift tırnağa(") topluca dönüştürebilmek gerekiyor.

Araştırınca Node.js tabanlı ai-json-fixer projesinin var olduğunu gördüm, ancak Python ekosisteminde buna uygun bir araç yoktu.

Bu yüzden ben yaptım! (GPT hocayla birlikte :) )
pip ile kolayca kurup kullanabilirsiniz.
pip install jsonquotefixer

Bir deneyip bol bol eleştirin :)

2 yorum

 
onandon 2025-08-26

Örneklerin GitHub'da ipynb olarak iyi görüntülenmesi güzel olurdu

 
doolayer 2025-08-20

Zaman sıralaması n'dir (sekans uzunluğu)!