استكشف Multimodal RAG لمعالجة النصوص والصور والفيديو. تعرف على كيفية قيام Ultralytics بتحسين خطوط أنابيب استرجاع الذكاء الاصطناعي للحصول على استجابات أكثر دقة ومراعاة للسياق.
الاسترجاع المتعدد الوسائط المعزز بالتوليد (Multimodal RAG) هو إطار عمل متقدم للذكاء الاصطناعي (AI) يوسع نطاق أنظمة RAG التقليدية لمعالجة أنواع مختلفة من البيانات والتفكير فيها، مثل النصوص والصور والفيديو والصوت. في حين أن الاسترجاع المعزز بالتوليد (RAG) تحسن دقة نموذج اللغة الكبيرة (LLM) من خلال استرجاع المستندات النصية ذات الصلة، فإن الاسترجاع المتعدد الوسائط RAG يمكّن النماذج من "الرؤية" و"السمع" من خلال استرجاع السياق من قاعدة معرفية متعددة الوسائط. هذا النهج يرسخ توليد النموذج في أدلة بصرية أو سمعية ملموسة ، مما يقلل بشكل كبير من الهلوسة في نماذج اللغة الكبيرة (LLM) ويمكّن المهام المعقدة مثل الإجابة على الأسئلة المرئية عبر مجموعات البيانات الخاصة. من خلال الاستفادة من التعلم متعدد الوسائط، يمكن لهذه الأنظمة توليف المعلومات من استعلام المستخدم (على سبيل المثال، النص) والأصول المسترجعة (على سبيل المثال، رسم بياني أو إطار مراقبة) لإنتاج ردود شاملة ومدركة للسياق.
عادةً ما تعكس بنية نظام RAG متعدد الوسائط خط الأنابيب القياسي "الاسترجاع ثم التوليد" ولكنها تتكيف مع البيانات غير النصية. تعتمد هذه العملية بشكل كبير على قواعد البيانات المتجهة والمساحات الدلالية المشتركة.
تقوم RAG متعددة الوسائط بتحويل الصناعات من خلال تمكين وكلاء الذكاء الاصطناعي من التفاعل مع العالم المادي من خلال البيانات المرئية.
لفهم المكانة المحددة لـ Multimodal RAG، من المفيد تمييزها عن المفاهيم ذات الصلة:
يمكن للمطورين إنشاء مكون الاسترجاع لخط أنابيب RAG متعدد الوسائط باستخدام Ultralytics YOLO. من خلال اكتشاف وتصنيف الكائنات داخل الصور، YOLO بيانات وصفية منظمة يمكن فهرستها للاسترجاع النصي أو استخدامها لقص مناطق الصورة ذات الصلة لـ VLM. تعمل Ultralytics على تبسيط تدريب هذه النماذج البصرية المتخصصة للتعرف على الكائنات المخصصة الضرورية لمجال عملك المحدد.
يوضح المثال التالي استخدام YOLO26 لاستخراج السياق البصري (الأجسام المكتشفة) من صورة، والتي يمكن بعد ذلك تمريرها إلى LLM كجزء من سير عمل RAG.
from ultralytics import YOLO
# Load the YOLO26 model (smaller, faster, and more accurate)
model = YOLO("yolo26n.pt")
# Run inference on an image to 'retrieve' visual content
results = model("https://ultralytics.com/images/bus.jpg")
# Extract detected class names to form a text context
detected_objects = results[0].boxes.cls.tolist()
object_names = [model.names[int(cls)] for cls in detected_objects]
print(f"Retrieved Context: Image contains {', '.join(object_names)}")
# Output: Retrieved Context: Image contains bus, person, person, person