Resolución de contenido multimedia

El parámetro media_resolution controla cómo la API de Gemini procesa las entradas de medios, como imágenes, videos, audio y documentos PDF, ya que determina la cantidad máxima de tokens asignados para las entradas de medios, lo que te permite equilibrar la calidad de la respuesta con la latencia y el costo. Si bien las entradas visuales y de documentos ajustan la asignación de tokens según el parámetro de configuración de resolución, las entradas de audio se tokenizan a una tasa fija por segundo en todos los niveles de resolución. Para conocer los diferentes parámetros de configuración, los valores predeterminados y cómo se corresponden con los tokens, consulta la sección Recuentos de tokens.

Puedes configurar la resolución de los medios para objetos multimedia individuales (elementos de contenido) dentro de tu solicitud (solo Gemini 3).

Resolución de medios por elemento de contenido (solo Gemini 3)

Gemini 3 te permite establecer la resolución de los medios para objetos multimedia individuales dentro de tu solicitud, lo que ofrece una optimización detallada del uso de tokens. Puedes combinar niveles de resolución en una sola solicitud. Por ejemplo, usar alta resolución para un diagrama complejo y baja resolución para una imagen contextual simple.

Python

from google import genai

client = genai.Client()

myfile = client.files.upload(file="path/to/image.jpg")

interaction = client.interactions.create(
    model="gemini-3.8-flash",
    input=[
        {"type": "text", "text": "Describe this image:"},
        {
            "type": "image",
            "uri": myfile.uri,
            "mime_type": myfile.mime_type,
            "resolution": "high"
        }
    ]
)
print(interaction.output_text)

JavaScript

import { GoogleGenAI } from "@google/genai";

const ai = new GoogleGenAI({});

async function main() {
  const myfile = await ai.files.upload({
    file: "path/to/image.jpg",
    config: { mime_type: "image/jpeg" },
  });

  const interaction = await ai.interactions.create({
    model: "gemini-3.8-flash",
    input: [
      { type: "text", text: "Describe this image:" },
      {
        type: "image",
        uri: myfile.uri,
        mime_type: myfile.mimeType,
        resolution: "high"
      }
    ],
  });
  console.log(interaction.output_text);
}

await main();

Java

import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.Content;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.ImageContent;
import com.google.genai.gaos.models.interactions.ImageContentMimeType;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.TextContent;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;
import java.util.List;

Client client = new Client();

Content textContent = TextContent.builder().text("Describe the details in this high-resolution image.").build();
Content imageContent =
    ImageContent.builder()
        .uri("gs://cloud-samples-data/generative-ai/image/scones.jpg")
        .mimeType(ImageContentMimeType.IMAGE_JPEG)
        .build();

List<Content> contents = Arrays.asList(textContent, imageContent);

CreateModelInteraction params =
    CreateModelInteraction.builder()
        .model(Model.of("gemini-3.8-flash"))
        .input(InteractionsInput.ofContent(contents))
        .build();

Interaction interaction =
    client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();

System.out.println(interaction.outputText().orElse(""));

REST

# First upload the file using the Files API, then use the URI:
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "gemini-3.8-flash",
    "input": [
      {"type": "text", "text": "Describe this image:"},
      {
        "type": "image",
        "uri": "YOUR_FILE_URI",
        "mime_type": "image/jpeg",
        "resolution": "high"
      }
    ]
  }'

Valores de resolución disponibles

La API de Gemini define los siguientes niveles de resolución de medios:

  • unspecified: Es el parámetro de configuración predeterminado. El recuento de tokens para este nivel varía significativamente entre Gemini 3 y los modelos anteriores de Gemini.
  • low: Recuento de tokens más bajo, lo que genera un procesamiento más rápido y un costo menor, pero con menos detalles.
  • medium: Un equilibrio entre detalle, costo y latencia.
  • high: Mayor recuento de tokens, lo que proporciona más detalles para que el modelo trabaje, a costa de una mayor latencia y costo.
  • ultra_high (Solo por elemento de contenido): Es el recuento de tokens más alto y se requiere para casos de uso específicos, como el uso de computadoras.

Ten en cuenta que high proporciona el rendimiento óptimo para la mayoría de los casos de uso.

La cantidad exacta de tokens generados para cada uno de estos niveles depende tanto del tipo de medio (imagen, video, audio, PDF) como de la versión del modelo.

Recuentos de tokens

En las siguientes tablas, se resumen los recuentos aproximados de tokens para cada valor de media_resolution y tipo de medio por familia de modelos.

Modelos de Gemini 3

MediaResolution Imagen Video Audio PDF
unspecified (predeterminado) 1120 70 25 (por segundo) 560
low 280 70 25 (por segundo) 280 + texto nativo
medium 560 70 25 (por segundo) 560 + texto nativo
high 1120 280 25 (por segundo) 1120 + texto nativo
ultra_high 2240 N/A N/A N/A

Cómo elegir la resolución correcta

  • Predeterminado (unspecified): Comienza con la configuración predeterminada. Está optimizado para lograr un buen equilibrio entre calidad, latencia y costo en la mayoría de los casos de uso comunes.
  • low: Úsalo en situaciones en las que el costo y la latencia son fundamentales, y los detalles precisos son menos importantes.
  • medium / high: Aumenta la resolución cuando la tarea requiere comprender detalles complejos dentro del contenido multimedia. Esto suele ser necesario para el análisis visual complejo, la lectura de gráficos o la comprensión de documentos densos.
  • ultra_high: Solo está disponible para la configuración por elemento de contenido. Se recomienda para casos de uso específicos, como el uso de computadoras, o cuando las pruebas muestran una mejora clara en comparación con high.
  • Control por elemento de contenido (Gemini 3): Optimiza el uso de tokens. Por ejemplo, en una instrucción con varias imágenes, usa high para un diagrama complejo y low o medium para imágenes contextuales más simples.

Configuración recomendada

A continuación, se indican los parámetros de configuración de resolución de medios recomendados para cada tipo de medio admitido.

Tipo de medio Configuración recomendada Tokens máx. Orientación sobre el uso
Imágenes high 1120 Se recomienda para la mayoría de las tareas de análisis de imágenes para garantizar la máxima calidad.
PDFs medium 560 Es óptimo para la comprensión de documentos; la calidad suele saturarse en medium. Aumentar a high rara vez mejora los resultados del OCR para documentos estándar.
Video (general) low (o medium) 70 (por fotograma) Nota: En el caso de los videos, la configuración de low y medium se trata de forma idéntica (70 tokens) para optimizar el uso del contexto. Esto es suficiente para la mayoría de las tareas de reconocimiento y descripción de acciones.
Video (con mucho texto) high 280 (por fotograma) Solo se requiere cuando el caso de uso implica leer texto denso (OCR) o detalles pequeños dentro de los fotogramas de video.
Audio unspecified (predeterminado) 25 (por segundo) El audio se tokeniza a una velocidad fija de 25 tokens por segundo en todos los parámetros de configuración de resolución admitidos (unspecified, low, medium y high).

Siempre prueba y evalúa el impacto de los diferentes parámetros de configuración de resolución en tu aplicación para encontrar el mejor equilibrio entre calidad, latencia y costo.

Relación con los modos de procesamiento de video

Los parámetros de media_resolution y procesamiento controlan diferentes aspectos de la entrada de video:

  • media_resolution controla la resolución de cada fotograma (cantidad de tokens por fotograma).
  • Los controles processing y media_processing controlan qué contenido del video se carga en el contexto.

Puedes configurar ambos en la misma entrada de video. Por ejemplo, puedes usar el procesamiento con agentes con una resolución de medios baja para minimizar el uso total de tokens en un video largo.

Para obtener detalles sobre los modos de procesamiento de video, consulta la guía Comprensión de video con agentes.

Resumen de compatibilidad de versiones

  • Establecer el resolution en elementos de contenido individuales es exclusivo de los modelos de Gemini 3.

Próximos pasos