Nesta página, mostramos como visualizar os resultados da pesquisa usando o console Google Cloud e como receber resultados da pesquisa usando a API.
Além disso, em vez de criar um widget de pesquisa para adicionar à página da Web, você pode fazer chamadas de API e integrá-las ao servidor ou aplicativo. Esta página inclui exemplos de código sobre como fazer consultas de pesquisa usando as bibliotecas de cliente gRPC com uma conta de serviço.
Receber resultados da pesquisa de um app com dados do site
Console
Para usar o Google Cloud console e visualizar os resultados da pesquisa de um app com dados do site, siga estas etapas:
No console Google Cloud , acesse a página Aplicativos de IA.
Clique no nome do app que você quer editar.
Clique em Visualização.
Abra a página Prévia no console.
Opcional: se você conectou vários repositórios de dados ao app, mas quer resultados apenas de um específico, selecione o repositório de dados para receber os resultados.
Digite uma consulta de pesquisa.
Se você ativou o preenchimento automático, uma lista de sugestões vai aparecer abaixo da barra de pesquisa enquanto você digita.
Pressione Enter para enviar a consulta.
- Uma lista de resultados de pesquisa aparece abaixo da barra de pesquisa.
- Cada resultado contém um título, um snippet e um URL.
- Clicar em um resultado abre o URL.
- Se os recursos avançados do LLM estiverem ativados para o app, uma resposta gerada também poderá aparecer.
REST
Para usar a API e receber resultados de pesquisa de um app com dados do site,
use o método engines.servingConfigs.search
:
Encontre o ID do app. Se você já tiver o ID do app, pule para a próxima etapa.
No console Google Cloud , acesse a página Aplicativos de IA.
Na página Apps, encontre o nome do app e confira o ID dele na coluna ID.
Receber resultados da pesquisa.
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search:search" \ -d '{ "servingConfig": "projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search", "query": "QUERY", "pageSize": "PAGE_SIZE", "offset": "OFFSET", "orderBy": "ORDER_BY", "params": {"user_country_code": "USER_COUNTRY_CODE", "searchType": "SEARCH_TYPE"}, "filter": "FILTER", "boostSpec": "BOOST_SPEC", "contentSearchSpec": { "searchResultMode": "RESULT_MODE" }, "dataStoreSpecs": [{"DATA_STORE_SPEC"}] }'
Substitua:
PROJECT_ID
: o ID do seu Google Cloud projeto.APP_ID
: o ID do app da Vertex AI para Pesquisa que você quer consultar.QUERY
: o texto da consulta a ser pesquisado.PAGE_SIZE
: o número de resultados retornados pela pesquisa. O tamanho máximo permitido da página depende do tipo de dados. Tamanhos de página acima do valor máximo são convertidos para o valor máximo.- Sites com indexação básica: padrão
10
, máximo25
- Sites com indexação avançada: padrão
25
, máximo50
- Outro: padrão
50
, máximo100
- Sites com indexação básica: padrão
OFFSET
: o índice inicial dos resultados. O valor padrão é 0.Por exemplo, se o deslocamento for 2, o tamanho da página for 10 e houver 15 resultados a serem retornados, os resultados de 2 a 12 serão retornados na primeira página.
ORDER_BY
: a ordem em que os resultados são organizados. O atributo usado para classificação precisa ter uma interpretação numérica, por exemplo,date
. Para mais informações, consulte Ordenar resultados da pesquisa na Web.USER_COUNTRY_CODE
: o local do usuário. Esse par chave-valor é a única entrada compatível com o campo de mapaparams
. O valor padrão é vazio. Para valores aceitáveis, consulte Códigos de país na documentação de referência da API JSON do Mecanismo de Pesquisa Programável.SEARCH_TYPE
: o tipo de pesquisa a ser realizada. O valor padrão é 0 para a pesquisa de documentos. O outro valor aceito é 1 para a pesquisa de imagens.FILTER
: um campo de texto para filtrar sua pesquisa usando uma expressão de filtro. O valor padrão é uma string vazia. Para mais informações sobre como usar o campofilter
, consulte Filtrar a pesquisa de sites.BOOST_SPEC
: opcional. Uma especificação para aumentar ou ocultar documentos. Valores:BOOST
: um número de ponto flutuante no intervalo [-1,1]. Quando o valor é negativo, os resultados são rebaixados (aparecem mais abaixo nos resultados). Quando o valor é positivo, os resultados são promovidos (aparecem mais acima nos resultados).CONDITION
: uma expressão de filtro de texto para selecionar os documentos a que o aumento é aplicado. O filtro precisa ser avaliado como um valor booleano. Para saber mais sobre o aumento da pesquisa estruturada, consulte Aumentar os resultados da pesquisa.
RESULT_MODE
: determina se os resultados da pesquisa são retornados como documentos completos ou em partes. Para receber partes, o repositório de dados precisa ter a divisão de documentos ativada. Os valores aceitos sãodocuments
echunks
. Quando o chunking está ativado para um repositório de dados, o valor padrão échunks
. Caso contrário, o padrão édocuments
. Para informações sobre o fracionamento de documentos, consulte Analisar e fracionar documentos. Esse campo está em pré-lançamento público. Para usá-lo, mudev1
parav1alpha
no comando curl.DATA_STORE_SPEC
: filtros para um repositório de dados específico em que a pesquisa será feita. UsedataStoreSpecs
se o app de pesquisa estiver conectado a vários repositórios de dados, mas você quiser resultados de um repositório de dados específico. Para mais informações, consulte DataStoreSpec.
C#
Para mais informações, consulte a documentação de referência da API C# de aplicativos de IA.
Para autenticar no AI Applications, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Java
Para mais informações, consulte a documentação de referência da API Java de aplicativos de IA.
Para autenticar no AI Applications, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Para mais informações, consulte a documentação de referência da API Node.js de aplicativos de IA.
Para autenticar no AI Applications, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
PHP
Para mais informações, consulte a documentação de referência da API PHP de aplicativos de IA.
Para autenticar no AI Applications, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para mais informações, consulte a documentação de referência da API Python de aplicativos de IA.
Para autenticar no AI Applications, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Ruby
Para mais informações, consulte a documentação de referência da API Ruby de aplicativos de IA.
Para autenticar no AI Applications, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Receber resultados da pesquisa de um app com dados do site (chave de API)
Se você quiser autenticar a chamada do método de pesquisa com uma chave de API em vez de
usar o OAuth 2.0 com uma conta de serviço ou de usuário, siga este
procedimento, que usa o método searchLite
.
O método searchLite
tem os mesmos recursos do método search
, mas só pode ser usado para pesquisar sites públicos.
O método searchLite
é especialmente adequado nas seguintes condições:
Você tem um site estático em que não é prático configurar o OAuth 2.0 usando uma conta de serviço ou de usuário.
Você migrou para a Vertex AI para Pesquisa da API JSON Custom Search Site Restricted do Mecanismo de Pesquisa Programável.
Você não quer usar o widget de pesquisa.
Antes de começar
Antes de chamar o método
servingConfigs.searchLite
, você precisa de uma
chave de API. Se você não tiver uma chave de API, conclua a etapa 1 de Implantar o
app de pesquisa (chave de API).
Procedimento
REST
Para usar a API e receber resultados da pesquisa de um app com dados de sites públicos autenticados com uma chave de API, use o método engines.servingConfigs.searchLite
:
Encontre o ID do app. Se você já tiver o ID do app, pule para a próxima etapa.
No console Google Cloud , acesse a página Aplicativos de IA.
Na página Apps, encontre o nome do app e confira o ID dele na coluna ID.
Execute o seguinte comando curl para receber resultados da pesquisa:
curl -X POST -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search:searchLite?key=API_KEY" \ -d '{ "servingConfig": "projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search", "query": "QUERY", }'
Substitua:
PROJECT_ID
: o ID do seu Google Cloud projeto.API_KEY
: sua string de chave de API.PROJECT_ID
: o ID do seu Google Cloud projeto.APP_ID
: o ID do app da Vertex AI para Pesquisa que você quer consultar.QUERY
: o texto da consulta a ser pesquisado.
Python
Para mais informações, consulte a documentação de referência da API Python de aplicativos de IA.
Para autenticar no AI Applications, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Receber resultados da pesquisa de um app com dados estruturados ou não estruturados
É possível conferir os resultados da pesquisa no console Google Cloud ou usar a API para receber os resultados.
Console
Para usar o Google Cloud console e visualizar os resultados da pesquisa de um app com dados estruturados ou não estruturados, siga estas etapas:
- Abra a página Prévia no console.
Digite uma consulta de pesquisa.
Se você ativou o preenchimento automático, uma lista de sugestões vai aparecer abaixo da barra de pesquisa enquanto você digita.
(Opcional) Se você conectou vários repositórios de dados ao app, mas quer resultados apenas de um deles, selecione o repositório de dados.
Pressione Enter para enviar a consulta.
Uma lista de resultados de pesquisa aparece abaixo da barra de pesquisa.
Para dados estruturados, o seguinte se aplica:
Se os mapeamentos de atributos não forem definidos em Configurações > Configurar campos nos resultados, os resultados da pesquisa serão mostrados como uma lista de nomes e valores de atributos brutos.
Se algum mapeamento de atributo foi salvo em Configurações > Configurar campos nos resultados, os resultados da pesquisa serão exibidos da mesma forma que na prévia da página Configurações.
Se alguma faceta foi especificada em Configurações > Configurações de faceta, ela será mostrada da mesma forma.
REST
Para usar a API e receber resultados da pesquisa de um app com dados estruturados ou não estruturados, use o método engines.servingConfigs.search
:
Encontre o ID do app. Se você já tiver o ID do app, pule para a próxima etapa.
No console Google Cloud , acesse a página Aplicativos de IA.
Na página Apps, encontre o nome do app e confira o ID dele na coluna ID.
Receber resultados da pesquisa.
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search:search" \ -d '{ "query": "QUERY", "userPseudoId": "USER_PSEUDO_ID", "pageSize": "PAGE_SIZE", "offset": "OFFSET", "orderBy": "ORDER_BY", "filter": "FILTER", "boostSpec": "BOOST_SPEC", "facetSpec": "FACET_SPEC", "queryExpansionSpec": "QUERY_EXPANSION_SPEC", "spellCorrectionSpec": "SPELL_CORRECTION_SPEC", "contentSearchSpec": "CONTENT_SEARCH_SPEC", "dataStoreSpecs": [{"DATA_STORE_SPEC"}], }'
Substitua:
PROJECT_ID
: o ID do seu Google Cloud projeto.PROJECT_ID
: o ID do seu Google Cloud projeto.APP_ID
: o ID do app da Vertex AI para Pesquisa que você quer consultar.QUERY
: o texto da consulta a ser pesquisado.USER_PSEUDO_ID
: opcional. É um identificador pseudônimo para rastrear um visitante da pesquisa. O Google recomenda usar esse campo, que melhora a performance do modelo e a qualidade da personalização. Você pode usar um cookie HTTP para esse campo, que identifica de forma exclusiva um visitante em um único dispositivo. Esse identificador não muda quando o visitante faz login ou logout de um site. Não defina esse campo com o mesmo identificador para vários usuários. Isso combinaria os históricos de eventos e reduziria a qualidade do modelo. Não inclua informações de identificação pessoal (PII) neste campo.PAGE_SIZE
: o número de resultados retornados pela pesquisa. O tamanho máximo permitido da página depende do tipo de dados. Tamanhos de página acima do valor máximo são revertidos para o valor máximo.- Sites com indexação básica: padrão
10
, máximo25
- Sites com indexação avançada: padrão
25
, máximo50
- Outro: padrão
50
, máximo100
- Sites com indexação básica: padrão
OFFSET
: opcional. O índice inicial dos resultados. O valor padrão é 0.Por exemplo, se o deslocamento for 2, o tamanho da página for 10 e houver 15 resultados a serem retornados, os resultados de 2 a 11 serão retornados na primeira página.
ORDER_BY
: opcional. A ordem em que os resultados são organizados.FILTER
: opcional. Um campo de texto para filtrar sua pesquisa usando uma expressão de filtro. O valor padrão é uma string vazia, o que significa que nenhum filtro é aplicado.Exemplo:
color: ANY("red", "blue") AND score: IN(*, 100.0e)
Para mais informações, consulte Filtrar a pesquisa por dados estruturados ou não estruturados.
BOOST_SPEC
: opcional. Uma especificação para aumentar ou diminuir a relevância de documentos. Valores:BOOST
: um número de ponto flutuante no intervalo [-1,1]. Quando o valor é negativo, os resultados são rebaixados (aparecem mais abaixo nos resultados). Quando o valor é positivo, os resultados são promovidos (aparecem mais acima nos resultados).CONDITION
: uma expressão de filtro de texto para selecionar os documentos a que o aumento é aplicado. O filtro precisa ser avaliado como um valor booleano.
Para saber mais sobre o aumento da pesquisa estruturada, consulte Aumentar os resultados da pesquisa.
FACET_SPEC
: opcional. Uma especificação de atributo para realizar pesquisa de atributos.QUERY_EXPANSION_SPEC
: opcional. Uma especificação para determinar em quais condições a expansão da consulta deve ocorrer. O padrão éDISABLED
.SPELL_CORRECTION_SPEC
: opcional. Uma especificação para determinar em quais condições a correção ortográfica deve ocorrer. O padrão éAUTO
.CONTENT_SEARCH_SPEC
: opcional. Para receber snippets, respostas extrativas, trechos extrativos e resumos de pesquisa. Apenas para dados não estruturados. Veja mais informações em:DATA_STORE_SPEC
: filtros para um repositório de dados específico em que a pesquisa será feita. Isso pode ser usado se o app de pesquisa estiver conectado a vários repositórios de dados.Como ver os resultados da pesquisa guiada na resposta da pesquisa:
Os resultados da pesquisa guiada são retornados com respostas da pesquisa para pesquisa estruturada e não estruturada. O resultado da pesquisa guiada contém uma lista de pares de chave-valor de atributos extraídos com base nos documentos de resultados da pesquisa. Isso permite que os usuários refinem os resultados da pesquisa usando algumas chaves e valores de atributos como filtros.
Neste exemplo de resposta, a cor verde foi usada para refinar os resultados da pesquisa ao emitir uma nova solicitação com o campo de filtro especificado como
_gs.color: ANY("green")
:{ "guidedSearchResult": { "refinementAttributes": [ { "attributeKey": "_gs.color", "attributeValue" : "green" }, { "attributeKey": "_gs.category", "attributeValue" : "shoe" } ] } }
C#
Para mais informações, consulte a documentação de referência da API C# de aplicativos de IA.
Para autenticar no AI Applications, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Java
Para mais informações, consulte a documentação de referência da API Java de aplicativos de IA.
Para autenticar no AI Applications, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Para mais informações, consulte a documentação de referência da API Node.js de aplicativos de IA.
Para autenticar no AI Applications, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
PHP
Para mais informações, consulte a documentação de referência da API PHP de aplicativos de IA.
Para autenticar no AI Applications, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para mais informações, consulte a documentação de referência da API Python de aplicativos de IA.
Para autenticar no AI Applications, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Ruby
Para mais informações, consulte a documentação de referência da API Ruby de aplicativos de IA.
Para autenticar no AI Applications, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Receber pontuações de relevância do documento com os resultados da pesquisa
As pontuações de relevância do documento são baseadas na similaridade da consulta com o documento. As pontuações são colocadas em 11 intervalos no intervalo: 0, 0,1, 0,2, … a 1,0. Quanto maior a pontuação, mais relevante é o documento.
Considere as pontuações de relevância do documento para estes casos de uso:
Filtragem pós-pesquisa com base na pontuação de relevância para remover resultados irrelevantes
Classificação pós-pesquisa ou como entrada para outros aplicativos
Depuração: as pontuações de relevância podem fornecer insights sobre por que alguns resultados de pesquisa são retornados.
Para cada resultado da pesquisa, uma pontuação de relevância pode ser retornada:
"results": [ { "id": "DOCUMENT_ID", "document": { ... }, "modelScores": { "relevance_score": { "values": [ DOCUMENT-RELEVANCE-SCORE ] } } }, ...
Consulte também o comando de exemplo no procedimento abaixo.
Antes de começar:verifique se o app de pesquisa está associado a um repositório de dados estruturados ou não estruturados. Ou seja, as pontuações de relevância do documento não podem ser retornadas para o app de pesquisa de sites.
REST
Para solicitar que as pontuações de relevância do documento sejam retornadas com os resultados da pesquisa, use o método engines.servingConfigs.search
da seguinte maneira:
Encontre o ID do app. Se você já tiver o ID do app, pule para a próxima etapa.
No console Google Cloud , acesse a página Aplicativos de IA.
Na página Apps, encontre o nome do app e confira o ID dele na coluna ID.
Execute o seguinte comando curl para receber as pontuações retornadas com os resultados da pesquisa.
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search:search" \ -d '{ "servingConfig": "projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search", "query": "QUERY", "relevanceScoreSpec": { "returnRelevanceScore": true } }'
PROJECT_ID
: o ID do seu Google Cloud projeto.APP_ID
: o ID do app da Vertex AI para Pesquisa que você quer consultar.QUERY
: o texto da consulta a ser pesquisado.
O resumo de pesquisa varia de acordo com o modelo
Se você gerar resumos de pesquisa para suas consultas, poderá notar que eles são diferentes entre os resultados do console e da API. Se isso acontecer, provavelmente o console está usando um modelo de LLM diferente da API. Os exemplos de curl e código nesta página usam o modelo de LLM estável.
Para mudar ou conferir o modelo de LLM usado na página Prévia da UI (compatível apenas com aplicativos de pesquisa avançada e de saúde).
- Acesse a página Configurações do app > guia Interface.
Selecione um Tipo de pesquisa:
- Selecione Pesquisar com uma resposta para mostrar um resumo generativo acima dos resultados da pesquisa.
- Selecione Pesquisar com acompanhamentos para ativar a pesquisa por conversa com resumos generativos e perguntas complementares.
Na seção Modelos de linguagem grande para resumo, selecione um modelo.
Para chamadas de método, o modelo estável é o padrão. Para usar um modelo LLM diferente do modelo estável, consulte Especificar o modelo de resumo e Especificar o modelo de resposta.
Próximas etapas
Use a API de pesquisa para navegar pelos dados nos seus apps de pesquisa genérica.