Yapay zekâ sistemi nasıl değerlendirilir? Test seti ve izleme
Bir yapay zekâ sisteminin doğru çalışıp çalışmadığını anlamanın yolu, onu gerçek sorulardan hazırlanmış sabit bir test setiyle ölçmektir. Her soru için neyin doğru sayılacağı önceden yazılır. Sonuçlar otomatik kontroller ve alan uzmanının değerlendirmesiyle puanlanır. Sistem yayına girdikten sonra da örnekler düzenli incelenir. Ölçmeden yapılan her değişiklik, sistemi iyileştirdiği kadar bozabilir de.
Bu yazıda bir değerlendirmenin nasıl kurulabileceğini adım adım anlatıyoruz. Konu bir sohbet asistanı, bir belge özetleyici ya da kendi başına adım atan bir ajan olabilir; yöntem büyük ölçüde aynıdır.
Yapay zekâ değerlendirmesi nedir?
Yapay zekâ değerlendirmesi, bir sistemin çıktılarının önceden tanımlanmış ölçütlere ne ölçüde uyduğunu tekrarlanabilir biçimde ölçmektir. Tekrarlanabilir olması önemlidir. Bugün yapılan ölçüm, yarın aynı soru setiyle yeniden yapılabilmeli ve iki sonuç karşılaştırılabilmelidir.
Bu fikir yalnız bize ait değil. ABD Ulusal Standartlar ve Teknoloji Enstitüsü (NIST), 26 Ocak 2023’te yayımladığı Yapay Zekâ Risk Yönetimi Çerçevesi’nde ölçmeyi dört temel işlevden biri olarak sayar: yönetişim, haritalama, ölçme ve yönetme. 26 Temmuz 2024’te bu çerçeveye üretken yapay zekâya özgü riskler için ayrı bir profil de eklendi.
Neden bir demo yeterli olmuyor?
Demo, sistemin iyi gününü gösterir. Hazırlanmış birkaç soru sorulur, cevaplar etkileyicidir. Gerçek kullanımda ise sorular dağınıktır, yazım hataları vardır, kullanıcılar sistemin hiç düşünülmediği konuları sorar.
Dil modellerinin iki özelliği bu farkı büyütür:
- Aynı soruya her seferinde aynı cevabı vermeyebilirler. Bir kez doğru cevap alınması, her seferinde doğru cevap alınacağı anlamına gelmez.
- Küçük bir değişiklik beklenmedik yerleri etkiler. Talimat metninde bir cümleyi değiştirmek, iade sorularını düzeltirken fatura sorularını bozabilir. Model sağlayıcısının yaptığı bir sürüm güncellemesi de aynı etkiyi yaratabilir.
Bu yüzden “denedik, çalışıyor” cümlesi bir ölçüm sayılmaz. Ölçüm, aynı soru setinin her değişiklikten sonra yeniden çalıştırılmasıdır.
Değerlendirme hangi katmanlardan oluşur?
Tek bir yöntem her şeyi yakalamaz. Bizim önerimiz, dört katmanın birlikte kurulması.
| Katman | Neyi yakalar | Kim ya da ne yapar | Ne zaman |
|---|---|---|---|
| Otomatik kontrol | Biçim hatası, eksik alan, kaynak gösterilmemesi, yasaklı ifade | Kod | Her çıktıda |
| Test seti | Bilinen sorulardaki doğruluk ve gerileme | Kod ve beklenen cevaplar | Her değişiklikten önce |
| İnsan değerlendirmesi | Anlam, ton, alan bilgisi, eksik ama yanlış olmayan cevaplar | Alan uzmanı | Yayından önce ve düzenli aralıklarla |
| Canlıda izleme | Test setinde olmayan yeni soru türleri, sapma | Kayıtlar, geri bildirim, örneklem incelemesi | Sürekli |
İlk katman en ucuz olanıdır ve çoğu ekip onu atlar. Bir sistemden belirli alanları olan bir çıktı isteniyorsa, örneğin bir talep kategorisi ve bir öncelik, bu alanların geçerli değerler taşıyıp taşımadığını kod kontrol eder. Bir cevabın kaynak göstermesi gerekiyorsa, gösterilen kaynağın gerçekten var olan bir belge olup olmadığını da kod kontrol eder.
Test seti nasıl hazırlanır?
Test seti, sistemin karşılaşacağı soruların temsilî bir örneğidir. Hazırlarken şu adımları izlemenizi öneririz:
- Gerçek sorularla başlayın. E-posta kutusundan, destek kayıtlarından, satış ekibinin notlarından gerçek örnekler toplayın. Ekibin uydurduğu sorular genellikle fazla düzgündür.
- Kategorilere ayırın. Sorular hangi konulara dağılıyor? İade, fatura, teslimat, ürün bilgisi gibi. Her kategoriden yeterli örnek olsun.
- Zor vakaları ekleyin. Belirsiz sorular, iki konuyu birden soranlar, kızgın bir dille yazılmış olanlar, yazım hatalı olanlar.
- Cevabı olmayan soruları ekleyin. Kaynaklarda karşılığı bulunmayan sorular. Burada beklenen doğru davranış, sistemin bilmediğini söylemesidir. Bu davranışı halüsinasyon yazımızda ayrıca anlattık.
- Her soru için ölçütü yazın. Bazen tek bir doğru cevap vardır. Çoğu zaman ise “şu üç bilgiyi içermeli, şu ifadeyi içermemeli, şu belgeye dayanmalı” gibi bir ölçüt daha işe yarar.
- Seti sabitleyin ve sürümleyin. Test seti değiştiğinde sonuçlar eskisiyle karşılaştırılamaz. Yeni soru eklemek serbesttir, ama hangi sürümle ölçüldüğü kayıtta yazmalıdır.
- Kişisel veriyi temizleyin. Gerçek kayıtlardan alınan örneklerde ad, telefon, kimlik numarası gibi bilgiler test setine girmeden maskelenir.
Küçük bir setle başlamak sorun değildir. Kategorileri iyi temsil eden kısa bir set, rastgele toplanmış uzun bir setten daha çok şey söyler. Set, canlıda karşılaşılan yeni soru türleriyle zamanla büyür.
Hangi ölçütler kullanılır?
Ölçüt, sistemin yaptığı işe göre değişir. Tek bir “doğruluk puanı” çoğu zaman yanıltıcıdır.
| Sistem türü | Bakılması gereken ölçütler |
|---|---|
| Belgelerden soru cevaplayan asistan | Cevabın doğruluğu, kaynağa dayanması, cevap yoksa bunu söylemesi |
| Talep ya da e-posta sınıflandırma | Doğru sınıf oranı, hangi sınıfların birbirine karıştığı |
| Belgeden bilgi çıkarma | Her alanın ayrı ayrı doğruluğu, boş bırakılması gereken alanlar |
| Kendi başına adım atan ajan | Görevin tamamlanması, yanlış ya da gereksiz eylem, insana doğru zamanda dönmesi |
| Her tür | Ton ve üslup, kişisel veri sızıntısı, süre ve maliyet |
Belge tabanlı asistanlarda iki ölçütü ayrı tutmak önemlidir. Biri, doğru belgenin bulunup bulunmadığıdır. Diğeri, bulunan belgeden doğru cevabın üretilip üretilmediğidir. Hata hangisindeyse çözüm de oradadır. Bu ayrımın neden önemli olduğunu RAG yazımızda anlattık.
Ajanlarda ise doğru cevap kadar doğru davranış da ölçülür. Ajanın attığı her adımın gerekli olup olmadığı, geri alınamaz bir adımdan önce onay isteyip istemediği test edilir. Ajanların nasıl çalıştığını yapay zekâ ajanı nedir yazısında ele aldık.
İnsan değerlendirmesi nasıl yapılır?
Otomatik kontroller biçimi yakalar, anlamı her zaman yakalamaz. Bir cevap teknik olarak doğru ama müşteriye söylenmeyecek bir dille yazılmış olabilir. Bunu ancak işi bilen bir kişi görür.
İnsan değerlendirmesini verimli kılmak için:
- Kısa bir puanlama cetveli kullanın. “Doğru mu, eksik mi, yanlış mı?”, “Kaynağa dayanıyor mu?”, “Müşteriye bu hâliyle gönderilir mi?” gibi üç dört soru yeter.
- Değerlendirmeyi körleştirin. İki sürümü karşılaştırıyorsanız değerlendiren kişi hangi cevabın hangi sürüme ait olduğunu bilmesin.
- İki kişiye bakın. Aynı örneklere iki kişi baktığında anlaşamadıkları yerler, ölçütün belirsiz kaldığı yerlerdir. Ölçüt orada netleştirilir.
- Az ama düzenli bakın. Her ay rastgele seçilmiş bir örneklemi incelemek, yılda bir yapılan büyük bir incelemeden daha çok şey yakalar.
Bir dil modelini değerlendirici olarak kullanmak da mümkündür. Büyük hacimlerde işe yarar. Ama bu değerlendiricinin kendisi de ölçülmelidir. İnsanların puanladığı bir örneklemde model ile insanların ne kadar uyuştuğuna bakılır. Uyuşma düşükse modelin verdiği puanlara güvenilmez.
Canlıda neyi izlemek gerekir?
Test seti bilinen soruları ölçer. Canlıda ise sistem her gün yeni bir şeyle karşılaşır. İzlemenin amacı, test setinin kapsamadığı durumları erkenden görmektir.
İzlenmesini önerdiğimiz göstergeler şunlar:
- İnsan düzeltme oranı. Sistemin önerdiği taslakların ne kadarı insan tarafından değiştiriliyor? Bu oran yükseliyorsa bir şey değişmiştir.
- “Bilmiyorum” oranı. Sistemin cevap bulamadığı soruların payı. Ani bir artış, kaynakların eskidiğini ya da yeni bir soru türünün ortaya çıktığını gösterebilir.
- Kullanıcı geri bildirimi. Basit bir “işe yaradı mı?” düğmesi bile yön gösterir.
- Süre ve maliyet. Cevap süresi ve model kullanımı. Bir ajan döngüye girerse ilk burada görünür.
- Örneklem incelemesi. Haftada bir, rastgele seçilmiş konuşmaların bir kişi tarafından okunması.
Canlıda yakalanan her yeni hata türü, test setine yeni bir soru olarak eklenir. Değerlendirme böylece sistemle birlikte büyür.
Ne zaman yeniden ölçmek gerekir?
Kısa cevap: sistemde bir şey değiştiğinde. Test setinin şu durumlarda yeniden çalıştırılmasını öneririz:
- Talimat metni ya da örnekler değiştiğinde
- Model ya da model sürümü değiştiğinde
- Kaynak belgeler eklendiğinde, silindiğinde ya da güncellendiğinde
- Sisteme yeni bir araç ya da yetki eklendiğinde
- Canlıda yeni bir hata türü fark edildiğinde
Model sağlayıcıları sürümlerini zaman zaman günceller ve eski sürümleri kullanımdan kaldırır. Bu yüzden hangi model sürümüyle çalışıldığını kayıtta tutmanızı, yeni sürüme geçişi de test setinden geçirmeden yapmamanızı öneririz.
Yayın kararı nasıl verilir?
Değerlendirme bir karara bağlanmazsa yalnız bir rapor olarak kalır. Bizim önerimiz, projenin başında üç eşiğin ekiplerle birlikte yazılması. Sayılar her projede farklıdır. Önemli olan, eşiklerin yazılı olmasıdır.
| Karar | Ne zaman verilir | Sonra ne olur |
|---|---|---|
| Yayına hazır | Kritik kategorilerde eşik aşıldı, geri alınamaz adımlarda hata yok | Sistem kullanıma açılır, izleme başlar |
| Gözetimli kullanım | Genel sonuç iyi ama bazı kategoriler eşiğin altında | Sistem yalnız taslak üretir, her çıktıyı bir kişi onaylar |
| Durdur | Yanlış eylem, kişisel veri sızıntısı ya da kritik kategoride belirgin hata | Sorun düzeltilir, test seti genişletilir, ölçüm tekrarlanır |
Bu tablonun en önemli sütunu ilk satırdaki “geri alınamaz adımlarda hata yok” ifadesidir. Ortalama başarı ne kadar yüksek olursa olsun, ödeme, silme ya da dışarıya gönderim gibi bir adımda tek bir hata sistemi geri çekmek için yeterlidir. İnsan onayının hangi adımlarda gerektiğini güvenlik yazımızda bir tabloyla anlattık.
Bir not daha: başarı ölçütünü sistem kurulduktan sonra yazmak cazip gelir, çünkü o zaman sonuca göre ayarlanabilir. Bizim bakışımız tersi yönde: ölçüt önce yazılır, sistem sonra kurulur.
Sık sorulan sorular
Yapay zekâ sistemini değerlendirmek için kaç test sorusu gerekir?
Sabit bir sayı yoktur. Önemli olan, sistemin karşılaşacağı soru kategorilerinin her birinden yeterli örnek bulunması ve cevabı olmayan soruların da sete dahil edilmesidir. Küçük ama iyi dağılmış bir setle başlayıp canlıda karşılaşılan yeni soru türleriyle büyütmeyi öneriyoruz.
Model sağlayıcısının yayımladığı başarı puanları yeterli değil mi?
Değil, çünkü o puanlar genel amaçlı test setleriyle ölçülür. Sizin müşterilerinizin sorularını, belgelerinizi ve iş kurallarınızı bilmezler. Bir modelin genel testlerde başarılı olması, sizin işinizde başarılı olacağını göstermez.
Değerlendirme bir kez yapılıp biter mi?
Bitmez. Talimatlar, belgeler, model sürümleri ve kullanıcıların sorduğu sorular zamanla değişir. Bu yüzden her değişiklikten önce test setinin yeniden çalıştırılmasını, canlıda da düzenli örneklem incelemesi yapılmasını öneriyoruz.
Mevcut bir yapay zekâ sistemine sonradan değerlendirme eklenebilir mi?
Eklenebilir. Önce sistemin kayıtlarından gerçek sorular toplanır, ardından bir test seti ve ölçütler yazılır. Mevcut sistemin bu setteki durumu ilk ölçüm olur; bundan sonraki her değişiklik bu ölçümle karşılaştırılır.
Bir yapay zekâ sistemi kurmayı ya da mevcut sisteminizi ölçmeyi düşünüyorsanız yapay zekâ sistemleri hizmetimize bakabilir, ilk yapay zekâ entegrasyonunu planlıyorsanız ChatGPT entegrasyonu yazımızla başlayabilirsiniz. Projenizi anlatmak için bize yazın; en geç iki iş günü içinde dönüyoruz.