0Pricing
AI Engineering Academy · Ders

Değerlendirme, Dağıtım ve Geriye Dönük Değerlendirme

Getirme ölçütlerini, LLM-as-judge kalite puanlarını ve yük testlerini içeren kapsamlı değerlendirme düzeneğini çalıştırın, bir bulut sağlayıcısına dağıtın ve öğrenilen dersleri belgeleyen bir geriye dönük değerlendirme yazın.

Değerlendirme, Dağıtım ve Geriye Dönük Değerlendirme, CoddyKit'te ücretsiz bir AI Engineering Academy dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, AI Engineering Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. AI Engineering Academy kursu toplamda 4 dersten oluşur.

Son Aşama: Yayına Almadan Önce Değerlendirme

Bir sistem, gerçek dünya koşullarına karşı uçtan uca değerlendirilmeden yayına alınmaya hazır değildir. Son değerlendirme aşaması, bu izlek boyunca öğrenilen tüm değerlendirme tekniklerini birleştirir: RAG hattının doğru parçaları bulduğunu doğrulamak için getirme ölçümleri, yanıt kalitesini doğrulamak için LLM-as-judge puanları, gecikme SLA'larını doğrulamak için yük testi ve sağlamlaştırmayı doğrulamak için güvenlik taraması. Dağıtım başlamadan önce bunların tümü başarılı olmalıdır.

Tam Değerlendirme Düzeneğini Çalıştırma

Üretime benzer sorgulardan oluşan temsili bir örnek kullanarak eksiksiz değerlendirme paketini hazırlık ortamınızda çalıştırın. Tüm ölçümleri kaydedin: getirme için isabet oranı, MRR, NDCG; üretim için doğruluk ve yanıt uygunluğu; sorgu başına maliyet; p50/p95/p99 gecikmesi. Her ölçümü mimari aşamasında tanımlanan başarı ölçütleriyle karşılaştırın. Tüm asgari zorunlu koşullar karşılanmadan yayına almayın.

async def final_evaluation(system_url: str, test_set_path: str) -> dict:
    test_cases = load_test_set(test_set_path)
    results = []
    for case in test_cases:
        start = time.perf_counter()
        response = await query_system(system_url, case['question'])
        latency_ms = (time.perf_counter() - start) * 1000
        judge_score = await judge(case['question'], response['answer'], case.get('reference'))
        hit = any(case['relevant_doc'] in s for s in response.get('sources', []))
        results.append({'latency_ms': latency_ms, 'score': judge_score, 'hit': hit, 'cost': response.get('cost_usd', 0)})
    return compute_final_metrics(results)

Üretim Sisteminde Yük Testi

Canlıya geçmeden önce gerçekçi üretim trafiğini benzeten bir yük testi çalıştırın. Beklenen en yüksek eşzamanlılık düzeyinize (örneğin 50 eşzamanlı kullanıcı) kademeli olarak çıkmak ve yük altındaki gecikme değişimini ölçmek için Locust veya k6 gibi bir araç kullanın. Circuit breaker'ların normal yükte devreye girmediğini, hız sınırlayıcının ani trafik altında düzgün 429 yanıtları verdiğini ve Semantic Cache isabet oranının hedefinizin üzerinde kaldığını doğrulayın. Devam etmeden önce tüm gerilemeleri düzeltin.

# Locust load test (locustfile.py)
from locust import HttpUser, task, between
import random

QUESTIONS = [
    'What is the return policy?',
    'How do I cancel my subscription?',
    'Where are you located?',
]

class AIUser(HttpUser):
    wait_time = between(1, 3)  # realistic think time

    @task
    def query(self):
        self.client.post(
            '/query',
            json={'question': random.choice(QUESTIONS), 'tenant_id': 'load_test'},
            headers={'Authorization': 'Bearer test_token'}
        )

# Run: locust -f locustfile.py --headless -u 50 -r 5 --run-time 5m

Üretime Dağıtma

Blue-green dağıtımı kullanarak dağıtın: yeni sürümü (green) mevcut sürümün (blue) yanında başlatın, green üzerinde duman testlerini çalıştırın, ardından trafiği kademeli olarak blue'dan green'e kaydırın. Green'e trafiğin %5'iyle başlayın, hata oranlarını ve gecikmeyi 10 dakika izleyin, ardından sırasıyla %25'e, %50'ye ve %100'e çıkarın. Böylece bir sorun çıkarsa herhangi bir kesinti olmadan blue sürümüne anında geri dönebilirsiniz.

# Deployment steps (pseudocode for AWS ECS or K8s):
# 1. Build and push new Docker image
#    docker build -t qa-assistant:v2.0 . && docker push ...
#
# 2. Deploy green (new) version alongside blue (current)
#    kubectl apply -f deploy/green.yaml
#
# 3. Run smoke tests against green
#    pytest tests/smoke/ --base-url https://green.internal
#
# 4. Canary traffic shift (ALB weighted routing)
#    5%  -> green (monitor 10min)
#    25% -> green (monitor 10min)
#    50% -> green (monitor 10min)
#    100% -> green
#
# 5. Decommission blue after 24h stability

Dağıtım Sonrası İzleme

Dağıtımdan sonra ilk 2 saat boyunca temel ölçümleri etkin biçimde izleyin. Şunları takip edin: hata oranı (hedef <%1), p95 gecikmesi (hedef <8 sn), önbellek isabet oranı (hedef >%20) ve sorgu başına maliyet (hedef <$0,05). İlk dağıtım sırasında tüm nöbetçi mühendislerin bulunduğu bir kriz odası Slack kanalı oluşturun. Herhangi bir ölçümün uyarı eşiğini aşması incelemeyi, kritik eşiği aşması ise blue sürümüne hemen geri dönmeyi tetikler.

# Post-deploy monitoring dashboard queries:
# (Assuming Grafana + Prometheus)

# Error rate (last 5 min):
# rate(http_requests_total{status=~'5..'}[5m]) / rate(http_requests_total[5m])

# p95 latency (last 5 min):
# histogram_quantile(0.95, rate(query_duration_seconds_bucket[5m]))

# Cache hit rate:
# rate(cache_hits_total[5m]) / rate(queries_total[5m])

# Average cost per query:
# rate(llm_cost_usd_total[5m]) / rate(queries_total[5m])

Mimari Geriye Dönük Değerlendirmesini Yazma

Sistem bir hafta yayında kaldıktan sonra nelerin işe yaradığını, nelerin yaramadığını ve neyi farklı yapacağınızı anlatan bir geriye dönük değerlendirme belgesi yazın. İyi bir geriye dönük değerlendirme, başarısızlıklar konusunda dürüst ve öğrenilenler konusunda özeldir. Gelecekteki okuyucular — bundan altı ay sonraki siz de dâhil — zaman baskısı altında alınan kararların ardındaki gerekçeyi ve karşılaşılan beklenmedik engelleri anlamaktan yararlanacaktır.

# RETROSPECTIVE.md structure:
#
# ## What Worked Well
# - Hybrid retrieval improved hit rate from 71% to 89%
# - Semantic cache reduced average cost by 31%
# - LangSmith tracing saved 2 days of debugging
#
# ## What Did Not Work
# - Semantic chunking was 4x slower than recursive chunking
#   with only 3% hit rate improvement -- not worth it
# - Cohere reranker had 400ms latency -- too slow for p95 target
#   Switched to BGE-reranker-v2 running locally
#
# ## What We'd Do Differently
# - Start with pgvector, not Pinecone (migration cost 3 days)
# - Add semantic cache BEFORE building the agent, not after

Operasyon Çalışma Kılavuzlarını Belgeleme

Üretimde tetiklenebilecek her uyarı için çalışma kılavuzları yazın. Çalışma kılavuzu, belirli bir uyarıyı tanılama ve çözme adımlarını anlatan bir rehberdir. Şu soruları yanıtlamalıdır: Bu uyarı ne anlama geliyor, olası nedeni nedir, nasıl tanı koyarım ve nasıl düzeltirim? Çalışma kılavuzları, stresli bir olay sırasında tanılama adımlarını düşünme gereğini ortadan kaldırarak ortalama çözüm süresini (MTTR) saatlerden dakikalara indirir.

# runbooks/latency.md
# ## Alert: p95 Latency > 8000ms
#
# ### Likely Causes
# 1. OpenAI API degraded (check status.openai.com)
# 2. Cohere reranker slow (check Cohere status page)
# 3. pgvector query slow (check DB CPU in CloudWatch)
# 4. Redis cache full (check Redis memory usage)
#
# ### Diagnosis
# curl https://api.openai.com/v1/models -H 'Authorization: Bearer $KEY'
# Check LangSmith traces for which step is slow
# SELECT mean(duration) FROM traces GROUP BY step
#
# ### Fixes
# - If OpenAI slow: circuit breaker should auto-failover to Claude
# - If Cohere slow: disable reranking temporarily (env SKIP_RERANK=1)
# - If DB slow: increase pgvector ef_search from 40 to 20

İş Etkisini Ölçme

Üretimde geçen bir ayın ardından, teknik ölçümlerin ötesinde sistemin iş etkisini ölçün. Bir soru-cevap asistanı için: müşteri destek taleplerinin sayısı ne kadar azaldı? Yapay zekânın yanıtladığı sorgularda kullanıcı memnuniyeti puanı nedir? Sistem, daha önce insan destek temsilcilerinin yardımını gerektiren kaç sorguyu ele aldı? Bu iş ölçümleri yatırımı gerekçelendirir ve kalite iyileştirmeleriyle yeni özellikler arasındaki gelecekteki önceliklendirmeye yön verir.

# Business impact metrics (month 1):
# Technical:
# - 12,847 queries served, 11,439 (89%) answered without human
# - Avg query cost: $0.031 (within $0.05 budget)
# - System uptime: 99.94%
#
# Business:
# - Support tickets: 1,840/month -> 1,203/month (-35%)
# - Avg resolution time: 4.2h -> 23 seconds for AI-answered
# - User CSAT on AI answers: 4.1/5.0
# - Cost per resolved query: $12 (human) -> $0.031 (AI)
# - ROI: 157% in month 1 at current volumes

Sonraki Yinelemeyi Planlama

Devreye alınan bir sistem hiçbir zaman tamamlanmış sayılmaz; sürekli iyileştirme için bir temel oluşturur. Sonraki yinelemeyi planlamak için değerlendirme verilerinizi, kullanıcı geri bildirimlerini ve geriye dönük değerlendirmelerden çıkardığınız dersleri kullanın. En önemli ölçümleri en çok etkileyen iyileştirmelere öncelik verin: geri getirme isabet oranı sınırlayıcı etkense daha iyi parçalara bölme yöntemlerine veya farklı bir gömme modeline yatırım yapın; geri getirme iyi olmasına rağmen kullanıcı memnuniyeti düşükse istem kalitesine yatırım yapın.

# Next iteration priorities (based on first month data):
NEXT_SPRINT = [
    # High impact / high confidence
    {
        'feature': 'Sentence-window retrieval',
        'expected_impact': 'Hit rate 89% -> 93%',
        'effort': 'medium',
        'evidence': '11% of failures due to answer split across chunks'
    },
    # High impact / medium confidence
    {
        'feature': 'Query decomposition for multi-hop questions',
        'expected_impact': 'Multi-hop correctness 61% -> 78%',
        'effort': 'high',
        'evidence': '23% of failures are multi-hop questions'
    },
    # Low effort quick win
    {
        'feature': 'Extend cache TTL from 1h to 24h',
        'expected_impact': 'Cache hit rate 31% -> 38%',
        'effort': 'trivial',
        'evidence': 'Same questions asked daily by different users'
    }
]

Bilgi Paylaşımı ve Belgeleme

Sistemin herkesçe anlaşılmayabilecek temel uygulama kararlarını belgeleyin. Bunlara şunlar dahildir: belirli parça boyutunun neden seçildiği ve deneylerin ne gösterdiği, anlamsal önbellek benzerlik eşiğinin nasıl ayarlandığı, süzgecin şu anda hangi enjeksiyon kalıplarını yakaladığı ve hangilerini yakalayamadığı ve aracıya yeni araçların nasıl ekleneceği. İyi hazırlanmış dahili belgeler, yeni katkı sağlayanların sisteme alışma süresini kısaltır ve gerekçeyi bilmeyen birinin kararları yanlışlıkla geri almasını önler.

# INTERNALS.md — key non-obvious decisions:
#
# ## Chunk Size: 800 tokens with 100 token overlap
# We tested 400, 600, 800, 1200 tokens.
# 800 tokens maximizes hit rate (89%) while keeping context
# small enough for 5 chunks to fit comfortably in 4096 token prompt.
# Larger chunks improved recall but degraded precision.
#
# ## Cache Similarity Threshold: 0.92
# Tested 0.85, 0.90, 0.92, 0.95.
# 0.92 gives 31% hit rate with <2% incorrect cache hits.
# 0.85 gives 41% hit rate but 8% incorrect hits (too aggressive).
#
# ## Reranker Top-N: 3 (from initial 10)
# More than 3 chunks causes context stuffing without quality gain.

Geliştirdiğiniz Sistem

Bu bitirme projesi boyunca geliştirdiğiniz eksiksiz sistemi gözden geçirin: yoğun ve seyrek geri getirmeyi yeniden sıralamayla birleştiren bir hibrit RAG işlem hattı; işlev çağırma ve güvenlik korumaları içeren, yanıtları akış halinde ileten bir aracı; maliyetleri %30 azaltan bir anlamsal önbellek; otomatik yedek sisteme geçiş sağlayan devre kesiciler; sürekli tümleştirme ve sürekli teslim süreçlerinde kesintisiz çalışan, LLM'yi yargıç olarak kullanan değerlendirme; ve kötü niyetli girdilere karşı koruma sağlayan istem enjeksiyonuna karşı savunmalar. İşte üretim ortamlarına yönelik yapay zekâ mühendisliği budur.

# System capabilities summary:
SYSTEM_CAPABILITIES = {
    'retrieval': 'Hybrid BM25+dense with Cohere reranking, 89% hit rate',
    'generation': 'GPT-4o with Claude fallback, circuit breaker, streaming',
    'caching': 'Semantic cache (Redis+embeddings), 31% cache hit rate',
    'security': 'Injection filter (2-stage) + output scanning + tenant isolation',
    'observability': 'LangSmith traces + Prometheus metrics + PagerDuty alerts',
    'evaluation': 'Automated LLM-as-judge in CI, daily full suite, LangSmith evals',
    'reliability': '99.94% uptime, circuit breakers, graceful degradation ladder',
    'cost': '$0.031/query average, model routing saves 67% vs GPT-4o only',
}

Hızlı Kontrol

Yapay zekâ sistemlerinin üretime alınması ve değerlendirilmesi konusundaki anlayışınızı sınayın.

Ders Özeti

Bu derste şunları öğrendiniz: son değerlendirme, herhangi bir dağıtım başlamadan önce geri getirme ölçümlerini, LLM yargıç puanlarını, yük sınamasını ve güvenlik taramasını birleştirir; mavi-yeşil dağıtım ve trafiğin kademeli olarak yönlendirilmesi, kesinti olmadan anında geri almayı mümkün kılar; geriye dönük değerlendirmeler ve çalışma kılavuzları, gelecekteki olay çözüm süresini kısaltan kurumsal bilgiyi kayda geçirir. Yapay Zekâ Mühendisliği: LLM, RAG ve Aracılar öğrenim yolunu tamamladığınız için tebrikler!

Sıkça Sorulan Sorular

“Değerlendirme, Dağıtım ve Geriye Dönük Değerlendirme” dersi ücretsiz mi?

Evet — “Değerlendirme, Dağıtım ve Geriye Dönük Değerlendirme” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve AI Engineering Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. AI Engineering Academy kursu toplamda 4 dersten oluşur.

“Değerlendirme, Dağıtım ve Geriye Dönük Değerlendirme” dersinde ne öğreneceğim?

Getirme ölçütlerini, LLM-as-judge kalite puanlarını ve yük testlerini içeren kapsamlı değerlendirme düzeneğini çalıştırın, bir bulut sağlayıcısına dağıtın ve öğrenilen dersleri belgeleyen bir geriye… AI Engineering Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

AI Engineering Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te AI Engineering Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“Değerlendirme, Dağıtım ve Geriye Dönük Değerlendirme” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu AI Engineering Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her AI Engineering Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Üretim Mimarisi Tasarlama
  2. Temel RAG ve Aracı Özelliklerini Uygulama
  3. Sağlamlaştırma: Güvenlik, Önbellekleme ve Güvenilirlik
  4. Değerlendirme, Dağıtım ve Geriye Dönük Değerlendirme
← AI Engineering Academy Sayfasına Dön