Yandex CloudCompatible with Milvus 2.6.x

このトピックでは、Milvus で Yandex Cloud の埋め込み関数を設定および使用する方法について説明します。

埋め込みモデルの選択

Milvusは、yc プロバイダーを通じて、Yandex Cloud AI Studioのテキストベクトル化モデルをサポートしています。「Function parameters」で、model_name を、Milvusが呼び出すべきYandex CloudモデルのURIに設定してください。

たとえば、ドキュメント用の「Yandex Text Embeddings」では、emb://<folder_ID>/text-search-doc/latest のようなモデル URI が使用され、256 次元のベクトルが返されます。利用可能なモデル URI および次元については、「テキストベクトル化モデル」を参照してください。

認証情報の設定

Milvusが埋め込みをリクエストするには、Yandex CloudのAPIキーを指定する必要があります。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 API キーを読み取ることができます:

変数

必須?

説明

MILVUS_YC_API_KEY

はい

Milvus サービスが Yandex Cloud AI Studio を呼び出す際に使用する Yandex Cloud API キー。

埋め込み関数の使用

認証情報を設定したら、入力テキストフィールドと出力ベクトルフィールドを含むスキーマを定義し、そのスキーマに 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

はい

呼び出す Yandex Cloud モデルの URI。

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

credential

いいえ

milvus.yaml の最上位セクションである `credential: ` で定義された認証情報のラベル。

"yandex_apikey"

dim

いいえ

出力ベクトルの次元。設定する場合、その値は出力ベクトルフィールドの次元と一致する必要があります。

"256"

次の手順

埋め込み関数の設定が完了したら、「埋め込み関数の概要」を参照し、インデックスの作成、データの挿入、およびセマンティック検索の実行に関する手順を確認してください。

翻訳DeepL

マネージド Milvus を無料で試す

Zilliz Cloud は手間いらず、Milvus を基盤に 10 倍高速です。

始める
フィードバック

このページは役に立ちましたか ?