RAG-Evaluierung (RAGAS, Recall@K)
Messen Sie Faktentreue, Antwortrelevanz, Kontextpräzision und recall@K, um zu erkennen, ob Änderungen Verbesserungen bringen.
RAG-Evaluierung (RAGAS, Recall@K) ist eine kostenlose AI Agents-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des AI Agents-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der AI Agents-Kurs umfasst insgesamt 4 Lektionen.
Was Sie nicht messen können, können Sie nicht verbessern
RAG bietet viele Stellschrauben: Chunk-Größe, Top-K, Re-Ranker, Prompt und Modell. Ohne Metriken ist jede Änderung ein Ratespiel.
Wichtige Metriken für RAG
- Abruf: Haben wir die richtigen Chunks abgerufen?
- Faithfulness: Bleibt die Antwort auf die Chunks gestützt?
- Antwortrelevanz: Geht die Antwort auf die Frage ein?
- Kontextpräzision/-Recall: Anteil der abgerufenen nützlichen Chunks
Recall@K
Erstellen Sie eine Goldmenge aus Paaren der Form (Frage, Liste relevanter Chunk-IDs). Messen Sie, wie häufig die abgerufenen Top-K-Chunks mindestens einen relevanten Chunk enthalten:
def recall_at_k(eval_set, k=5):
hits = 0
for item in eval_set:
retrieved = retriever(item['question'], k=k)
if any(c.id in item['relevant_ids'] for c in retrieved):
hits += 1
return hits / len(eval_set)Precision@K
Welcher Anteil der abgerufenen Chunks ist relevant?
def precision_at_k(eval_set, k=5):
total_relevant = 0
total_retrieved = 0
for item in eval_set:
retrieved = retriever(item['question'], k=k)
total_relevant += sum(1 for c in retrieved if c.id in item['relevant_ids'])
total_retrieved += k
return total_relevant / total_retrievedMRR (Mean Reciprocal Rank)
Wie weit oben steht das ERSTE relevante Dokument?
def mrr(eval_set, k=10):
total = 0
for item in eval_set:
retrieved = retriever(item['question'], k=k)
for rank, c in enumerate(retrieved, start=1):
if c.id in item['relevant_ids']:
total += 1 / rank
break
return total / len(eval_set)Faithfulness (LLM-as-Judge)
Verwenden Sie ein LLM, um zu prüfen, ob jede Behauptung in der Antwort durch den Kontext gestützt wird:
judge_prompt = '''
Given the context and answer, identify each factual claim in the answer.
For each claim, judge whether the context supports it.
Return {claims: [{claim, supported: true/false}]}.
'''
result = judge_llm.invoke(judge_prompt.format(context=ctx, answer=ans))Antwortrelevanz
Umgekehrte Bewertung: Fragen Sie ein LLM: „Könnte diese Antwort die Antwort auf diese Frage sein?“ So erkennen Sie themenfremde Ausgaben.
RAGAS-Framework
RAGAS automatisiert die genannten Metriken:
# pip install ragas
from ragas import evaluate
from ragas.metrics import faithfulness, answer_relevancy, context_precision, context_recall
results = evaluate(
dataset, # HF dataset with question, contexts, answer, ground_truth
metrics=[faithfulness, answer_relevancy, context_precision, context_recall]
)
print(results)Eine Goldmenge erstellen
20–200 von Menschen zusammengestellte Tupel der Form (Frage, erwartete_Antwort, relevante_Chunks). Decken Sie Folgendes ab:
- Häufige Anfragen
- Grenzfälle
- Gegnerische Eingaben (Fragen außerhalb des Korpus)
Synthetische Evaluierungsmengen
Bootstrapping: Bitten Sie ein LLM, aus Ihren Dokumenten Frage-Antwort-Paare zu erzeugen. Geringere Qualität, aber schnell:
synth_prompt = 'Read this document and write 3 questions a user might ask, with answers from the doc:\n{doc}'
# Use as a starting point; humans curate later.
print(synth_prompt)
LangSmith- und Langfuse-Datasets
Mit beiden Tools können Sie Produktions-Traces in Evaluierungsdatensätze umwandeln. Wählen Sie 50 echte Fragen aus, bei denen die Ergebnisse schlecht waren, kennzeichnen Sie die korrekten Antworten und verwenden Sie diese als Benchmark.
Eine einzelne Metrik nicht überoptimieren
Die Maximierung von Recall@K kann Precision@K verschlechtern (zu viele falsch-positive Ergebnisse). Verfolgen Sie mehrere Metriken sowie eine kombinierte Metrik.
A/B-Tests in der Produktion
Sobald Sie über eine Offline-Evaluierung verfügen, die mit der Benutzerzufriedenheit korreliert, können Sie Änderungen in der Produktion per A/B-Test testen und sowohl die Metriken als auch die Zustimmungsraten der Benutzer vergleichen.
Definition von Recall@K
Was bedeutet Recall@5 = 0.8?
Zusammenfassung
Erstellen Sie eine Goldmenge. Messen Sie Recall@K, Precision@K, MRR, Faithfulness und Antwortrelevanz. Verwenden Sie RAGAS zur Automatisierung. Iterieren Sie auf Grundlage Ihrer Metriken.
Häufig gestellte Fragen
Ist die Lektion „RAG-Evaluierung (RAGAS, Recall@K)“ kostenlos?
Ja — der vollständige Text von „RAG-Evaluierung (RAGAS, Recall@K)“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des AI Agents-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der AI Agents-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „RAG-Evaluierung (RAGAS, Recall@K)“?
Messen Sie Faktentreue, Antwortrelevanz, Kontextpräzision und recall@K, um zu erkennen, ob Änderungen Verbesserungen bringen. Du übst AI Agents mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um AI Agents zu starten?
Keine Vorkenntnisse erforderlich. AI Agents auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.
Wie lange dauert die Lektion „RAG-Evaluierung (RAGAS, Recall@K)“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser AI Agents-Lektion Code schreiben und ausführen?
Ja. Jede AI Agents-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Re-Ranking mit Cross-Encodern
- HyDE: hypothetische Dokument-Embeddings
- Multi-Vector-Retrieval (ColBERT)
- RAG-Evaluierung (RAGAS, Recall@K)