ÎncepețiÎncepe gratuit

Evaluarea prin comparare de șiruri

E momentul să evaluezi rezultatul final comparându-l cu un răspuns scris de un expert în domeniu. Vei folosi clasa LangChainStringEvaluator din LangSmith pentru a realiza această evaluare prin comparare de șiruri.

Un prompt_template pentru evaluarea prin șiruri a fost deja pregătit pentru tine:

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:

Rezultatul lanțului RAG este stocat în predicted_answer, iar răspunsul expertului este stocat în ref_answer.

Toate clasele necesare au fost deja importate pentru tine.

Acest exercițiu face parte din cursul

Retrieval Augmented Generation (RAG) cu LangChain

Vezi cursul

Instrucțiuni pentru exercițiu

  • Creează evaluatorul QA string din LangSmith folosind eval_llm și prompt_template furnizate.
  • Evaluează rezultatul RAG, predicted_answer, comparându-l cu răspunsul expertului la query, stocat în ref_answer.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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}")
Editează și rulează codul