Stringbewertung
Zeit, die finale Ausgabe wirklich zu bewerten, indem du sie mit einer Antwort einer Fachexpertin bzw. eines Fachexperten vergleichst. Du verwendest dafür die Klasse LangChainStringEvaluator von LangSmith, um diese Stringvergleichs-Bewertung durchzuführen.
Eine prompt_template für die Stringbewertung wurde bereits für dich erstellt als:
You are an expert professor specialized in grading students' answers to questions.
You are grading the following question:{query}
Here is the real answer:{answer}
You are grading the following predicted answer:{result}
Respond with CORRECT or INCORRECT:
Grade:
Die Ausgabe der RAG-Chain ist als predicted_answer gespeichert, und die Expert:innenantwort ist als ref_answer gespeichert.
Alle benötigten Klassen wurden bereits für dich importiert.
Diese Übung ist Teil des Kurses
Retrieval Augmented Generation (RAG) mit LangChain
Anleitung zur Übung
- Erstelle den LangSmith-QA-String-Evaluator mit dem bereitgestellten
eval_llmundprompt_template. - Bewerte die RAG-Ausgabe
predicted_answer, indem du sie mit der Expert:innenantwort zurqueryvergleichst, die inref_answergespeichert ist.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Create the QA string evaluator
qa_evaluator = ____(
"____",
config={
"llm": ____,
"prompt": ____
}
)
query = "How does RAG improve question answering with LLMs?"
# Evaluate the RAG output by evaluating strings
score = qa_evaluator.evaluator.____(
prediction=____,
reference=____,
input=____
)
print(f"Score: {score}")