Оцінювання точності контексту в Ragas
Щоб розпочати оцінювання вашого RAG, ви почнете з метрики context precision у фреймворку ragas. Нагадаємо, context precision фактично вимірює, наскільки дотичні (релевантні) витягнуті документи до вхідного запиту.
У цій вправі вам надано вхідний запит, документи, які витягнув застосунок RAG, та еталон — документ, який, на думку експерта‑людини, був найдоречнішим для витягування. Ви обчислите точність контексту для цих рядків, перш ніж оцінювати реальний ланцюжок RAG у LangChain в наступній вправі.
Текст, згенерований застосунком RAG, збережено у змінній model_response для стислості.
Ця вправа є частиною курсу
Retrieval Augmented Generation (RAG) з LangChain
Інструкції до вправи
- Визначте ланцюжок
ragasдля обчислення context precision. - Оцініть точність контексту витягнутих документів для вхідного запиту; значення
"ground_truth"уже задане.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
from ragas.metrics import context_precision
# Define the context precision chain
context_precision_chain = ____(metric=____, llm=llm, embeddings=embeddings)
# Evaluate the context precision of the RAG chain
eval_result = ____({
"question": "How does RAG enable AI applications?",
"ground_truth": "RAG enables AI applications by integrating external data in generative models.",
"contexts": [
"RAG enables AI applications by integrating external data in generative models.",
"RAG enables AI applications such as semantic search engines, recommendation systems, and context-aware chatbots."
]
})
print(f"Context Precision: {eval_result['context_precision']}")