インデックスを作成したら、クエリを実行して最近傍を取得できます。
各 DeployedIndex
には DEPLOYED_INDEX_SERVER_IP
があり、IndexEndpoints
をリストすることで取得できます。DeployedIndex
をクエリするには、ポート 10000
で DEPLOYED_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 インデックスをクエリするには、次の手順を実施します。
- Google Cloud コンソールの [Vertex AI] セクションで、[デプロイと使用] セクションに移動します。[ベクトル検索] を選択します。
- クエリを実行する VPC インデックスを選択します。[インデックスの情報] ページが開きます。
- [デプロイされたインデックス] セクションまで下にスクロールし、クエリを実行するデプロイされたインデックスを選択します。[デプロイされるインデックスの情報] ページが開きます。
- [インデックスのクエリ] セクションから、クエリ パラメータを選択します。ベクトルや特定のデータポイントでクエリを実行できます。
- オープンソース ツールの grpc_cli または Vertex AI SDK for Python を使用してクエリを実行します。
次のステップ
- インデックスの更新と再構築の方法を学ぶ。
- ベクトル一致をフィルタする方法を学ぶ。
- インデックスのモニタリングの方法を学ぶ。