Databricks Vector Search

هام

هذه الميزة موجودة في المعاينة العامة في المناطق التالية: canadacentral، centralus، eastus، eastus2، northeurope، westeuropesoutheastasia، ، ، westus. westus2

تقدم هذه المقالة نظرة عامة على حل قاعدة بيانات متجهات Databricks، Databricks Vector Search، بما في ذلك ماهيته وكيفية عمله.

Databricks Vector Search هي قاعدة بيانات متجهة مضمنة في Databricks Intelligence Platform ومتكاملة مع أدوات الحوكمة والإنتاجية الخاصة بها. قاعدة بيانات المتجهات هي قاعدة بيانات محسنة لتخزين عمليات التضمين واستردادها. التضمينات هي تمثيلات رياضية للمحتوى الدلالي للبيانات، عادة ما تكون بيانات النص أو الصورة. يتم إنشاء التضمينات بواسطة نموذج لغة كبير وهي مكون رئيسي للعديد من تطبيقات GenAI التي تعتمد على العثور على المستندات أو الصور المشابهة لبعضها البعض. ومن الأمثلة على ذلك أنظمة RAG وأنظمة التوصية والتعرف على الصور والفيديو.

باستخدام Vector Search، يمكنك إنشاء فهرس بحث متجه من جدول Delta. يتضمن الفهرس بيانات مضمنة مع بيانات التعريف. يمكنك بعد ذلك الاستعلام عن الفهرس باستخدام واجهة برمجة تطبيقات REST لتحديد المتجهات الأكثر تشابها وإرجاع المستندات المقترنة. يمكنك هيكلة الفهرس للمزامنة تلقائيا عند تحديث جدول Delta الأساسي.

يستخدم Databricks Vector Search خوارزمية Hierarchical Navigable Small World (HNSW) لأقرب عمليات البحث المجاورة ومقياس المسافة L2 لقياس تشابه متجه التضمين. إذا كنت ترغب في استخدام تشابه جيب التمام، فأنت بحاجة إلى تطبيع تضمينات نقطة البيانات قبل إدخالها في "البحث في المتجهات". عندما يتم تطبيع نقاط البيانات، يكون الترتيب الذي تنتجه مسافة L2 هو نفس الترتيب الذي ينتجه التشابه بين التمام.

كيف يعمل "البحث في المتجهات"؟

لإنشاء قاعدة بيانات متجهة في Databricks، يجب أن تقرر أولا كيفية توفير تضمينات المتجهات. يدعم Databricks ثلاثة خيارات:

  • الخيار 1 يمكنك توفير جدول Delta مصدر يحتوي على بيانات بتنسيق نصي. تحسب Databricks عمليات التضمين، باستخدام نموذج تحدده. عند تحديث جدول Delta، يظل الفهرس متزامنا مع جدول Delta.

    يوضح الرسم التخطيطي التالي العملية:

    1. حساب تضمينات الاستعلام. يمكن أن يتضمن الاستعلام عوامل تصفية بيانات التعريف.
    2. إجراء بحث التشابه لتحديد المستندات الأكثر صلة.
    3. قم بإرجاع المستندات الأكثر صلة وإلحاقها بالاستعلام.

    قاعدة بيانات المتجهات، تحسب Databricks عمليات التضمين

  • الخيار 2 يمكنك توفير جدول دلتا المصدر الذي يحتوي على تضمينات محسوبة مسبقا. عند تحديث جدول Delta، يظل الفهرس متزامنا مع جدول Delta.

    يوضح الرسم التخطيطي التالي العملية:

    1. يتكون الاستعلام من تضمينات ويمكن أن يتضمن عوامل تصفية بيانات التعريف.
    2. إجراء بحث التشابه لتحديد المستندات الأكثر صلة. قم بإرجاع المستندات الأكثر صلة وإلحاقها بالاستعلام.

    قاعدة بيانات المتجهات، عمليات التضمين المحسوبة مسبقا

  • الخيار 3 يمكنك توفير جدول دلتا المصدر الذي يحتوي على تضمينات محسوبة مسبقا. لا توجد مزامنة تلقائية عند تحديث جدول Delta. يجب تحديث الفهرس يدويا باستخدام واجهة برمجة تطبيقات REST عند تغيير جدول التضمينات.

    يوضح الرسم التخطيطي التالي العملية، وهي نفس الخيار 2 باستثناء أنه لا يتم تحديث فهرس المتجه تلقائيا عند تغيير جدول Delta:

    قاعدة بيانات المتجهات، عمليات التضمين المحسوبة مسبقا بدون مزامنة تلقائية

لاستخدام Databricks Vector Search، يجب إنشاء ما يلي:

  • نقطة نهاية بحث متجه. تخدم نقطة النهاية هذه فهرس البحث المتجه. يمكنك الاستعلام عن نقطة النهاية وتحديثها باستخدام واجهة برمجة تطبيقات REST أو SDK. يتم قياس نقاط النهاية تلقائيا لدعم حجم الفهرس أو عدد الطلبات المتزامنة. راجع إنشاء نقطة نهاية بحث متجه للحصول على الإرشادات.
  • فهرس بحث متجه. يتم إنشاء فهرس البحث المتجه من جدول Delta وتم تحسينه لتوفير أقرب عمليات بحث جار تقريبية في الوقت الفعلي. الهدف من البحث هو تحديد المستندات المشابهة للاستعلام. تظهر فهارس البحث عن المتجهات في ويتم التحكم فيها بواسطة كتالوج Unity. راجع إنشاء فهرس بحث متجه للحصول على الإرشادات.

بالإضافة إلى ذلك، إذا اخترت أن تقوم Databricks بحساب عمليات التضمين، يجب عليك أيضا إنشاء نموذج يخدم نقطة نهاية لنموذج التضمين. راجع إنشاء نموذج أساسي يخدم نقاط النهاية للحصول على الإرشادات.

للاستعلام عن نقطة نهاية خدمة النموذج، يمكنك استخدام واجهة برمجة تطبيقات REST أو Python SDK. يمكن للاستعلام تعريف عوامل التصفية استنادا إلى أي عمود في جدول Delta. للحصول على التفاصيل، راجع استخدام عوامل التصفية على الاستعلامات أو مرجع واجهة برمجة التطبيقات أو مرجع Python SDK.

المتطلبات

  • مساحة عمل ممكنة كتالوج Unity.
  • تم تمكين الحوسبة بلا خادم.
  • يجب تمكين تغيير موجز البيانات للجدول المصدر.
  • إنشاء امتيازات جدول على مخطط (مخططات) الكتالوج لإنشاء فهارس.
  • تمكين الرموز المميزة للوصول الشخصي.

حماية البيانات والمصادقة

تنفذ Databricks عناصر التحكم الأمنية التالية لحماية بياناتك:

  • يتم عزل كل طلب عميل إلى Vector Search منطقيا ومصادقته ومخول.
  • يقوم بحث متجه Databricks بتشفير جميع البيانات الثابتة (AES-256) وفي أثناء النقل (TLS 1.2+).

يدعم Databricks Vector Search وضعين للمصادقة:

  • الرمز المميز للوصول الشخصي - يمكنك استخدام رمز وصول شخصي للمصادقة باستخدام Vector Search. راجع الرمز المميز لمصادقة الوصول الشخصي. إذا كنت تستخدم SDK في بيئة دفتر ملاحظات، فإنه ينشئ تلقائيا رمز PAT المميز للمصادقة.
  • رمز الخدمة الأساسي - يمكن للمسؤول إنشاء رمز مميز لكيان الخدمة وتمريره إلى SDK أو API. راجع استخدام كيانات الخدمة. بالنسبة لحالات استخدام الإنتاج، توصي Databricks باستخدام رمز مميز أساسي للخدمة.

حدود حجم الموارد والبيانات

يلخص الجدول التالي حدود حجم الموارد والبيانات لنقاط نهاية البحث عن المتجهات والفهارس:

Resource النقاوة الحد
نقاط نهاية البحث عن المتجهات لكل مساحة عمل 10
عمليات التضمين لكل نقطة نهاية 100,000,000
بعد التضمين لكل فهرس 4096
الفهارس لكل نقطة نهاية 20
الأعمدة لكل فهرس 20
الأعمدة الأنواع المدعومة: بايت، قصيرة، عدد صحيح، طويل، عائم، مزدوج، منطقي، سلسلة، طابع زمني، تاريخ
حقول بيانات التعريف لكل فهرس 20
اسم الفهرس لكل فهرس 128 حرفاً

تنطبق الحدود التالية على إنشاء وتحديث فهارس البحث عن المتجهات:

Resource النقاوة الحد
حجم الصف لفهرس مزامنة دلتا لكل فهرس 100 كيلوبايت
تضمين حجم عمود المصدر لفهرس Delta Sync لكل فهرس 32764 بايت
حد حجم طلب Upsert المجمع لفهرس المتجه المباشر لكل فهرس 10 ميغابايت
حد حجم طلب الحذف المجمع لفهرس المتجه المباشر لكل فهرس 10 ميغابايت

تنطبق الحدود التالية على واجهة برمجة تطبيقات الاستعلام للبحث عن المتجهات.

Resource النقاوة الحد
طول نص الاستعلام لكل استعلام 32764
نتائج Num لكل استعلام 50

القيود

  • يقتصر دعم قوائم الوصول إلى PrivateLink أو IP حاليا على مجموعة محددة من العملاء. إذا كنت مهتما باستخدام الميزة مع قوائم الوصول إلى PrivateLink أو IP، فاتصل بدعم Databricks.
  • المفاتيح المدارة من قبل العميل (CMK) غير مدعومة للمعاينة العامة.
  • مساحات العمل المنظمة غير مدعومة، وبالتالي فإن هذه الوظيفة غير متوافقة مع HIPAA.
  • أذونات مستوى الصف والعمود غير معتمدة. ومع ذلك، يمكنك تنفيذ قوائم التحكم في الوصول على مستوى التطبيق الخاصة بك باستخدام واجهة برمجة تطبيقات التصفية.

الموارد الإضافية