Configurar o preenchimento automático avançado

Esta página descreve o recurso avançado de preenchimento automático do Gemini Enterprise.

Assim como o preenchimento automático básico, o avançado gera sugestões de consulta com base nos primeiros caracteres inseridos.

Antes de ler esta página, familiarize-se com o preenchimento automático básico do Gemini Enterprise. Consulte Configurar o preenchimento automático.

Principais recursos do preenchimento automático avançado

Os principais recursos do preenchimento automático avançado que o distinguem do básico são os seguintes:

  • Pesquisa combinada:o preenchimento automático avançado pode ser usado com apps conectados a mais de um repositório de dados.

  • Controle de acesso:o preenchimento automático avançado respeita os controles de acesso. Os controles de acesso também são chamados de ACLs, listas de controle de acesso. O preenchimento automático avançado só sugere consultas de pesquisa relacionadas a documentos a que o pesquisador tem acesso. Para mais informações sobre o controle de acesso, consulte Identidade e permissões.

Antes de começar

Antes de começar a usar o preenchimento automático avançado, faça o seguinte:

  • Revise e, opcionalmente, edite as configurações de preenchimento automático do seu app. Consulte Atualizar as configurações de preenchimento automático.

  • Para repositórios de dados menores, defina Ativar o preenchimento automático como Agora. Recomendamos isso porque repositórios de dados pequenos podem não conter dados suficientes para fornecer sugestões precisas.

  • Se os repositórios de dados contiverem informações de identificação pessoal (PII, na sigla em inglês) ou se você usar o modelo de sugestões de consulta do histórico de pesquisa ou de eventos do usuário, revise Proteger contra vazamentos de PII e configure as proteções de prevenção de perda de dados (DLP) que podem ser necessárias para evitar vazamentos de PII.

  • Se você planeja usar sugestões de pesquisa recentes (RECENT_SEARCH), grave eventos de usuário de pesquisa. O Gemini Enterprise não preenche automaticamente o índice da Pesquisa recente quando as pesquisas são realizadas usando o SearchService.Search método. Para retornar consultas recentes, grave eventos de usuário de pesquisa usando o userEvents.write método. Consulte Antes de começar para consultas recentes.

Enviar solicitações de preenchimento automático

A seguir, mostramos como enviar solicitações de preenchimento automático avançado usando o completionConfig.completeQuery método.

REST

Para enviar uma solicitação de preenchimento automático usando a API, siga estas etapas:

  1. Encontre o ID do seu app. Se você já tiver o ID do app, pule para a próxima etapa.

    1. No Google Cloud console, acesse a página Gemini Enterprise.

      Acessar "Apps".

    2. Na página Apps, encontre o nome do seu app e confira o ID dele na coluna ID.

  2. Chame o completionConfig.completeQuery método.

    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/completionConfig:completeQuery" \
    -d '{
          "query":"QUERY_STRING"
        }'
    

    Substitua:

    • PROJECT_ID: ID do projeto.

    • APP_ID: ID do app.

    • QUERY_STRING: a entrada de digitação antecipada usada para buscar sugestões.

Enviar uma solicitação de preenchimento automático com um impulsionamento de idioma

Você pode impulsionar ou ocultar sugestões de preenchimento automático de acordo com o código do idioma. Por exemplo, você pode fazer com que as sugestões de preenchimento automático em alguns idiomas tenham mais ou menos probabilidade de aparecer.

O valor de impulsionamento precisa estar entre -1 e 1. Definir um número negativo "oculta" as sugestões de preenchimento automático nesse idioma, e um número positivo impulsiona o idioma.

Use tags de idioma de duas letras definidas pelo BCP 47, por exemplo, en, fr, hi e zh.

REST

Para enviar uma solicitação de preenchimento automático que inclua um valor de impulsionamento de idioma, siga estas etapas:

  1. Encontre o ID do seu app. Se você já tiver o ID do app, pule para a próxima etapa.

    1. No Google Cloud console, acesse a página Gemini Enterprise.

      Acessar "Apps".

    2. Na página Apps, encontre o nome do seu app e confira o ID dele na coluna ID.

  2. Chame o completionConfig.completeQuery método.

    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/completionConfig:completeQuery" \
    -d '{
          "query":"QUERY_STRING",
          "boostSpec": {
             "conditionBoostSpecs": [{
               "condition": "(langCode: ANY(LANG_CODE))",
               "boost": BOOST_VALUE
             }]
          }
        }'
    
    

    Substitua:

    • PROJECT_ID: ID do projeto.

    • APP_ID: ID do app.

    • QUERY_STRING: a entrada de digitação antecipada usada para buscar sugestões.

    • LANG_CODE: o código de duas letras para um ou mais idiomas, entre aspas. Por exemplo, \"fr\", \"es\" para aplicar o valor de impulsionamento ao espanhol e ao francês.

    • BOOST_VALUE: um número de ponto flutuante entre -1 e 1. Quando o valor é negativo, as sugestões automáticas no idioma são rebaixadas (aparecem mais abaixo na lista de sugestões). Quando o valor é positivo, as sugestões são promovidas (aparecem mais acima na lista).

Enviar uma solicitação de preenchimento automático e retornar sugestões avançadas

O preenchimento automático avançado retorna conteúdo (documentos) em que os títulos contêm palavras que começam com a consulta.

Além do título do documento, a solicitação de preenchimento automático retorna o source_type e o entity_type e, se disponível, as propriedades principais: uri, create_time e update_time. Você pode conferir e editar os mapeamentos de propriedades principais na guia Esquema da página do repositório de dados.

Como acontece com todas as sugestões de preenchimento automático avançado, as ACLs são respeitadas para todos os documentos sugeridos.

Exemplo

Um funcionário está consultando o site da intranet da empresa em busca de informações técnicas sobre permissões de acesso.

O funcionário começa a digitar tec, e os seguintes documentos podem ser retornados: Data technicians handbook, Access technology guide, e Techniques for troubleshooting access issues.

Com sugestões avançadas, para cada um desses documentos sugeridos, você pode mostrar as seguintes informações sobre o documento:

  • o título do documento (title), um link para o documento (uri)

  • quando ele foi atualizado pela última vez (update_time)

  • a origem (source_type), por exemplo, se o documento foi encontrado no Confluence Cloud ou no Slack.

Saber há quanto tempo um documento foi atualizado e a origem dele ajuda o funcionário a escolher qual documento consultar primeiro.

Limitações

O preenchimento automático avançado só se aplica a conectores de terceiros e apenas a determinados repositórios de dados de entidades para esses conectores de terceiros. A tabela a seguir mostra quais entidades são compatíveis com quais conectores.

Conector de terceiros Entidades compatíveis
Box Arquivo
Confluence Cloud Página Espaço
Dropbox Arquivo
Jira Cloud Problema Espaço
OneDrive Arquivo
Salesforce Conta Lead Oportunidade
ServiceNow Incidente Conhecimento
Sharepoint Online Anexo Evento Arquivo Página
Slack Mensagem

Procedimento

Para enviar uma solicitação de preenchimento automático que retorne uma sugestão avançada, siga estas etapas:

REST

  1. Encontre o ID do seu app. Se você já tiver o ID do app, pule para a próxima etapa.

    1. No Google Cloud console, acesse a página Gemini Enterprise.

      Acessar "Apps".

    2. Na página Apps, encontre o nome do seu app e confira o ID dele na coluna ID.

  2. Chame o completionConfig.completeQuery método.

    
    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/completionConfig:completeQuery" \
    -d '{
          "query":"QUERY_STRING",
          "suggestionTypes": ["CONTENT"]
        }'
    
    

    Substitua:

    • PROJECT_ID: ID do projeto.

    • APP_ID: ID do app.

    • QUERY_STRING: a entrada de digitação antecipada usada para buscar sugestões.

Enviar uma solicitação de preenchimento automático e retornar consultas recentes

Retorne, como sugestões, uma lista das consultas mais recentes do usuário que têm o mesmo prefixo da consulta na solicitação.

As sugestões de consulta correspondentes são listadas da mais recente para a mais antiga. Para usar a pesquisa recente, o pseudoID do usuário precisa ser fornecido.

Antes de começar

Antes de recuperar consultas recentes com o preenchimento automático, grave as pesquisas do usuário como eventos de usuário de pesquisa chamando o userEvents.write método.

Se os eventos de usuário de pesquisa não forem gravados, as solicitações para completionConfig.completeQuery com suggestionTypes: ["RECENT_SEARCH"] retornarão uma lista vazia de sugestões ({}).

Para gravar um evento de usuário de pesquisa, envie uma solicitação POST para o userEvents.write método com os seguintes valores:

  • eventType: definido como "search"
  • userPseudoId: definido como o identificador pseudonimizado exclusivo do usuário
  • engine: definido como o nome do recurso do seu mecanismo
  • searchInfo.searchQuery: definido como a string de consulta de pesquisa inserida pelo usuário
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/LOCATION/userEvents:write" \
  -d '{
        "eventType": "search",
        "userPseudoId": "USER_PSEUDO_ID",
        "engine": "projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID",
        "searchInfo": {
          "searchQuery": "SEARCH_QUERY"
        }
      }'

Substitua:

  • PROJECT_ID: ID do projeto.
  • LOCATION: o local do seu app ou repositório de dados (por exemplo, global ou us).
  • APP_ID: ID do app.
  • USER_PSEUDO_ID: um identificador pseudonimizado do usuário. Ele precisa corresponder ao userPseudoId transmitido em solicitações completionConfig.completeQuery subsequentes.
  • SEARCH_QUERY: a string de consulta pesquisada pelo usuário.

Para mais informações, consulte Gravar eventos de usuário em tempo real com o método userEvents.write.

Exemplo

Um funcionário está consultando o site da intranet da empresa para receber informações sobre como tirar férias. O funcionário realizou as seguintes consultas, listadas da mais recente para a mais antiga:

PTO, Vacation blackout periods, How much vacation time do I have?, Time off, Vacation policy, covering a vacant position during absences e Can I take unpaid time off?.

Agora, em resposta ao funcionário que digita vac na caixa de pesquisa, as sugestões de preenchimento automático seriam as seguintes:

  • Vacation blackout periods
  • How much vacation time do I have?
  • Vacation policy
  • Covering a vacant position during absences

Procedimento

Para enviar uma solicitação de preenchimento automático que retorne as consultas mais recentes do usuário, siga estas etapas:

REST

  1. Encontre o ID do seu app. Se você já tiver o ID do app, pule para a próxima etapa.

    1. No Google Cloud console, acesse a página Gemini Enterprise.

      Acessar "Apps".

    2. Na página Apps, encontre o nome do seu app e confira o ID dele na coluna ID.

  2. Chame o completionConfig.completeQuery método.

    
    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/completionConfig:completeQuery" \
    -d '{
          "query":"QUERY_STRING",
          "suggestionTypes": ["RECENT_SEARCH"],
          "userPseudoId": "USER_PSEUDO_ID"
        }'
    
    

    Substitua:

    • PROJECT_ID: ID do projeto.

    • APP_ID: ID do app.

    • QUERY_STRING: a entrada de digitação antecipada usada para buscar sugestões.

    • USER_PSEUDO_ID: um identificador pseudonimizado do usuário. Você pode usar um cookie HTTP para esse campo, que identifica exclusivamente um visitante em um único dispositivo. Não defina esse campo com o mesmo identificador para vários usuários. Isso combinaria os históricos de consultas deles. Não inclua informações de identificação pessoal (PII) nesse campo.

Usar uma lista de bloqueio de preenchimento automático

É possível usar uma lista de bloqueios para evitar que termos específicos apareçam como sugestões de preenchimento automático.

Embora o preenchimento automático avançado esteja no nível do app, as listas de bloqueio estão no nível do repositório de dados. Isso é importante se o app for um app de pesquisa combinada. Crie uma lista de bloqueio para cada repositório de dados conectado ao app.

Para informações sobre como criar e usar listas de bloqueio, consulte Usar uma lista de bloqueio de preenchimento automático.

Usar uma lista importada de sugestões de preenchimento automático

Você pode fornecer sua própria lista de sugestões de preenchimento automático em vez de usar sugestões de preenchimento automático geradas a partir de um modelo de dados de preenchimento automático.

Para informações sobre como importar uma lista, consulte Usar uma lista importada de sugestões de preenchimento automático.