Avaliação de strings
Hora de realmente avaliar a saída final comparando-a com uma resposta escrita por um especialista no assunto. Você usará a classe LangChainStringEvaluator do LangSmith para realizar essa avaliação por comparação de strings.
Um prompt_template para avaliação de strings já foi escrito para você como:
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:
A saída da cadeia RAG é armazenada como predicted_answer e a resposta do especialista é armazenada como ref_answer.
Todas as classes necessárias já foram importadas para você.
Este exercício faz parte do curso
Retrieval Augmented Generation (RAG) com LangChain
Instruções do exercício
- Crie o avaliador de strings de QA do LangSmith usando
eval_llmeprompt_templatefornecidos. - Avalie a saída do RAG,
predicted_answer, comparando-a com a resposta do especialista àquery, que está armazenada comoref_answer.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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}")