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 من متغير البيئة التالي:

المتغير

مطلوب؟

الوصف

MILVUS_DASHSCOPE_API_KEY

نعم

مفتاح واجهة برمجة تطبيقات (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

المعلمة

مطلوب؟

الوصف

القيمة / المثال

reranker

نعم

يجب ضبطها على " "model" " لتمكين إعادة ترتيب النماذج.

"model"

provider

نعم

مزود خدمة النموذج الذي سيتم استخدامه لإعادة الترتيب. بالنسبة لـ DashScope، استخدم "ali".

"ali"

model_name

نعم

نموذج إعادة ترتيب DashScope المطلوب استخدامه.

"gte-rerank-v2"

queries

نعم

قائمة سلاسل الاستعلام التي يستخدمها نموذج إعادة الترتيب لحساب درجات الصلة. يجب أن يتطابق عدد سلاسل الاستعلام مع عدد الاستعلامات في طلب البحث.

["renewable energy developments"]

max_client_batch_size

لا

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

128 (الافتراضي)

credential

لا

تسمية بيانات الاعتماد المحددة في قسم المستوى الأعلى credential: في milvus.yaml.

"dashscope_apikey"

بالنسبة للمعلمات العامة المشتركة بين جميع مُصنِّفي النماذج، مثل 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",
)

ترجمة بواسطةDeepL

جرب Managed Milvus مجاناً

Zilliz Cloud خالي من المتاعب، ويعمل بواسطة Milvus ويعمل بسرعة 10 أضعاف.

ابدأ
التعليقات

هل كانت هذه الصفحة مفيدة؟