rom rag_opt.eval import ContextPrecision, ContextRecall, MRR, NDCG
from rag_opt import init_chat_model, init_embeddings
llm = init_chat_model(model="gpt-3.5-turbo",
model_provider="openai",
api_key=OPENAI_API_KEY)
embeddings = init_embeddings(model="all-MiniLM-L6-v2",
model_provider="huggingface",
api_key=HUGGINFACE_API_KEY)
metrics = [
ContextPrecision(llm=llm, limit_contexts=5),
ContextRecall(llm=llm),
MRR(embedding_model=embeddings),
NDCG(embedding_model=embeddings)
]
evaluator = RAGEvaluator(metrics=metrics)
eval_dataset = ... # rag.get_batch_answers(train_dataset)
results = evaluator.evaluate(eval_dataset,return_tensor=False)
for result in results.items():
print(f"{result.name}: {result.value:.3f}")