Hybrid Search (V2)
この操作は、ベクトル類似度とスカラーフィルタリングに基づいてエンティティを検索し、指定された戦略を使用して結果を再ランク付けします。
https://{cluster-id}.{region}.vectordb.zillizcloud.com:19530
- サービングクラスターを使用している場合は、クラスターエンドポイントを使用します。
Free & Serverless
https://{cluster-id}.serverless.{region}.vectordb.zillizcloud.comDedicated
https://{cluster-id}.{region}.vectordb.zillizcloud.com:19530
${CLUSTER_ENDPOINT}を、あなたのZilliz Cloudクラスターのエンドポイントに置き換える必要があります。- エンドポイントを取得するには、Describe Cluster V2 APIを使用してレスポンスから値を抽出してください。
export CLUSTER_ENDPOINT="https://{cluster-id}.{region}.vectordb.zillizcloud.com:19530"
認証トークンは、適切な権限を持つAPIキー、またはコロンで結合されたユーザー名とパスワードのペア(例: username:password)である必要があります。プロジェクトエンドポイントを使用する場合は、十分な権限を持つ有効なAPIキーのみが適用されます。
データベースの名前。
この操作の対象となるコレクションの名前。
この操作の対象となるパーティションの名前。このパラメータを設定すると、指定されたパーティション内で検索が実行されます。設定しない場合、コレクション内のすべてのパーティションが検索対象になります。
パーティション名。
検索パラメータ
ベクトルフィールドの検索パラメータ。
ベクトル埋め込みのリスト。Zilliz Cloud指定されたベクトル埋め込みに最も類似したベクトル埋め込みを検索します。
ベクトル埋め込み
ベクトルフィールドの名前。
ブール式のフィルター。
集約条件として機能するフィールドの名前。
現在の検索に適用されるメトリックタイプの名前。値は、対象コレクションのメトリックタイプと同じである必要があります。
返すエンティティの数。
返されたエンティティのうちスキップするエンティティの数。
growing セグメントで見つかったエンティティを無視するかどうか。
追加の検索パラメータ。
最小類似度のしきい値を決定します。metric_type を L2 に設定する場合、この値が range_filter の値より大きくなるようにしてください。それ以外の場合、この値は range_filter の値より小さくする必要があります。
特定の類似度範囲内のベクトルに検索を絞り込みます。metric_type を IP または COSINE に設定する場合、この値が radius の値より大きくなるようにしてください。それ以外の場合、この値は radius の値より小さくする必要があります。
パラメータ化されたフィルター式の式テンプレートパラメータ値。
再ランク付け戦略。
再ランク付け戦略の名前。
指定された戦略に関連するパラメータのセット
RRF アルゴリズムの調整可能な定数。戦略が rrf に設定されている場合にのみ適用されます。
返すエンティティの総数。 このパラメータは、param 内の offset と組み合わせてページネーションを有効にできます。 この値と param 内の offset の合計は 16,384 未満である必要があります。
グループごとに返すエンティティの数。このパラメータは、groupingField が指定されている場合にのみ有効です。
各グループの上位 k エンティティのみを返すかどうか。このパラメータは、groupingField が指定されている場合にのみ有効です。
検索結果とともに返すフィールドの配列。
フィールド名
検索操作の整合性レベル。値は、対象コレクションの整合性レベルと同じである必要があります。
現在の検索リクエストの関数設定。
適用する関数の名前。
適用する関数の説明。
適用する関数のタイプ。
関数の入力として使用するスカラーフィールドのリスト。
関数の入力として使用するスカラーフィールド。
関数の出力として使用するベクトルフィールドのリスト。
関数の出力として使用するベクトルフィールド。
キーと値のペアで指定する関数の追加パラメータ。
検索結果でスキップするレコードの数。
検索結果をグループ化するフィールドの名前。
export TOKEN="db_admin:xxxxxxxxxxxxx"
curl --request POST \
--url "${CLUSTER_ENDPOINT}/v2/vectordb/entities/hybrid_search" \
--header "Authorization: Bearer ${TOKEN}" \
--header "Request-Timeout: 5" \
--header "Content-Type: application/json" \
-d '{
"collectionName": "test_collection",
"search": [
{
"data": [
[
0.673437956701697,
0.739243747672878
]
],
"annsField": "float_vector_1",
"limit": 10,
"outputFields": [
"*"
]
},
{
"data": [
[
0.075384179256879,
0.9971545645073111
]
],
"annsField": "float_vector_2",
"limit": 10,
"outputFields": [
"*"
]
}
],
"rerank": {
"strategy": "rrf",
"params": {
"k": 10
}
},
"limit": 3,
"outputFields": [
"user_id",
"word_count",
"book_describe"
]
}'
検索結果を返します。
レスポンスコード。
この操作のコスト。 Free および Serverless クラスターにのみ適用され、現在のリクエストの vCU 使用量を示します。
検索結果
エンティティオブジェクト。
各クエリベクトルに対して返された上位 K 件の結果の数。
このパラメータは、使用状況追跡が有効な階層ストレージを使用するデプロイメントで、操作がリモート/diskストレージから読み取る場合に返されます。すべてのデータがローカルキャッシュから提供される場合は省略されます。
このパラメータは、使用状況追跡が有効な階層ストレージを使用するデプロイメントで、操作がリモート/diskストレージから読み取る場合に返されます。すべてのデータがローカルキャッシュから提供される場合は省略されます。
このパラメータは、使用状況追跡が有効な階層ストレージを使用するデプロイメントで、操作がリモート/diskストレージから読み取る場合に返されます。すべてのデータがローカルキャッシュから提供される場合は省略されます。
エラーメッセージを返します。
レスポンスコード。
エラーメッセージ。
{
"code": 0,
"cost": 0,
"data": [
{
"book_describe": "book_105",
"distance": 0.09090909,
"id": 450519760774180800,
"user_id": 5,
"word_count": 105
},
{
"book_describe": "book_246",
"distance": 0.09090909,
"id": 450519760774180900,
"user_id": 46,
"word_count": 246
},
{
"book_describe": "book_367",
"distance": 0.08333333600000001,
"id": 450519760774181060,
"user_id": 67,
"word_count": 367
}
]
}