Obtener resultados de búsqueda de StreamAssist

En la aplicación web, puedes obtener respuestas a tus preguntas en forma de respuestas de streaming. En este documento se explica cómo usar la API REST para obtener respuestas. Si quieres usar la aplicación web de Gemini Enterprise, consulta el artículo Chatear con el asistente.

Información general sobre StreamAssist

StreamAssist ofrece una forma potente e interactiva de gestionar las consultas de los usuarios. Funciona en streaming, lo que permite interacciones bidireccionales en tiempo real.

Estas son las principales funciones de la API:

  • Mantener el contexto de la conversación: usa sesiones para mantener el contexto de la conversación, lo que le permite entender las consultas posteriores dentro del ámbito de las interacciones anteriores.

  • Incorporación de archivos proporcionados: incluye los archivos adjuntos como contexto para ofrecer respuestas más informadas y relevantes.

  • Integración perfecta: se integra con varios agentes y herramientas para satisfacer una amplia gama de solicitudes de los usuarios.

Antes de empezar

Asegúrate de que tienes lo siguiente:

Obtener resultados de búsqueda

Puedes usar el método streamAssist para consultar y obtener respuestas de Gemini Enterprise. El siguiente comando curl muestra 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"
  }
}'

Haz los cambios siguientes:

  • ENDPOINT_LOCATION-: la multirregión de 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 el artículo sobre cómo especificar una multirregión para tu almacén de datos.
  • PROJECT_ID: el ID de tu proyecto de Google Cloud .
  • APP_ID: identificador único de la aplicación Gemini Enterprise.
  • LOCATION: la multirregión de tu almacén de datos: global, us o eu
  • QUERY_TEXT_1: el texto de la consulta de búsqueda.

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

Obtener resultados de búsqueda usando la misma sesión

Para continuar una conversación y obtener respuestas de Gemini Enterprise en una sesión, usa el método streamAssist. En el siguiente ejemplo 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"
  }
}'

Haz los cambios siguientes:

  • ENDPOINT_LOCATION-: la multirregión de 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 el artículo sobre cómo especificar una multirregión para tu almacén de datos.
  • PROJECT_ID: el ID de tu proyecto de Google Cloud .
  • APP_ID: identificador único de la aplicación Gemini Enterprise.
  • LOCATION: la multirregión de tu almacén de datos: global, us o eu
  • QUERY_TEXT_2: el texto de la consulta de búsqueda.
  • SESSION_ID: 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.

Subir un archivo y obtener resultados de búsqueda (vista previa)

Para dar más contexto al asistente, sube un archivo a una sesión y, a continuación, consulta su contenido. Sigue estos pasos:

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

    Haz los cambios siguientes:

    • ENDPOINT_LOCATION-: la multirregión de 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 el artículo sobre cómo especificar una multirregión para tu almacén de datos.
    • PROJECT_ID: el ID de tu proyecto de Google Cloud .
    • LOCATION: la multirregión de tu almacén de datos: global, us o eu
    • APP_ID: identificador único de la aplicación Gemini Enterprise.
    • SESSION_ID: el ID de una sesión de una conversación o consulta anterior.
    • FILE_NAME: el nombre del archivo.
    • MIME_TYPE: el tipo MIME del archivo. Por ejemplo, text/plain o application/pdf. Para obtener más información sobre los distintos tipos de contenido multimedia, consulta Tipos de contenido multimedia.
    • BASE64_ENCODED_FILE: la representación codificada en base64 del archivo.

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

    Haz los cambios siguientes:

    • ENDPOINT_LOCATION-: la multirregión de 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 el artículo sobre cómo especificar una multirregión para tu almacén de datos.
    • PROJECT_ID: el ID de tu proyecto de Google Cloud .
    • APP_ID: identificador único de la aplicación Gemini Enterprise.
    • LOCATION: la multirregión de tu almacén de datos: global, us o eu
    • QUERY_TEXT_3: el texto de la consulta de búsqueda.
    • SESSION_ID: el ID de una sesión de una conversación o consulta anterior.
    • FILE_ID: el ID del archivo que has subido al asistente.

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