VPC インデックスをクエリして最近傍を取得する

インデックスを作成したら、クエリを実行して最近傍を取得できます。

DeployedIndex には DEPLOYED_INDEX_SERVER_IP があり、IndexEndpoints をリストすることで取得できます。DeployedIndex をクエリするには、ポート 10000DEPLOYED_INDEX_SERVER_IP に接続し、Match または BatchMatch メソッドを呼び出します。また、DOC_ID を使用してクエリすることもできます。

以下の例では、オープンソース ツールの grpc_cli を使用して、デプロイされたインデックス サーバーに grpc リクエストを送信します。

gRPC

最初の例では、Match メソッドを使用して単一のクエリを送信します。

./grpc_cli call ${DEPLOYED_INDEX_SERVER_IP}:10000 google.cloud.aiplatform.container.v1.MatchService.Match '{deployed_index_id: "${DEPLOYED_INDEX_ID}", float_val: [-0.1,..]}'

2 番目の例では、2 つのクエリを同じ BatchMatch リクエストに統合しています。

./grpc_cli call ${DEPLOYED_INDEX_SERVER_IP}:10000 google.cloud.aiplatform.container.v1.MatchService.BatchMatch 'requests: [{deployed_index_id: "${DEPLOYED_INDEX_ID}", requests: [{deployed_index_id: "${DEPLOYED_INDEX_ID}", float_val: [-0.1,..]}, {deployed_index_id: "${DEPLOYED_INDEX_ID}", float_val: [-0.2,..]}]}]'

これらの API は、[サービスとピアリングされた同じ VPC](#vpc-network-peering-setup) で実行されているクライアントから呼び出す必要があります。

DOC_ID を使用してクエリを実行するには、次の例を使用します。

./grpc_cli call ${DEPLOYED_INDEX_SERVER_IP}:10000  google.cloud.aiplatform.container.v1.MatchService.Match "deployed_index_id:'"test_index1"',embedding_id: '"606431"'"

詳細については、クライアント ライブラリの説明をご覧ください。

コンソール

コンソールから VPC インデックスをクエリするには、次の手順を実施します。

  1. Google Cloud コンソールの [Vertex AI] セクションで、[デプロイと使用] セクションに移動します。[ベクトル検索] を選択します。

    [ベクトル検索] に移動

  2. クエリを実行する VPC インデックスを選択します。[インデックスの情報] ページが開きます。
  3. [デプロイされたインデックス] セクションまで下にスクロールし、クエリを実行するデプロイされたインデックスを選択します。[デプロイされるインデックスの情報] ページが開きます。
  4. [インデックスのクエリ] セクションから、クエリ パラメータを選択します。ベクトルや特定のデータポイントでクエリを実行できます。
  5. オープンソース ツールの grpc_cli または Vertex AI SDK for Python を使用してクエリを実行します。

次のステップ