Home / Nedir? / LLM Yetenekleri Nasıl Test Edilir?

LLM Yetenekleri Nasıl Test Edilir?

Günümüzde bir çok LLM bulunmakta. Peki tüm LLM’ler başarılı mı? Hangi LLM modeli, bizlere daha uygun sonuç dönüyor?

Eskiden bilgiye ulaşmak kıymetli iken, günümüzde “doğru bilgiye” ulaşmak kıymetli hale dönüştü. Baby-Boomers (1946 – 1964) ile X kuşağı (1965-1980) (Kaynak: Kültür Üni.) bilgiye ulaşım için zorlanırken, Y ve Z kuşakları bilgiye daha hızlı ulaşır durumda. Fakat teknolojinin hızla gelişmesi ile özellikle Alfa kuşağının olduğu bu zamanlarda; bilgiye değil, doğru bilgiye ulaşım zorlaşmış durumda.

Bilgiye ulaşımı mümkün kılarken, doğru bilgiye ulaşmanın da kıymetini “kısmen” artıran ise özellikle LLM’ler oldu diye biliriz. Günümüzde yüzbinlerce LLM bulunmakta fakat, her LLM, her soruya aynı cevabı veremeyebiliyor.

Peki, artık doğru bilgiye ulaşmak için kullandığımız kullandığımız LLM’lere nasıl güveneceğiz? Doğruluklarını nasıl test edebiliriz?

LLM’leri Nasıl Test Edebiliriz?

LLM testleri, geleneksel yazılım test süreçlerinden farklı bir zihniyet ve metodoloji gerektirmektedir.

Zihniyet Değişikliği ve Temel Farklılıklar

  1. Girdi ve Çıktı: Geleneksel yazılım testlerinde sabit kurallar bulunmakta. Örneğin bir girdinin çıktısı, her zaman aynı sonucu verir. LLM’ler ise öğrenmeye odaklıdır ve bir girdinin çıktısı, her zaman aynı değildir.
  2. Tekrarlanabilirlik: Geleneksel yazılımlarda bir hatanın olma sebebi genellikle hep aynıdır. Fakat LLM’lerde aynı girdi ile sonuçlar her zaman değişebilir.
  3. Başarısızlık Modelleri: Geleneksel yazılımlarda bir hatanın sonucunda çökme, yanlış çıktı vs. iken, LLM’lerde başarısızlıklar oluşur. Bu başarısızlıklar önyargı (bias), yanlış tahmin (incorrect prediction), kayma (drift) ve halüsinasyon şeklinde olur.
  4. Test Yaklaşımları: Klasik yazılımlarda bir testin sonucunda kesin olan bir sonuç veya döngü hedeflenir. Fakat LLM’lerde istatistiksel değerlendirme, doğruluk kontrolü (accuracy check) ve geniş veri setleri kullanır. Yani klasik yazılım testlerinde ki gibi geçme veya kalma (1 veya 0) yerine yüzde söz konusudur.

Kritik Test Alanları ve Zorlukları

LLM’ler, özel modeller veya GenAI uygulamalarını test ederken genelde aşağıdaki kısımlara odaklanılır:

  1. Security & Prompt Injection: Günümüzde en zorlu kısım bu alandır. Özellikle sağlık ve finans sektörleri için LLM’lerin “tehlikeli” olarak görünmesinin en büyük nedeni bu kısımdır.
    • Red Teaming: İlgili modelinizi jailbreak etmeye ve savunmasız verileri açığa çıkartmaya çalışmak için impersonation (kimliğe bürünme) yoluyla yapılan testlerdir. Örnek vermek gerekirse; bir IK yapay zekasının önceden bildirilen güvenlik talimatlarını yok sayması ve tüm özlük bilgilerinin açığa çıkarılmaya çalışılması buna bir örnektir. Başka bir örnek vermek gerekirse, bir bankanın veznesinde çalışan birisinin, bankanın denetimlerinden kaçınarak, nasıl her işlemde 5 TL gibi minik bir tutarı başka bir hesaba geçirebileceğini öğrenmesini istemek gibi.
  2. Halüsinasyon Tespiti: Günümüzde en iyi LLM’lerin bile halüsinasyon görebildiği ve gerçek verilerle uygunluk testi yapılması gerekir.
  3. Önyargı ve Adilik: Yasal sorunlara yol açabilecek olan; cinsiyet, ırksal veya politik önyargı içeren yanıtlardır.
  4. Performans ve Tutarlılık: Özellikle kurum içerisinde oluşturulan veya eğitilen LLM modeller oluşturuyorsanız gereklidir. Burada gecikme (latency) ve token tüketimi önemlidir.
  5. Bağlam sınırlamaları (Context Limitations): Modelin, kendisine verilen bağlamın dışına çıkıp çıkmadığının testidir.
  6. İnsani Değerler Uyumu (Human Value Alignment) ve Uyum (Compiance): Özellikle yerel modellerde HIPAA gibi yasal uyumlulukların denetimidir.

LLM’i, LLM’e Test Ettirmek

Buna birazda cross check diyebiliriz. Bir LLM’den aldığınız sonucu, başka bir LLM’i yargıç olarak kullanarak, çapraz doğrulama yapabilirsiniz. En çok kullanılan doğrulama yöntemlerinden biridir. Örnek vermek gerekirse;

  • Türkiye’nin Başkenti Neresidir?
  • A.B.D. Başkanı Kimdir?
  • Üç arkadaş (Ali, Burak, Can) ve üç farklı meyve (Elma, Muz, Kiraz) var. Ali muz sevmiyor. Can kiraz yiyor. Burak’ın meyvesi nedir?
  • Çin Seddi’nin uzaydan çıplak gözle görülebildiği iddiasının doğruluğu nedir?
  • Modele bir resim yükleyerek, resimde ne gördüğünü sormak.

Bu tip sorularla LLM’in soruya olan alaka düzeyini (relevance) veya tutarlılığını (consistency) test ederek, bir skor elde edebilirsiniz.

Harici Araçlarla Test Etmek

Büyük dil modellerini test etmek için özellikle açık kaynak kodlu uygulamalar bulunmaktadır. Bunlardan bazıları şunlardır:

Araç AdıKullanım Amacı ve Özellikleri
PromptfooAçık kaynaklı bir test aracı olan Promptfoo, birden fazla promptu aynı anda çoklu modellere karşı test etmeyi, karşılaştırmayı ve süreci otomatikleştirmeyi sağlar. YAML formatında senaryolar oluşturulur ve token tüketimi, latency ve güvenlik testleri yapılabilir.
DeepEvalLLM, chatbot veya AI Agent’ları testte kullanılır. Değerlendirme için size metrikler sunar.
G Eval (DeepEval içerisinde)Daha çok geliştiricilerin değerlendirme adımlarını ve kriterlerini( Örnek: Özel önyargı ölçütleri vb.) belirleyebilceği, daha fazla kontrole sahip olunan bir araçtır. Özellikle LLM’in yargıç olarak davranması için bir motor sağlar.
LangTestPromptları test etmek sürecinin otomatikleştirilmesini sağlar. Python kullanır.
Hugging FaceModel eğitiminde ve testlerinde sentetik veri üretmek için kullanılır.
Etiketlendi:

Cevap bırakın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.