Obtenha resultados da pesquisa do StreamAssist

Na app Web, pode receber respostas às suas perguntas sob a forma de respostas em streaming. Este documento mostra como usar a API REST para obter respostas. Se quiser usar a app Web Gemini Enterprise, consulte o artigo Converse com o assistente.

Vista geral do StreamAssist

O StreamAssist oferece uma forma poderosa e interativa de processar as consultas dos utilizadores. Funciona em streaming, o que permite interações em tempo real e bidirecionais.

As principais capacidades da API incluem o seguinte:

  • Manter o contexto da conversa: usa sessões para manter o contexto da conversa, garantindo que compreende as consultas de seguimento no âmbito das interações anteriores.

  • Incorporar ficheiros fornecidos: inclui os ficheiros anexados como contexto para respostas mais informadas e relevantes.

  • Integração perfeita: integra-se com vários agentes e ferramentas para satisfazer uma vasta gama de pedidos dos utilizadores.

Antes de começar

Certifique-se de que tem o seguinte:

  • A API Discovery Engine está ativada para o seu Google Cloud. Pode ativá-la na página Discovery Engine API na Google Cloud consola.

    Aceder à API Discovery Engine

  • Uma função do motor Discovery com a autorização discoveryengine.assistants.assist atribuída.

  • Uma app Gemini Enterprise existente. Para criar uma app, consulte o artigo Crie uma app.

Obtenha resultados da pesquisa

Pode usar o método streamAssist para consultar e receber respostas do Gemini Enterprise. O seguinte comando curl lista os campos obrigatórios.

REST

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/assistants/default_assistant:streamAssist" \
  -d '
{
  "query": {
    "text": "QUERY_TEXT_1"
  }
}'

Substitua o seguinte:

  • ENDPOINT_LOCATION-: a multirregião para o seu pedido de API. Atribua um dos seguintes valores:
    • us- para a multirregião dos EUA
    • eu- para a multirregião da UE
    • global- para a localização global
    Para mais informações, consulte o artigo Especifique várias regiões para o seu repositório de dados.
  • PROJECT_ID: o ID do seu projeto Google Cloud .
  • APP_ID: o identificador exclusivo da app Gemini Enterprise.
  • LOCATION: a multirregião do seu repositório de dados: global, us ou eu
  • QUERY_TEXT_1: o texto da consulta de pesquisa.

Para mais informações sobre os campos e o que é devolvido, consulte a secção Corpo da resposta.

Obtenha resultados da pesquisa usando a mesma sessão

Para continuar uma conversa e receber respostas do Gemini Enterprise numa sessão existente, use o método streamAssist. O exemplo de código seguinte mostra os campos obrigatórios:

REST

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/assistants/default_assistant:streamAssist" \
  -d '
{
  "session": "projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/sessions/SESSION_ID",
  "query": {
    "text": "QUERY_TEXT_2"
  }
}'

Substitua o seguinte:

  • ENDPOINT_LOCATION-: a multirregião para o seu pedido de API. Atribua um dos seguintes valores:
    • us- para a multirregião dos EUA
    • eu- para a multirregião da UE
    • global- para a localização global
    Para mais informações, consulte o artigo Especifique várias regiões para o seu repositório de dados.
  • PROJECT_ID: o ID do seu projeto Google Cloud .
  • APP_ID: o identificador exclusivo da app Gemini Enterprise.
  • LOCATION: a multirregião do seu repositório de dados: global, us ou eu
  • QUERY_TEXT_2: o texto da consulta de pesquisa.
  • SESSION_ID: o ID de uma sessão de uma conversa ou uma consulta anterior.

Para mais informações sobre os campos e o que é devolvido, consulte a secção Corpo da resposta.

Carregue um ficheiro e receba resultados da pesquisa (pré-visualização)

Para dar mais contexto ao assistente, carregue um ficheiro para uma sessão e, em seguida, consulte o respetivo conteúdo. Siga estes passos:

  1. Carregue um ficheiro para uma sessão através do método addContextFile.

    REST

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/sessions/SESSION_ID:addContextFile" \
      -d '
    {
      "fileName": "FILE_NAME",
      "mimeType": "MIME_TYPE",
      "fileContents": "BASE64_ENCODED_FILE"
    }'
    
    

    Substitua o seguinte:

    • ENDPOINT_LOCATION-: a multirregião para o seu pedido de API. Atribua um dos seguintes valores:
      • us- para a multirregião dos EUA
      • eu- para a multirregião da UE
      • global- para a localização global
      Para mais informações, consulte o artigo Especifique várias regiões para o seu repositório de dados.
    • PROJECT_ID: o ID do seu projeto Google Cloud .
    • LOCATION: a multirregião do seu repositório de dados: global, us ou eu
    • APP_ID: o identificador exclusivo da app Gemini Enterprise.
    • SESSION_ID: o ID de uma sessão de uma conversa ou uma consulta anterior.
    • FILE_NAME: o nome do ficheiro.
    • MIME_TYPE: o tipo MIME do ficheiro, por exemplo, text/plain ou application/pdf. Para mais informações sobre os diferentes tipos de suportes, consulte Tipos de suportes.
    • BASE64_ENCODED_FILE: a representação do ficheiro com codificação base64.

    Para mais informações sobre os campos e o que é devolvido, consulte a secção Corpo da resposta.

  2. Use a mesma sessão para fazer uma pergunta sobre o ficheiro que carregou através do método streamAssist.

    REST

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/assistants/default_assistant:streamAssist" \
      -d '
    {
      "session": "projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/sessions/SESSION_ID",
      "fileIds": ["FILE_ID"],
      "query": {
        "text": "QUERY_TEXT_3"
      }
    }'
    
    

    Substitua o seguinte:

    • ENDPOINT_LOCATION-: a multirregião para o seu pedido de API. Atribua um dos seguintes valores:
      • us- para a multirregião dos EUA
      • eu- para a multirregião da UE
      • global- para a localização global
      Para mais informações, consulte o artigo Especifique várias regiões para o seu repositório de dados.
    • PROJECT_ID: o ID do seu projeto Google Cloud .
    • APP_ID: o identificador exclusivo da app Gemini Enterprise.
    • LOCATION: a multirregião do seu repositório de dados: global, us ou eu
    • QUERY_TEXT_3: o texto da consulta de pesquisa.
    • SESSION_ID: o ID de uma sessão de uma conversa ou uma consulta anterior.
    • FILE_ID: o ID do ficheiro que carregou para o assistente.

    Para mais informações sobre os campos e o que é devolvido, consulte a secção Corpo da resposta.