...

/

مقدمة إلى قواعد بيانات المتجهات والتضمينات

مقدمة إلى قواعد بيانات المتجهات والتضمينات

تعرف على قواعد بيانات المتجهات، واستكشف ما هي التضمينات، وفهم ارتباطها بقواعد بيانات المتجهات.

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

ما هي قاعدة البيانات المتجهة؟

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

Press + to interact
 A vector database housing vectorized data
A vector database housing vectorized data

من خلال تخزين البيانات في نموذج متجه، تسهل قواعد بيانات المتجهات تخزين ومعالجة أنواع البيانات غير المتجانسة، مما يتيح المعالجة والتحليل الفعالين باستخدام التقنيات الرياضية.

ما هي التضمينات (المتجهة)؟

المتجه عادةً عبارة عن مصفوفة من الأرقام؛ بغض النظر عما تمثله هذه الأرقام. عندما نستخدم المتجهات لالتقاط معلومات ذات معنى حول البيانات، مثل بنيتها وخصائصها وعلاقتها الدلالية وسياقها، فإننا نسميها تضمينات متجهية، أو ببساطة تضمينات.

إنشاء التضمينات من البيانات

لقد رأينا فوائد التضمينات في مجالات مختلفة سابقًا. قد تتساءل من أين تأتي هذه التضمينات أو كيف نُنشئها لبياناتنا. فيما يلي إجابة موجزة. سنتناولها بالتفصيل في درس قادم.

هناك نماذج تضمين مختلفة مصممة لتناسب أنواع البيانات واحتياجاتها المختلفة. نماذج التضمين هي نماذج تعلّم آلي تستقبل كائنات بيانات إدخال ، مثل المستندات، إخراج تضمينات، وهي تمثيلات رقمية للخصائص والميزات الأساسية لتلك البيانات.

Press + to interact
A document embedding model transforming input documents into numerical representations
A document embedding model transforming input documents into numerical representations

ملاحظة: سوف نناقش نماذج التضمين الشائعة المستخدمة لإنشاء تضمينات الكلمات والجمل والمستندات والصور والفيديو والصوت أثناء تقدمنا في الدورة.

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

تُعدّ قاعدة بيانات المتجهات مستودعًا للتضمينات، مما يُتيح تخزينًا واسترجاعًا فعّالين. إلا أن أهميتها تتجاوز مجرد التخزين. تلعب قواعد بيانات المتجهات دورًا محوريًا في دعم مختلف التطبيقات القائمة على البيانات، من خلال توفير منصة للاستفادة من التضمينات. تستخدم التطبيقات هذه التضمينات المُخزّنة في قاعدة بيانات المتجهات لمهام مثل البحث عن التشابه، والتوصية، والتجميع، وغيرها.

Press + to interact
The client application generates embeddings for its dataset using an embedding model and stores the generated embeddings in a vector database
1 / 2
The client application generates embeddings for its dataset using an embedding model and stores the generated embeddings in a vector database

لنفترض أن التطبيق هو "البحث عن صور مشابهة". كيف سيجد الصور المشابهة؟ عادةً ما تتبع العملية الخطوات التالية:

  1. إنشاء التضمينات: تُدخل الصور في نموذج تضمين الصور، الذي يُحوّلها إلى متجهات رقمية عالية الأبعاد، تُسجّل خصائصها وميزاتها المختلفة. تُمثَّل كل صورة بمتجه تضمين فريد.

  2. تخزين التضمينات: يتم تخزين متجهات التضمين هذه في قاعدة بيانات متجهة، والتي تقوم بفهرستها وتنظيمها بكفاءة من أجل استرجاعها بسرعة.

  3. معالجة الاستعلام: عندما يقوم المستخدم بإرسال صورة استعلام، فإنها تخضع لنفس عملية التضمين لإنشاء متجه تضمين الاستعلام.

  4. بحث التشابه: تُجري قاعدة بيانات المتجهات بحثًا عن التشابه بمقارنة متجه تضمين الاستعلام بمتجهات التضمين المُخزّنة لجميع الصور. يُمكن استخدام مقاييس تشابه مُختلفة، مثل تشابه المسافة الإقليدية أو تشابه جيب التمام، لهذه المُقارنة.

  5. إرجاع النتائج: يتم استرداد الصور ذات متجهات التضمين الأكثر تشابهًا مع استعلام التضمين من قاعدة البيانات وإعادتها إلى المستخدم كصور مماثلة.

مكونات قاعدة بيانات المتجهات وطريقة عملها

سبق أن شرحنا تعريف قاعدة بيانات المتجهات، لكننا لم نناقش مكوناتها الداخلية وكيفية عملها. كان من الضروري تقديم التضمينات، وهي نوع البيانات التي تخزنها وتعالجها قواعد بيانات المتجهات. سنناقش الآن المكونات المختلفة لقاعدة بيانات المتجهات وكيفية عملها.

  • واجهة برمجة التطبيقات (API) والواجهة: توفر قواعد بيانات المتجهات واجهات برمجة تطبيقات (API) وواجهات مستخدم للتفاعل مع قاعدة البيانات. تتيح واجهة API للمستخدمين إجراء عمليات مثل تخزين البيانات واسترجاعها وتحديثها وحذفها، بالإضافة إلى عمليات أكثر تخصصًا مثل الاستعلام عن متجهات مماثلة. توفر واجهة المستخدم أدوات رسومية لإدارة موارد قاعدة البيانات، وتكوين إعداداتها، وفهرسة المعلمات، وعرض نتائج الاستعلام (غير موضحة في الصورة).

Press + to interact
A high-level design of a vector database
A high-level design of a vector database
  • طبقة الفهرسة: تُنظّم هذه الطبقة بيانات المتجهات لضمان بحث فعّال، خاصةً لمهام مثل البحث عن التشابه. تُنشئ هذه الطبقة فهارس أو هياكل بيانات مُتخصصة مُصممة لاسترجاع متجهات مشابهة لمتجهات الاستعلام بسرعة. تُستخدم تقنيات فهرسة مُختلفة، منها:

    • مؤشرات الملف المقلوب (IVF)

    • فهرس العوالم الصغيرة الهرمية القابلة للملاحة (HNSW)

    • الهياكل القائمة على الأشجار (على سبيل المثال، أشجار kd، وأشجار الكرة)

    • تقنيات التجزئة (على سبيل المثال، مؤشرات التجزئة الحساسة للموقع (LSH))

    • الهياكل القائمة على الرسوم البيانية (على سبيل المثال، الرسوم البيانية التقريبية لأقرب جار)

  • طبقة التخزين: تتولى طبقة التخزين في قاعدة بيانات المتجهات مسؤولية تخزين بيانات المتجهات بكفاءة. وتستخدم هياكل بيانات متخصصة مُحسّنة لتخزين المتجهات عالية الأبعاد، مما يدعم عمليات الإدخال والاسترجاع والحذف السريعة. تضمن هذه الطبقة سلامة البيانات ومتانتها من خلال التكرار والتقسيم. كما تُدير عمليات الإدخال والإخراج على الأقراص لتقليل زمن الوصول وزيادة الإنتاجية.

  • طبقة معالجة الاستعلامات: تتولى هذه الطبقة معالجة الاستعلامات الواردة، وتُنظّم عملية البحث لاسترجاع بيانات المتجهات ذات الصلة. وتتفاعل مع طبقات الفهرسة والتخزين لتنفيذ الاستعلامات بكفاءة، مع تصفية المتجهات المُرشّحة وتصنيفها بناءً على معايير الاستعلام، قبل إرجاع النتائج إلى المستخدم أو التطبيق.

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

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

قواعد بيانات المتجهات لطلاب الماجستير في القانون

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

Press + to interact
A representation of how LLMs work during the query-prompting process by the user
A representation of how LLMs work during the query-prompting process by the user

لاستكشاف كيفية استخدام طلاب الماجستير في القانون لقواعد البيانات المتجهة في أنظمة RAG، يمكنك زيارة دورة أساسيات التوليد المعزز بالاسترجاع باستخدام LangChain .

ماذا بعد؟

بعد مقدمة أساسية لقواعد بيانات المتجهات والتضمينات، سيستكشف هذا الفصل بعض الأساليب والخوارزميات الرياضية لإيجاد أوجه التشابه بين التضمينات. بعد ذلك، سنستكشف نماذج التضمين لتوليد تضمينات لأنواع بيانات مختلفة (نص، صورة، صوت، فيديو). سنُولّد التضمينات باستخدام نموذج تضمين مُختار لكل نوع من البيانات.