Esta guía describe cómo enviar imágenes a Claude, los límites y costos que aplican, y dónde encontrar orientación para flujos de trabajo basados en coordenadas.
Usa las capacidades de visión de Claude a través de:
En la API, proporciona imágenes a Claude como bloques de contenido image usando uno de tres tipos de fuente:
file_id devuelto por la Files API (sube una vez, referencia muchas veces)image1_data = "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR4nGP4z8AAAAMBAQDJ/pLvAAAAAElFTkSuQmCC"
image1_media_type = "image/png"
client = anthropic.Anthropic()
message = client.messages.create(
model="claude-opus-5",
max_tokens=1024,
messages=[
{
"role": "user",
"content": [
{
"type": "image",
"source": {
"type": "base64",
"media_type": image1_media_type,
"data": image1_data,
},
},
{"type": "text", "text": "Describe this image."},
],
}
],
)
print(message)client = anthropic.Anthropic()
message = client.messages.create(
model="claude-opus-5",
max_tokens=1024,
messages=[
{
"role": "user",
"content": [
{
"type": "image",
"source": {
"type": "url",
"url": "https://platform.claude.com/docs/images/vision-example.jpg",
},
},
{"type": "text", "text": "Describe this image."},
],
}
],
)
print(message)Para imágenes que usarás repetidamente o cuando quieras evitar la sobrecarga de codificación, usa la Files API. Sube la imagen una vez, luego referencia el file_id devuelto en mensajes posteriores en lugar de reenviar datos en base64.
client = anthropic.Anthropic()
# Sube el archivo de imagen
with open("vision-example.jpg", "rb") as f:
file_upload = client.beta.files.upload(file=("vision-example.jpg", f, "image/jpeg"))
# Usa el archivo subido en un mensaje
message = client.beta.messages.create(
model="claude-opus-5",
max_tokens=1024,
betas=["files-api-2025-04-14"],
messages=[
{
"role": "user",
"content": [
{
"type": "image",
"source": {"type": "file", "file_id": file_upload.id},
},
{"type": "text", "text": "Describe this image."},
],
}
],
)
print(message.content)Consulta ejemplos de la Messages API para más código de ejemplo y detalles de parámetros.
Puedes incluir múltiples imágenes en una sola solicitud, y Claude las analiza conjuntamente. Esto es útil para comparar imágenes, preguntar sobre diferencias o trabajar con una secuencia como páginas de un documento. Al enviar varias imágenes, introduce cada una con una etiqueta de texto corta (Image 1:, Image 2:, y así sucesivamente) para que puedas referirte a ellas por nombre en tu prompt y en turnos posteriores.
image1_data = "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR4nGP4z8AAAAMBAQDJ/pLvAAAAAElFTkSuQmCC"
image2_data = "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVR4nGNgYPgPAAEDAQAIicLsAAAAAElFTkSuQmCC"
client = anthropic.Anthropic()
message = client.messages.create(
model="claude-opus-5",
max_tokens=1024,
messages=[
{
"role": "user",
"content": [
{"type": "text", "text": "Image 1:"},
{
"type": "image",
"source": {
"type": "base64",
"media_type": "image/png",
"data": image1_data,
},
},
{"type": "text", "text": "Image 2:"},
{
"type": "image",
"source": {
"type": "base64",
"media_type": "image/png",
"data": image2_data,
},
},
{"type": "text", "text": "How are these images different?"},
],
}
],
)
print(message)En una conversación de múltiples turnos, agrega nuevas imágenes en turnos user posteriores de la misma manera. Claude tiene acceso a cada imagen de turnos anteriores, por lo que preguntas de seguimiento como "¿Son estas similares a las dos primeras?" funcionan sin incluir las imágenes anteriores nuevamente en el contenido del nuevo turno.
El número máximo de imágenes por mensaje o solicitud es:
Las dimensiones máximas por imagen son 8000x8000 px.
Si una sola solicitud de API contiene más de 20 imágenes, se aplica un límite de dimensión por imagen más estricto. En Amazon Bedrock y Google Cloud, los bloques de documentos como PDFs también cuentan para este umbral. Las imágenes que exceden el límite más estricto se rechazan con un invalid_request_error cuyo mensaje hace referencia a "many-image requests" e indica el límite actual en píxeles. Para mantenerte bajo el límite en todas las plataformas, redimensiona cada imagen para que ninguna dimensión exceda 2000 px, o mantén la solicitud en 20 o menos bloques de imagen y documento.
El tamaño máximo por imagen es:
Claude admite imágenes JPEG, PNG, GIF y WebP (image/jpeg, image/png, image/gif, image/webp). Las animaciones no son compatibles, y solo se usa el primer fotograma.
Claude ve las imágenes en parches en lugar de píxeles. Cada parche es un bloque de 28×28 píxeles de la imagen, denominado token visual. Una imagen, por lo tanto, cuesta ⌈width / 28⌉ × ⌈height / 28⌉ tokens visuales.
Cada modelo tiene una resolución de imagen nativa máxima, expresada como un límite de borde largo y un límite de tokens visuales. Las imágenes más grandes que cualquiera de los límites se reducen antes del procesamiento; consulta Cómo Claude redimensiona y rellena imágenes para la regla exacta.
| Nivel de resolución | Modelos | Borde largo máx. | Tokens visuales máx. |
|---|---|---|---|
| Alta resolución | Claude 4.7 y modelos posteriores | 2576 px | 4784 |
| Estándar | Todos los demás modelos | 1568 px | 1568 |
El soporte de alta resolución es automático en los modelos listados y no requiere encabezado beta ni activación del lado del cliente.
La siguiente tabla muestra la resolución reducida y el costo de tokens visuales para varios tamaños de imagen en cada nivel:
| Tamaño de imagen | Nivel estándar: reducida a | Nivel estándar: tokens | Nivel de alta resolución: reducida a | Nivel de alta resolución: tokens |
|---|---|---|---|---|
| 200x200 px (0.04 megapíxeles) | No redimensionada | 64 | No redimensionada | 64 |
| 1000x1000 px (1 megapíxel) | No redimensionada | 1296 | No redimensionada | 1296 |
| 1092x1092 px (1.19 megapíxeles) | No redimensionada | 1521 | No redimensionada | 1521 |
| 1920x1080 px (2.07 megapíxeles) | 1456x819 px | 1560 | No redimensionada | 2691 |
| 2000x1500 px (3 megapíxeles) | 1269x952 px | 1564 | No redimensionada | 3888 |
| 3840x2160 px (8.29 megapíxeles) | 1456x819 px | 1560 | 2576x1449 px | 4784 |
Cuando una imagen se reduce, Claude la escala al tamaño más grande que se ajuste a los límites del nivel mientras preserva su relación de aspecto. Esto limita el costo de tokens. Para la regla precisa y una implementación de referencia, consulta Cómo Claude redimensiona y rellena imágenes.
Para estimar el costo, multiplica el conteo de tokens por el precio por token del modelo que estás usando. Por ejemplo, a $1 USD por millón de tokens de entrada de Claude Haiku 4.5 (nivel estándar), la imagen de 1000×1000 cuesta aproximadamente $1.30 USD por cada mil imágenes. A $5 USD por millón de Claude Opus 5 (nivel de alta resolución), la misma imagen cuesta aproximadamente $6.48 USD por cada mil y la imagen 4K aproximadamente $23.92 USD por cada mil.
Las imágenes de alta resolución pueden usar hasta aproximadamente tres veces más tokens visuales que la misma imagen en un modelo de nivel estándar. Si no necesitas la fidelidad adicional que la alta resolución proporciona para uso de computadora, comprensión de capturas de pantalla y documentos densos, reduce el muestreo de las imágenes antes de enviarlas para controlar los costos de tokens. Para minimizar la latencia y simplificar los flujos de trabajo basados en coordenadas, prefiere redimensionar las imágenes antes de subirlas.
Al proporcionar imágenes a Claude, ten en cuenta lo siguiente para obtener mejores resultados:
Para "bounding boxes" (cuadros delimitadores), puntos y coordenadas de píxeles, consulta Coordenadas y cuadros delimitadores. Claude devuelve coordenadas de píxeles absolutas relativas a la imagen que ve después del redimensionamiento; esa guía cubre cómo Claude redimensiona y rellena imágenes y cómo redimensionar previamente o reescalar para que las coordenadas se alineen con tu imagen original.
Aunque las capacidades de comprensión de imágenes de Claude son de vanguardia, hay algunas limitaciones que debes tener en cuenta:
Siempre revisa y verifica cuidadosamente las interpretaciones de imágenes de Claude, especialmente para casos de uso de alto riesgo. No uses Claude para tareas que requieran precisión perfecta o análisis de imágenes sensibles sin supervisión humana.
Obtén consejos y técnicas de mejores prácticas para tareas como interpretar gráficos y extraer contenido de formularios.
Consulta la documentación de la Messages API, incluyendo ejemplos de llamadas a la API que involucran imágenes.
Was this page helpful?