بناء أنظمة RAG جاهزة للإنتاج باستخدام LlamaIndex وGPT-4o.env file

Share:
درس تقني
متوسط
⏱ ٣٠ دقيقة قراءة
© بوابة الذكاء الاصطناعي ٢٠٢٦-٠٥-١١

تعلم كيفية دمج LlamaIndex مع أحدث نماذج الذكاء الاصطناعي لإنشاء نظام قوي لتوليد البيانات المعزز بالاسترجاع، مما يعزز قدرات معالجة البيانات.

المتطلبات الأساسية

  • LlamaIndex الإصدار ٠.١٠ أو أحدث (يوصى بالإصدار ٠.١٤+ لعام ٢٠٢٦)
  • الوصول إلى OpenAI API (GPT-4o أو أحدث)
  • مهارات برمجة بايثون متوسطة

ما الذي نبنيه

في هذا الدرس التقني، ستتعلم كيفية دمج LlamaIndex مع نماذج الذكاء الاصطناعي المتقدمة لبناء نظام قوي لتوليد البيانات المعزز بالاسترجاع (RAG). سيكون المشروع النهائي قادرًا على استرجاع البيانات ذات الصلة من مجموعة بيانات كبيرة وتوليد استجابات مناسبة سياقيًا باستخدام أحدث نماذج اللغة.

سيستفيد النظام من LlamaIndex لكفاءة فهرسة البيانات واسترجاعها، بينما يستخدم نماذج الذكاء الاصطناعي المتقدمة من OpenAI أو Hugging Face لتعزيز قدرات التوليد. يتيح هذا الدمج إنتاج مخرجات أكثر دقة ووعيًا بالسياق، مما يناسب التطبيقات مثل المساعدين الرقميين أو أدوات تحليل البيانات المعقدة.

الإعداد والتثبيت

لبدء العمل، نحتاج إلى إعداد البيئة عن طريق تثبيت LlamaIndex ومكتبات نماذج الذكاء الاصطناعي اللازمة. يضمن هذا الإعداد أن لديك جميع الأدوات المطلوبة لفهرسة البيانات والدمج مع نماذج الذكاء الاصطناعي.

pip install llama-index openai

بعد ذلك، تحتاج إلى تكوين متغيرات البيئة لتخزين مفاتيح API الخاصة بك. ستمكن هذه المفاتيح من الوصول الآمن إلى خدمات نماذج الذكاء الاصطناعي.

export OPENAI_API_KEY='your_openai_api_key_here'

الخطوة ١: إعداد LlamaIndex

أولاً، سنقوم بإعداد LlamaIndex للتعامل مع فهرسة البيانات. هذه الخطوة حاسمة لأنها تتيح استرجاع البيانات بكفاءة، وهو مكون أساسي في نظام RAG.

from llama_index.core import VectorStoreIndex, Document
Load your data into Document objects
data_samples = [
"Artificial Intelligence is transforming industries.",
"Machine Learning is a subset of AI.",
"Deep Learning is part of a broader family of machine learning methods."
]
documents = [Document(text=t) for t in data_samples]
Initialize and Index the data
index = VectorStoreIndex.from_documents(documents)

في هذا الكود، نقوم باستيراد مكونات LlamaIndex الأساسية. نغلف بياناتنا الخام في كائنات Document ونستخدم VectorStoreIndex للتعامل تلقائيًا مع التضمين والتخزين. يتيح هذا الإعداد استرجاع المستندات بسرعة بناءً على محتواها الدلالي.

الخطوة ٢: دمج نماذج الذكاء الاصطناعي

الآن بعد أن قمنا بفهرسة بياناتنا، الخطوة التالية هي دمج نموذج ذكاء اصطناعي لتوليد الاستجابات. سنستخدم أحدث نموذج من OpenAI لتحقيق ذلك.

from llama_index.llms.openai import OpenAI
Initialize the LLM (GPT-4o is the 2026 standard)
llm = OpenAI(model="gpt-4o", temperature=0.1)
def generate_response(query_text):
# Using the LLM directly for simple generation
response = llm.complete(query_text)
return str(response)
Example usage
print(generate_response("Explain the relationship between AI and Machine Learning."))

يقوم هذا المقطع البرمجي بدمج API الخاص بـ OpenAI من خلال الأغلفة المدمجة في LlamaIndex. نقوم بتعريف دالة generate_response التي تستخدم نموذج gpt-4o. يتيح هذا الدمج توليد استجابات متقدمة يمكن أن تكون مستندة إلى بياناتك المحددة.

الخطوة ٣: دمج الاسترجاع والتوليد

في هذه الخطوة، سنقوم بدمج قدرات الاسترجاع الخاصة بـ LlamaIndex مع قوة التوليد لنموذج الذكاء الاصطناعي لإنشاء نظام RAG سلس.

# Create a query engine that connects the index and the LLM
query_engine = index.as_query_engine(llm=llm)
def retrieve_and_generate(query):
# The engine handles retrieval and prompt construction automatically
response = query_engine.query(query)
return str(response)
Example usage
query = "What is the role of AI in modern technology?"
print(retrieve_and_generate(query))

هنا، نستخدم طريقة as_query_engine. هذه هي “السحر” في LlamaIndex: حيث يقوم تلقائيًا باسترجاع الأجزاء ذات الصلة من الفهرس، وإدراجها في قالب موجه، وإرسال الحزمة الكاملة إلى LLM. يعزز هذا النهج المدمج دقة الاستجابات بشكل كبير.

⚠️ خطأ شائع: تأكد من ضبط مفاتيح API الخاصة بك بشكل صحيح في متغيرات البيئة. سيؤدي فقدان أو خطأ في مفتاح API إلى حدوث أخطاء في المصادقة عند الوصول إلى خدمات نماذج الذكاء الاصطناعي.

اختبار تنفيذك

للتحقق من أن نظام RAG الخاص بنا يعمل بشكل صحيح، قم بتشغيل الاستفسارات التجريبية وتحقق من الاستجابات المولدة. يجب أن ترى مخرجات ذات صلة سياقية ومتسقة.

# Test the system
query = "How does AI impact the future of work?"
response = retrieve_and_generate(query)
print("Generated Response:", response)

عند تشغيل هذا الاختبار، توقع استجابة تجمع بذكاء بين المعلومات من المستندات المفهرسة مع رؤى جديدة يقدمها نموذج الذكاء الاصطناعي.

ما الذي تبنيه بعد ذلك

بمجرد أن تتقن هذا الدمج، فكر في توسيع مشروعك بالأفكار التالية:

  • تنفيذ واجهة ويب لتفاعلات المستخدم مع نظام RAG.
  • توسيع مجموعة البيانات لتشمل مستندات أكثر تنوعًا لتغطية مواضيع أوسع.
  • دمج نماذج ذكاء اصطناعي إضافية لمهام متخصصة، مثل تحليل المشاعر أو الترجمة اللغوية.

Have a question about this tutorial?

Our AI assistant has read this tutorial and is ready to answer all your questions instantly. Open the chat for step-by-step guidance!

Share:

هل كان هذا الشرح مفيداً؟