محركات الاستعلام وتوليف الاستجابات
تنسّق محركات الاستعلام بين الاسترجاع والتوليف باستخدام استراتيجيات مثل refine وcompact وtree_summarize.
محركات الاستعلام وتوليف الاستجابات درس مجاني في AI Agents على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في AI Agents، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة AI Agents 4 دروس في المجموع.
بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.
محرك الاستعلام = الاسترجاع + التوليف
يتكوّن محرك استعلام LlamaIndex من مرحلتين:
- الاسترجاع — العثور على المقاطع ذات الصلة
- التوليف — إنشاء إجابة من تلك المقاطع
يمكنكم ضبط المرحلتين كلتيهما.
The Default Query Engine
query_engine = index.as_query_engine()
response = query_engine.query('What is our refund policy?')
print(response.response) # the answer
print(response.source_nodes) # the chunks usedأنماط الاستجابة
توضح هذه الأنماط كيفية تجميع المحرك للإجابة النهائية من المقاطع المسترجعة:
- refine — تمرير المقاطع واحدًا تلو الآخر وتحسين الإجابة (الأكثر دقة والأبطأ)
- compact — إدراج أكبر عدد ممكن من المقاطع في السياق في كل استدعاء (الافتراضي)
- tree_summarize — تلخيص تكراري
- simple_summarize — استدعاء واحد يضم جميع المقاطع
Setting Response Mode
query_engine = index.as_query_engine(response_mode='tree_summarize')Configuring Retrieval
query_engine = index.as_query_engine(
similarity_top_k=5,
response_mode='compact'
)المطالبات المخصصة
أدخلوا قوالب المطالبات الخاصة بكم:
from llama_index.core.prompts import PromptTemplate
qa_template = PromptTemplate(
'Context:\n{context_str}\n\nQuestion: {query_str}\nAnswer:'
)
query_engine.update_prompts({'response_synthesizer:text_qa_template': qa_template})Streaming Responses
query_engine = index.as_query_engine(streaming=True)
response = query_engine.query('Hello')
for token in response.response_gen:
print(token, end='', flush=True)الاستشهادات
استخدموا CitationQueryEngine للحصول على استشهادات ينشئها نموذج اللغة الكبير:
from llama_index.core.query_engine import CitationQueryEngine
engine = CitationQueryEngine.from_args(index, similarity_top_k=4)
response = engine.query('What is our refund policy?')
print(response.response)
for i, node in enumerate(response.source_nodes):
print(f'[{i+1}] {node.metadata}')المعالجات اللاحقة
أعيدوا ترتيب العقد المسترجعة أو صفّوها قبل التوليف:
from llama_index.postprocessor.cohere_rerank import CohereRerank
rerank = CohereRerank(api_key=COHERE_KEY, top_n=3)
query_engine = index.as_query_engine(
similarity_top_k=20, # retrieve 20
node_postprocessors=[rerank] # rerank to top 3
)Metadata Filters
from llama_index.core.vector_stores import MetadataFilters, ExactMatchFilter
filters = MetadataFilters(filters=[
ExactMatchFilter(key='department', value='engineering')
])
query_engine = index.as_query_engine(filters=filters)Async Queries
response = await query_engine.aquery('What is our refund policy?')
print(response.response)محرك المحادثة
للمحادثات متعددة الأدوار التي تتضمن ذاكرة:
chat_engine = index.as_chat_engine(chat_mode='context')
response = chat_engine.chat('What is our refund policy?')
followup = chat_engine.chat('And for opened items?')خطوط الأنابيب وسير العمل
بالنسبة إلى الوكلاء المعقدين متعددي الخطوات، توفر LlamaIndex Workflows تدفقًا موجّهًا بالأحداث بطابع Pythonic — وهو مشابه من حيث الفكرة لـ LangGraph.
نمط الاستجابة
أي نمط استجابة هو الأبطأ لكنه الأكثر دقة؟
مراجعة سريعة
اضبطوا top_k وresponse_mode والمعالجات اللاحقة ومرشحات البيانات الوصفية لتشكيل محرك الاستعلام. استخدموا CitationQueryEngine للحصول على إجابات موثوقة.
الأسئلة الشائعة
هل درس «محركات الاستعلام وتوليف الاستجابات» مجاني؟
نعم — نص درس «محركات الاستعلام وتوليف الاستجابات» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة AI Agents، انتقل إلى CoddyKit PRO. تتضمن دورة AI Agents 4 دروس في المجموع.
ماذا ستتعلم في «محركات الاستعلام وتوليف الاستجابات»؟
تنسّق محركات الاستعلام بين الاسترجاع والتوليف باستخدام استراتيجيات مثل refine وcompact وtree_summarize. تتمرن على AI Agents مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ AI Agents؟
لا تُشترط خبرة سابقة. AI Agents على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.
كم من الوقت يستغرق درس «محركات الاستعلام وتوليف الاستجابات»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس AI Agents هذا؟
نعم. كل درس في AI Agents يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- محملات المستندات ومحللاتها
- هرمية الفهرسة: المتجه والشجرة والكلمات المفتاحية
- محركات الاستعلام وتوليف الاستجابات
- استراتيجية تفكيك الأسئلة الفرعية