Depois de criar e implantar o índice, é possível executar consultas para encontrar os vizinhos mais próximos.
Veja alguns exemplos de uma consulta de correspondência para encontrar os próximos vizinhos mais próximos usando o algoritmo de vizinhos k-mais próximo (k-NN).
Exemplos de consultas para o endpoint público
Python
Para saber como instalar o SDK da Vertex AI para Python, consulte Instalar o SDK da Vertex AI para Python. Para mais informações, consulte a documentação de referência da API Python.
Linha de comando
  O publicEndpointDomainName listado abaixo pode ser encontrado em
  Implantar e está formatado como
  <number>.<region>-<number>.vdb.vertexai.goog.
  
  $ curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer `gcloud auth print-access-token`" https://1957880287.us-central1-181224308459.vdb.vertexai.goog/v1/projects/181224308459/locations/us-central1/indexEndpoints/3370566089086861312:findNeighbors -d '{deployed_index_id: "test_index_public1", queries: [{datapoint: {datapoint_id: "0", feature_vector: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, neighbor_count: 5}]}'
  
  Este exemplo de curl demonstra como realizar chamadas de clientes http(s),
  embora o endpoint público dê suporte ao protocolo duplo para RESTful e
  grpc_cli.
  
  $ curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer `gcloud auth print-access-token`" https://1957880287.us-central1-181224308459.vdb.vertexai.goog/v1/projects/${PROJECT_ID}/locations/us-central1/indexEndpoints/${INDEX_ENDPOINT_ID}:readIndexDatapoints -d '{deployed_index_id:"test_index_public1", ids: ["606431", "896688"]}'
  Este exemplo de curl demonstra como consultar com restrições de número e token.
  $ curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer `gcloud auth print-access-token`"  https://${PUBLIC_ENDPOINT_DOMAIN}/v1/projects/${PROJECT_ID}/locations/${LOCATION}/indexEndpoints/${INDEX_ENDPOINT_ID}:findNeighbors -d '{deployed_index_id:"${DEPLOYED_INDEX_ID}", queries: [{datapoint: {datapoint_id:"x", feature_vector: [1, 1], "sparse_embedding": {"values": [111.0,111.1,111.2], "dimensions": [10,20,30]}, numeric_restricts: [{namespace: "int-ns", value_int: -2, op: "GREATER"}, {namespace: "int-ns", value_int: 4, op: "LESS_EQUAL"}, {namespace: "int-ns", value_int: 0, op: "NOT_EQUAL"}], restricts: [{namespace: "color", allow_list: ["red"]}]}}]}'
  Console
Use estas instruções para consultar um índice implantado em um endpoint público pelo console.
- Na seção Vertex AI do console Google Cloud , acesse a seção Implantar e usar. Selecione Pesquisa de vetor.
 - Selecione o índice que você quer consultar. A página Informações do índice é aberta.
 - Role para baixo até a seção Índices implantados e selecione o índice implantado que você quer consultar. A página Informações do índice implantado é aberta.
 - Na seção Índice de consulta, selecione se você quer consultar por um valor de incorporação densa, esparsa, híbrida (incorporações densas e esparsas) ou um ponto de dados específico.
 - Insira os parâmetros de consulta para o tipo de consulta selecionado. Por exemplo, se você estiver consultando por um embedding denso, insira o vetor de embedding para consultar.
 - Execute a consulta com o comando curl fornecido ou com o Cloud Shell.
 - Se for usar o Cloud Shell, selecione Executar no Cloud Shell.
 - Executar no Cloud Shell
 - Os resultados retornam os vizinhos mais próximos.
 
Consultas híbridas
A pesquisa híbrida usa embeddings densos e esparsos para pesquisas baseadas em uma combinação de pesquisa por palavra-chave e pesquisa semântica.
Python
Para saber como instalar o SDK da Vertex AI para Python, consulte Instalar o SDK da Vertex AI para Python. Para mais informações, consulte a documentação de referência da API Python.
Consultas com filtragem e recolhimento
Com a filtragem de correspondências de vetores, é possível restringir os resultados de vizinho mais próximo a categorias específicas. Os filtros também podem designar categorias a serem excluídas dos resultados.
Limites de vizinhos por recolhimento podem aumentar a diversidade de resultados ao limitar o número de resultados retornados de qualquer tag de recolhimento nos dados do índice.
Python
Para saber como instalar o SDK da Vertex AI para Python, consulte Instalar o SDK da Vertex AI para Python. Para mais informações, consulte a documentação de referência da API Python.
Configurações de tempo de consulta que afetam o desempenho
Os parâmetros de tempo de consulta a seguir podem afetar a latência, a disponibilidade e o custo ao usar a pesquisa de vetor. Essa orientação se aplica à maioria dos casos. No entanto, sempre teste as configurações para garantir que elas funcionem com seu caso de uso.
Para definições de parâmetro, consulte Parâmetros de configuração de índice.
| Parâmetro | Sobre | Impacto no desempenho | 
|---|---|---|
approximateNeighborsCount | 
    
       Informa ao algoritmo o número de resultados aproximados a serem recuperados de cada fragmento. 
        O valor de  
        O nome da API REST correspondente para esse campo é
          | 
    
       
        Aumentar o valor de  
 
        Aumentar o valor de  
  | 
  
setNeighborCount | 
    
       Especifica o número de resultados que a consulta deve retornar. 
        O nome da API REST correspondente para esse campo é
          | 
    
       Valores inferiores ou iguais a 300 mantêm o desempenho na maioria dos casos de uso. Para valores maiores, teste cada caso de uso específico.  | 
  
fractionLeafNodesToSearch | 
    
      Controla a porcentagem de nós de folha a serem visitados ao pesquisar vizinhos
       mais próximos. Isso está relacionado a leafNodeEmbeddingCount,
      porque quanto mais embeddings por nó de folha, mais dados examinados por folha.
      
        O nome da API REST correspondente para esse campo é
          | 
    
       
        Aumentar o valor de  
 
        Diminuir o valor de  
  |