Interpreta los documentos

Gemini puede responder instrucciones sobre documentos. Puedes agregar documentos a las solicitudes de Gemini para realizar tareas que impliquen comprender el contenido de los documentos incluidos.

La comprensión de documentos es una de las entradas multimodales de Gemini que combina texto con archivos multimedia.

Para obtener más información sobre la comprensión de documentos con Gemini y las instrucciones paso a paso para enviar solicitudes a la API, consulta Envía una instrucción multimodal.

Especificaciones para instrucciones con documentos

Puedes agregar archivos de documentos a tu solicitud a Gemini. Se aplican los siguientes límites máximos de documentos a las solicitudes de Gemini:

  • Cantidad máxima de archivos por solicitud: 100
  • Cantidad máxima de páginas por archivo: 100
  • Tamaño máximo por archivo: 50 MB

A continuación, se muestran algunos ejemplos de máximos que puedes proporcionar en una sola solicitud con Gemini (que puede procesar un total de 100 páginas en una solicitud):

  • 100 archivos de una sola página
  • Diez archivos de 10 páginas
  • Un archivo de 100 páginas

Los documentos deben estar en uno de los siguientes tipos de MIME admitidos:

  • CSS: text/css
  • CSV: text/csv
  • HTML: text/html
  • JS: text/javascript o application/x-javascript
  • MD: text/md
  • PDF: application/pdf
  • PY: text/x-python o application/x-python
  • RTF: text/rtf
  • TXT: text/plain
  • XML: text/xml

Gemini impone las siguientes reglas en los documentos:

  • Los PDFs se tratan como imágenes, por lo que una sola página de un PDF se considera una sola imagen. La cantidad de páginas permitidas en una instrucción se limita a la cantidad de imágenes que el modelo puede admitir.
  • Cada página de un PDF se tokeniza de la misma manera que una imagen.
  • Los documentos de texto sin formato se tokenizan como texto.
  • Si tu instrucción contiene un solo PDF, colócalo antes de la instrucción de texto en tu solicitud.
  • Si tienes un documento extenso, considera dividirlo en varios archivos PDF para procesarlo.

Puedes usar el extremo de Chat Completions en la API de REST y un cliente HTTP. Puedes proporcionar el documento como datos intercalados en la solicitud de instrucción como un archivo codificado en base64 o subir el archivo del documento a un bucket de almacenamiento antes de realizar la solicitud de instrucción.

Obtén más información sobre las prácticas recomendadas y las limitaciones para los documentos en la documentación de Google Cloud .

Para obtener más información sobre OpenAI y el extremo de Chat Completions que Gemini implementa en Google Distributed Cloud (GDC) aislado, consulta https://platform.openai.com/docs/api-reference/chat.

Comprende documentos a partir de una instrucción

En los siguientes ejemplos, se muestra una solicitud a la API de Gemini Chat Completions para generar texto a partir de la entrada de un documento con curl.

Envía solicitudes de datos intercalados

Proporciona documentos como datos intercalados en la solicitud de instrucción a partir de archivos codificados en Base64. La solicitud a la API contiene el campo input_document para los documentos codificados en Base64. En el siguiente ejemplo, se muestra cómo enviar solicitudes de documentos codificados en base64:

curl \
  -X POST "https://ENDPOINT:443/v1/projects/PROJECT/locations/PROJECT/chat/completions" \
  -H "Content-Type: application/json; charset=utf-8" \
  -H "Authorization: Bearer $(gdcloud auth print-identity-token)" \
  -d '{
      "model_id": "MODEL_ID",
      "messages": [
        {
          "role": "user",
          "content": [
            {
              "type": "input_document",
              "input_document": {
                "data": BASE64_DATA,
                # Valid formats are css, csv, html, js, md, pdf, py, rtf, txt, or xml
                "format": "pdf"
              }
            }
          ]
        }
      ],
    }'

Reemplaza lo siguiente:

  • ENDPOINT: Es el extremo de API que usas para tu organización.
  • PROJECT: el ID de tu proyecto
  • MODEL_ID: Es el ID del extremo del modelo con el que deseas generar la respuesta.
  • BASE64_DATA: Son los datos codificados en Base64 del archivo del documento. Los datos codificados en Base64 deben tener el prefijo de un esquema de URI de datos, RFC 2397. Por lo tanto, el formato del campo data para los datos codificados en base64 es, por ejemplo, "data": f"data:application/pdf;base64,{base64_document}".

Envía URLs de documentos en la solicitud

Sube el archivo del documento a un bucket de almacenamiento antes de realizar la solicitud de instrucción. La solicitud de API contiene el campo document_url para los archivos de documentos en buckets de almacenamiento. En el siguiente ejemplo, se muestra cómo enviar solicitudes de URL de documentos:

curl \
  -X POST "https://ENDPOINT:443/v1/projects/PROJECT/locations/PROJECT/chat/completions" \
  -H "Content-Type: application/json; charset=utf-8" \
  -H "Authorization: Bearer $(gdcloud auth print-identity-token)" \
  -d '{
      "model_id": "MODEL_ID",
      "messages": [
        {
          "role": "user",
          "content": [
            {
              "type": "document_url",
              "document_url": {
                "url": "DOC_URL",
              }
            }
          ]
        }
      ],
    }'

Reemplaza lo siguiente:

  • ENDPOINT: Es el extremo de API que usas para tu organización.
  • PROJECT: el ID de tu proyecto
  • MODEL_ID: Es el ID del extremo del modelo con el que deseas generar la respuesta.
  • DOC_URL: Es la ruta de acceso a la URL de un documento en un bucket de almacenamiento. Las URLs de los documentos deben hacer referencia a archivos de documentos almacenados en un bucket de almacenamiento de GDC. Para obtener más información, consulta Almacena datos.

¿Qué sigue?