Cómo obtener resultados de la búsqueda de StreamAssist

En tu app web, puedes obtener respuestas a tus preguntas en forma de respuestas transmitidas. En este documento, se muestra cómo usar la API de REST para obtener respuestas. Si quieres usar la app web de Gemini Enterprise, consulta Cómo chatear con el asistente.

Descripción general de StreamAssist

StreamAssist proporciona una forma interactiva y potente de controlar las preguntas de los usuarios. Funciona de forma continua, lo que permite interacciones en tiempo real.

Las capacidades clave de la API incluyen las siguientes:

  • Mantiene el contexto de la conversación: Usa sesiones para mantener el contexto de la conversación, lo que garantiza que comprenda las preguntas de seguimiento dentro del alcance de las interacciones anteriores.

  • Incorpora los archivos proporcionados: Incluye los archivos adjuntos como contexto para brindar respuestas más fundamentadas y pertinentes.

  • Integración fluida: Se integra con varios agentes y herramientas para satisfacer una amplia variedad de solicitudes de los usuarios.

Antes de comenzar

Asegúrate de tener lo siguiente:

Cómo obtener resultados de búsqueda

Puedes usar el método streamAssist para consultar y obtener respuestas de Gemini Enterprise. El siguiente comando curl enumera los campos obligatorios.

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"
  }
}'

Reemplaza lo siguiente:

  • ENDPOINT_LOCATION-: Es la región múltiple para tu solicitud a la API. Asigna uno de los siguientes valores:
    • us- para la multirregión de EE.UU.
    • eu- para la multirregión de la UE
    • global- para la ubicación global
    Para obtener más información, consulta Cómo especificar una región múltiple para tu almacén de datos.
  • PROJECT_ID: Es el ID de tu proyecto de Google Cloud .
  • APP_ID: Es el identificador único de la app de Gemini Enterprise.
  • LOCATION: Es la multirregión de tu almacén de datos: global, us o eu.
  • QUERY_TEXT_1: Es el texto de la búsqueda.

Para obtener más información sobre los campos y lo que se devuelve, consulta Cuerpo de la respuesta.

Obtén resultados de la búsqueda con la misma sesión

Para continuar una conversación y obtener respuestas de Gemini Enterprise en una sesión existente, usa el método streamAssist. En el siguiente muestra de código, se muestran los campos obligatorios:

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"
  }
}'

Reemplaza lo siguiente:

  • ENDPOINT_LOCATION-: Es la región múltiple para tu solicitud a la API. Asigna uno de los siguientes valores:
    • us- para la multirregión de EE.UU.
    • eu- para la multirregión de la UE
    • global- para la ubicación global
    Para obtener más información, consulta Cómo especificar una región múltiple para tu almacén de datos.
  • PROJECT_ID: Es el ID de tu proyecto de Google Cloud .
  • APP_ID: Es el identificador único de la app de Gemini Enterprise.
  • LOCATION: Es la multirregión de tu almacén de datos: global, us o eu.
  • QUERY_TEXT_2: Es el texto de la búsqueda.
  • SESSION_ID: Es el ID de una sesión de una conversación o consulta anterior.

Para obtener más información sobre los campos y lo que se devuelve, consulta Cuerpo de la respuesta.

Sube un archivo y obtén resultados de la búsqueda (versión preliminar)

Para darle más contexto al asistente, sube un archivo a una sesión y, luego, consulta su contenido. Lleva a cabo los pasos siguientes:

  1. Sube un archivo a una sesión con el 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"
    }'
    
    

    Reemplaza lo siguiente:

    • ENDPOINT_LOCATION-: Es la región múltiple para tu solicitud a la API. Asigna uno de los siguientes valores:
      • us- para la multirregión de EE.UU.
      • eu- para la multirregión de la UE
      • global- para la ubicación global
      Para obtener más información, consulta Cómo especificar una región múltiple para tu almacén de datos.
    • PROJECT_ID: Es el ID de tu proyecto de Google Cloud .
    • LOCATION: Es la multirregión de tu almacén de datos: global, us o eu.
    • APP_ID: Es el identificador único de la app de Gemini Enterprise.
    • SESSION_ID: Es el ID de una sesión de una conversación o consulta anterior.
    • FILE_NAME: Es el nombre del archivo.
    • MIME_TYPE: Es el tipo de MIME del archivo, por ejemplo, text/plain o application/pdf. Para obtener más información sobre los diferentes tipos de medios, consulta Tipos de medios.
    • BASE64_ENCODED_FILE: Es la representación del archivo codificada en Base64.

    Para obtener más información sobre los campos y lo que se devuelve, consulta Cuerpo de la respuesta.

  2. Usa la misma sesión para hacer una pregunta sobre el archivo que subiste con el 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"
      }
    }'
    
    

    Reemplaza lo siguiente:

    • ENDPOINT_LOCATION-: Es la región múltiple para tu solicitud a la API. Asigna uno de los siguientes valores:
      • us- para la multirregión de EE.UU.
      • eu- para la multirregión de la UE
      • global- para la ubicación global
      Para obtener más información, consulta Cómo especificar una región múltiple para tu almacén de datos.
    • PROJECT_ID: Es el ID de tu proyecto de Google Cloud .
    • APP_ID: Es el identificador único de la app de Gemini Enterprise.
    • LOCATION: Es la multirregión de tu almacén de datos: global, us o eu.
    • QUERY_TEXT_3: Es el texto de la búsqueda.
    • SESSION_ID: Es el ID de una sesión de una conversación o consulta anterior.
    • FILE_ID: Es el ID del archivo que subiste al asistente.

    Para obtener más información sobre los campos y lo que se devuelve, consulta Cuerpo de la respuesta.