Ragas evaluates retrieval-augmented generation systems by applying selected metrics to a test dataset. A Python pipeline supplies an LLM, embeddings, and a column map connecting dataset fields to evaluation inputs. section 3.6.4
from datasets import load_dataset
from langchain_openai import ChatOpenAI, OpenAIEmbeddings
from ragas import evaluate #1
from ragas.metrics import (
answer_relevancy,
faithfulness,
context_recall,
context_precision,
)
amnesty_qa = load_dataset("explodinggradients/amnesty_qa", "english_v2")
amnesty_qa
result = evaluate(
amnesty_qa["eval"],
metrics=[
context_precision,
faithfulness,
answer_relevancy,
context_recall,
],
llm=ChatOpenAI(model="gpt-4o-mini"),
embeddings=OpenAIEmbeddings(),
column_map={"user_input": "question", "response": "answer",
"retrieved_contexts": "contexts", "reference": "ground_truth"},
)
print(results)
The implementation loads an Amnesty QA dataset and evaluates context precision, faithfulness, answer relevancy, and context recall using GPT-4o-mini and OpenAI embeddings. section 3.6.4
