Ragas doğruluk (faithfulness) değerlendirmesi
Bu egzersizde, 1. Bölümün sonunda oluşturduğun RAG mimarisinin doğruluğunu (faithfulness) değerlendireceksin. Bu zincir senin için yeniden tanımlandı ve chain değişkeni üzerinden kullanılabilir durumda.
Sağlanan query ifadesini, zincirin çıktısını ve getirilen çıktıyı kullanarak ragas çatısını (framework) ile doğruluğu değerlendireceksin.
Gerekli sınıflar senin için zaten içe aktarıldı.
Bu egzersiz, kursun bir parçasıdır
LangChain ile Retrieval Augmented Generation (RAG)
Egzersiz talimatları
- Verilen
queryileretrieverüzerinde sorgu çalıştır ve bir liste üreteci kullanarak getirilen her belgeden metni çıkar. - Bir
ragasdoğruluk (faithfulness) zinciri tanımla. - Mevcut RAG
chainzincirinin doğruluğunu değerlendir; yanıt üretmek için zinciri çağırman gerekecek.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
from ragas.metrics import faithfulness
# Query the retriever using the query and extract the document text
query = "How does RAG improve question answering with LLMs?"
retrieved_docs = [doc.____ for doc in retriever.____(____)]
# Define the faithfulness chain
faithfulness_chain = ____(____, llm=llm, embeddings=embeddings)
# Evaluate the faithfulness of the RAG chain
eval_result = ____({
"question": ____,
"answer": ____.____(query),
"contexts": ____
})
print(eval_result)