...

/

التدرب على استخدام ChromaDB للتضمينات متعددة الوسائط

التدرب على استخدام ChromaDB للتضمينات متعددة الوسائط

تعلم كيفية استخدام قاعدة بيانات متجهات الكروما مفتوحة المصدر لتخزين البيانات والاستعلام عنها.

سنغطي ما يلي...

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

استيراد المكتبات والوحدات النمطية الضرورية

أولاً، نقوم بالاستيرادchromadb لإدارة التضمينات والمجموعات.

يمكننا إنشاء تضمينات خارج Chroma أو استخدام وظائف التضمين من Chromaembedding_functions الوحدة. لقد استكشفنا بالفعل الطريقة الأولى، ولحسن الحظ، يدعم كروما وظائف التضمين متعدد الوسائط، مما يتيح تضمين البيانات من وسائط مختلفة في مساحة تضمين موحدة. لذا، سنستخدم نموذج التضمين متعدد الوسائط من كروما.embedding_functions وحدة لتوليد تضمينات لبياناتنا متعددة الوسائط. للقيام بذلك، نستوردOpenCLIPEmbeddingFunction منchromadb.utils.embedding_functions .

سنخزن التضمين في كروما أثناء وضع بياناتنا خارجها. بالنسبة للبيانات الموجودة خارج كروما، يوفر كروما مُحمّلات بيانات لتحميلها وحفظها عبر عناوين URI. لا يخزن كروما هذه البيانات مباشرةً؛ بل يخزن عنوان URI ويحمّل البيانات منه عند الحاجة. لذلك، لاستخدام هذه البيانات عند حاجة كروما إليها، نستوردImageLoader منchromadb.utils.data_loaders .

نحن نستوردos وحدة للتفاعل مع نظام التشغيل، وخاصة ...