DeepSeek V4 Flash Vision API: Imagens, Tokens e Limites

DeepSeek V4 Flash Vision API: Imagens, Tokens e Limites

A DeepSeek agora tem uma API de visão que você realmente pode colocar em produção. A deepseek-v4-flash-vision-exp tem um limite de 384 tokens por imagem (aproximadamente 1 yuan para 1.000 imagens), aceita imagens via base64, URL externa ou Files API e funciona nos endpoints compatíveis com OpenAI, Anthropic e Responses. Este é o guia prático completo: código pronto para copiar e colar nos três métodos de entrada, as regras de nível de detalhe e cobrança, e a tabela completa de limites.

O Modelo e os Formatos Suportados

A deepseek-v4-flash-vision-exp aceita imagens junto com texto. Use-a para descrever fotos, ler texto de capturas de tela ou analisar gráficos.

Formatos suportados: JPEG, PNG, GIF, WebP. O formato é detectado a partir do conteúdo real do arquivo, não pelo nome do arquivo ou pelo tipo MIME declarado.

Três Formas de Enviar uma Imagem

Todas usam o formato padrão de Chat Completions compatível com OpenAI, em que content é um array de blocos, não uma string simples. A base_url é https://api.deepseek.com.

1. Base64 inline. A opção mais simples para arquivos locais. Codifique e incorpore como uma URL data:; conta para o limite de 48 MiB do corpo da requisição:

import base64
from openai import OpenAI

client = OpenAI(api_key="<KEY>", base_url="https://api.deepseek.com")
b64 = base64.b64encode(open("image.jpg", "rb").read()).decode()
resp = client.chat.completions.create(
    model="deepseek-v4-flash-vision-exp",
    messages=[{"role": "user", "content": [
        {"type": "text", "text": "What is in this image?"},
        {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{b64}"}},
    ]}],
)
print(resp.choices[0].message.content)

2. URL externa de imagem. Passe um link http(s) publicamente acessível; o modelo faz o download. A URL pode ter até 8192 caracteres, a imagem até 32 MiB, e o download deve ser concluído em até 60 segundos. Para links mais longos, use base64 ou a Files API.

3. file_id da Files API. Faça o upload uma vez e referencie o file_id. Ideal para reutilizar a mesma imagem em várias requisições, ou quando a requisição excederia o limite inline de 48 MiB. Um bloco de arquivo também pode carregar a imagem inline via file_data (mutuamente exclusivo com file_id).

Níveis de Detalhe e Custo em Tokens

O campo opcional detail nas entradas de image_url controla o processamento: low reduz a escala para 512×512 (mais rápido e barato); high e original mantêm a imagem original; auto atualmente equivale a original.

As imagens são cobradas em tokens com base nas dimensões e são redimensionadas automaticamente antes da inferência para aproximadamente um tamanho de 800×800. Isso resulta em um limite fixo de 384 tokens por imagem — uma imagem de 2000×2000 e uma de 5000×5000 custam o mesmo. Com várias imagens, cada uma é contada de forma independente sob a mesma regra.

Tabela Completa de Limites

LimiteValor
Formatos suportadosJPEG, PNG, GIF, WebP
Comprimento da URL externa8192 caracteres
Tamanho do corpo da requisição48 MiB
Tamanho máximo da imagem (base64 / URL)32 MiB
Tamanho máximo da imagem (Files API)64 MiB
Máximo de imagens por requisição600
Dimensão máxima da imagem8192 px por lado; 4096 px com 15+ imagens

Compatibilidade com Anthropic e Responses API

Você também pode enviar imagens pelo endpoint compatível com Anthropic /messages (base_url https://api.deepseek.com/anthropic). A diferença está na estrutura do bloco de conteúdo: a Anthropic usa um bloco image cujo source.type é base64, url ou file — base64 exige um campo media_type.

A Responses API suporta os mesmos três métodos de entrada, com imagens transportadas em partes input_image dentro de mensagens de usuário ou developer, ou em itens de saída de ferramentas; o campo detail funciona da mesma forma.

Restrições e Erros 400 Comuns

  • Imagens são permitidas apenas em mensagens de usuário: imagens em mensagens de sistema ou assistant retornam um erro 400.
  • Apenas modelos de visão (deepseek-v4-flash-vision-exp) aceitam imagens; outros modelos retornam um erro 400 (“This model does not support image”).
  • Texto do usuário contendo o token reservado de placeholder de imagem é rejeitado com um erro 400.

FAQ

P: Quanto custa uma chamada de visão?
Cada imagem tem um limite de 384 tokens e é cobrada junto com seus tokens de texto — aproximadamente 1 yuan para 1.000 imagens, cerca de 25 vezes mais barato que o Claude Sonnet 4.6 (veja nossa cobertura do lançamento do DeepSeek V4 Flash Vision).

P: E se minha imagem for maior que 32 MiB?
Use a Files API: imagens referenciadas por file_id podem ter até 64 MiB e ficam isentas da verificação de 32 MiB por imagem.

P: Quantas imagens posso enviar em uma requisição?
Até 600. Com 15 imagens ou mais, o limite de dimensão por lado cai de 8192 px para 4096 px. Para reduzir custos com imagens grandes, adicione detail=low.

Leitura Relacionada

DeepSeek V4 Pro API: O Que Mudou e Como Usar · Cobertura do lançamento do DeepSeek V4 Flash Vision

Notícias Relacionadas