DashScope RankerCompatible with Milvus 2.6.x
يتيح DashScope Ranker لـ Milvus استدعاء نماذج إعادة الترتيب في Alibaba Cloud DashScope لإعادة ترتيب نتائج البحث حسب الصلة الدلالية.
المتطلبات الأساسية
قبل استخدام DashScope Ranker، تأكد من توفر ما يلي:
مجموعة Milvus تحتوي على حقل "
VARCHAR" الذي يتضمن النص المراد إعادة ترتيبه.مفتاح API صالح لـ DashScope.
إمكانية الوصول إلى نموذج إعادة الترتيب من DashScope، مثل
gte-rerank-v2.
للاطلاع على نماذج إعادة الترتيب المتاحة ونقاط النهاية الإقليمية، راجع واجهة برمجة تطبيقات إعادة ترتيب النص في Alibaba Cloud Model Studio.
تكوين بيانات الاعتماد
يجب أن يعرف Milvus مفتاح واجهة برمجة تطبيقات (API) DashScope الخاص بك قبل أن يتمكن من طلب إعادة الترتيب من DashScope. يمكنك تكوين مفتاح واجهة برمجة التطبيقات (API) في milvus.yaml أو من خلال متغير بيئة.
الخيار 1: ملف التكوين
قم بتخزين مفتاح واجهة برمجة التطبيقات (API) الخاص بك في milvus.yaml وقم بتوجيه مزود إعادة الترتيب DashScope إلى تسمية بيانات الاعتماد.
# milvus.yaml
credential:
dashscope_apikey:
apikey: <YOUR_DASHSCOPE_API_KEY>
function:
rerank:
model:
providers:
ali:
credential: dashscope_apikey
# url: https://dashscope.aliyuncs.com/api/v1/services/rerank/text-rerank/text-rerank
الخيار 2: متغير البيئة
إذا لم يتم تكوين بيانات اعتماد مطابقة في milvus.yaml ، فيمكن لـ Milvus قراءة مفتاح واجهة برمجة التطبيقات (API) لـ DashScope من متغير البيئة التالي:
المتغير |
مطلوب؟ |
الوصف |
|---|---|---|
|
نعم |
مفتاح واجهة برمجة تطبيقات (API) DashScope الذي تستخدمه خدمة Milvus لاستدعاء Alibaba Cloud DashScope. |
إنشاء دالة تصنيف DashScope
لاستخدام أداة ترتيب DashScope، قم بإنشاء كائن Function يحدد نموذج إعادة الترتيب في DashScope ونص الاستعلام. استخدم provider: "ali" لإعادة الترتيب في DashScope.
from pymilvus import Function, FunctionType
dashscope_ranker = Function(
name="dashscope_semantic_ranker",
input_field_names=["document"],
function_type=FunctionType.RERANK,
params={
"reranker": "model",
"provider": "ali",
"model_name": "gte-rerank-v2",
"queries": ["renewable energy developments"],
"max_client_batch_size": 128,
"credential": "dashscope_apikey",
},
)
المعلمات الخاصة بـ DashScope Ranker
المعلمة |
مطلوب؟ |
الوصف |
القيمة / المثال |
|---|---|---|---|
|
نعم |
يجب ضبطها على " |
|
|
نعم |
مزود خدمة النموذج الذي سيتم استخدامه لإعادة الترتيب. بالنسبة لـ DashScope، استخدم |
|
|
نعم |
نموذج إعادة ترتيب DashScope المطلوب استخدامه. |
|
|
نعم |
قائمة سلاسل الاستعلام التي يستخدمها نموذج إعادة الترتيب لحساب درجات الصلة. يجب أن يتطابق عدد سلاسل الاستعلام مع عدد الاستعلامات في طلب البحث. |
|
|
لا |
الحد الأقصى لعدد المستندات التي سيتم إرسالها إلى خدمة النموذج لكل طلب. |
|
|
لا |
تسمية بيانات الاعتماد المحددة في قسم المستوى الأعلى |
|
بالنسبة للمعلمات العامة المشتركة بين جميع مُصنِّفي النماذج، مثل provider و queries ، راجع إنشاء مُصنف نماذج.
التطبيق على البحث المتجهي القياسي
لتطبيق DashScope Ranker على بحث متجه قياسي، قم بتمرير دالة أداة الترتيب إلى search().
results = client.search(
collection_name="your_collection",
data=[your_query_vector],
anns_field="dense_vector",
limit=5,
output_fields=["document"],
ranker=dashscope_ranker,
consistency_level="Bounded",
)