متاجر المتجهات

ستساعدك هذه الدليل على فهم كيفية استخدام متجر متجهات Rememberizer كمطور.

مخازن المتجهات

تبسط مخازن المتجهات في Rememberizer عملية التعامل مع بيانات المتجهات، مما يتيح لك التركيز على إدخال النص والاستفادة من قوة المتجهات لمجموعة متنوعة من التطبيقات مثل البحث وتحليل البيانات.

المقدمة

يوفر متجر المتجهات Rememberizer واجهة سهلة الاستخدام للتعامل مع بيانات المتجهات مع إخفاء تعقيد تضمينات المتجهات. مدعومًا بـ PostgreSQL مع امتداد pgvector، يتيح لك متجر المتجهات Rememberizer العمل مباشرة مع النص. تتولى الخدمة تقسيم النص وتضمينه وتخزين بيانات النص، مما يسهل عليك التركيز على منطق التطبيق الأساسي الخاص بك.

لفهم أعمق للمفاهيم النظرية وراء تضمينات المتجهات وقواعد بيانات المتجهات، راجع ما هي تضمينات المتجهات وقواعد بيانات المتجهات؟.

نظرة عامة تقنية

كيف تعمل مخازن المتجهات

تحول مخازن المتجهات في Rememberizer النص إلى تمثيلات متجهية عالية الأبعاد (تضمينات) تلتقط المعنى الدلالي. وهذا يمكّن من:

  1. البحث الدلالي: العثور على الوثائق بناءً على المعنى بدلاً من الكلمات الرئيسية فقط

  2. مطابقة التشابه: تحديد المحتوى المرتبط مفهوميًا

  3. استرجاع فعال: تحديد المعلومات ذات الصلة بسرعة من مجموعات البيانات الكبيرة

المكونات الرئيسية

  • معالجة الوثائق: يتم تقسيم النص إلى قطع بحجم مثالي مع حدود متداخلة للحفاظ على السياق

  • تحويل إلى متجهات: يتم تحويل القطع إلى تمثيلات باستخدام نماذج متطورة

  • الفهرسة: تنظم الخوارزميات المتخصصة المتجهات للبحث الفعال عن التشابه

  • معالجة الاستعلامات: يتم تحويل استعلامات البحث إلى متجهات ومقارنتها مع التمثيلات المخزنة

العمارة

تقوم Rememberizer بتنفيذ مخازن المتجهات باستخدام:

  • PostgreSQL مع امتداد pgvector: لتخزين المتجهات والبحث عنها بكفاءة

  • تنظيم قائم على المجموعات: كل مخزن متجه له مجموعته المعزولة الخاصة

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

البدء

إنشاء متجر المتجهات

  1. انتقل إلى قسم متاجر المتجهات في لوحة التحكم الخاصة بك

  2. انقر على "إنشاء متجر متجهات جديد":

    • ستظهر لك نموذج يطلب منك إدخال التفاصيل.

  3. املأ التفاصيل:

    • الاسم: قدم اسمًا فريدًا لمتجر المتجهات الخاص بك.

    • الوصف: اكتب وصفًا موجزًا لمتجر المتجهات.

    • نموذج التضمين: اختر النموذج الذي يحول النص إلى متجهات.

    • خوارزمية الفهرسة: اختر كيفية تنظيم المتجهات للبحث.

    • مقياس البحث: حدد كيفية حساب التشابه بين المتجهات.

    • أبعاد المتجه: حجم تضمينات المتجه (عادةً 768-1536).

  4. قدم النموذج:

    • انقر على زر "إنشاء". ستتلقى إشعار نجاح، وسيظهر المتجر الجديد في قائمة متاجر المتجهات الخاصة بك.

إنشاء متجر متجهات جديد
إنشاء متجر متجهات جديد

خيارات التكوين

نماذج التضمين

النموذج
الأبعاد
الوصف
الأفضل لـ

openai/text-embedding-3-large

1536

نموذج تضمين عالي الدقة من OpenAI

التطبيقات الإنتاجية التي تتطلب أقصى دقة

openai/text-embedding-3-small

1536

نموذج تضمين أصغر وأسرع من OpenAI

التطبيقات التي تتطلب معدل نقل أعلى

خوارزميات الفهرسة

الخوارزمية
الوصف
المساومات

IVFFLAT (افتراضي)

ملف مقلوب مع ضغط مسطح

توازن جيد بين السرعة والدقة؛ يعمل بشكل جيد لمعظم مجموعات البيانات

HNSW

عالم صغير قابل للتنقل هرمي

دقة أفضل لمجموعات البيانات الكبيرة؛ متطلبات ذاكرة أعلى

مقاييس البحث

المقياس
الوصف
الأفضل لـ

كوساين (افتراضي)

يقيس الزاوية بين المتجهات

المطابقة العامة للسمات

المنتج الداخلي (ip)

حاصل الضرب النقطي بين المتجهات

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

L2 (إقليدي)

المسافة المستقيمة بين المتجهات

عندما تكون العلاقات المكانية مهمة

إدارة مخازن المتجهات

  1. عرض وتحرير مخازن المتجهات:

    • الوصول إلى لوحة الإدارة لعرض أو تحرير أو حذف مخازن المتجهات.

  2. عرض المستندات:

    • تصفح المستندات الفردية والبيانات الوصفية المرتبطة بها ضمن مخزن متجهات محدد.

  3. الإحصائيات:

    • عرض إحصائيات مفصلة مثل عدد المتجهات المخزنة، أداء الاستعلام، ومقاييس التشغيل.

عرض تفاصيل مخزن متجهات
عرض تفاصيل مخزن متجهات

إدارة مفاتيح API

تُستخدم مفاتيح API للمصادقة وتفويض الوصول إلى نقاط نهاية واجهة برمجة التطبيقات لمخزن المتجهات Rememberizer. إن الإدارة السليمة لمفاتيح API أمر ضروري للحفاظ على أمان وسلامة مخازن المتجهات الخاصة بك.

إنشاء مفاتيح API

  1. انتقل إلى صفحة تفاصيل متجر المتجهات الخاص بك

  2. انتقل إلى قسم إدارة مفاتيح API:

    • يمكن العثور عليه ضمن علامة التبويب "الإعدادات"

  3. انقر على "إضافة مفتاح API":

    • ستظهر لك نموذج يطلب منك إدخال التفاصيل.

  4. املأ التفاصيل:

    • الاسم: قدم اسمًا لمفتاح API لمساعدتك في تحديد حالة استخدامه.

  5. قدم النموذج:

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

إنشاء مفتاح API جديد
إنشاء مفتاح API جديد

إلغاء مفاتيح API

إذا لم تعد بحاجة إلى مفتاح API، يمكنك حذفه لمنع أي استخدام غير مناسب محتمل.

لأسباب أمنية، قد ترغب في تغيير مفاتيح API الخاصة بك بشكل دوري. يتضمن ذلك إنشاء مفتاح جديد وإلغاء المفتاح القديم.

استخدام واجهة برمجة تطبيقات تخزين المتجهات

بعد إنشاء تخزين المتجهات وتوليد مفتاح API، يمكنك التفاعل معه باستخدام واجهة برمجة التطبيقات REST.

أمثلة على الكود

رفع مستند إلى مخزن المتجهات

def upload_document(file_path, document_name=None): if document_name is None: document_name = file_path.split("/")[-1]

رفع محتوى النص إلى مخزن المتجهات

def upload_text(content, document_name): headers = { "x-api-key": API_KEY, "Content-Type": "application/json" }

البحث في مخزن المتجهات

def search_vector_store(query, num_results=5, prev_chunks=1, next_chunks=1): headers = {"x-api-key": API_KEY}

مثال على الاستخدام

رفع_المستند("path/to/document.pdf")

upload_text("هذا نص عينة ليتم تحويله إلى متجهات", "sample-document.txt")

search_vector_store("كيف تعمل تشابه المتجهات؟")

{% endtab %}

{% tab title="Ruby" %}

مثال على الاستخدام

=begin client = VectorStoreClient.new('your_api_key', 'vs_abc123')

البحث عن الوثائق

results = client.search('ما هي أفضل الممارسات لأمان البيانات؟') puts "تم العثور على #{results['matched_chunks'].length} نتيجة"

عرض النتيجة الأعلى

if results['matched_chunks'].any? top_match = results['matched_chunks'].first puts "النتيجة الأعلى (المسافة: #{top_match['distance']}):" puts "المستند: #{top_match['document']['name']}" puts "المحتوى: #{top_match['matched_content']}" end =end

اعتبارات الأداء

قريباً: مخطط هندسة تخزين المتجهات

سيوضح هذا المخطط الهندسي الفني:

  • هندسة قاعدة بيانات PostgreSQL + pgvector

  • هياكل خوارزميات الفهرسة (IVFFLAT مقابل HNSW)

  • كيف تعمل مقاييس البحث في فضاء المتجهات (مقارنة بصرية)

  • عملية تقسيم الوثائق مع تصور التداخل

  • اعتبارات الأداء مصورة عبر مقاييس مختلفة

تحسين لأحجام البيانات المختلفة

حجم البيانات
التكوين الموصى به
ملاحظات

صغير (<10k مستندات)

IVFFLAT، تشابه كوساين

التكوين البسيط يوفر أداءً جيدًا

متوسط (10k-100k مستندات)

IVFFLAT، تأكد من إعادة الفهرسة بانتظام

توازن بين سرعة البحث وصيانة الفهرس

كبير (>100k مستندات)

HNSW، اعتبر زيادة أبعاد المتجهات

استخدام ذاكرة أعلى ولكن يحافظ على الأداء عند النطاق

استراتيجيات تقسيم المحتوى

تؤثر عملية تقسيم المحتوى بشكل كبير على جودة البحث:

  • حجم القطعة: يستخدم Rememberizer حجم قطعة افتراضي يبلغ 1024 بايت مع تداخل 200 بايت

  • قطع أصغر (512-1024 بايت): تطابقات أكثر دقة، أفضل للأسئلة المحددة

  • قطع أكبر (1500-2048 بايت): مزيد من السياق في كل تطابق، أفضل للمواضيع الأوسع

  • التداخل: يضمن عدم فقدان السياق عند حدود القطع

تحسين الاستعلام

  • نوافذ السياق: استخدم prev_chunks و next_chunks لاسترجاع المحتوى المحيط

  • عدد النتائج: ابدأ بـ 3-5 نتائج (n parameter) واضبط بناءً على احتياجات الدقة

  • العتبة: اضبط t parameter لتصفية النتائج حسب درجة التشابه

الاستخدام المتقدم

إعادة الفهرسة

يقوم Rememberizer تلقائيًا بتحفيز إعادة الفهرسة عندما تتجاوز أعداد المتجهات الحدود المحددة مسبقًا، ولكن يُفضل النظر في إعادة الفهرسة يدويًا بعد:

  • رفع عدد كبير من الوثائق

  • تغيير نموذج التضمين

  • تعديل خوارزمية الفهرسة

تحسين الاستعلام

للحصول على نتائج بحث أفضل:

  1. كن محددًا في استعلامات البحث

  2. قم بتضمين السياق عند الإمكان

  3. استخدم اللغة الطبيعية بدلاً من الكلمات الرئيسية

  4. قم بضبط المعلمات بناءً على جودة النتائج

الانتقال من قواعد بيانات المتجهات الأخرى

إذا كنت تستخدم حاليًا حلول قواعد بيانات المتجهات الأخرى وترغب في الانتقال إلى Rememberizer Vector Store، ستساعدك الأدلة التالية في نقل بياناتك بكفاءة.

نظرة عامة على الهجرة

تشمل هجرة بيانات المتجهات:

  1. تصدير البيانات من قاعدة بيانات المتجهات المصدر الخاصة بك

  2. تحويل البيانات إلى تنسيق متوافق مع Rememberizer

  3. استيراد البيانات إلى متجر المتجهات الخاص بك في Rememberizer

  4. التحقق من نجاح الهجرة

فوائد الانتقال إلى Rememberizer

  • أساس PostgreSQL: مبني على تكنولوجيا قاعدة بيانات ناضجة مع نسخ احتياطي واستعادة مدمجة

  • نظام بيئي متكامل: اتصال سلس مع مكونات Rememberizer الأخرى

  • إدارة مبسطة: واجهة موحدة لعمليات المتجهات

  • أمان متقدم: أمان على مستوى الصفوف وضوابط وصول دقيقة

  • بنية قابلة للتوسع: تحسين الأداء مع نمو بياناتك

الانتقال من Pinecone

الانتقال من Qdrant

الانتقال من Supabase pgvector

إذا كنت تستخدم Supabase مع pgvector بالفعل، فإن الانتقال إلى Rememberizer هو أمر سهل بشكل خاص حيث أن كلاهما يستخدم PostgreSQL مع امتداد pgvector.

أفضل الممارسات للهجرة

اتبع هذه التوصيات لهجرة ناجحة:

  1. التخطيط مسبقًا:

    • تقدير حجم البيانات والوقت المطلوب للهجرة

    • جدولة الهجرة خلال فترات انخفاض الحركة

    • زيادة مساحة القرص قبل بدء الهجرات الكبيرة

  2. اختبار أولاً:

    • إنشاء متجر متجهات اختبار في Rememberizer

    • نقل مجموعة صغيرة من البيانات (100-1000 متجه)

    • التحقق من وظيفة البحث باستخدام استعلامات رئيسية

  3. تحقق من البيانات:

    • مقارنة عدد الوثائق قبل وبعد الهجرة

    • تشغيل استعلامات مرجعية لضمان نتائج مماثلة

    • التحقق من أن البيانات الوصفية محفوظة بشكل صحيح

  4. تحسين الأداء:

    • استخدام العمليات الدفعة من أجل الكفاءة

    • النظر في التواجد الجغرافي لقواعد البيانات المصدر والهدف

    • مراقبة حدود معدل واجهة برمجة التطبيقات وضبط أحجام الدفعات وفقًا لذلك

  5. خطوات ما بعد الهجرة:

    • التحقق من إنشاء الفهرس في Rememberizer

    • تحديث تكوينات التطبيق للإشارة إلى متجر المتجهات الجديد

    • الاحتفاظ بقاعدة البيانات المصدر كنسخة احتياطية حتى يتم التحقق من الهجرة

للحصول على مرجع واجهة برمجة التطبيقات المفصل ووثائق نقاط النهاية، قم بزيارة صفحة واجهات برمجة تطبيقات متجر المتجهات.


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

Last updated