API de GPT con imágenes: análisis visual y ajustes de detalle

La API de GPT convierte cada imagen en tokens, y el campo detail decide cuántos. Este artículo muestra el formato de la solicitud, los valores low, high, original y auto, el cálculo de tokens para modelos basados en teselas y en parches, y una prueba paso a paso en PicassoIA.

API de GPT con imágenes: análisis visual y ajustes de detalle
Cristian Da Conceicao
Fundador de Picasso IA

Un solo campo del cuerpo de la solicitud decide si una foto cuesta 85 tokens o 3000. Ese campo es detail, va dentro del objeto de la imagen junto a la URL, y la mayoría de los tutoriales o lo omiten o citan cifras que dejaron de ser ciertas hace dos generaciones de modelos. Si envías capturas de pantalla, recibos, fotos de productos o gráficos a un modelo GPT, este ajuste determina tu factura, la latencia y cuánta parte de la imagen puede leer realmente el modelo.

Este artículo recorre el formato de la solicitud, los cuatro valores de detail, la aritmética de tokens para modelos basados en teselas y para modelos basados en parches, los casos en los que low sale contraproducente y los límites que conviene conocer antes de publicar tu aplicación. Las cifras proceden de las páginas de entrada de imágenes de la documentación de la API de OpenAI tal como están hoy, y cada ejemplo muestra su cálculo, para que puedas comprobarlo con el bloque usage de tus propias respuestas. Esas páginas cambian a menudo, y ese es un motivo más para registrar los recuentos de tokens en lugar de fiarte de una tabla, incluidas las de abajo.

Vista desde un ángulo bajo de un escritorio de nogal con las manos de un desarrollador sobre un equipo portátil y, junto a él, una fotografía impresa de una costa

Cómo se convierte una foto en tokens

Un modelo GPT nunca lee tu JPEG como archivo. La API redimensiona la imagen, la divide en bloques pequeños y convierte cada bloque en tokens que se sitúan en la ventana de contexto junto a tu texto. Esos tokens se facturan a la tarifa de entrada normal del modelo, así que una imagen más grande o más nítida supone una factura mayor y más latencia. Además, compiten con tu prompt y con la respuesta por la misma ventana de contexto, algo que importa cuando una solicitud incluye varias imágenes.

La forma de la solicitud

Las imágenes viajan dentro del mensaje del usuario como partes de contenido. La Responses API usa partes input_text y input_image, mientras que Chat Completions usa text y image_url. En ambas, detail va en la parte de la imagen. Este es un lector de recibos en GPT 5.4:

from openai import OpenAI

client = OpenAI()

response = client.responses.create(
    model="gpt-5.4",
    input=[
        {
            "role": "user",
            "content": [
                {"type": "input_text", "text": "List every line item and the total."},
                {
                    "type": "input_image",
                    "image_url": "https://example.com/receipt.jpg",
                    "detail": "original",
                },
            ],
        }
    ],
)

print(response.output_text)
print(response.usage.input_tokens)

La misma llamada en Chat Completions con GPT-4o anida la URL un nivel más abajo:

completion = client.chat.completions.create(
    model="gpt-4o",
    messages=[
        {
            "role": "user",
            "content": [
                {"type": "text", "text": "Describe this photo in one sentence."},
                {
                    "type": "image_url",
                    "image_url": {"url": "https://example.com/photo.jpg", "detail": "low"},
                },
            ],
        }
    ],
)

print(completion.usage.prompt_tokens)

Después de cada llamada, lee usage.input_tokens en Responses o usage.prompt_tokens en Chat Completions. Es el único número que zanja una discusión sobre el costo.

Tres formas de enviar píxeles

  • URL pública. La opción más sencilla, pero los servidores de OpenAI deben poder descargarla con rapidez.
  • URL de datos en base64. Una cadena data:image/jpeg;base64,... en línea funciona para archivos privados y añade alrededor de un tercio al tamaño de la carga.
  • ID de archivo. Sube el archivo una vez a través de la Files API con la finalidad vision, después referencia el ID con un campo file_id en la parte de la imagen y reutilízalo en varias solicitudes.

Los formatos aceptados son PNG, JPEG, WEBP y GIF no animado.

Los cuatro valores de detail

El campo detail acepta low, high, original y auto. Si lo omites, obtienes auto, que es el dimensionado por defecto del propio modelo. Los nombres sugieren una escalera sencilla, pero lo que hace cada peldaño depende del modelo que llames.

ValorPara qué dice la documentación que sirveOjo con
lowLectura general de la imagenNo siempre más barato que high en los modelos nuevos
highAlta fidelidad estándarLimitado a 2500 parches en la familia GPT 5.4
originalImágenes grandes, densas, sensibles a la posición o de uso del equipoRequiere GPT 5.4 o posterior, y no es compatible con GPT 5.2 ni con GPT 4.1 mini
autoEl dimensionado por defecto del modeloEl valor que obtienes cuando el campo falta

Primer plano extremo de una lupa de latón ampliando un fotograma de una hoja de contactos impresa

Low: grueso y barato, en general

En los modelos más antiguos basados en teselas, low es una tarifa fija: 85 tokens en GPT-4o y GPT 4.1, sea cual sea el tamaño del archivo. El modelo recibe una versión de 512 por 512 píxeles, suficiente para decir "un perro en la playa" y no lo bastante para leer una señal de calle. Úsalo para clasificación, pies de foto aproximados, pasadas de moderación y decisiones de enrutamiento, donde solo importa la idea general.

High y auto: el valor predeterminado del día a día

En los modelos de teselas, high primero ajusta la imagen dentro de un cuadrado de 2048 por 2048 píxeles, luego escala el lado más corto a 768 píxeles y después cuenta las teselas de 512 píxeles. En la familia GPT 5.x trabaja con parches de 32 píxeles, con un lado mayor de 2048 píxeles y un presupuesto de 2500 parches en GPT 5.4 y sus hermanos más pequeños. Es más que suficiente para fotos, fotos de productos y capturas de pantalla corrientes. Empieza a perjudicar con documentos densos y texto de interfaz diminuto, donde unos pocos píxeles perdidos convierten un 6 en un 8.

Original: cuando los píxeles importan

original eleva el techo a 10 000 parches y a un lado mayor de 6000 píxeles en GPT 5.4 y sus hermanos. OpenAI lo orienta a imágenes grandes, densas, sensibles a la posición o de uso del equipo, y al trabajo sensible a coordenadas, como el OCR o la detección de objetos pequeños. Imagina una captura de pantalla en 4K en la que el modelo debe devolver la posición de un botón, o un plano en el que una línea fina tiene significado. Pagas por esa nitidez: hasta 12 000 tokens de imagen por foto con el multiplicador de 1,2.

La regla práctica es ganárselo. Empieza una tarea con high, recoge los fallos y pasa a original solo los tipos de imagen que fallan. Si un campo se leía mal con high y se lee bien con original, los tokens extra han servido de algo. Si ambos ajustes fallan de la misma manera, el problema está en el prompt o en la imagen original, y más píxeles no lo arreglarán.

Cálculo de tokens, paso a paso

Modelos basados en teselas

La facturación por teselas es una tarifa base más una tarifa por cada tesela de 512 píxeles. GPT-4o y GPT 4.1 cobran 85 de base y 170 por tesela. GPT 5.1 cobra 70 y 140. GPT 4o Mini cobra 2833 y 5667, así que pasar el trabajo con imágenes al modelo mini infla el recuento de tokens en lugar de reducirlo. Compara el costo total, no la tarifa por token.

ImagenDetailModeloCálculoTokens
Cualquier tamañolowGPT-4oTarifa base fija85
1024 x 1024highGPT-4o4 teselas x 170 + 85765
1920 x 1080highGPT-4oRedimensionada a 1365 x 768, 3 x 2 = 6 teselas, 6 x 170 + 851105
1024 x 1024highGPT 4o Mini4 teselas x 5667 + 283325 501

Vista frontal de una pared de baldosas de cerámica hechas a mano en tonos blanco roto, arena y azul pálido

Modelos basados en parches

Los modelos nuevos cuentan parches de 32 por 32 píxeles: ceil(width / 32) x ceil(height / 32). Cuando el total supera el presupuesto, la imagen se reduce hasta que cabe, y el recuento final de tokens es el número de parches por un multiplicador del modelo, redondeado hacia arriba. El multiplicador es 1,2 para GPT 5.2, GPT 5.4 y la familia GPT 5.6 (Sol, Terra y Luna), y 1,62 para GPT 4.1 mini.

ImagenDetailParchesTokens con el multiplicador de 1,2
1920 x 1080low, high o original60 x 34 = 20402448
4000 x 3000highLimitado a 2500Hasta 3000
4000 x 3000lowUnos 3072 tras el límite de 2048 píxelesUnos 3700
4000 x 3000originalLimitado a 10 000Hasta 12 000

Las filas de 4000 x 3000 son mi cálculo a partir de los presupuestos publicados, así que tómalas como estimaciones y confírmalas con usage. La fila de 1080p es exacta, porque la imagen ya cabe en todos los presupuestos.

La escala marca la diferencia. Diez mil fotos de productos a 2448 tokens cada una suman 24,48 millones de tokens de entrada antes de una sola palabra de prompt. El mismo conjunto a 85 tokens cada una en GPT-4o low suma 850 000, unas 29 veces menos, una diferencia que nunca notarías solo mirando el código.

Vista aérea de campos de cultivo rectangulares que forman un mosaico de verdes, dorados y marrones

Cuándo low cuesta más que high

La documentación incluye una advertencia que sorprende a mucha gente: low no siempre usa menos tokens que high. En GPT 5.4 y sus hermanos más pequeños, low permite un presupuesto de 6144 parches, mientras que high se queda en 2500, así que una foto grande puede costar más con low. En GPT 5.2 y GPT 4.1 mini, todos los niveles comparten una sola regla de dimensionado, un lado mayor de 2048 píxeles y un presupuesto de 6144 parches, así que low, high y auto devuelven recuentos idénticos, y original no está disponible.

De ello se derivan dos consecuencias. Nunca des por hecho que el ajuste barato es barato, y espera que el significado de tus valores detail existentes cambie al cambiar de modelo. Una prueba corta lo aclara todo:

  1. Elige tres imágenes representativas: una pequeña, una captura de pantalla en 1080p y una foto de 12 megapíxeles.
  2. Envía cada una con todos los valores de detail que admita el modelo.
  3. Registra los tokens de entrada junto a la calidad de la respuesta.
  4. Quédate con el ajuste más bajo que siga respondiendo correctamente.

💡 Si low y high devuelven el mismo recuento de tokens en un modelo, el campo no hace nada ahí. Elimínalo de tu código en lugar de mantener un parámetro que sugiere un ahorro que no estás obteniendo.

Primer plano de una antigua balanza de latón con monedas de plata en un platillo y un recibo doblado en el otro

Límites que dan problemas en producción

Límites de carga y formato

La documentación actual permite hasta 512 MB de carga total y hasta 1500 imágenes por solicitud. Las guías antiguas citan 50 MB y 500 imágenes, así que una biblioteca que aplique esas cifras puede estar desactualizada. Una solicitud de 512 MB es un problema de latencia mucho antes que un problema de límites, porque base64 aumenta los bytes en un tercio y cada imagen sigue facturando tokens.

Dónde la visión sigue fallando

OpenAI enumera los puntos débiles con claridad, y coinciden con lo que aparece en producción:

  • Imágenes médicas especializadas, como las tomografías computarizadas, no son adecuadas.
  • Alfabetos no latinos, como el japonés o el coreano, pueden rendir peor.
  • Gráficos con estilos o colores de línea variables, donde hay que distinguir líneas continuas, discontinuas y de puntos, provocan errores.
  • La localización espacial precisa, como leer posiciones de ajedrez, no es fiable.
  • Los recuentos de objetos llegan como aproximaciones.
  • Los CAPTCHA están bloqueados.
  • Los nombres de archivo y los metadatos nunca se leen.

Vista cenital de un tablero de ajedrez de madera a mitad de partida, con una mano suspendida sobre un caballo

La letra pequeña es la víctima habitual en el trabajo diario. Cuando la parte que importa es pequeña, envía solo esa parte.

💡 Recorta antes de enviar. Un recorte de 600 x 400 de la línea del total de un recibo cuesta unos 300 tokens en GPT 5.4 (19 x 13 = 247 parches, por 1,2). La página completa de 4000 x 3000 con original puede llegar a 12 000, y el recorte suele leerse mejor.

Macro extrema de un recibo térmico arrugado con impresión descolorida sobre una encimera de pizarra oscura

Errores que malgastan tokens

La mayor parte del gasto de más procede de unos cuantos hábitos:

  • Subir archivos de cámara sin procesar. Una foto original de 12 megapíxeles se reduce igualmente al límite del modelo al llegar. Redimensiónala primero al lado mayor que permita tu nivel de detail (2048 píxeles para la mayoría de los ajustes, 6000 con original en GPT 5.4 y sus hermanos), exporta un JPEG, y la solicitud se sube más rápido sin perder nada.
  • Unir un collage en una sola imagen. Seis capturas pegadas en un mismo lienzo se reducen juntas, así que cada una pierde resolución. Envía seis partes de imagen separadas y nómbralas en el texto: "La imagen 1 es la factura, la imagen 2 es el albarán." Cada parte se factura por separado.
  • Pedirlo todo a la vez. Un prompt que pide un pie de foto, una lista de colores, una revisión de defectos y una pasada de OCR invita a respuestas superficiales. Una pregunta concreta por llamada, o una lista claramente numerada, devuelve una salida más limpia.
  • No registrar el uso nunca. Sin los recuentos de tokens de entrada por solicitud, un cambio de modelo o un nuevo tamaño de imagen pueden duplicar tu factura y nada te avisará.

Elige un ajuste según la tarea

TareaEmpieza conPor qué
Moderación, enrutamiento, pies de foto aproximadoslow en modelos de teselas, auto en modelos de parchesLa idea general basta
Fotos de productos, descripciones de escenashigh o autoBuen detalle a un costo moderado
Recibos y facturashigh recortado, o original en GPT 5.4 y posterioresLa letra pequeña necesita píxeles
Gráficos y panelesoriginal, o un lector especializadoLas líneas finas tienen significado
Capturas de pantalla para agentes de interfazoriginalLas coordenadas deben ser exactas

Recibos y documentos

El texto es donde el redimensionado perjudica antes. Recorta la región, enderézala y pide una forma JSON fija para que un dígito incorrecto sea fácil de detectar. Indica al modelo que responda unreadable para cualquier campo que no pueda leer, porque un modelo al que se le permite adivinar adivinará, y un total incorrecto con confianza es peor que uno en blanco. Si un escaneo está borroso, repáralo antes de subirlo con una herramienta de restauración de imágenes con IA, porque ningún ajuste de detail puede inventar píxeles que nunca se capturaron.

Gráficos y capturas densas

Los gráficos mezclan trazos finos, etiquetas pequeñas y colores parecidos, justo el caso que OpenAI señala. Envíalos con original cuando el modelo lo admita. Pide primero los números subyacentes en forma de tabla y después la interpretación, así puedes contrastar los valores con la imagen antes de fiarte de cualquier tendencia que describa el modelo. Para tablas y gráficos que extraes a diario, un especialista como Granite Vision 4.1 4B merece una prueba comparativa lado a lado.

Fotos de productos a escala

Para el trabajo de catálogo, ejecuta la prueba de las tres imágenes de antes con tus fotos reales y después fija el ajuste y el prompt para todo el lote. Pide los mismos atributos en el mismo orden cada vez, como color, material y defectos visibles, y la salida se carga con facilidad en una base de datos. Fotografía también los artículos de la misma forma: un fondo, una distancia y una luz constantes te permiten usar un ajuste más barato, porque el modelo ya no tiene que lidiar con el ruido. Una foto de producto tomada sobre una mesa lisa con luz uniforme suele leerse bien con high, mientras que la misma taza en una cocina abarrotada puede no leerse bien.

Un trabajador de una estación de empaquetado fotografiando una taza de cerámica esmaltada sobre una mesa blanca con un teléfono inteligente

Cómo usar GPT 5.4 en PicassoIA

No necesitas código para ver lo que lee un modelo. GPT 5.4 en PicassoIA acepta imágenes junto a un prompt de texto, y su formulario expone las mismas palancas que ajustas en la API: un prompt de sistema, la verbosidad, el esfuerzo de razonamiento y un límite de tokens de completado. Eso lo convierte en un lugar rápido para resolver las preguntas que van antes que los ajustes. ¿Qué redacción de prompt funciona? ¿Lee este modelo este tipo de imagen? ¿Basta un modelo más barato? Una advertencia: el formulario tiene un campo de entrada de imagen pero ningún interruptor de detail, así que trata los resultados como una prueba de la elección de prompt y modelo, no como una medición de low frente a high.

Paso a paso

  1. Abre la página de GPT 5.4 y busca el campo Image Input.
  2. Añade tu imagen de prueba. Sirve un recibo, una captura de un panel o una foto de producto.
  3. Escribe un prompt concreto: "Devuelve la fecha y el total en JSON" funciona mejor que "describe esta imagen".
  4. Añade un System Prompt que defina el rol y el formato de salida.
  5. Pon Verbosity en low para tareas de extracción y en high cuando quieras un desglose detallado.
  6. Deja Reasoning Effort en none para una lectura sencilla. Súbelo para preguntas de varios pasos, y sube también Max Completion Tokens con él, porque un esfuerzo alto puede gastar todo el presupuesto en razonamiento y devolverte una respuesta vacía.
  7. Ejecuta la misma imagen en GPT-4o y compara las dos salidas.

Una mujer en un despacho doméstico luminoso, vista desde atrás, arrastrando una fotografía de paisaje a una ventana de chat en un equipo portátil

Modelos de visión que vale la pena comparar

Image to text es una de las capacidades integradas de la plataforma, y varios modelos de lenguaje aceptan imágenes:

ModeloIdeal para
GPT-4oTexto e imágenes en una sola solicitud, salida JSON si se pide
GPT 5.4Capturas de pantalla y diagramas con esfuerzo de razonamiento ajustable
Gemini 3.5 FlashChat rápido, preguntas sobre código e imágenes
Qwen3.7-PlusTexto más interpretación de imágenes
Kimi K2.5Chat que lee texto e imágenes
Claude Opus 4.7Programación, visión y razonamiento en un solo modelo
Granite Vision 4.1 4BExtracción de gráficos y tablas

Envía tus propias imágenes de prueba

Elige cinco imágenes de tu carga de trabajo real: una muy pequeña, una en 1080p, una foto de 12 megapíxeles, un recibo y un gráfico. Pásalas por GPT 5.4 y GPT-4o en PicassoIA, anota qué respuestas fueron correctas y después lleva el ganador a la API y compara los recuentos de tokens con cada valor de detail. Una hora de pruebas así ahorra más dinero que cualquier ajuste de precios.

¿Necesitas material de prueba? Abre PicassoIA, genera tus propias escenas con los modelos de texto a imagen y conviértelas en un conjunto de pruebas para tus prompts de visión. Puedes ver todo lo disponible en picassoia.com/en/all-models. Empieza con una imagen, haz una pregunta concreta y comprueba exactamente lo que lee el modelo.

Compartir este artículo

Elige tu idioma