Search⌘ K
AI Features

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

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

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

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

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

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

سنقوم بتخزين التضمينات في Chroma، بينما يتم وضع بياناتنا خارج Chroma. بالنسبة للبيانات الموجودة خارج Chroma، يوفر Chroma أدوات تحميل بيانات لتحميلها وحفظها عبر معرّفات الموارد الموحدة (URIs). لا يقوم Chroma بتخزين هذه البيانات مباشرةً، بل يقوم بتخزين معرّف الموارد الموحد (URI) وتحميل البيانات منه عند الحاجة. لذا، لاستخدام هذه البيانات عند الحاجة إليها من قِبل Chroma، نقوم باستيرادها.ImageLoader منchromadb.utils.data_loaders .

نستورد ...