DashScope RankerCompatible with Milvus 2.6.x

DashScope Ranker を使用すると、Milvus は Alibaba Cloud DashScope の再ランク付けモデルを呼び出し、意味的な関連性に基づいて検索結果の順序を並べ替えることができます。

前提条件

DashScope Ranker を使用する前に、以下の条件を満たしていることを確認してください。

  • 再ランク付け対象のテキストを含む「VARCHAR 」フィールドを持つMilvusコレクション。

  • 有効な DashScope API キー。

  • gte-rerank-v2 などの DashScope 再ランク付けモデルへのアクセス権。

利用可能な再ランク付けモデルおよび地域別エンドポイントについては、Alibaba Cloud Model StudioのText Rerank APIを参照してください。

認証情報の設定

Milvus が DashScope に再ランク付けをリクエストするには、DashScope API キーを指定する必要があります。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 は以下の環境変数から DashScope API キーを読み取ることができます:

変数

必須?

説明

MILVUS_DASHSCOPE_API_KEY

はい

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

DashScope ランカー関数の作成

DashScope ランカーを使用するには、DashScope 再ランク付けモデルとクエリテキストを指定する Function オブジェクトを作成します。DashScope の再ランク付けには、provider: "ali" を使用してください。

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 ランカー固有のパラメータ

パラメータ

必須?

説明

値 / 例

reranker

はい

モデルの再ランク付けを有効にするには、"model" に設定する必要があります。

"model"

provider

はい

再ランク付けに使用するモデルサービスプロバイダー。DashScope の場合は、"ali" を使用してください。

"ali"

model_name

はい

使用するDashScopeの再ランク付けモデル。

"gte-rerank-v2"

queries

はい

再ランク付けモデルが関連性スコアを計算するために使用するクエリ文字列のリスト。クエリ文字列の数は、検索リクエスト内のクエリ数と一致している必要があります。

["renewable energy developments"]

max_client_batch_size

いいえ

リクエストごとにモデルサービスへ送信するドキュメントの最大数。

128 (デフォルト)

credential

いいえ

milvus.yaml の最上位セクションであるcredential: で定義されたクレデンシャルのラベル。

"dashscope_apikey"

providerqueries など、すべてのモデルランカーで共通する一般的なパラメータについては、「モデルランカーの作成」を参照してください。

DashScope Rankerを標準のベクトル検索に適用するには、search() にranker関数を渡します。

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

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

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

始める
フィードバック

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