query-vectors コマンドを使用して、ベクター類似検索を実行します。
権限
Alibaba Cloud アカウントには、デフォルトですべての権限があります。一方、RAM ユーザーと RAM ロールには権限がないため、アカウント所有者または管理者が RAM ポリシー または バケットポリシー を通じてアクセス権を付与する必要があります。
API | アクション | 説明 |
QueryVectors |
| ベクターデータをクエリします。 |
コマンド形式
ossutil vectors-api query-vectors --bucket value --index-name value --query-vector value --top-k value [flags]パラメータ
パラメータ | 型 | 説明 |
--bucket | string | ベクターバケットの名前。 |
--index-name | string | ベクターインデックスの名前。 |
--query-vector | string | JSON 形式のクエリベクター。クエリベクターのディメンションは、ベクターインデックスのディメンションと同じである必要があります。 |
--top-k | int | 返す類似ベクトルの最大数。有効値:1~500。 |
--filter | string | メタデータを使用したクエリデータのフィルタリング条件。
|
--return-distance | / | このパラメータを省略するか、 |
--return-metadata | / | このパラメータを省略するか、 |
query-vectors コマンドは、QueryVectors API に対応しています。
サポートされているグローバルコマンドラインオプションの詳細については、「グローバルコマンドラインオプション」をご参照ください。
フィルター演算子
演算子 | タイプ | 説明 |
| String | 配列型のメタデータに使用する場合、この演算子は、値が配列内のいずれかの要素と一致する場合に |
| String | 指定された値と等しくない値に一致します。 |
| Number | より大きい。 |
| Number | 以上。 |
| Number | より小さい。 |
| Number | 以下。 |
| String 配列 | 配列内のいずれかの値に一致します (SQL の |
| String 配列 | 配列内のいずれの値とも一致しません (SQL の |
| Boolean | メタデータキーが存在するかどうかを確認します。 |
| 空でないフィルターの配列 | フィルター条件の配列に対して論理 AND 演算を実行します。 |
| 空でないフィルターの配列 | フィルター条件の配列に対して論理 OR 演算を実行します。 |
例
次のコマンドは、examplebucket ベクターバケットの index ベクターインデックスから、クエリベクターに最も類似し、かつ type が comedy または documentary である上位 10 件のベクトルを検索します。
ossutil vectors-api query-vectors --bucket examplebucket --index-name index --filter "{\"$and\":[{\"type\":{\"$in\":[\"comedy\",\"documentary\"]}}]}" --query-vector "{\"float32\":[32]}" --top-k 10