نظرة عامة
صُممتWeaviateVectorSearchTool خصيصاً لإجراء عمليات بحث دلالي داخل المستندات المخزنة في قاعدة بيانات Weaviate المتجهية. تتيح لك هذه الأداة العثور على مستندات متشابهة دلالياً لاستعلام معين، من خلال الاستفادة من قوة البحث المتجهي والبحث بالكلمات المفتاحية للحصول على نتائج بحث أكثر دقة وذات صلة بالسياق.
Weaviate هي قاعدة بيانات متجهية تخزن وتستعلم عن التضمينات المتجهية، مما يتيح إمكانيات البحث الدلالي.
التثبيت
لدمج هذه الأداة في مشروعك، تحتاج إلى تثبيت عميل Weaviate:خطوات البدء
لاستخدامWeaviateVectorSearchTool بفعالية، اتبع هذه الخطوات:
- تثبيت الحزمة: تأكد من تثبيت حزمتي
crewai[tools]وweaviate-clientفي بيئة Python الخاصة بك. - إعداد Weaviate: قم بإعداد مجموعة Weaviate. يمكنك اتباع وثائق Weaviate للتعليمات.
- مفاتيح API: احصل على عنوان URL لمجموعة Weaviate ومفتاح API.
- مفتاح OpenAI API: تأكد من تعيين مفتاح OpenAI API في متغيرات البيئة كـ
OPENAI_API_KEY.
مثال
يوضح المثال التالي كيفية تهيئة الأداة وتنفيذ بحث:Code
المعاملات
تقبلWeaviateVectorSearchTool المعاملات التالية:
- collection_name: مطلوب. اسم المجموعة المراد البحث فيها.
- weaviate_cluster_url: مطلوب. عنوان URL لمجموعة Weaviate.
- weaviate_api_key: مطلوب. مفتاح API لمجموعة Weaviate.
- limit: اختياري. عدد النتائج المُرجعة. الافتراضي هو
3. - alpha: اختياري. يتحكم في الترجيح بين البحث المتجهي والبحث بالكلمات المفتاحية (BM25). alpha = 0 -> BM25 فقط، alpha = 1 -> بحث متجهي فقط. الافتراضي هو
0.75. - vectorizer: اختياري. المحوّل المتجهي المستخدم. إذا لم يُحدد، سيستخدم
text2vec_openaiمع نموذجnomic-embed-text. - generative_model: اختياري. النموذج التوليدي المستخدم. إذا لم يُحدد، سيستخدم
gpt-4oمن OpenAI.
التكوين المتقدم
يمكنك تخصيص المحوّل المتجهي والنموذج التوليدي المستخدمين في الأداة:Code
تحميل المستندات مسبقاً
يمكنك تحميل قاعدة بيانات Weaviate بالمستندات مسبقاً قبل استخدام الأداة:Code
مثال على التكامل مع الوكيل
إليك كيفية دمجWeaviateVectorSearchTool مع وكيل CrewAI:
Code
الخلاصة
توفرWeaviateVectorSearchTool طريقة قوية للبحث عن مستندات متشابهة دلالياً في قاعدة بيانات Weaviate المتجهية. من خلال الاستفادة من التضمينات المتجهية، تتيح نتائج بحث أكثر دقة وذات صلة بالسياق مقارنة بعمليات البحث التقليدية القائمة على الكلمات المفتاحية. هذه الأداة مفيدة بشكل خاص للتطبيقات التي تتطلب العثور على المعلومات بناءً على المعنى بدلاً من التطابق الحرفي.