Esta página apresenta a pesquisa com respostas e acompanhamentos para a pesquisa do agente e mostra como implementar isso em apps de pesquisa personalizados usando chamadas de método.
A pesquisa com resposta e acompanhamentos é baseada no método de resposta. O método answer substitui os recursos de resumo do método search mais antigo e todos os recursos do método converse descontinuado. O método de resposta também tem alguns recursos adicionais importantes, como a capacidade de processar consultas complexas.
Recursos do método de resposta
Confira os principais recursos do método de resposta:
A capacidade de gerar respostas para consultas complexas. Por exemplo, o método de resposta pode dividir consultas compostas, como a seguinte, em várias consultas menores para retornar resultados melhores que são usados para gerar respostas melhores:
- "Qual é a receita do Google Cloud e do Google Ads em 2024?"
- "Quantos anos depois da fundação, o Google atingiu US$ 1 bilhão de receita?"
A capacidade de combinar pesquisa e geração de respostas em uma conversa multiturno chamando o método de resposta em cada rodada.
A capacidade de parear com o método de pesquisa para reduzir a latência. Você pode chamar os métodos de pesquisa e resposta separadamente e renderizar os resultados da pesquisa e as respostas em iframes diferentes em momentos diferentes. Isso significa que você pode mostrar aos usuários resultados da pesquisa (os 10 links azuis) em milissegundos. Não é necessário esperar que as respostas sejam geradas para mostrar os resultados da pesquisa.
Os recursos de resposta e acompanhamento podem ser divididos em três fases da consulta, pesquisa e resposta:
Quando usar a resposta e quando usar a pesquisa
O Agent Search tem dois métodos usados para consultar apps. Eles têm recursos diferentes, mas que se sobrepõem.
Use o método answer quando:
Você quer uma resposta (ou um resumo) gerada por IA dos resultados da pesquisa.
Você quer fazer pesquisas multiturno, ou seja, pesquisas que mantêm o contexto para permitir perguntas complementares.
Use o método search nos seguintes casos:
Você só precisa dos resultados da pesquisa, não de uma resposta gerada.
Você tem uma das seguintes opções:
- Dados de mídia ou de saúde
- Seus próprios embeddings
- Controles de sinônimos ou redirecionamento
- Atributos
- Códigos de países dos usuários
É necessário navegar pelos dados no seu repositório de dados genérico.
Use os métodos de resposta e pesquisa juntos quando:
Você quer retornar mais de dez resultados da pesquisa e quer uma resposta gerada.
Você tem problemas de latência e quer retornar e mostrar resultados da pesquisa rapidamente antes que a resposta gerada seja retornada.
Recursos da fase de consulta
O recurso de respostas e acompanhamentos é compatível com o processamento de consultas em linguagem natural.
Esta seção descreve e ilustra as várias opções de reformulação e classificação de consultas.
Reformulação de consultas
A reformulação de consultas fica ativada por padrão. Esse recurso escolhe a melhor maneira de reformular consultas automaticamente para melhorar os resultados da pesquisa. Esse recurso também pode processar consultas que não precisam ser reformuladas.
Dividir consultas complexas em várias consultas e realizar subconsultas síncronas.
Por exemplo, uma consulta complexa é dividida em quatro consultas menores e mais simples.
Entrada do usuário Subconsultas criadas com base na consulta complexa Quais empregos e hobbies Andie Ram e Arnaud Clément têm em comum? - Ocupação de Andie Ram
- Ocupação de Arnaud Clément
- Hobby de Andie Ram
- Hobby de Arnaud Clément
Sintetizar consultas multiturno para fazer perguntas complementares com reconhecimento de contexto e com estado.
Por exemplo, as consultas sintetizadas da entrada do usuário em cada turno podem ser assim:
Entrada do usuário Consulta sintetizada Turno 1: laptops para escolas laptops para escolas Turno 2: not mac laptops para escola que não sejam mac Turn 3: bigger screen and i also need wireless keyboard and mouse laptops com tela maior para escola que não sejam mac com teclado e mouse sem fio Turn 4: and a backpack for it notebooks com tela maior para escola que não sejam mac com teclado e mouse sem fio e uma mochila para ele Simplifique consultas longas para melhorar a recuperação (requer a opção Respostas generativas).
Por exemplo, uma consulta longa é abreviada para uma consulta típica.
Entrada do usuário Consulta simplificada Estou tentando descobrir por que o botão "Adicionar ao carrinho" no nosso site não está funcionando corretamente. Parece que, quando um usuário clica no botão, o item não é adicionado ao carrinho e ele recebe uma mensagem de erro. Verifiquei o código e parece estar correto, então não sei qual pode ser o problema. Você pode me ajudar a resolver esse problema? O botão "Adicionar ao carrinho" não está funcionando no site. Fazer raciocínio em várias etapas
O raciocínio em várias etapas se baseia no paradigma ReAct (raciocínio + ação), que permite que os LLMs resolvam tarefas complexas usando o raciocínio em linguagem natural. Por padrão, o número máximo de etapas é cinco.
Exemplo:
Entrada do usuário Duas etapas para gerar a resposta Quantos anos após a fundação o Google atingiu US$ 1 bilhão de receita? Etapa 1:
[Pensamento]: preciso saber quando o Google foi fundado para consultar a receita desde então.
[Ação] Pesquisa: quando o Google foi fundado?[Observar resultados da pesquisa]: "1998"
Etapa 2:
[Pensamento]: agora preciso pesquisar a receita anual do Google desde 1998 e descobrir quando ela ultrapassou US$ 1 bilhão pela primeira vez.
[Act] Pesquisa: receita do Google desde 1998
[Observe Search Results] Receita do Google em 1998, receita do Google em 1999…
[Resposta]: O Google atingiu mais de US$ 1 bilhão de receita em 2003 [1], 5 anos após sua fundação em 1998 [2].Para usar o raciocínio em várias etapas, é necessário ativar a opção Respostas geradas.
Classificação de consultas
As opções de classificação de consultas são para identificar consultas adversárias e que não buscam respostas. Por padrão, as opções de classificação de consultas estão desativadas.
Para mais informações sobre consultas adversárias e que não buscam respostas, consulte Ignorar consultas adversárias e Ignorar consultas que não buscam resumos.
Recursos da fase de pesquisa
Para pesquisa, o método de resposta tem as mesmas opções que o método de pesquisa. Exemplo:
Aplicar filtros para restringir a pesquisa a documentos específicos. Para mais informações, consulte Filtrar a pesquisa personalizada por dados estruturados ou não estruturados.
Aplicar o SafeSearch para filtrar conteúdo explícito, como violência e pornografia. Para mais informações, consulte Configurações de segurança para a Pesquisa do agente.
Especificar condições de reforço para promover ou rebaixar documentos retornados pela pesquisa. Para mais informações, consulte Aumentar a relevância dos resultados da pesquisa.
Recursos da fase de resposta
Durante a fase de resposta, quando as respostas são geradas com base nos resultados da pesquisa, você pode ativar os mesmos recursos do método de pesquisa. Exemplo:
Receber citações para indicar uma fonte para cada frase na resposta. Para mais informações, consulte Incluir citações.
Use o preâmbulo do comando para personalizar a resposta em relação a tom, estilo e nível de detalhes. Para mais informações, consulte Especificar um preâmbulo personalizado.
Escolha qual modelo da Vertex AI usar para gerar respostas. Para mais informações, consulte Versões e ciclo de vida do modelo de geração de respostas.
Escolha se você quer ignorar consultas classificadas como adversárias ou que não buscam respostas.
Para mais informações sobre consultas adversárias e que não buscam respostas, consulte Ignorar consultas adversárias e Ignorar consultas que não buscam resumos. As consultas que não buscam respostas também são chamadas de consultas que não buscam resumos.
Outros recursos da fase de resposta que não estão disponíveis no método de pesquisa são:
Receber uma pontuação de suporte para cada declaração (frase na resposta gerada). Uma pontuação de suporte é um valor de ponto flutuante no intervalo [0,1] que indica o quanto a declaração é fundamentada nos dados do repositório de dados. Para mais informações, consulte Retornar pontuações de suporte de embasamento.
Receber uma pontuação de suporte agregada para a resposta. A pontuação de suporte indica o quanto a resposta é fundamentada nos dados do repositório de dados. Para mais informações, consulte Retornar pontuações de suporte de embasamento.
Retorne apenas respostas bem fundamentadas. Você pode optar por retornar apenas as respostas que atendem a um determinado limite de pontuação de suporte. Para mais informações, consulte Mostrar apenas respostas bem fundamentadas.
Escolha retornar perguntas relacionadas. As perguntas relacionadas são sugestões que seus usuários podem escolher em vez de digitar as próprias perguntas.
Adicione informações de personalização às consultas para que as respostas possam ser personalizadas para usuários individuais. Para mais informações, consulte Personalizar respostas.
Para receber respostas multimodais que incluem gráficos ou imagens além de texto, as seguintes opções estão disponíveis:
Receber respostas que incluem gráficos que representam os dados contidos nas respostas. Para mais informações, consulte Gerar gráficos para respostas.
Recuperando imagens do repositório de dados. Se o repositório de dados tiver imagens, o método de resposta poderá retornar uma imagem na resposta. As imagens do repositório de dados também podem ser retornadas em referências se citações forem solicitadas. Para mais informações, consulte Recuperar imagens atuais do repositório de dados.
Antes de começar
Dependendo do tipo de app, siga estas instruções:
Se você tiver um app de pesquisa de sites estruturados, não estruturados ou de sites, ative as seguintes opções:
- Recursos da edição Enterprise: você tem acesso aos principais recursos de respostas generativas. Isso inclui todos os recursos de geração de respostas, exceto os recursos avançados de respostas generativas, como perguntas relacionadas, simplificação de consultas, consultas multiturno e respostas multimodais que retornam imagens e gráficos.
- Respostas generativas: dá acesso aos recursos avançados de respostas generativas que exigem raciocínio em várias etapas, simplificação de consultas, consultas multiturno, perguntas relacionadas e respostas multimodais que retornam imagens e gráficos.
Além disso, se você tiver um repositório de dados de pesquisa no site, ative a indexação avançada de sites.
Pesquisar e responder (básico)
O comando a seguir mostra como chamar o método answer e retornar uma resposta gerada e uma lista de resultados da pesquisa, com links para as fontes.
Esse comando mostra apenas a entrada necessária. As opções são deixadas com os valores padrão.
REST
Para pesquisar e receber resultados com uma resposta gerada, faça o seguinte:
Execute o seguinte comando curl:
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:answer" \ -d '{ "query": { "text": "QUERY"} }'Substitua:
PROJECT_ID: o ID do seu projeto do Google Cloud .APP_ID: o ID do app Agent Search que você quer consultar.QUERY: uma string de texto livre que contém a pergunta ou consulta de pesquisa. Por exemplo, "Comparar os bancos de dados do BigQuery e do Spanner?".
Python
Para mais informações, consulte a documentação de referência da API Python do Agent Search.
Para autenticar no Agent Search, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Comandos da fase de consulta
Esta seção mostra como especificar opções para a fase de consulta da chamada de método answer.
Pesquisar e responder (reformulação desativada)
O comando a seguir mostra como chamar o método answer e retornar uma resposta gerada e uma lista de resultados da pesquisa. A resposta pode ser diferente da anterior porque a opção de reformulação está desativada.
REST
Para pesquisar e receber resultados com uma resposta gerada sem aplicar a reformulação de consulta, faça o seguinte:
Execute o seguinte comando curl:
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:answer" \ -d '{ "query": { "text": "QUERY"}, "queryUnderstandingSpec": { "queryRephraserSpec": { "disable": true } } }'Substitua:
PROJECT_ID: o ID do seu projeto do Google Cloud .APP_ID: o ID do app Agent Search.QUERY: uma string de texto livre que contém a pergunta ou consulta de pesquisa. Por exemplo, "Comparar os bancos de dados do BigQuery e do Spanner?".
Python
Para mais informações, consulte a documentação de referência da API Python do Agent Search.
Para autenticar no Agent Search, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.