दस्तावेज़ रिट्रीवल का अनुकूलन

LangChain के साथ Retrieval Augmented Generation (RAG)

Meri Nova

Machine Learning Engineer

RAG में R को जगह देना...

वेक्टर डेटाबेस से दस्तावेज़ निकालकर एप्लिकेशन को भेजे जा रहे हैं ताकि उत्तर जेनरेट हो सके.

LangChain के साथ Retrieval Augmented Generation (RAG)

Dense

चंक्स को एकल वेक्टर में एन्कोड करें, जिसमें non-zero कॉम्पोनेंट हों

एक वेक्टर स्पेस जिसमें मिलते-जुलते टर्म साथ समूहित हैं: Large Language Model, AI, और Machine Learning.

  • फायदे: सेमांटिक अर्थ कैप्चर करना
  • नुकसान: कंप्यूटेशन महंगा
LangChain के साथ Retrieval Augmented Generation (RAG)

Dense

चंक्स को एकल वेक्टर में एन्कोड करें, जिसमें non-zero कॉम्पोनेंट हों

वेक्टर स्पेस में एम्बेड किए गए टर्म, जहाँ अधिक सेमांटिक रूप से समान टर्म और पास समूहित हैं.

  • फायदे: सेमांटिक अर्थ कैप्चर करना
  • नुकसान: कंप्यूटेशन महंगा

Sparse

अधिकांशतः zero कॉम्पोनेंट के साथ word matching द्वारा एन्कोड करें

विशिष्ट टर्म वाले दस्तावेज़, जिनमें सबसे अधिक टर्म वाले दस्तावेज़ हाइलाइट हैं.

  • फायदे: सटीक, समझाने योग्य, रेयर-शब्द हैंडलिंग
  • नुकसान: जनरलाइज़ेबिलिटी
LangChain के साथ Retrieval Augmented Generation (RAG)

Sparse रिट्रीवल मेथड्स

TF-IDF: दस्तावेज़ को उन शब्दों से एन्कोड करता है जो उसे यूनिक बनाते हैं

विशिष्ट टर्म वाले दस्तावेज़, जिनमें सबसे अधिक टर्म वाले दस्तावेज़ हाइलाइट हैं.

BM25: हाई-फ़्रीक्वेंसी शब्दों के एन्कोडिंग को सैचुरेट करने से रोकने में मदद करता है

LangChain के साथ Retrieval Augmented Generation (RAG)

BM25 रिट्रीवल

from langchain_community.retrievers import BM25Retriever

chunks = [ "Python was created by Guido van Rossum and released in 1991.", "Python is a popular language for machine learning (ML).", "The PyTorch library is a popular Python library for AI and ML." ]
bm25_retriever = BM25Retriever.from_texts(chunks, k=3)
LangChain के साथ Retrieval Augmented Generation (RAG)

BM25 रिट्रीवल

results = bm25_retriever.invoke("When was Python created?")
print("Most Relevant Document:")
print(results[0].page_content)
Most Relevant Document:
Python was created by Guido van Rossum and released in 1991.
  • Python was created by Guido van Rossum and released in 1991."
  • "Python is a popular language for machine learning (ML)."
  • "The PyTorch library is a popular Python library for AI/ML."
LangChain के साथ Retrieval Augmented Generation (RAG)

RAG में BM25

retriever = BM25Retriever.from_documents(
    documents=chunks, 
    k=5
)

chain = ({"context": retriever, "question": RunnablePassthrough()} | prompt | llm | StrOutputParser() )
1 https://www.datacamp.com/blog/what-is-retrieval-augmented-generation-rag
LangChain के साथ Retrieval Augmented Generation (RAG)

RAG में BM25

print(chain.invoke("How can LLM hallucination impact a RAG application?"))
RAG एप्लिकेशन विषय से हटकर या गलत उत्तर जेनरेट कर सकता है.
LangChain के साथ Retrieval Augmented Generation (RAG)

अभ्यास करते हैं!

LangChain के साथ Retrieval Augmented Generation (RAG)

Preparing Video For Download...