تكامل LangChain
تعلم كيفية دمج Rememberizer كاسترجاع في LangChain لتوفير وصول تطبيق LangChain الخاص بك إلى بحث قوي في قاعدة بيانات المتجهات.
Last updated
تعلم كيفية دمج Rememberizer كاسترجاع في LangChain لتوفير وصول تطبيق LangChain الخاص بك إلى بحث قوي في قاعدة بيانات المتجهات.
Last updated
يتكامل Rememberizer مع LangChain من خلال فئة RememberizerRetriever
، مما يتيح لك دمج قدرات البحث الدلالي لـ Rememberizer بسهولة في تطبيقاتك المدعومة من LangChain. تشرح هذه الدليل كيفية إعداد واستخدام هذا التكامل لبناء تطبيقات LLM متقدمة مع الوصول إلى قاعدة معرفتك.
LangChain هو إطار عمل شائع لبناء التطبيقات باستخدام نماذج اللغة الكبيرة (LLMs). من خلال دمج Rememberizer مع LangChain، يمكنك:
استخدام قاعدة المعرفة الخاصة بك في Rememberizer في تطبيقات RAG (التوليد المعزز بالاسترجاع)
إنشاء روبوتات محادثة يمكنها الوصول إلى مستنداتك وبياناتك
بناء أنظمة للإجابة على الأسئلة تستفيد من معرفتك
تطوير وكلاء يمكنهم البحث والتفكير في معلوماتك
التكامل متاح في وحدة langchain_community.retrievers
.
قبل أن تبدأ، تحتاج إلى:
حساب Rememberizer مع إنشاء المعرفة العامة
مفتاح API للوصول إلى معرفتك العامة
بيئة Python مع تثبيت LangChain
قم بتثبيت الحزم المطلوبة:
إذا كنت تخطط لاستخدام نماذج OpenAI (كما هو موضح في الأمثلة أدناه):
هناك طريقتان لمصادقة RememberizerRetriever
:
متغير البيئة: قم بتعيين متغير البيئة REMEMBERIZER_API_KEY
معامل مباشر: قم بتمرير مفتاح API مباشرة عند تهيئة المسترجع
تقبل فئة RememberizerRetriever
هذه المعلمات:
top_k_results
int
10
عدد الوثائق التي سيتم إرجاعها من البحث
rememberizer_api_key
str
None
مفتاح API للمصادقة (اختياري إذا تم تعيينه كمتغير بيئي)
خلف الكواليس، يقوم المسترجع بإجراء مكالمات API إلى نقطة نهاية البحث الخاصة بـ Rememberizer مع معلمات قابلة للتكوين إضافية:
prev_chunks
عدد القطع قبل القطعة المطابقة التي يجب تضمينها (الافتراضي: 2)
next_chunks
عدد القطع بعد القطعة المطابقة التي يجب تضمينها (الافتراضي: 2)
return_full_content
ما إذا كان يجب إرجاع محتوى الوثيقة بالكامل (الافتراضي: true)
إليك مثال بسيط لاسترجاع الوثائق من Rememberizer باستخدام LangChain:
os.environ["REMEMBERIZER_API_KEY"] = "rem_ck_your_api_key"
retriever = RememberizerRetriever(top_k_results=5)
docs = retriever.get_relevant_documents(query="كيف تعمل تمثيلات المتجهات؟")
if docs: print(f"الوثيقة: {docs[0].metadata['name']}") print(f"المحتوى: {docs[0].page_content[:200]}...")
هذا المثال ينشئ نظامًا للإجابة على الأسئلة يسترجع المعلومات من Rememberizer ويستخدم GPT-3.5 لصياغة الإجابات:
os.environ["REMEMBERIZER_API_KEY"] = "rem_ck_your_api_key" os.environ["OPENAI_API_KEY"] = "your_openai_api_key"
retriever = RememberizerRetriever(top_k_results=5) llm = ChatOpenAI(model_name="gpt-3.5-turbo", temperature=0)
qa_chain = RetrievalQA.from_chain_type( llm=llm, chain_type="stuff", # أبسط طريقة - فقط قم بتجميع جميع الوثائق في الطلب retriever=retriever, return_source_documents=True )
response = qa_chain.invoke({"query": "ما هو RAG في سياق الذكاء الاصطناعي؟"})
print(f"الإجابة: {response['result']}") print("\nالمصادر:") for idx, doc in enumerate(response['source_documents']): print(f"{idx+1}. {doc.metadata['name']}")
os.environ["REMEMBERIZER_API_KEY"] = "rem_ck_your_api_key" os.environ["OPENAI_API_KEY"] = "your_openai_api_key"
retriever = RememberizerRetriever(top_k_results=5) llm = ChatOpenAI(model_name="gpt-3.5-turbo") memory = ConversationBufferMemory( memory_key="chat_history", return_messages=True )
conversation = ConversationalRetrievalChain.from_llm( llm=llm, retriever=retriever, memory=memory )
questions = [ "ما هو RAG؟", "كيف تستخدم نماذج اللغة الكبيرة ذلك؟", "ما هي قيود هذه الطريقة؟", ]
for question in questions: response = conversation.invoke({"question": question}) print(f"السؤال: {question}") print(f"الإجابة: {response['answer']}\n")
rememberizer_retriever = RememberizerRetriever(top_k_results=3) web_retriever = WebResearchRetriever(...) # تكوين مسترجع آخر
ensemble_retriever = EnsembleRetriever( retrievers=[rememberizer_retriever, web_retriever], weights=[0.7, 0.3] # نتائج Rememberizer لها وزن أعلى )
افحص نتائج البحث الخام قبل تمريرها إلى LLM لتحديد مشكلات الاسترجاع
دليل مفاهيم [Retriever] في LangChain (https://python.langchain.com/docs/concepts/#retrievers)
أدلة كيفية استخدام [Retriever] في LangChain (https://python.langchain.com/docs/how_to/#retrievers)
وثائق [API] لـ Rememberizer (https://docs.rememberizer.ai/developer/api-docs/)
[متاجر المتجهات] (https://docs.rememberizer.ai/developer/vector-stores) في Rememberizer
[إنشاء GPT لـ Rememberizer] (creating-a-rememberizer-gpt.md) - نهج بديل لدمج الذكاء الاصطناعي
للحصول على تعليمات مفصلة حول إنشاء المعرفة العامة وتوليد مفتاح API، راجع .