توضح هذه الدفتر كيفية استرجاع المستندات من Rememberizer، وهو تنسيق المستندات المستخدم في المراحل التالية.
التحضير
ستحتاج إلى مفتاح API: يمكنك الحصول على واحد بعد إنشاء معرفة مشتركة. يمكن زيارة التعليمات التفصيلية حول كيفية إنشاء معرفة مشتركة في تسجيل واستخدام مفاتيح API.
بمجرد حصولك على مفتاح API، يجب عليك تعيينه كمتغير بيئي REMEMBERIZER_API_KEY أو تمريره كـ rememberizer_api_key عند تهيئة RememberizerRetriever.
تحتوي RememberizerRetriever على هذه المعاملات:
- top_k_results اختياري: الافتراضي=10. استخدمه لتحديد عدد الوثائق المعادة.
- rememberizer_api_key اختياري: مطلوب إذا لم تقم بتعيين المتغير البيئي REMEMBERIZER_API_KEY.
تحتوي get_relevant_documents() على معامل واحد، query: نص حر يُستخدم للعثور على الوثائق في المعرفة المشتركة لـ Rememberizer.ai.
# إعداد مفتاح API
from getpass import getpass
REMEMBERIZER_API_KEY = getpass()
import os
from langchain_community.retrievers import RememberizerRetriever
os.environ["REMEMBERIZER_API_KEY"] = REMEMBERIZER_API_KEY
retriever = RememberizerRetriever(top_k_results=5)
docs = retriever.get_relevant_documents(query="كيف تعمل نماذج اللغة الكبيرة؟")
docs[0].metadata # معلومات الوصف للوثيقة
{'id': 13646493,
'document_id': '17s3LlMbpkTk0ikvGwV0iLMCj-MNubIaP',
'name': 'ما هي نموذج اللغة الكبيرة (LLM) _ _ Cloudflare.pdf',
'type': 'application/pdf',
'path': '/langchain/ما هي نموذج اللغة الكبيرة (LLM) _ _ Cloudflare.pdf',
'url': 'https://drive.google.com/file/d/17s3LlMbpkTk0ikvGwV0iLMCj-MNubIaP/view',
'size': 337089,
'created_time': '',
'modified_time': '',
'indexed_on': '2024-04-04T03:36:28.886170Z',
'integration': {'id': 347, 'integration_type': 'google_drive'}}
print(docs[0].page_content[:400]) # محتوى الوثيقة
قبل، أو في سياقات جديدة. على مستوى ما " يفهمون " الدلالات بمعنى أنهم يمكنهم ربط الكلمات والمفاهيم بمعانيها، بعد أن رأوا تجميعها معًا بهذه الطريقة ملايين أو مليارات المرات. كيف يمكن للمطورين البدء بسرعة في بناء نماذج اللغة الخاصة بهم لبناء تطبيقات LLM، يحتاج المطورون إلى وصول سهل إلى مجموعات بيانات متعددة، ويحتاجون إلى أماكن لتلك المجموعات
الاستخدام في سلسلة
OPENAI_API_KEY = getpass()
os.environ["OPENAI_API_KEY"] = OPENAI_API_KEY
from langchain.chains import ConversationalRetrievalChain
from langchain_openai import ChatOpenAI
model = ChatOpenAI(model_name="gpt-3.5-turbo")
qa = ConversationalRetrievalChain.from_llm(model, retriever=retriever)
questions = [
"ما هو RAG؟",
"كيف تعمل نماذج اللغة الكبيرة؟",
]
chat_history = []
for question in questions:
result = qa.invoke({"question": question, "chat_history": chat_history})
chat_history.append((question, result["answer"]))
print(f"-> **السؤال**: {question} \n")
print(f"**الإجابة**: {result['answer']} \n")
-> **السؤال**: ما هو RAG؟
**الإجابة**: RAG تعني الجيل المعزز بالاسترجاع. إنه إطار عمل للذكاء الاصطناعي يسترجع الحقائق من قاعدة معرفة خارجية لتعزيز الردود التي تولدها نماذج اللغة الكبيرة (LLMs) من خلال توفير معلومات دقيقة ومحدثة. يساعد هذا الإطار المستخدمين على فهم العملية التوليدية لـ LLMs ويضمن أن النموذج لديه وصول إلى مصادر معلومات موثوقة.
-> **السؤال**: كيف تعمل نماذج اللغة الكبيرة؟
**الإجابة**: تعمل نماذج اللغة الكبيرة (LLMs) من خلال تحليل مجموعات بيانات ضخمة من اللغة لفهم وتوليد نص اللغة البشرية. إنها مبنية على التعلم الآلي، وبشكل خاص التعلم العميق، الذي يتضمن تدريب برنامج للتعرف على ميزات البيانات دون تدخل بشري. تستخدم LLMs الشبكات العصبية، وبشكل خاص نماذج المحولات، لفهم السياق في اللغة البشرية، مما يجعلها أفضل في تفسير اللغة حتى في السياقات الغامضة أو الجديدة. يمكن للمطورين البدء بسرعة في بناء نماذج LLM الخاصة بهم من خلال الوصول إلى مجموعات بيانات متعددة واستخدام خدمات مثل Vectorize من Cloudflare ومنصة Cloudflare Workers AI.