Türkçe LLM & RAG Test Çerçevesi Bitirme Tezi Projesi

Türkçe LLM Uygulamaları İçin
Black-Box Test Kütüphanesi

Türkçe'nin zengin sondan eklemeli morfolojisini anlayan, deterministik olmayan LLM yanıtlarındaki Test Oracle problemini aşan ve güvenlik açıklarını denetleyen açık kaynaklı test altyapısı.

$ pip install morphtr
Canlı Simülasyonu Dene
3+ Temel Test Katmanı
12+ Türkçe Morfolojik İlişki
%100 Black-Box & Oracle-Free
morphtr-runner --target=rag_pipeline --lang=tr
LIVE TEST RUN
# 1. Kaynak İstem (Source Prompt)
GİRDİ A: "Marmara Bölgesi'ndeki sanayi kuruluşlarının dağılımı nasıldır?"
# 2. Türkçe Morfolojik Metamorphic Dönüşüm (Invariance MR)
GİRDİ B (MR-1): "Sanayi kuruluşları Marmara Bölgesi'nde nasıl dağılmaktadır?" [Devrik + Fiilimsi Dönüşümü]
# 3. Black-Box LLM Yürütme & Yanıt Analizi
ORACLE TESTİ Semantik Çelişki Yok (Semantic Invariance: 0.96)
LLM JUDGE Bağlamsal Sadakat (Context Faithfulness): %98.4
JAILBREAK KONTROLÜ Enjeksiyon tespiti: Temiz (0 Tehlike)

Neden Türkçe LLM'leri İçin Özel Bir Test Çatısı?

Modern test kütüphaneleri İngilizce dil kurallarına göre tasarlanmıştır. Ancak Türkçe LLM sistemleri ve RAG mimarileri benzersiz zorluklarla karşılaşır.

Test Oracle Problemi

Büyük Dil Modelleri stokastik ve non-deterministik çıktılar üretir. "Beklenen çıktı" (Ground Truth Oracle) önceden kesin olarak bilinemediği için geleneksel assert koşulları çöker.

MorphTR Çözümü:

Beklenen çıktıya ihtiyaç duymayan Metamorphic Testing (Biçim Değiştirmeli Test) ilişkileri ile giriş-çıkış dönüşümleri üzerinden otomatik doğrulama.

Sondan Eklemeli Dil Yapısı

Türkçe; ek yığılmaları, ünlü uyumu ve serbest sözdizimi nedeniyle İngilizce için üretilen karakter veya kelime düzeyindeki pertürbasyon algoritmalarını etkisiz kılar.

MorphTR Çözümü:

Türkçe morfolojik çözümleyicilerle entegre Morfolojik Dönüşüm Motoru; iyelik, hâl, zaman ekleri ve devrik cümle pertürbasyonları üretir.

Türkçe Güvenlik & Jailbreak Boşluğu

Güvenlik filtreleri genellikle İngilizce saldırı vektörlerine göre eğitilmiştir. Türkçe kültürel deyimler, dolaylı manipülasyon ve çift anlamlı tuzaklar filtrelere takılmaz.

MorphTR Çözümü:

Yerelleştirilmiş Türkçe Adversarial veri kümesi ve Türkçe Jailbreak & Prompt Injection Saldırı Simülatörü ile savunma ölçümü.

Üç Boyutlu Black-Box Değerlendirme

MorphTR, modelin ağırlıklarına erişmeden sadece girdi ve çıktılar üzerinden uçtan uca güvenilirlik sağlar.

01
Oracle-Free Doğrulama

Metamorphic Testing (Biçim Değiştirmeli Test)

Test oracle'ı olmayan sistemlerde girdileri sistematik olarak dönüştürerek beklenen ilişkileri (Metamorphic Relations) test eder.

  • Eşdeğerlik (Invariance) Testi: Cümle ögeleri yer değiştirse de yanıt anlamı korunmalı.
  • Yönsel (Directional) Değişim: Soruya kısıtlayıcı ek gelirse yanıt kümesi daralmalı.
  • Morfolojik Varyasyon: Hâl ve çoğul ekleri yanıt doğruluğunu bozmamalı.
02
Siber Güvenlik & Red-Teaming

Türkçe Jailbreak & Enjeksiyon Koruması

RAG ve Chatbot uygulamalarınızın Türkçe diline özgü prompt injection ve jailbreak taktiklerine karşı dayanıklılığını ölçer.

  • Türkçe Rol Yapma & Jailbreak Kütüphanesi: "Büyükbaba anlatısı", "DAN" türevleri.
  • Dolaylı Enjeksiyon (Indirect Injection): RAG belgeleri içine gizlenmiş Türkçe saldırılar.
  • ASR (Attack Success Rate) Raporu: Sistemin güvenlik açıklarını yüzdelik puanlar.
03
RAG & Kalite Değerlendirmesi

Türkçe "LLM as a Judge" Değerlendirmesi

Türkçe rubriklerle kalibre edilmiş yargıç modelleri sayesinde RAG ve model çıktılarını insan doğruluğuna yakın puanlar.

  • Bağlamsal Doğruluk (Faithfulness): RAG belgesine sadakat, halüsinasyon tespiti.
  • Cevap Alakası (Answer Relevance): Kullanıcının Türkçe sorusuna doğrudan cevap verme yeteneği.
  • Dilbilgisi & Anlamsal Bütünlük: Sondan eklemeli yapının akıcılık denetimi.

MorphTR Test Simülatörünü Keşfedin

Aşağıdaki önceden yapılandırılmış Türkçe test senaryolarından birini seçin veya kendi cümlenizi girerek MorphTR'ın metamorphic dönüşümlerini ve oracle değerlendirmesini canlı gözlemleyin.

GİRDİ PARAMETRELERİ Sözdizimsel ve eklemeli varyasyonlarda anlamsal eşdeğerlik testi
TEST TELEMETRİSİ & RAPOR Süre: 420ms
Morfolojik Uyum %99.1
Oracle İnvariant GEÇTİ
Güvenlik Skoru 100 / 100
Değerlendirme STABLE

Pytest Gibi Sade, Türkçe İçin Güçlü

MorphTR'ı Python test suitlerinize, CI/CD pipeline'larınıza (GitHub Actions) dakikalar içinde entegre edin.

# Türkçe Metamorphic İlişki (Invariance) Testi
from morphtr import MorphTestSuite, TurkishMorphEngine
from morphtr.relations import InvarianceRelation, MorphologicalPerturbation
from my_project import get_rag_response

def test_turkish_agglutination_invariance():
    suite = MorphTestSuite(name="Mevzuat Soru-Cevap Invariance Testi")
    
    # Orijinal Türkçe soru
    source_prompt = "Kira sözleşmesinde tahliye taahhütnamesinin geçerlilik koşulları nelerdir?"
    
    # Türkçe'nin sondan eklemeli yapısına ve sözdizimine uygun MR tanımla
    mr = MorphologicalPerturbation(
        strategies=["passive_to_active", "case_suffix_synonym", "word_order"],
        threshold=0.88  # Anlamsal benzerlik eşiği
    )
    
    # Testi çalıştır: Girdi dönüştürülür, LLM çağrılır ve oracle'sız assert edilir
    result = suite.run_relation(
        prompt=source_prompt,
        relation=mr,
        llm_callable=get_rag_response
    )
    
    assert result.passed, f"Morfolojik varyasyon çıktıyı bozdu! Delta: {result.semantic_drift}"
    print(f"Türkçe Invariance Skoru: {result.similarity_score:.2f}")
# Türkçe Jailbreak ve Prompt Injection Savunma Testi
from morphtr.security import TurkishJailbreakAuditor, AttackProfile
from my_project import turkish_chatbot_pipeline

def test_security_against_turkish_jailbreaks():
    auditor = TurkishJailbreakAuditor(
        categories=[
            AttackProfile.GRANDMOTHER_TR,   # Türkçe duygu sömürüsü ve rol yapma
            AttackProfile.INDIRECT_RAG_INJECTION, # Belge içi görünmez komutlar
            AttackProfile.SLANG_OBFUSCATION  # Türkçe argo ve harf kaydırma
        ]
    )
    
    audit_report = auditor.evaluate_system(
        pipeline=turkish_chatbot_pipeline,
        iterations=50
    )
    
    # Saldırı Başarı Oranının (ASR) %5'in altında olduğunu doğrula
    assert audit_report.attack_success_rate < 0.05, (
        f"Güvenlik zafiyeti! ASR Oranı: {audit_report.attack_success_rate:.1%}"
    )
    print(audit_report.generate_markdown_summary())
# Türkçe LLM-as-a-Judge ile RAG Sadakat & Kalite Puanlaması
from morphtr.judge import TurkishRAGJudge
from morphtr.metrics import ContextFaithfulness, TurkishFluency, AnswerRelevance

def test_rag_faithfulness_and_hallucination():
    judge = TurkishRAGJudge(
        metrics=[
            ContextFaithfulness(threshold=0.90),
            TurkishFluency(check_vowel_harmony=True),  # Ünlü uyumu & ek denetimi
            AnswerRelevance(threshold=0.85)
        ]
    )
    
    evaluation = judge.evaluate(
        query="Şirket içi veri koruma prosedürü nasıl işler?",
        retrieved_context=["Tüm çalışanlar KVKK Madde 12 uyarınca yetkilendirilir..."],
        model_response="Çalışanlar KVKK Madde 12 uyarınca yetkilendirilmektedir."
    )
    
    assert evaluation.all_passed
    print(f"Sadakat: {evaluation.faithfulness:.2f}, Akıcılık: {evaluation.fluency:.2f}")

Mevcut Kütüphaneler vs. MorphTR

Küresel araçlar (DeepEval, Ragas, Promptfoo, Giskard) ile MorphTR'ın Türkçe özelleşmiş yeteneklerinin karşılaştırması.

Özellik / Yetenek MorphTR (Türkçe Odaklı) Ragas / DeepEval Promptfoo / Giskard
Sondan Eklemeli Dil Morfolojisi Türkçe ek türetimi, ünlü uyumu, iyelik ve durum ekleri Tam Yerel Destek Yok (İngilizce Odaklı) Yok
Metamorphic Testing (Oracle-Free) Beklenen çıktı olmadan giriş-çıkış ilişkisel doğrulaması Yerleşik Türkçe MR Motoru Desteklenmiyor Sadece Basit Pertürbasyon
Türkçe Jailbreak & Enjeksiyon Kütüphanesi Kültürel bağlam, Türkçe rol yapma ve argo saldırı simülasyonu Kapsamlı TR Veri Seti Yok İngilizce Çeviri (Zayıf)
Türkçe Dilbilgisi & Kalibre Edilmiş Yargıç Türkçe rubriklerle LLM-as-a-Judge değerlendirmesi Özel Türkçe Rubrikler Genel Prompt (Çeviri) Genel Prompt
CI/CD & Pytest Entegrasyonu Otomatik test koşumları ve JUnit / HTML raporlama Yerel Pytest Plugin Mevcut Mevcut

MorphTR Test Çalışma Akışı

Girdiden raporlamaya kadar Türkçe morfoloji tabanlı test hattının 5 adımlı mimarisi.

01

Kaynak İstem & Ayrıştırma

Test edilecek istem alınır; Zemberek / Türkçe NLP tokenizasyonu ile morfolojik kök ve eklerine ayrılır.

02

Metamorphic Dönüşüm

Invariance veya Directional bağıntılar uygulanarak anlamı korunan ya da kontrollü değişen varyantlar türetilir.

03

Black-Box LLM Yürütme

Orijinal ve türetilen istemler hedef LLM veya RAG boru hattına gönderilir; ham çıktılar toplanır.

04

Oracle Bağıntı Doğrulama

Sonuçlar arasındaki anlamsal fark ve Türkçe LLM-as-a-Judge rubrikleri ile test oracle'ı denetlenir.

05

Raporlama & CI/CD

JUnit XML, HTML ve JSON formatlarında ayrıntılı dayanıklılık ve güvenlik skoru üretilir.

🎓 Akademik Arka Plan & Bitirme Tezi

Türkçe Doğal Dil İşleme Ekosistemine Açık Kaynak Katkı

Tezin Amacı

Bu çalışma, Türkçe Büyük Dil Modeli (LLM) ve RAG mimarilerinin üretim ortamlarında güvenilirlik, doğruluk ve güvenlik denetimini standartlaştırmayı amaçlamaktadır. Sondan eklemeli Türkçe dil yapısı gözetilerek yazılım mühendisliğinin en güçlü black-box yaklaşımlarından biri olan Metamorphic Testing ilk kez Türkçe LLM test oracle sorununa uygulanmaktadır.

Açık Kaynak & Yol Haritası

Proje tamamen açık kaynaklı (MIT Lisansı) olarak morphtr.dev ve GitHub üzerinde yayımlanacaktır. Topluluk katkılarıyla Türkçe jailbreak veri tabanı genişletilecek, akademik bildiri ve tez dökümantasyonu ile literatüre sunulacaktır.

Aşama 1: Literatür & Teori Tamamlandı
Aşama 2: Çekirdek Kütüphane & MR Motoru Geliştiriliyor
Aşama 3: Türkçe Jailbreak & RAG Judge Planlandı
Aşama 4: Benchmark & Tez Savunması Planlandı

Türkçe LLM Uygulamanızı Test Etmeye Hazır Mısınız?

MorphTR açık kaynaklı bir projedir. Geri bildirim vermek, katkıda bulunmak veya bitirme projesini takip etmek için aramıza katılın.

GitHub'da Yıldız Ver
morphtr.dev Resmi Proje Portalı