Vyhodnocení řetězce
Teď přichází na řadu skutečné vyhodnocení výsledného výstupu — porovnáš ho s odpovědí od odborníka na danou problematiku. K tomuto porovnání použiješ třídu LangChainStringEvaluator z LangSmith.
prompt_template pro vyhodnocení řetězce je už připravená:
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:
Výstup z RAG řetězce je uložen jako predicted_answer a odpověď odborníka jako ref_answer.
Všechny potřebné třídy jsou už naimportované.
Toto cvičení je součástí kurzu
Retrieval Augmented Generation (RAG) with LangChain
Pokyny k cvičení
- Vytvoř QA string evaluátor LangSmith s použitím poskytnutých
eval_llmaprompt_template. - Vyhodnoť výstup RAG,
predicted_answer, jeho porovnáním s odpovědí odborníka naquery, která je uložena jakoref_answer.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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}")