نما الجيل المعزز للاسترجاع (RAG) بشكل متزايد كوسيلة لتحسين جودة النص الناتجة عن نماذج اللغة الكبيرة. الآن بعد أن أصبحت LLMs متعددة الوسائط في Vouge ، فقد حان الوقت لتمديد RACT إلى بيانات متعددة الوسائط.
عندما نضيف القدرة على البحث واسترداد البيانات عبر طرائق متعددة ، نحصل على أداة قوية للتفاعل مع أقوى نماذج الذكاء الاصطناعي المتوفرة اليوم. ومع ذلك ، فإننا نضيف أيضًا طبقات جديدة من التعقيد لهذه العملية.
تشمل بعض الاعتبارات التي نحتاج إلى أخذها في الاعتبار:
على مستوى أكثر عملية ، إليك بعض المقابض الأساسية التي يمكننا تشغيلها:
هذا المشروع هو اختبار لاستكشاف هذه الأسئلة وأكثر من ذلك. يستخدم ثلاث مكتبات مفتوحة المصدر ، FiftyOne ، Llamaindex ، و Milvus ، لجعل عملية العمل مع بيانات متعددة الوسائط ، وتجريب تقنيات خرقة متعددة الوسائط مختلفة ، وإيجاد ما هو أفضل لحالة الاستخدام الخاصة بك بأكبر قدر الإمكان.
لاحظ أيضًا أن Llamaindex يقوم بتحديث API بشكل متكرر. هذا هو السبب في أن نسخة Llamaindex وحزمها المرتبطة بها كلها مثبتة؟
أولاً ، قم بتثبيت Fiftyone:
pip install fiftyoneبعد ذلك ، باستخدام بناء جملة CLI من FiftyOne ، قم بتنزيل وتثبيت المكون الإضافي FiftyOne Multimodal Rag:
fiftyone plugins download https://github.com/jacobmarks/fiftyone-multimodal-rag-pluginلدى Llamaindex عملية تثبيت مطوّلة (إذا كنت ترغب في إنشاء أي شيء متعدد الوسائط على الأقل). لحسن الحظ بالنسبة لك ، سيتم الاعتناء بهذا (وجميع تبعيات التثبيت الأخرى) مع الأمر التالي:
fiftyone plugins requirements @jacobmarks/multimodal_rag --installللبدء ، قم بتشغيل تطبيق FiftyOne. يمكنك القيام بذلك من المحطة عن طريق الجري:
fiftyone app launchأو يمكنك تشغيل رمز Python التالي:
import fiftyone as fo
session = fo . launch_app () اضغط الآن على مفتاح Backtick ( ` ) واكتب create_dataset_from_llama_documents . اضغط على Enter لفتح مشرف المشغل. يمنحك هذا المشغل واجهة مستخدم لاختيار دليل يحتوي على بيانات متعددة الوسائط الخاصة بك (الصور ، والملفات النصية ، و PDF ، وما إلى ذلك) وإنشاء مجموعة بيانات خمسين منها.
بمجرد تحديد دليل ، قم بتنفيذ المشغل. سيقوم بإنشاء مجموعة بيانات جديدة في جلسة FiftyOne الخاصة بك. بالنسبة للملفات النصية ، سترى صورة عرض للنص المقطوع. للصور ، سترى الصورة نفسها.
يمكنك إضافة أدلة إضافية من بيانات متعددة الوسائط باستخدام مشغل add_llama_documents_to_dataset .
الآن بعد أن أصبح لديك مجموعة بيانات متعددة الوسائط ، يمكنك فهرستها مع Llamaindex و Milvus. استخدم مشغل create_multimodal_rag_index لإدخال هذه العملية. سيطالبك هذا المشغل بتسمية الفهرس ، وسيعطيك خيار فهرسة الصور عبر مقطع التضمينات أو التسميات التوضيحية. إذا اخترت Captions ، فسيتم مطالبتك بتحديد حقل النص لاستخدامه كتعليق.
إذا لم يكن لديك تعليقات توضيحية على مجموعة البيانات الخاصة بك ، فقد تكون مهتمًا بمكوهر التسمية التوضيحي لـ FiftyOne.
fiftyone plugins download https://github.com/jacobmarks/fiftyone-image-captioning-plugin بمجرد إنشاء فهرس ، يمكنك فحصه عن طريق تشغيل مشغل get_multimodal_rag_index_info وتحديد الفهرس الذي تريد فحصه من القائمة المنسدلة.
أخيرًا ، يمكنك الاستعلام عن الفهرس باستخدام مشغل query_multimodal_rag_index . سيطالبك هذا المشغل بإدخال سلسلة استعلام ، وفهرس للاستعلام.
يمكنك أيضًا تحديد النموذج متعدد الوسائط لاستخدامه لإنشاء النتائج المتمحورة للاسترجاع ، وكذلك عدد نتائج الصورة والنص المراد استردادها.