Yandex CloudCompatible with Milvus 2.6.x

In diesem Thema wird beschrieben, wie Sie die Einbettungsfunktionen von Yandex Cloud in Milvus konfigurieren und verwenden.

Wählen Sie ein Einbettungsmodell aus

Milvus unterstützt Textvektorisierungsmodelle von Yandex Cloud AI Studio über den Anbieter „ yc “. Legen Sie in den Funktionsparametern unter „ model_name “ die URI des Yandex Cloud-Modells fest, das Milvus aufrufen soll.

Beispielsweise verwenden „Yandex Text Embeddings“ für Dokumente eine Modell-URI wie emb://<folder_ID>/text-search-doc/latest und geben 256-dimensionale Vektoren zurück. Informationen zu verfügbaren Modell-URIs und Dimensionen finden Sie unter „Textvektorisierungsmodelle“.

Anmeldedaten konfigurieren

Milvus muss Ihren Yandex Cloud-API-Schlüssel kennen, bevor es Einbettungen anfordern kann. Sie können den API-Schlüssel unter milvus.yaml oder über eine Umgebungsvariable konfigurieren.

Option 1: Konfigurationsdatei

Speichern Sie Ihren API-Schlüssel unter milvus.yaml und verweisen Sie den Yandex Cloud-Anbieter auf das Anmeldeinformationen-Label.

# 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

Option 2: Umgebungsvariable

Wenn in „ milvus.yaml “ keine passenden Anmeldedaten konfiguriert sind, kann Milvus den Yandex Cloud-API-Schlüssel aus der folgenden Umgebungsvariablen auslesen:

Variable

Erforderlich?

Beschreibung

MILVUS_YC_API_KEY

Ja

Yandex-Cloud-API-Schlüssel, der vom Milvus-Dienst zum Aufruf von Yandex Cloud AI Studio verwendet wird.

Einbettungsfunktion verwenden

Sobald die Anmeldedaten konfiguriert sind, definieren Sie ein Schema mit einem Eingabetextfeld und einem Ausgabevektorfeld und fügen Sie dem Schema anschließend eine Yandex Cloud-Embedding-Funktion hinzu.

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-spezifische Parameter

Parameter

Erforderlich?

Beschreibung

Wert / Beispiel

provider

Ja

Der zu verwendende Anbieter des Einbettungsmodells.

"yc"

model_name

Ja

Die URI des aufzurufenden Yandex Cloud-Modells.

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

credential

Nein

Die Bezeichnung einer Anmeldeinformation, die im obersten Abschnitt „ credential: “ unter milvus.yaml definiert ist.

"yandex_apikey"

dim

Nein

Die Dimension des Ausgabevektors. Falls festgelegt, muss der Wert mit der Dimension des Ausgabevektorfeldes übereinstimmen.

"256"

Nächste Schritte

Nachdem Sie die Einbettungsfunktion konfiguriert haben, finden Sie im Abschnitt „Übersicht über Einbettungsfunktionen“ Anleitungen zum Erstellen von Indizes, zum Einfügen von Daten und zum Ausführen der semantischen Suche.

Übersetzt vonDeepL

Verwaltetes Milvus kostenlos testen

Zilliz Cloud ist unkompliziert, basiert auf Milvus und ist 10-mal schneller.

Loslegen
Feedback

War diese Seite hilfreich?