Yandex CloudCompatible with Milvus 2.6.x

يصف هذا الموضوع كيفية تكوين واستخدام وظائف التضمين في Yandex Cloud في Milvus.

اختر نموذج التضمين

يدعم Milvus نماذج تحويل النص إلى متجهات في Yandex Cloud AI Studio من خلال مزود yc. في معلمات الوظيفة، قم بتعيين " model_name " إلى عنوان URI لنموذج Yandex Cloud الذي يجب أن يستدعيه Milvus.

على سبيل المثال، تستخدم Yandex Text Embeddings للمستندات عنوان URI للنموذج مثل emb://<folder_ID>/text-search-doc/latest وتُرجع متجهات ذات 256 بُعدًا. للاطلاع على عناوين URI للأبعاد المتاحة، راجع نماذج تحويل النص إلى متجهات.

تكوين بيانات الاعتماد

يجب أن يعرف Milvus مفتاح واجهة برمجة تطبيقات (API) Yandex Cloud الخاص بك قبل أن يتمكن من طلب التضمينات. يمكنك تكوين مفتاح واجهة برمجة التطبيقات (API) في milvus.yaml أو من خلال متغير بيئة.

الخيار 1: ملف التكوين

قم بتخزين مفتاح واجهة برمجة التطبيقات (API) الخاص بك في milvus.yaml وقم بتوجيه مزود Yandex Cloud إلى تسمية بيانات الاعتماد.

# milvus.yaml
credential:
  yandex_apikey:
    apikey: <YOUR_YC_API_KEY>

function:
  textEmbedding:
    providers:
      yc:
        credential: yandex_apikey
        # url: https://llm.api.cloud.yandex.net/foundationModels/v1/textEmbedding

الخيار 2: متغير البيئة

إذا لم يتم تكوين بيانات اعتماد مطابقة في milvus.yaml ، فيمكن لـ Milvus قراءة مفتاح واجهة برمجة تطبيقات Yandex Cloud من متغير البيئة التالي:

المتغير

مطلوب؟

الوصف

MILVUS_YC_API_KEY

نعم

مفتاح واجهة برمجة تطبيقات Yandex Cloud الذي تستخدمه خدمة Milvus لاستدعاء Yandex Cloud AI Studio.

استخدام وظيفة التضمين

بمجرد تكوين بيانات الاعتماد، قم بتعريف مخطط يحتوي على حقل نصي للإدخال وحقل متجه للإخراج، ثم أضف وظيفة التضمين من Yandex Cloud إلى المخطط.

from pymilvus import MilvusClient, DataType, Function, FunctionType

client = MilvusClient(uri="http://localhost:19530")

schema = client.create_schema()
schema.add_field("id", DataType.INT64, is_primary=True, auto_id=False)
schema.add_field("document", DataType.VARCHAR, max_length=9000)
schema.add_field("dense", DataType.FLOAT_VECTOR, dim=256)

text_embedding_function = Function(
    name="yandex_cloud_embedding",
    function_type=FunctionType.TEXTEMBEDDING,
    input_field_names=["document"],
    output_field_names=["dense"],
    params={
        "provider": "yc",
        "model_name": "emb://<folder_ID>/text-search-doc/latest",
        "credential": "yandex_apikey",
        "dim": "256",
    },
)

schema.add_function(text_embedding_function)

المعلمات الخاصة بـ Yandex Cloud

المعلمة

مطلوب؟

الوصف

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

provider

نعم

مزود نموذج التضمين المراد استخدامه.

"yc"

model_name

نعم

URI نموذج Yandex Cloud المطلوب استدعاؤه.

"emb://<folder_ID>/text-search-doc/latest"

credential

لا

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

"yandex_apikey"

dim

لا

بعد متجه الإخراج. إذا تم تعيينه، يجب أن تتطابق القيمة مع بعد حقل متجه الإخراج.

"256"

الخطوات التالية

بعد تكوين دالة التضمين، راجع «نظرة عامة على دالة التضمين » للحصول على إرشادات حول إنشاء الفهارس وإدراج البيانات وتشغيل البحث الدلالي.

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

جرب Managed Milvus مجاناً

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

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

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