Este guia descreve como trabalhar com imagens no Claude, incluindo melhores práticas, exemplos de código e limitações a serem consideradas.


Como usar a visão

Use as capacidades de visão do Claude através de:

  • claude.ai. Faça upload de uma imagem como faria com um arquivo, ou arraste e solte uma imagem diretamente na janela de chat.
  • Console Workbench. Se você selecionar um modelo que aceita imagens (apenas modelos Claude 3), um botão para adicionar imagens aparece no canto superior direito de cada bloco de mensagem do usuário.
  • Requisição de API. Veja os exemplos neste guia.

Antes de fazer upload

Avalie o tamanho da imagem

Você pode incluir várias imagens em uma única requisição (até 5 para claude.ai e 20 para requisições de API). O Claude analisará todas as imagens fornecidas ao formular sua resposta. Isso pode ser útil para comparar ou contrastar imagens.

Para um desempenho ideal, recomendamos redimensionar as imagens antes de fazer o upload se elas excederem os limites de tamanho ou tokens. Se a borda longa da sua imagem tiver mais de 1568 pixels, ou se sua imagem tiver mais de ~1.600 tokens, ela será primeiro reduzida, preservando a proporção, até que esteja dentro dos limites de tamanho.

Se sua imagem de entrada for muito grande e precisar ser redimensionada, isso aumentará a latência do time-to-first-token, sem fornecer nenhum desempenho adicional do modelo. Imagens muito pequenas com menos de 200 pixels em qualquer borda podem degradar o desempenho.

Para melhorar o time-to-first-token, recomendamos redimensionar as imagens para no máximo 1,15 megapixels (e dentro de 1568 pixels em ambas as dimensões).

Aqui está uma tabela dos tamanhos máximos de imagem aceitos por nossa API que não serão redimensionados para proporções comuns. Com o modelo Claude 3.5 Sonnet, essas imagens usam aproximadamente 1.600 tokens e cerca de $4,80/1K imagem.

ProporçãoTamanho da imagem
1:11092x1092 px
3:4951x1268 px
2:3896x1344 px
9:16819x1456 px
1:2784x1568 px

Calcule os custos da imagem

Cada imagem que você incluir em uma requisição ao Claude conta para o seu uso de tokens. Para calcular o custo aproximado, multiplique o número aproximado de tokens da imagem pelo preço por token do modelo que você está usando.

Se sua imagem não precisar ser redimensionada, você pode estimar o número de tokens usados através deste algoritmo: tokens = (largura px * altura px)/750

Aqui estão exemplos de tokenização aproximada e custos para diferentes tamanhos de imagem dentro das restrições de tamanho de nossa API com base no preço por token do Claude 3.5 Sonnet de $3 por milhão de tokens de entrada:

Tamanho da imagem# de TokensCusto / imagemCusto / 1K imagens
200x200 px (0,04 megapixels)~54~$0,00016~$0,16
1000x1000 px (1 megapixel)~1334~$0,004~$4,00
1092x1092 px (1,19 megapixels)~1590~$0,0048~$4,80

Garantindo a qualidade da imagem

Ao fornecer imagens ao Claude, tenha em mente o seguinte para obter os melhores resultados:

  • Formato da imagem: Use um formato de imagem suportado: JPEG, PNG, GIF ou WebP.
  • Clareza da imagem: Certifique-se de que as imagens estejam nítidas e não muito borradas ou pixeladas.
  • Texto: Se a imagem contiver texto importante, certifique-se de que seja legível e não muito pequeno. Evite cortar o contexto visual chave apenas para ampliar o texto.

Exemplos de prompt

Muitas das técnicas de prompt que funcionam bem para interações baseadas em texto com o Claude também podem ser aplicadas a prompts baseados em imagem.

Esses exemplos demonstram estruturas de prompt de melhores práticas envolvendo imagens.

Assim como no posicionamento de consulta de documentos, o Claude funciona melhor quando as imagens vêm antes do texto. Imagens colocadas após o texto ou interpoladas com o texto ainda terão um bom desempenho, mas se o seu caso de uso permitir, recomendamos uma estrutura de imagem e depois texto.

Sobre os exemplos de prompt

Esses exemplos de prompt usam o Anthropic Python SDK e buscam imagens da Wikipedia usando a biblioteca httpx. Você pode usar qualquer fonte de imagem.

Os prompts de exemplo usam essas variáveis.

Python
import base64
import httpx

image1_url = "https://upload.wikimedia.org/wikipedia/commons/a/a7/Camponotus_flavomarginatus_ant.jpg"
image1_media_type = "image/jpeg"
image1_data = base64.b64encode(httpx.get(image1_url).content).decode("utf-8")

image2_url = "https://upload.wikimedia.org/wikipedia/commons/b/b5/Iridescent.green.sweat.bee1.jpg"
image2_media_type = "image/jpeg"
image2_data = base64.b64encode(httpx.get(image2_url).content).decode("utf-8")

Para utilizar imagens ao fazer uma requisição de API, você pode fornecer imagens ao Claude como uma imagem codificada em base64 em blocos de conteúdo image. Aqui está um exemplo simples em Python mostrando como incluir uma imagem codificada em base64 em uma requisição da API Messages:

Python
import anthropic

client = anthropic.Anthropic()
message = client.messages.create(
    model="claude-3-5-sonnet-20240620",
    max_tokens=1024,
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": image1_media_type,
                        "data": image1_data,
                    },
                },
                {
                    "type": "text",
                    "text": "Descreva esta imagem."
                }
            ],
        }
    ],
)
print(message)

Veja exemplos da API Messages para mais exemplos de código e detalhes de parâmetros.


Limitações

Embora as capacidades de compreensão de imagem do Claude sejam de ponta, existem algumas limitações a serem consideradas:

  • Identificação de pessoas: O Claude não pode ser usado para identificar (ou seja, nomear) pessoas em imagens e se recusará a fazê-lo.
  • Precisão: O Claude pode alucinar ou cometer erros ao interpretar imagens de baixa qualidade, rotacionadas ou muito pequenas com menos de 200 pixels.
  • Raciocínio espacial: As habilidades de raciocínio espacial do Claude são limitadas. Ele pode ter dificuldades com tarefas que exigem localização precisa ou layouts, como ler um mostrador de relógio analógico ou descrever posições exatas de peças de xadrez.
  • Contagem: O Claude pode fornecer contagens aproximadas de objetos em uma imagem, mas pode não ser sempre precisamente exato, especialmente com um grande número de objetos pequenos.
  • Imagens geradas por IA: O Claude não sabe se uma imagem é gerada por IA e pode estar incorreto se questionado. Não confie nele para detectar imagens falsas ou sintéticas.
  • Conteúdo inapropriado: O Claude não processará imagens inapropriadas ou explícitas que violem nossa Política de Uso Aceitável.
  • Aplicações de saúde: Embora o Claude possa analisar imagens médicas gerais, ele não foi projetado para interpretar exames diagnósticos complexos, como tomografias computadorizadas ou ressonâncias magnéticas. As saídas do Claude não devem ser consideradas um substituto para aconselhamento ou diagnóstico médico profissional.

Sempre revise e verifique cuidadosamente as interpretações de imagem do Claude, especialmente para casos de uso de alto risco. Não use o Claude para tarefas que exijam precisão perfeita ou análise de imagens sensíveis sem supervisão humana.


Perguntas frequentes


Aprofunde-se na visão

Pronto para começar a construir com imagens usando o Claude? Aqui estão alguns recursos úteis:

Se você tiver outras dúvidas, sinta-se à vontade para entrar em contato com nossa equipe de suporte. Você também pode se juntar à nossa comunidade de desenvolvedores para se conectar com outros criadores e obter ajuda de especialistas da Anthropic.