Tablo2SQL-TR Kullanım Kılavuzu

PDF’teki tablolara Türkçe soru sormanın en kısa yolu

Bu yazılım nedir, ne işe yarar?

Tablo2SQL-TR, Türkçe PDF ve HTML belgelerindeki tabloları okuyup düzenli bir veritabanına dönüştüren ve bu veritabanına günlük Türkçeyle soru sormanızı sağlayan, kendi bilgisayarınızda çalışan ve tarayıcıda açılan bir uygulamadır. SQL, Excel formülü ya da programlama bilmeniz gerekmez. Sorunuzu yazarsınız, cevabı tablodaki gerçek değerlerden alırsınız.

Kısaca: raporların içinde kilitli kalan sayıları, sorulabilir bilgiye dönüştürür.

Neden böyle bir yazılıma ihtiyaç var?

Kamu kurumları, belediyeler ve şirketler bilgilerinin büyük kısmını PDF raporlarla yayımlar: faaliyet raporları, bütçe gerçekleşme tabloları, finansal tablolar, istatistik bültenleri, ücret tarifeleri. Bu belgelerdeki bilgiye ulaşmak bugün hâlâ büyük ölçüde elle yapılan bir iştir.

Bir örnek: Elinizde 80 sayfalık bir belediye faaliyet raporu var. Size sorulan soru basit: “2024’te personel giderleri bütçesinin yüzde kaçı gerçekleşti?” Cevap raporun bir yerindeki bir tabloda duruyor. Ama:

Bunu Excel’e kopyalamayı deneyen herkes sonucu bilir: kaymış sütunlar, metin olarak kalmış sayılar, saatlerce düzeltme. Genel amaçlı yapay zekâ sohbet araçları ise bu tür sorulara çoğu zaman emin görünen ama uydurulmuş sayılarla cevap verir. Cevabın nereden geldiğini de göstermez.

Ölçtük: aynı tablolar Türkçe sayı biçimi dikkate alınmadan veritabanına aktarıldığında, sorgular kusursuz olsa bile cevapların yaklaşık dörtte üçü bozuluyor. Tablo2SQL-TR tam olarak bu boşluğu doldurmak için geliştirildi.

Ne yapar?

Tablo2SQL-TR işi üç adıma indirir:

  1. Çıkar. PDF/HTML belgelerdeki tabloları bulur, birleşik hücreleri ve çok satırlı başlıkları çözer.
  2. Aktar. Türkçe sayı, tarih ve birimleri doğru tiplere çevirip tabloları bir SQLite veritabanına yazar. “Toplam” satırlarını işaretler, birimleri saklar.
  3. Sor. Türkçe sorunuzu SQL’e çevirir, sonucu çalıştırır, hatalıysa kendini düzeltir. Cevap tablolarda yoksa uydurmaz; “bu bilgi tablolarda yok” der.

Oluşturulan veritabanını Excel, CSV, SQLite veya SQL dökümü olarak indirip başka araçlarda da kullanabilirsiniz.

Kimler için?

Onu farklı kılan ne?

Ne değildir?

Bu kılavuz hakkında

Kılavuz uygulamayı ilk açılıştan ileri kullanıma kadar adım adım anlatıyor. Yapay zekâ (AI) olmadan da her şey çalışır. Claude, OpenAI ya da yerel Ollama bağladığınızda uygulamanın neredeyse her köşesi akıllanır.

Ekran görüntüleri hakkında: AI’lı ekran görüntüleri, gerçek API’leri taklit eden bir test sunucusuyla alındı. Bu yüzden AI metinleri [MOCK] ile başlıyor. Gerçek bir modelle cümleler farklı (ve daha zengin) olacaktır.


1. Beş dakikada başlangıç

Kurulum

Projeyi indirip klasörü açın. İşletim sisteminize uygun başlatıcıya çift tıklayın:

Sistem Dosya Not
Windows baslat.bat SmartScreen uyarısında Ek bilgi → Yine de çalıştır
macOS baslat.command İlk seferde sağ tık → Aç (Gatekeeper)
Linux baslat.sh Gerekirse chmod +x baslat.sh

Başlatıcı şunları kendisi halleder:

İlk açılış paket kurulumu yüzünden birkaç dakika sürebilir. Sonraki açılışlar saniyeler içinde gerçekleşir.

İlk bakış

Uygulamanın ilk açılışı: solda ayarlar, sağda beş adımlı sekmeler

Ekran iki parçadan oluşur:

Uygulama altı sentetik örnek belgeyle gelir: belediye faaliyet raporu, il enerji tüketimi, şirket finansal raporu, su istatistikleri, fiyat endeksi bülteni ve ücret tarifesi. Bilgi tabanı bunlarla dolu başlar, yani hiçbir şey yüklemeden doğrudan ③ sekmesinde soru sorabilirsiniz.


2. Kenar çubuğu turu

Kenar çubuğu

Dil / Tema. Türkçe ⇄ English ve Aydınlık ⇄ Karanlık. Seçimleriniz hatırlanır.

Yapay zekâ. En üstte üç sağlayıcının durumu görünür (Ollama, OpenAI, Claude: Bağlı · N model ya da Bağlı değil). 🔌 Model bağlantıları düğmesi bağlantı panelini açar (bkz. Bölüm 6). Varsayılan model listesinde kural tabanlı motorla birlikte bağlı sağlayıcıların senkronize edilmiş bütün modelleri bulunur. Seçtiğiniz model, kendi seçimi olmayan her sekmede kullanılır. Altındaki rozet AI’nın açık mı kapalı mı olduğunu ve oturumdaki kullanım sayacını gösterir. “AI kullanılan yerler” kutusu, AI’nın uygulamada nelere dokunduğunu listeler.

Ajan.

Son iki anahtar yalnızca bir AI sağlayıcı seçiliyken etkindir.

Bilgi tabanı. Kaç tablo olduğu ve veritabanı dosyasının yeri görünür. Örneklerle sıfırla, Boşalt ve dört biçimde indirme düğmeleri buradadır.



3. Adım ①: Belgeyi yükle, tabloları çıkar

  1. PDF, HTML, CSV veya XLSX dosyanızı sürükleyip bırakın ya da örnek belgelerden birini seçin.
  2. PDF çıkarıcı seçin:
  3. Sayı ayrıştırma kipini seçin:
  4. 🔍 Tabloları çıkar’a basın.

Her tablo için açılan kutuda ham ızgarayı görürsünüz. Birleşik hücreler renkle vurgulanır, yanında çözümlenmiş başlıklar, her sütunun tipi ve birimi, oluşacak şema yer alır:

Ham ızgara: birleşik başlık hücreleri vurgulanmış, altında çözümlenmiş sütunlar

Bu ekranda nelere dikkat etmeli?

Her şey yolundaysa ⬇️ Tümünü veritabanına aktar’a basın. Aynı belgeyi ikinci kez aktarırsanız eski kopyası silinip yenisi yazılır, yani tablolar çoğalmaz.

Aktarım sonrası: başarı mesajı ve tek tabloyu indirme düğmeleri

4. Adım ②: Bilgi tabanı ve indirme

Bilgi tabanı sekmesi: tablolar, şema ve dışa aktarma düğmeleri

Bu sekmede veritabanındaki her tablonun kaynağını, sütunlarını, tiplerini, birimlerini ve verisini görürsünüz. Modele gönderilen şema açıklaması da buradadır. AI etkinse buna tablo özeti ve sütun açıklamaları eklenir.

SQL biliyorsanız SQL konsolu (salt okunur) ile kendi SELECT sorgularınızı da çalıştırabilirsiniz. Konsol veritabanını değiştiren hiçbir komutu kabul etmez.

Veritabanını indirme. İşini bitirdiğiniz bilgi tabanını dört biçimde dışarı alabilirsiniz:

Biçim Ne zaman?
SQLite (.db) DB Browser, DBeaver, Python veya R ile çalışmak için. Meta tablolar (_tablolar, _sutunlar) dahil.
Excel (.xlsx) Her tablo ayrı bir sayfada. Sayılar gerçek sayı olarak gelir, metin değil.
CSV (.zip) Her tablo bir CSV. UTF-8 BOM ile kaydedilir, Excel’de Türkçe karakterler bozulmaz.
SQL dökümü (.sql) Başka bir veritabanına yüklemek ya da sürüm kontrolüne koymak için.

İpucu: Excel’de 1.234,56 gibi görünen bir değer aslında 1234.56 sayısıdır. Türkçe bölge ayarlarında Excel onu doğru gösterir. Toplama ve formüllerde sorun çıkmaz.


5. Adım ③: Soru sorun

③ sekmesine geçip sorunuzu yazın. Örnek:

İzmir’in 2024 elektrik tüketimi ne kadar?

Soru-cevap: cevap, üretilen SQL ve açılmış ajan adımları

Her cevabın üstünde küçük rozetler vardır: durum (cevaplandı / cevapsız), deneme sayısı, kullanılan motor ve süre. Altında üretilen SQL görünür. Ajan adımları kutusunu açtığınızda sistemin ne yaptığını adım adım izlersiniz:

  1. 🧭 Şema bağlama: soruyla ilgili tablolar seçilir.
  2. ✍️ Deneme N: aday SQL: SQL üretilir.
  3. 🔎 Statik denetim: SQL çalıştırılmadan önce tipik hatalar aranır. Örneğin '15.03.2025' gibi Türkçe bir tarih, '1.234,56' gibi bir sayı ya da şemada olmayan bir sütun.
  4. ▶️ Yürütme: SQL salt-okunur bağlantıyla çalıştırılır. Veritabanınız asla değişmez.
  5. 🔁 Geri besleme: hata varsa türü ve çözüm önerisi bir sonraki denemeye verilir.
  6. ✅ Sonuç veya 🚫 Cevapsız.

“Bu bilgi tablolarda yok”

Bu sistemin en önemli özelliği belki de bilmediğini söylemesi. Örnek belgelerde Mersin yok:

Cevapsız soru: sistem uydurmak yerine bilginin tablolarda olmadığını söylüyor

Sistem sorudaki değeri (“Mersin”) veritabanında arar. Bulamazsa ya da sorgu boş dönerse sayı uydurmaz, nedenini de söyleyerek reddeder. Test kümesindeki cevapsız soruların %90,9’unu doğru reddeder. Cevaplanabilir sorularda yanlış alarm oranı ise %5,7’dir.

İyi soru sormanın püf noktaları


6. Yapay zekâyı açmak

AI olmadan da uygulama tam çalışır. Kural tabanlı motor test kümesinde %92,9 doğruluğa ulaşır. AI’yı açmak ise şunları getirir:

Model bağlantıları paneli

Kenar çubuğundaki 🔌 Model bağlantıları düğmesi, üç sağlayıcıyı tek yerde yöneten paneli açar:

Model bağlantıları paneli: Ollama, OpenAI ve Claude kartları

Sağlayıcı Gerekli Veri nereye gider? Maliyet
Ollama (yerel) Ollama kurulu ve çalışıyor Bilgisayarınızdan çıkmaz Ücretsiz
OpenAI (bulut) API anahtarı (+ isteğe bağlı sunucu adresi) OpenAI ya da seçtiğiniz OpenAI uyumlu sunucu (OpenRouter, vLLM, LM Studio…) Kullanım başına
Claude (bulut) API anahtarı Anthropic API Kullanım başına

Bulut sağlayıcıyı bağlamak. Anahtarı API anahtarı kutusuna yapıştırıp Kaydet ve senkronize et’e basın. Uygulama anahtarı kaydeder ve sağlayıcının API’sinden kullanılabilir modelleri hemen çeker. Kart Bağlı · N model olur ve kayıtlı anahtarın yalnızca maskelenmiş hâli görünür (ör. sk-…F1cA). Anahtar al ↗ bağlantısı sağlayıcının anahtar sayfasını açar. OpenAI uyumlu başka bir sunucu kullanacaksanız Sunucu adresi (isteğe bağlı) alanına adresini yazın. Bağlantıyı kes anahtarı ve model listesini siler; o sağlayıcıya ait model seçimleri kural tabanlı motora döner.

Model listesi kendiliğinden güncellenir. Model adını hiçbir yerde elle yazmazsınız. Uygulama her açılışta bağlı sağlayıcıları denetler; liste boşsa ya da 12 saatten eskiyse yeniden senkronize eder. İsterseniz Modelleri senkronize et ile hemen yenileyebilirsiniz. Modelleri göster listesi o an kullanılabilen modelleri gösterir.

Ardından kenar çubuğundaki 🔌 Bağlantıyı test et ile tek küçük bir istek göndererek her şeyin çalıştığını doğrulayabilirsiniz.

Her sekmede ayrı model. Her sekmenin başında Bu sekmedeki model seçicisi vardır. Varsayılan olarak kenar çubuğundaki model kullanılır; örneğin tablo önerileri için hızlı ve ucuz bir model, soru sormak için daha güçlü bir model seçebilirsiniz.

Ayar dosyası. Bütün ayarlar (API anahtarları, Ollama adresi ve aygıtı, dil, tema, model ve sekme seçimleri) uygulama klasöründeki ayarlar/tablo2sql-ayarlar.json dosyasında tutulur. Başka bir bilgisayara taşımak için dosyayı oradaki uygulama klasöründe aynı yere kopyalayın ya da paneldeki Ayar dosyasını indir ve Ayar dosyası yükle… düğmelerini kullanın. Dosya anahtarlarınızı düz metin olarak içerir: paylaşmayın, e-postayla göndermeyin. Anahtarı bu dosya yerine .env dosyasına (ANTHROPIC_API_KEY, OPENAI_API_KEY) yazarsanız uygulama onu da okur; kartta “(ortam değişkeni)” notu görünür.

Ollama: tamamen yerel ve ücretsiz

  1. ollama.com adresinden Ollama’yı kurun ve çalıştırın. Uygulama http://localhost:11434 adresini kendiliğinden dener; farklı bir adres için Sunucu adresini değiştir’i kullanın.
  2. Hiç modeliniz yoksa Hangi Ollama modeli? bölümünü açın. Text-to-SQL için önerilen modeller boyut ve bellek gereksinimleriyle listelenir; kurulu olanların yanında ✓ vardır. Birini seçip ⬇️ Model indir’e basın. İlerleme çubuğu uygulamanın içinde görünür, terminale gerek yoktur.
  3. Hesaplama aygıtını seçin: Bu seçim varsayılandır; Değerlendirme sekmesinde her çalıştırma için ayrıca değiştirilebilir. Bulut modellerini etkilemez.

Ollama kartı: hesaplama aygıtı, önerilen modeller ve indirme

Hangi modeli seçmeli? Başlangıç için qwen2.5-coder:7b (yaklaşık 4,7 GB, 8 GB bellekte çalışır). Ekran kartınızda 16 GB varsa qwen2.5-coder:14b ya da gpt-oss:20b belirgin biçimde daha isabetlidir. Türkçe ağırlıklı serbest sorular için gemma3:12b ya da qwen3:8b denenebilir. Hangisinin sizin belgelerinizde daha iyi olduğunu Değerlendirme sekmesindeki Model karşılaştırma ile ölçebilirsiniz (Bölüm 8).

AI açıkken neler değişir?

Kenar çubuğundaki “AI kullanılan yerler” kutusunun özeti:

① Çıkarım: AI önerileri. Her tablo için:

Önerileri uygulamak isteğe bağlıdır. Bunu “AI önerilerini aktarırken uygula” anahtarı belirler. Deterministik çıkarım her zaman birincil kaynaktır. Uygulanan özet ve açıklamalar şemaya eklenir, bu da SQL üretimine doğrudan yardım eder.

AI önerileri sekmesi: tablo adı, özet, sütun açıklamaları ve uyarılar

③ Soru sor: soru önerileri. AI, veritabanınızdaki gerçek değerleri kullanarak sorulabilecek soruları önerir. Bir öneriye tıklamak soruyu doğrudan sorar. Yeni öneriler için yanındaki yenile düğmesini kullanın.

AI’ın veritabanına göre önerdiği sorular

③ Soru sor: kendini düzelten SQL. Aşağıdaki örnekte model ilk denemede tarihi Türkçe yazdı ('15.03.2025'). Statik denetim bunu TARIH_BICIMI hatası olarak yakaladı ve “tarihler ISO biçiminde saklanır” önerisini geri besledi. İkinci denemede sorgu doğru çalıştı:

Kendini düzeltme: 1. denemede tarih biçimi hatası, 2. denemede doğru SQL

Diğer AI özellikleri:

Maliyet kontrolü. Kenar çubuğundaki sayaç, oturumda yapılan istek ve token sayısını gösterir. AI yanıtları diskte önbelleğe alınır. Aynı tablo ya da hata için ikinci kez ödeme yapmazsınız.

Gizlilik: AI’a ne gönderiliyor?

Bulut sağlayıcı (Claude/OpenAI) seçtiğinizde aşağıdaki veriler o sağlayıcıya gider:

Özellik Gönderilen
SQL üretimi Soru + şema: tablo/sütun adları, açıklamalar, metin sütunu başına en çok 25 farklı değer ve örnek değerler
Tablo önerileri Tablo başlığı, sütun bilgileri, ilk 5 satır
Cevap cümleleştirme Soru, SQL ve sonucun ilk 20 satırı
Hata açıklama Hata kaydı: soru, SQL, hata mesajı
Değerlendirme analizi Başarısız örneklerin soru/SQL/cevap bilgisi

Gizli belgelerle çalışıyorsanız Ollama kullanın. Veri bilgisayarınızdan çıkmaz.


7. Adım ④: Hata kataloğu

Sistemin yaptığı her hata türüyle birlikte kaydedilir. Bu sekme o kayıtları kartlar halinde gösterir:

Hata kataloğu: tür dağılımı ve hata kartları
Tür Anlamı Tipik örnek
SEMA_ESLEME Olmayan tablo/sütun tuketim_2024 yerine tuketim
DEGER_ESLEME Değer veritabanında farklı yazılmış “izmir” ↔︎ “İzmir”, “Istanbul” ↔︎ “İstanbul”
BIRIM Birim karışıklığı “milyon TL” sorusuna “bin TL” cevap
TARIH_BICIMI Türkçe tarih yazımı '15.03.2025' yerine '2025-03-15'
SAYI_BICIMI Türkçe sayı yazımı '1.234,56' metin olarak karşılaştırılmış
SAYISAL_AKIL Hesap hatası Yüzde değişimde yanlış payda, “Toplam” satırının çift sayılması
SOZDIZIMI / YURUTME SQL çalışmadı Eksik parantez, yanlış fonksiyon
BOS_SONUC Sorgu boş döndü Filtre değeri hatalı
CEVAPSIZLIK Cevapsızlık kararı yanlış Cevabı olan soruyu reddetme ya da tersi

AI etkinse her kartta 🤖 Bu hatayı AI ile açıkla düğmesi çıkar. Üç kısa başlıkla açıklama alırsınız: Ne oldu? Neden oldu? Nasıl düzeltilir?

AI hata açıklaması

8. Adım ⑤: Değerlendirme (araştırmacılar için)

Bu sekme sistemi TR-TabloSQL test kümesinde ölçer. Küme 99 sorudan oluşur: 64’ü geliştirme, 35’i ayrılmış test, 11’i cevapsız soru, toplam 20 kategori. Ölçüt yürütme doğruluğudur (EX). Üretilen SQL’in sonucu, altın SQL’in sonucuyla küçük bir sayısal tolerans içinde karşılaştırılır.

Değerlendirme: özet metrikler ve yalnızca yanlışların listesi

Model karşılaştırma: LLM’leri ağır test kümesinde ölçmek

Sekmenin başındaki Model karşılaştırma bölümü, birden çok modeli aynı soru kümesinde yan yana ölçer. Burada doğruluk altın SQL’le değil, beklenen cevapla ölçülür; bu yüzden gerçek belgeleriniz için de kullanılabilir.

Model karşılaştırma: küme, modeller, seviyelere göre doğruluk ve yanlış cevaplar

Ekran görüntüsü test sunucusuyla alınmıştır; “mock” modellerin sonuçları gerçek model başarımını göstermez.

  1. Test kümesi seçin:
  2. Karşılaştırılacak modelleri seçin. Kural tabanlı motor taban çizgisi olarak eklenebilir. Ollama modeli seçildiyse bu çalıştırmanın hesaplama aygıtını da seçebilirsiniz.
  3. Maliyeti denetlemek için Soru sınırı girin (0 = tümü). Bölüm, model başına yaklaşık belirteç kullanımını gösterir.
  4. ▶ Karşılaştırmayı çalıştır. Sonuçlar kaydedilir; aynı kümedeki önceki çalıştırmalar tabloda yan yana kalır.

Ağır kümedeki soruların beş seviyesi vardır:

Seviye Ne ölçer? Örnek
L1 Tek değer okuma “Akköprü Belediyesinde 2024 yılında Emek Mahallesinin nüfusu ne kadardır?”
L2 Toplama, filtre, sıralama, birim dönüşümü (toplam satırı tuzağı dahil) “… tüm gider türleri için toplam ödenek ne kadardır?”
L3 Çok adımlı hesap: oran, yüzde değişim, pay, sıra, ikinci en yüksek “… nüfusu 2023’ten 2024’e en fazla oranda artan mahalle hangisidir?”
L4 Belgeler arası: kurum karşılaştırma, farklı birimdeki tutarların farkı “2024 yılında Yeşilvadi ile Bademli arasında toplam gerçekleşme farkı kaç TL’dir?”
L5 Tuzak ve cevapsız: başka kurumda olan varlık, olmayan yıl, kurum ya da gösterge “Kartaltepe Belediyesinde Orhangazi Mahallesinin nüfusu ne kadardır?” (Orhangazi başka belediyede)

Soruların yaklaşık %20’si İngilizce, Türkçe karaktersiz (kayali ilcesinin nufusu) ya da yazım hatalıdır. Tabloda Doğruluk %, seviye başına doğruluk, Cevapsız→red % ve Sessiz yanlış % (sistemin emin görünüp yanlış cevap verdiği soruların oranı) yer alır. Kural tabanlı motorun bu kümedeki doğruluğu %13’tür; bu bilinçli bir tasarımdır, küme LLM’ler arasındaki farkı görünür kılmak için hazırlanmıştır.

Komut satırından da çalıştırılabilir:

python pilot/pilot_calistir.py --kume agir_hizli --claude          # en yeni Claude modeli
python pilot/pilot_calistir.py --kume agir --ollama qwen2.5-coder:7b --cihaz gpu --sinir 100

Anahtar ve adresler ayar dosyasından okunur. Kümeyi yeniden ya da daha büyük üretmek için: python agir_kume/uret.py --tekrar 6.


9. Dil ve tema

Arayüz baştan sona Türkçe ve İngilizce kullanılabilir. Dil değiştiğinde menüler, ajan adımları, hata açıklamaları ve sayı biçimleri (1.234,56 ⇄ 1,234.56) de değişir. AI yanıtları seçili dilde gelir. Veritabanı içeriği ise belgenin dilinde (Türkçe) kalır.

Karanlık tema uzun çalışma oturumları için:

Karanlık tema

Dil, tema, sağlayıcı ve model seçimleriniz outputs/.arayuz_ayarlari.json dosyasında saklanır ve bir sonraki açılışta geri yüklenir. API anahtarları bu dosyaya yazılmaz.


10. Sık sorulanlar ve sorun giderme

“Python bulunamadı” diyor. Başlatıcı kurmayı önerir. Olmazsa python.org adresinden 3.10 veya üstünü kurun. Windows’ta kurulumda “Add python.exe to PATH” kutusunu işaretleyin.

Tarayıcı açılmadı / port meşgul. Başlatıcı 8501’den başlayarak boş port arar. Adres terminal penceresinde yazar, örneğin http://localhost:8502. Belirli bir port için python scripts/baslat.py --port 8600 kullanın.

PDF’imde hiç tablo bulunamadı. - Belge taranmış (resim) olabilir. Bu durumda önce bir OCR aracıyla metin katmanı ekleyin (örneğin ocrmypdf). - Tablonun çizgileri yoksa çıkarıcıyı camelot-stream yapın.

Sayılar metin olarak kaldı. Sayı ayrıştırma kipinin tr olduğundan emin olun. Ham ızgarada “ayrıştırılamayan” uyarısı varsa o hücrelerde alışılmadık bir yazım vardır (örn. 1 234,5 veya —).

Model listesi boş geliyor. - Claude/OpenAI: anahtar yanlış olabilir (401). Model bağlantıları panelindeki kart hata mesajını gösterir; anahtarı yeniden kaydedip Modelleri senkronize et’e basın. - Kurumsal ağ: proxy, API adresini engelliyor olabilir. - Ollama: Ollama çalışıyor mu? ollama list komutunu deneyin. Varsayılan adres http://localhost:11434’tür; farklıysa Ollama kartındaki Sunucu adresini değiştir bölümünü kullanın. Uygulama Docker içinde çalışıyorsa adres genellikle http://host.docker.internal:11434 olur.

GPU seçtim, model açılmıyor. Ekran kartının belleği modele yetmiyordur. Aygıtı Otomatik yapın ya da daha küçük bir model seçin.

İngilizce sorduğum soruyu anlamadı. Kural tabanlı motor Türkçe sorular için tasarlandı. İngilizce sorular için bir AI sağlayıcı açın.

Cevap yanlış ama sistem emin görünüyor. Ajan adımlarını açıp üretilen SQL’e bakın. Çoğu zaman sorudaki ifade ile tablo adı arasında bir eşleme sorunu vardır. AI etkinse hata kataloğundaki açıklama da yol gösterir. Arayüzde sorulan sorulardaki hatalar outputs/arayuz_hatalari.jsonl dosyasına, değerlendirmedeki hatalar outputs/hata_gunlugu.jsonl dosyasına yazılır. Bu kayıtlar iyi bir hata raporu olur.


11. Komut satırı (ileri kullanım)

Tüm deneyler arayüz olmadan da çalıştırılabilir. Sanal ortamın Python’unu kullanın: Windows’ta .venv\Scripts\python, diğerlerinde .venv/bin/python.

# Uçtan uca: örnek belgeler → veritabanları → test kümesi → değerlendirme → HTML rapor
python scripts/run_all.py
python scripts/run_all.py --hizli              # yalnızca tr kipi
python scripts/run_all.py --claude             # + Claude (model otomatik seçilir)
python scripts/run_all.py --openai gpt-4o-mini # + belirli bir OpenAI modeli
python scripts/run_all.py --ollama             # + kurulu ilk Ollama modeli

python scripts/hata_enjeksiyonu.py   # 159 bozulmayla hata kataloğunun yakalama oranı
python scripts/makale_sayilari.py    # makaledeki tüm sayılar ve güven aralıkları

python -m pytest tests/ -q           # 60 test

python agir_kume/uret.py             # ağır LLM test kümesini üretir (52 belge, 767 soru)
python pilot/pilot_calistir.py --kume agir_hizli --ollama qwen2.5-coder:7b   # bir modeli ölç

# AI özelliklerini anahtarsız denemek için test sunucusu
python tests/mock_llm_server.py      # Anthropic/OpenAI/Ollama API'lerini taklit eder (port 8765)
# Uygulamada: Model bağlantıları → Ollama adresi http://localhost:8765,
#   OpenAI sunucu adresi http://localhost:8765/v1 ve anahtar "test"
#   (Claude için .env: ANTHROPIC_BASE_URL=http://localhost:8765  ANTHROPIC_API_KEY=test)

Sonuçlar outputs/ klasörüne yazılır:


Tablo2SQL-TR açık bir araştırma prototipidir. Örnek belgeler sentetiktir ve gerçek kurumları temsil etmez. Önemli kararlarda cevabı her zaman kaynak tabloyla karşılaştırın. Bunun için ajan adımlarındaki SQL ve sonuç satırları elinizin altındadır.