Entrada de imagem na API do GPT: análise visual e configurações de detail

A API do GPT transforma cada imagem em tokens, e o campo detail define quantos. Este artigo mostra o formato da requisição, os valores low, high, original e auto, o cálculo de tokens para modelos baseados em tiles e em patches, e um teste passo a passo no PicassoIA.

Entrada de imagem na API do GPT: análise visual e configurações de detail
Cristian Da Conceicao
Fundador do Picasso IA

Um único campo no corpo de uma requisição decide se uma foto custa 85 tokens ou 3.000. Esse campo é detail, fica dentro do objeto da imagem, ao lado da URL, e a maioria dos tutoriais ou o ignora ou cita números que deixaram de valer há duas gerações de modelos. Se você envia capturas de tela, recibos, fotos de produtos ou gráficos para um modelo GPT, essa configuração molda sua conta, sua latência e quanto da imagem o modelo consegue realmente ler.

Este artigo percorre o formato da requisição, os quatro valores de detail, a aritmética de tokens para modelos baseados em tiles e em patches, os casos em que low sai pela culatra e os limites que vale conhecer antes de colocar em produção. Os números vêm das páginas de entrada de imagem da documentação da API da OpenAI, como estão hoje, e cada exemplo trabalhado mostra sua conta, para que você possa conferi-la com o bloco usage nas suas próprias respostas. Páginas assim mudam com frequência, mais um motivo para registrar as contagens de tokens em vez de confiar em uma tabela, inclusive as abaixo.

Vista de baixo ângulo de uma mesa de nogueira com as mãos de um desenvolvedor sobre um notebook e uma fotografia impressa da costa ao lado

Como uma foto vira tokens

Um modelo GPT nunca lê o seu JPEG como arquivo. A API redimensiona a imagem, a divide em pequenos blocos e transforma cada bloco em tokens que ficam na janela de contexto, ao lado do seu texto. Esses tokens são cobrados pela taxa normal de entrada do modelo, então uma imagem maior ou mais nítida significa uma conta maior e mais latência. Eles também disputam a mesma janela de contexto com o seu prompt e com a resposta, o que importa quando uma requisição traz várias imagens.

O formato da requisição

As imagens viajam dentro da mensagem do usuário como partes de conteúdo. A Responses API usa partes input_text e input_image, enquanto a Chat Completions usa text e image_url. Nas duas, detail fica na parte da imagem. Aqui está um leitor de recibos no 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)

A mesma chamada na Chat Completions com o GPT-4o aninha a URL um nível mais fundo:

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)

Depois de cada chamada, leia usage.input_tokens na Responses ou usage.prompt_tokens na Chat Completions. É o único número que encerra uma discussão sobre custo.

Três formas de enviar os pixels

  • URL pública. A opção mais simples, mas os servidores da OpenAI precisam conseguir buscá-la rapidamente.
  • URL de dados em base64. Uma string data:image/jpeg;base64,... inline funciona para arquivos privados e acrescenta cerca de um terço ao tamanho do payload.
  • ID de arquivo. Envie uma vez pela Files API com a finalidade vision, depois referencie o ID com um campo file_id na parte da imagem e reutilize em várias requisições.

Os formatos aceitos são PNG, JPEG, WEBP e GIF não animado.

Os quatro valores de detail

O campo detail aceita low, high, original e auto. Se você o omitir, obtém auto, que significa o dimensionamento padrão do próprio modelo. Os nomes sugerem uma escada simples, mas o que cada degrau faz depende do modelo que você chama.

ValorO que a documentação diz que ele serveAtenção a
lowLeitura grosseira da imagemNem sempre mais barato que high em modelos mais novos
highAlta fidelidade padrãoLimitado a 2.500 patches na família GPT 5.4
originalImagens grandes, densas, sensíveis a posição ou de uso de computadorExige GPT 5.4 ou posterior, e não é compatível com GPT 5.2 nem com GPT 4.1 mini
autoO dimensionamento padrão do modeloO valor que você obtém quando o campo está ausente

Close extremo de uma lupa de latão ampliando um quadro em uma folha de contato impressa

Low: grosseiro e barato, na maioria das vezes

Nos modelos mais antigos baseados em tiles, low tem taxa fixa: 85 tokens no GPT-4o e no GPT 4.1, seja qual for o tamanho do arquivo. O modelo recebe uma versão de 512 por 512 pixels, suficiente para dizer "um cachorro na praia" e insuficiente para ler uma placa de rua. Use para classificação, legendas aproximadas, passes de moderação e decisões de roteamento em que só a ideia geral importa.

High e auto: o padrão do dia a dia

Nos modelos de tiles, high primeiro encaixa a imagem em um quadrado de 2.048 por 2.048, depois redimensiona o lado menor para 768 pixels e então conta os tiles de 512 pixels. Na família GPT 5.x, ele trabalha com patches de 32 pixels, com lado maior de 2.048 pixels e orçamento de 2.500 patches no GPT 5.4 e nas versões menores. Isso basta para fotos, fotos de produtos e capturas de tela comuns. Começa a atrapalhar em documentos densos e textos minúsculos de interface, em que alguns pixels perdidos transformam um 6 em um 8.

Original: quando os pixels importam

original eleva o teto para 10.000 patches e um lado maior de 6.000 pixels no GPT 5.4 e nas versões irmãs. A OpenAI o indica para imagens grandes, densas, sensíveis a posição ou de uso de computador, e para trabalhos sensíveis a coordenadas, como OCR ou detecção de objetos pequenos. Imagine uma captura de tela em 4K em que o modelo precisa devolver a posição de um botão, ou uma planta baixa em que uma linha fina carrega um significado. Você paga por essa nitidez: até 12.000 tokens de imagem por foto, com o multiplicador de 1,2.

A regra prática é merecer esse custo. Comece uma tarefa em high, reúna as falhas e mova apenas os tipos de imagem que falham para original. Se um campo foi lido errado em high e é lido corretamente em original, os tokens extras compraram algo. Se as duas configurações falham do mesmo jeito, o problema está no prompt ou na imagem de origem, e mais pixels não vão ajudar.

A conta dos tokens, passo a passo

Modelos baseados em tiles

A cobrança por tiles é uma taxa base mais uma taxa por tile de 512 pixels. O GPT-4o e o GPT 4.1 cobram 85 de base e 170 por tile. O GPT 5.1 cobra 70 e 140. O GPT 4o Mini cobra 2.833 e 5.667, então mudar o trabalho com imagens para o modelo mini aumenta a contagem de tokens em vez de reduzi-la. Compare o custo total, não a taxa por token.

ImagemDetailModeloCálculoTokens
Qualquer tamanholowGPT-4oTaxa base fixa85
1024 x 1024highGPT-4o4 tiles x 170 + 85765
1920 x 1080highGPT-4oRedimensionada para 1365 x 768, 3 x 2 = 6 tiles, 6 x 170 + 851.105
1024 x 1024highGPT 4o Mini4 tiles x 5.667 + 2.83325.501

Vista frontal de uma parede de azulejos cerâmicos artesanais em tons de branco-osso, areia e azul claro

Modelos baseados em patches

Os modelos mais novos contam patches de 32 por 32 pixels: ceil(width / 32) x ceil(height / 32). Quando o total excede o orçamento, a imagem é reduzida até caber, e a contagem final de tokens é o número de patches vezes um multiplicador do modelo, arredondado para cima. O multiplicador é 1,2 para o GPT 5.2, o GPT 5.4 e a família GPT 5.6 (Sol, Terra e Luna), e 1,62 para o GPT 4.1 mini.

ImagemDetailPatchesTokens com multiplicador 1,2
1920 x 1080low, high ou original60 x 34 = 2.0402.448
4000 x 3000highLimitado a 2.500Até 3.000
4000 x 3000lowCerca de 3.072 após o limite de 2.048 pixelsCerca de 3.700
4000 x 3000originalLimitado a 10.000Até 12.000

As linhas de 4000 x 3000 são minha conta a partir dos orçamentos publicados, então trate-as como estimativas e confirme com usage. A linha de 1080p é exata, porque a imagem já cabe em todos os orçamentos.

A escala torna a diferença real. Dez mil fotos de produtos a 2.448 tokens cada somam 24,48 milhões de tokens de entrada antes de uma única palavra do prompt. O mesmo conjunto a 85 tokens cada no GPT-4o low dá 850.000, uma diferença de cerca de 29 vezes que você nunca perceberia só pelo código.

Vista aérea de campos agrícolas retangulares formando um mosaico de verde, dourado e marrom

Quando low custa mais que high

A documentação traz um alerta que surpreende as pessoas: low nem sempre usa menos tokens que high. No GPT 5.4 e nas versões menores, low permite um orçamento de 6.144 patches, enquanto high para em 2.500, então uma foto grande pode custar mais em low. No GPT 5.2 e no GPT 4.1 mini, todos os níveis compartilham uma regra de dimensionamento, um lado maior de 2.048 pixels e um orçamento de 6.144 patches, então low, high e auto retornam contagens idênticas e original não está disponível.

Duas consequências decorrem disso. Nunca presuma que a configuração barata é barata, e espere que o significado dos seus valores detail atuais mude ao trocar de modelo. Um teste rápido resolve as duas coisas:

  1. Escolha três imagens representativas: uma pequena, uma captura de tela em 1080p e uma foto de 12 megapixels.
  2. Envie cada uma em todos os valores de detail que o modelo aceita.
  3. Registre os tokens de entrada ao lado da qualidade da resposta.
  4. Mantenha a configuração mais baixa que ainda responde corretamente.

💡 Se low e high retornam a mesma contagem de tokens em um modelo, o campo não faz nada ali. Remova-o do seu código em vez de carregar um parâmetro que sugere economia que você não está obtendo.

Close de uma balança de dois pratos de latão antiga, com moedas de prata em um prato e um recibo dobrado no outro

Limites que pegam em produção

Limites de payload e formato

A documentação atual permite até 512 MB de payload total e até 1.500 imagens por requisição. Textos mais antigos citam 50 MB e 500 imagens, então uma biblioteca que aplica esses números pode estar desatualizada. Uma requisição de 512 MB é um problema de latência muito antes de ser um problema de limite, porque o base64 aumenta os bytes em um terço e cada imagem continua gerando tokens.

Onde a visão ainda falha

A OpenAI lista os pontos fracos com clareza, e eles coincidem com o que aparece em produção:

  • Imagens médicas especializadas, como tomografias, não são adequadas.
  • Alfabetos não latinos, como japonês ou coreano, podem render menos.
  • Gráficos com estilos ou cores de linha variados, em que linhas contínuas, tracejadas e pontilhadas precisam ser diferenciadas, causam erros.
  • Localização espacial precisa, como ler posições de xadrez, não é confiável.
  • Contagens de objetos voltam como aproximações.
  • CAPTCHAs são bloqueados.
  • Nomes de arquivo e metadados nunca são lidos.

Vista de cima de um tabuleiro de xadrez de madeira no meio da partida, com uma mão pairando sobre um cavalo

Letras miúdas são a principal vítima no trabalho do dia a dia. Quando a parte que importa é pequena, envie só essa parte.

💡 Recorte antes de enviar. Um recorte de 600 x 400 da linha do total de um recibo custa cerca de 300 tokens no GPT 5.4 (19 x 13 = 247 patches, vezes 1,2). A página completa de 4000 x 3000 com original pode chegar a 12.000, e o recorte geralmente é lido melhor.

Macro extremo de um recibo térmico amassado com impressão desbotada sobre um balcão de ardósia escura

Erros que desperdiçam tokens

A maior parte do gasto excessivo vem de alguns hábitos:

  • Enviar arquivos brutos da câmera. Uma imagem original de 12 megapixels é reduzida ao limite do modelo de qualquer forma ao chegar. Redimensione primeiro para o maior lado que o seu nível de detail permite (2.048 pixels para a maioria das configurações, 6.000 em original para o GPT 5.4 e nas versões irmãs), exporte um JPEG, e a requisição sobe mais rápido sem perda alguma.
  • Juntar uma colagem em uma única imagem. Seis capturas de tela coladas em uma mesma tela são reduzidas em conjunto, então cada uma perde resolução. Envie seis partes de imagem separadas e nomeie-as no texto: "A imagem 1 é a nota fiscal, a imagem 2 é o romaneio." Cada parte é cobrada individualmente.
  • Pedir tudo de uma vez. Um prompt que quer uma legenda, uma lista de cores, uma checagem de defeitos e uma passagem de OCR convida respostas superficiais. Uma pergunta objetiva por chamada, ou uma lista claramente numerada, devolve uma saída mais limpa.
  • Nunca registrar o uso. Sem as contagens de tokens de entrada por requisição, uma troca de modelo ou um novo tamanho de imagem pode dobrar sua conta, e nada vai avisar.

Escolha a configuração por tarefa

TarefaComece comPor quê
Moderação, roteamento, legendas aproximadaslow nos modelos de tiles, auto nos modelos de patchesA ideia geral basta
Fotos de produtos, descrições de cenashigh ou autoBom detalhe a custo moderado
Recibos e notas fiscaishigh recortado, ou original no GPT 5.4 e posterioresLetras miúdas precisam de pixels
Gráficos e painéisoriginal, ou um leitor especializadoLinhas finas carregam significado
Capturas de tela para agentes de interfaceoriginalAs coordenadas precisam ser exatas

Recibos e documentos

O texto é onde o redimensionamento atrapalha primeiro. Recorte a região, endireite-a e peça um formato JSON fixo, para que um dígito errado seja fácil de perceber. Diga ao modelo para responder unreadable para qualquer campo que não consiga ler, porque um modelo autorizado a adivinhar vai adivinhar, e um total errado com aparência de certeza é pior que um campo em branco. Se uma digitalização estiver borrada, repare-a antes do envio com uma ferramenta de restauração de imagens por IA, porque nenhuma configuração de detail consegue inventar pixels que nunca foram capturados.

Gráficos e capturas de tela densas

Gráficos misturam traços finos, rótulos pequenos e cores parecidas, que é exatamente o caso que a OpenAI sinaliza. Envie-os em original quando o modelo aceitar. Peça primeiro os números subjacentes em forma de tabela e a interpretação depois, para que você possa conferir os valores contra a imagem antes de confiar em qualquer tendência que o modelo descreva. Para tabelas e gráficos que você extrai todos os dias, um especialista como o Granite Vision 4.1 4B vale um teste lado a lado.

Fotos de produtos em escala

Para trabalho de catálogo, rode o teste de três imagens mencionado antes com as suas fotos reais e depois fixe a configuração e o prompt para o lote inteiro. Peça sempre os mesmos atributos, na mesma ordem, como cor, material e defeitos visíveis, e a saída fica fácil de carregar em um banco de dados. Fotografe os itens do mesmo jeito também: um fundo, distância e luz consistentes permitem usar uma configuração mais barata, porque o modelo não precisa mais lidar com ruído. Uma foto de produto tirada sobre uma bancada lisa, com luz uniforme, costuma ser lida bem em high, enquanto a mesma caneca numa cozinha bagunçada pode não ser.

Um funcionário de uma estação de embalagem fotografando uma caneca de cerâmica esmaltada sobre uma bancada branca com um smartphone

Como usar o GPT 5.4 no PicassoIA

Você não precisa de código para ver o que um modelo lê. O GPT 5.4 no PicassoIA aceita imagens junto com um prompt de texto, e o seu formulário expõe os mesmos controles que você ajusta na API: um prompt de sistema, verbosidade, esforço de raciocínio e um limite de tokens de conclusão. Isso faz dele um lugar rápido para resolver as perguntas que vêm antes das configurações. Qual redação de prompt funciona? O modelo lê este tipo de imagem? Um modelo mais barato basta? Uma ressalva: o formulário tem um campo de entrada de imagem, mas nenhum interruptor de detail, então trate os resultados como um teste de prompt e de escolha de modelo, e não como uma medição de low contra high.

Passo a passo

  1. Abra a página do GPT 5.4 e encontre o campo Image Input.
  2. Adicione sua imagem de teste. Um recibo, uma captura de tela de painel ou uma foto de produto funcionam.
  3. Escreva um prompt objetivo: "Retorne a data e o total em JSON" é melhor que "descreva esta imagem".
  4. Adicione um System Prompt que defina o papel e o formato da saída.
  5. Defina Verbosity como low para tarefas de extração e high quando quiser um detalhamento completo.
  6. Deixe Reasoning Effort em none para leitura simples. Aumente-o para perguntas de várias etapas, e aumente junto o Max Completion Tokens, porque um esforço alto pode gastar todo o orçamento em raciocínio e devolver uma resposta vazia.
  7. Rode a mesma imagem no GPT-4o e compare as duas saídas.

Uma mulher em um home office iluminado, vista de costas, arrastando uma fotografia de paisagem para uma janela de chat em um notebook

Modelos de visão que vale a pena comparar

Imagem para texto é uma das capacidades integradas da plataforma, e vários modelos de linguagem aceitam imagens:

ModeloBom para
GPT-4oTexto e imagens em uma única requisição, saída em JSON sob pedido
GPT 5.4Capturas de tela e diagramas com esforço de raciocínio ajustável
Gemini 3.5 FlashChat rápido, perguntas sobre código e imagens
Qwen3.7-PlusTexto mais interpretação de imagem
Kimi K2.5Chat que lê texto e imagens
Claude Opus 4.7Programação, visão e raciocínio em um só modelo
Granite Vision 4.1 4BExtração de gráficos e tabelas

Envie suas próprias imagens de teste

Escolha cinco imagens da sua rotina real: uma minúscula, uma em 1080p, uma foto de 12 megapixels, um recibo e um gráfico. Rode-as no GPT 5.4 e no GPT-4o no PicassoIA, anote quais respostas estavam certas e depois leve o vencedor para a API e compare as contagens de tokens em cada valor de detail. Uma hora de testes assim economiza mais dinheiro que qualquer ajuste de preço.

Precisa de material de teste? Abra o PicassoIA, gere suas próprias cenas com os modelos de texto para imagem e transforme-as em um conjunto de teste para seus prompts de visão. Você pode navegar por tudo o que está disponível em picassoia.com/en/all-models. Comece com uma imagem, faça uma pergunta objetiva e veja exatamente o que o modelo lê.

Compartilhe este artigo

Escolha seu idioma