# Bir ajanın iyi olup olmadığı nasıl anlaşılır

Ajanı attığı adımlara değil, geride bıraktığı sonuca göre değerlendirin. Gerçek hatalardan başlayın, ucuz ve kalibre edilmiş değerlendiricileri karıştırın, ajandan önce testten şüphelenin.

## İyi bir demo değerlendirme değildir

Gözünüzün önünde üç kez iyi çalışan bir ajan, size çok az şey göstermiş olur. Adımları her çalışmada değişiyor, küçük bir prompt değişikliği test etmediğiniz yerlerde davranışı kaydırabiliyor ve işi bitmediği halde neşeyle bitti diyebiliyor. **Eval**, her sonucu otomatik puanlamanın bir yolu olan bir görev kümesi. Bir şeyi değiştirip daha iyi mi oldu diye öğrenmenizi sağlıyor.

Bu dersteki her şey Anthropic'in "Demystifying evals for AI agents" rehberinden ve kendi ajan projelerinde anlattıkları eval'lerden geliyor.

## Üç tür değerlendirici

**Grader**, ajanın yaptığına bakıp bir puan üretir. Üç türü var ve her biri farklı bir şeyin bedelini ödüyor.

- **Kod tabanlı grader'lar** bir olguyu kontrol eder: test geçti mi, dosya var mı. Ucuz ve hızlı, ama kırılgan. Beklenmedik bir ifadeyle yazılmış doğru bir cevap kalabilir.
- **Model tabanlı grader'lar** bir rubrikle başka bir model kullanır. Esnek ve açık uçlu çıktıyı okuyabilir. İnsan yargısına göre kalibre edilmeleri gerekir, yoksa kayarlar.
- **İnsan grader'lar** altın standart ve en yavaş olanı.

Araştırma sistemi, doğruluk, atıflar, bütünlük, kaynak kalitesi ve araç verimliliği üzerinden 0 ile 1 arasında puan veren bir model yargıç kullanıyor. Yine de insanlara ihtiyaç vardı: insanlar SEO çiftliği sayfalarına yönelen bir yanlılığı yakaladı.

## Yolu değil, sonucu puanlayın

Ajanlar beklemediğiniz yollar buluyor. Grader'ınız belirli bir araç çağrısı sırasında ısrar ederse, daha iyi bir yol testi geçemez. Rehberin kuralı, dünyadaki sonucu puanlamak: rezervasyon veritabanında mı, dosya değişti mi, program derleniyor mu.

Derleyici projesi bunun ne kadar ileri gidebileceğini gösteriyor. Ajanlara bilinen doğru bir referans olarak GCC verildi. Kontrol neredeyse kusursuz olduğu için ajanlar çekirdek hatalarını paralel olarak ayırabildi. Carlini'nin uyarısı buradan çıkıyor: ajan, kontrolün ölçtüğü şeyi çözer; zayıf bir kontrol, kendinden emin ve yanlış iş üretir.

```flow
Gerçek bir hata seç
Onu kontrol edilebilir sonuçlu bir göreve çevir
Ajanı birkaç kez çalıştır
Son durumu bir grader ile puanla
Tek bir şeyi değiştir ve yeniden çalıştır
```

**Question:** Bir ajan, testinizin beklemediği bir yoldan doğru veritabanı durumuna ulaşıyor. Grader nasıl davranmalı?

- Adımlar farklı olduğu için başarısız saymalı
- Önemli olan sonuç olduğu için geçirmeli
- Her seferinde bir insana sormalı
- Sonucu yok saymalı

**Answer:** Önemli olan sonuç olduğu için geçirmeli. Rehber, kesin yolu değil sonucu puanlamayı söylüyor; örneğin rezervasyonun var olup olmadığını. Sabit bir yol şart koşmak geçerli çözümleri cezalandırır.


## Görevler nereden gelir, kaç tane olmalı

Gerçek hatalardan başlayın. Ajanın gerçekten birini yarı yolda bıraktığı durumları alın ve her birini bir göreve çevirin. Rehber 20 ila 50 böyle görev öneriyor. Anthropic'in araştırma ekibi de yaklaşık 20 sorguyla başladı.

Ajanlar deterministik olmadığı için her görevi birkaç kez çalıştırıyorsunuz ve sayılar şaşırtıcı davranıyor. **pass@k**'da k denemeden biri başarılıysa başarı sayılır, bu yüzden k büyüdükçe skor yükselir. **pass^k**'da her deneme başarılı olmak zorunda, bu yüzden skor düşer. Deneme başına yüzde 75 başarılı olan bir ajan, art arda üç kez yalnızca yaklaşık yüzde 42 oranında geçiyor. Hangisini önemseyeceğiniz, kullanıcının tekrar deneyip deneyemeyeceğine bağlı.

> **Yüzde sıfır, testle ilgili bir ipucudur**
Bir ajan birçok çalışmada her denemede başarısız oluyorsa, çoğunlukla bozuk olan görevdir, ajan değil. Bir vakada Opus 4.5, CORE-Bench'te grader ve kurulumdaki hatalar giderilince yüzde 42'den yüzde 95'e çıktı.


## Değerlendiricinin de eval'i olmalı

Ayrı bir değerlendirici ajan güçlü bir araç, ama cömert başlıyor. Harness projesinde onların değerlendiricisi, kendi bulduğu hataları onaylıyordu. Kullanılabilecek kadar şüpheci hale gelmesi, kararlarını okuyup prompt'unu bir insanın vereceği karara göre ayarlayarak yapılan birkaç tur aldı.

> **Yargıcı kendinize göre kalibre edin**
Model tabanlı bir grader'a güvenmeden önce, birkaç çalışmada kararlarını kendi kararlarınızla karşılaştırın. Uyuşana kadar prompt'unu ayarlayın. Harness ekibi değerlendiricileri kullanılabilir hale gelmeden önce bu adımı tekrarladı.


> **İlk görevinizi yazın**
Bir ajanın size bir işi yanlış yaptığı bir anı düşünün. Görevi tek cümleyle yazın, sonra doğru sonucu görmek için bir programın çalıştırabileceği kontrolü yazın. O kontrolü yazamıyorsanız, çözmeniz gereken ilk şey o.


**Question:** Bir ajan bir görevde birçok denemede yüzde 0 alıyor. Rehber önce neye bakmayı öneriyor?

- Görevin ya da grader'ın bozuk olup olmadığına
- Modelin çok küçük olup olmadığına
- Yeterince araç kullanıp kullanmadığınıza
- Hiçbir şeye, yüzde 0 geçerli bir sonuç

**Answer:** Görevin ya da grader'ın bozuk olup olmadığına. Çok denemede yüzde 0 başarı çoğunlukla bozuk bir görev demektir, zayıf bir ajan değil. Benchmark skorlarındaki sıçramalar grader ve kurulum hatalarının düzeltilmesinden geldi.
