La familia de modelos Claude 3 viene con nuevas capacidades de visión que permiten a Claude entender y analizar imágenes, abriendo emocionantes posibilidades para la interacción multimodal. Con Claude, ahora puedes proporcionar entradas de texto e imágenes para enriquecer tus conversaciones y habilitar nuevos y poderosos casos de uso.

Modelos con capacidad de visión

No necesitas usar versiones especiales de nuestros modelos Claude 3 para acceder a las capacidades de visión de Claude. Todos los modelos Claude 3 son capaces de entender y analizar imágenes.

Esta guía te mostrará cómo trabajar con imágenes en Claude, incluyendo las mejores prácticas, ejemplos de código y limitaciones a tener en cuenta.

¡Prueba a chatear ahora con imágenes en claude.ai!


Primeros pasos

Actualmente, puedes utilizar las capacidades de visión de Claude de tres maneras:

  • Directamente a través de claude.ai en la ventana de chat. ¡Simplemente sube una imagen como lo harías con un archivo, o arrastra y suelta una imagen directamente en la ventana!
  • A través de nuestro Console Workbench. Si seleccionas un modelo que acepta imágenes (solo modelos Claude 3), aparecerá un botón para agregar imágenes en la parte superior derecha de cada bloque de mensaje User.
  • A través de una solicitud API - ver instrucciones a continuación.

Para esta guía, usaremos el SDK de Python de Anthropic, y las siguientes variables de ejemplo. Obtendremos imágenes de muestra de Wikipedia usando la biblioteca httpx, pero puedes usar cualquier fuente de imágenes que funcione para ti.

Python
import anthropic
import base64
import httpx

client = anthropic.Anthropic()

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 imágenes al realizar una solicitud API, puedes proporcionar imágenes a Claude como una imagen codificada en base64 en bloques de contenido image. Aquí hay un ejemplo simple en Python que muestra cómo incluir una imagen codificada en base64 en una solicitud de la API Messages:

Python

= client.messages.create(
    model="claude-3-opus-20240229",
    max_tokens=1024,
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": image1_media_type,
                        "data": image1_data,
                    },
                },
                {
                    "type": "text",
                    "text": "Describe esta imagen."
                }
            ],
        }
    ],
)
print(message)

Los formatos de imagen admitidos son JPEG, PNG, GIF y WebP. Consulta los ejemplos de la API Messages para obtener más ejemplos de código y detalles de los parámetros.


Tamaño de imagen

Para un rendimiento óptimo, recomendamos redimensionar tus imágenes antes de subirlas si es probable que excedan los límites de tamaño o tokens. Si el borde largo de tu imagen tiene más de 1568 píxeles, o tu imagen tiene más de ~1600 tokens, primero se reducirá, conservando la relación de aspecto, hasta que esté dentro de los límites de tamaño. Si tu imagen de entrada es demasiado grande y necesita ser redimensionada, aumentará la latencia de tiempo hasta el primer token, sin darte ningún rendimiento adicional del modelo. Las imágenes muy pequeñas de menos de 200 píxeles en cualquier borde pueden llevar a un rendimiento degradado.

Si quieres mejorar el tiempo hasta el primer token, recomendamos redimensionar tus imágenes a no más de 1.15 megapíxeles (y dentro de 1568 píxeles en ambas dimensiones).

Aquí hay una tabla de los tamaños máximos de imagen aceptados por nuestra API que no serán redimensionados para relaciones de aspecto comunes. Todas estas imágenes se aproximan a alrededor de ~1600 tokens y ~$4.80/1K imágenes (asumiendo el uso de Claude 3 Sonnet):

Relación de aspectoTamaño de imagen
1:11092x1092 px
3:4951x1268 px
2:3896x1344 px
9:16819x1456 px
1:2784x1568 px

Mejores prácticas para imágenes

Al proporcionar imágenes a Claude, ten en cuenta las siguientes pautas para obtener los mejores resultados:

  • Claridad de imagen: Asegúrate de que tus imágenes sean claras y no demasiado borrosas o pixeladas. Claude puede tener dificultades para interpretar con precisión imágenes poco claras o de baja calidad.
  • Ubicación de la imagen: Al igual que con la ubicación del documento-consulta, Claude funciona mejor cuando las imágenes vienen antes del texto. Las imágenes colocadas después del texto o interpoladas con texto aún funcionarán bien, pero si tu caso de uso lo permite, recomendamos una estructura de imagen-luego-texto. Consulta consejos de indicaciones de visión para obtener más detalles.
  • Texto: Si tu imagen contiene texto importante, asegúrate de que sea legible y no demasiado pequeño. Sin embargo, evita recortar el contexto visual clave solo para agrandar el texto.
  • Múltiples imágenes: Puedes incluir múltiples imágenes en una sola solicitud (hasta 5 para claude.ai y 20 para solicitudes API). Claude analizará todas las imágenes proporcionadas al formular su respuesta. Esto puede ser útil para comparar o contrastar imágenes.

Consulta las limitaciones para obtener más detalles y pautas.


Consejos de indicaciones

Muchas de las técnicas de indicaciones que funcionan bien para las interacciones basadas en texto con Claude también se pueden aplicar a las indicaciones basadas en imágenes. Consulta nuestro libro de cocina multimodal para obtener un recorrido por las técnicas y casos de uso de procesamiento de imágenes, completo con técnicas y estrategias de indicaciones adjuntas.

A continuación se muestran algunos ejemplos de estructuras de indicaciones de mejores prácticas que involucran imágenes. En general, es mejor colocar las imágenes antes en la indicación que las preguntas sobre ellas o las instrucciones para las tareas que las usan, y en situaciones donde hay múltiples imágenes, presentar cada imagen con Imagen 1: e Imagen 2: y así sucesivamente. No necesitas nuevas líneas entre imágenes o entre imágenes y la indicación.

1. Ejemplo: Una imagen

Aquí está la estructura de la indicación:

RolContenido
User[Imagen] Describe esta imagen.

Aquí está la llamada API correspondiente:

Python
message = client.messages.create(
    model="claude-3-opus-20240229",
    max_tokens=1024,
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": image1_media_type,
                        "data": image1_data,
                    },
                },
                {
                    "type": "text",
                    "text": "Describe esta imagen."
                }
            ],
        }
    ],
)

2. Ejemplo: Múltiples imágenes

Aquí está la estructura de la indicación:

RolContenido
UserImagen 1: [Imagen 1] Imagen 2: [Imagen 2] ¿En qué se diferencian estas imágenes?

Aquí está la llamada API correspondiente:

Python
message = client.messages.create(
    model="claude-3-opus-20240229",
    max_tokens=1024,
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "text",
                    "text": "Imagen 1:"
                },
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": image1_media_type,
                        "data": image1_data,
                    },
                },
                {
                    "type": "text",
                    "text": "Imagen 2:"
                },
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": image2_media_type,
                        "data": image2_data,
                    },
                },
                {
                    "type": "text",
                    "text": "¿En qué se diferencian estas imágenes?"
                }
            ],
        }
    ],
)

3. Ejemplo: Múltiples imágenes con una indicación de sistema

Aquí está la estructura de la indicación:

Contenido
SystemResponde solo en español.
UserImagen 1: [Imagen 1] Imagen 2: [Imagen 2] ¿En qué se diferencian estas imágenes?

Aquí está la llamada API correspondiente:

Python
message = client.messages.create(
    model="claude-3-opus-20240229",
    max_tokens=1024,
    system="Responde solo en español.",
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "text",
                    "text": "Imagen 1:"
                },
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": image1_media_type,
                        "data": image1_data,
                    },
                },
                {
                    "type": "text",
                    "text": "Imagen 2:"
                },
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": image2_media_type,
                        "data": image2_data,
                    },
                },
                {
                    "type": "text",
                    "text": "¿En qué se diferencian estas imágenes?"
                }
            ],
        }
    ],
)

4. Ejemplo: Cuatro imágenes en dos turnos de conversación

Las capacidades de visión de Claude realmente brillan en conversaciones multimodales que mezclan imágenes y texto. Puedes mantener intercambios extensos de ida y vuelta con Claude, agregando nuevas imágenes o preguntas de seguimiento en cualquier momento. Esto permite flujos de trabajo poderosos para el análisis iterativo de imágenes, la comparación o la combinación de imágenes con otros conocimientos.

Aquí hay un ejemplo de estructura de indicación:

RolContenido
UserImagen 1: [Imagen 1] Imagen 2: [Imagen 2] ¿En qué se diferencian estas imágenes?
Assistant[Respuesta de Claude]
UserImagen 1: [Imagen 3] Imagen 2: [Imagen 4] ¿Estas imágenes son similares a las dos primeras?
Assistant[Respuesta de Claude]

Al usar la API, simplemente inserta nuevas imágenes en la matriz de Messages en el rol user como parte de cualquier estructura estándar de conversación de múltiples turnos.


Costos de imágenes

Cada imagen que incluyas en una solicitud a Claude cuenta para tu uso de tokens. Para calcular el costo aproximado, multiplica el número aproximado de tokens de imagen por el precio por token del modelo que estás usando. Puedes encontrar detalles de precios de modelos en nuestra página de precios.

Suponiendo que tu imagen no necesite ser redimensionada, puedes estimar el número de tokens utilizados a través de este simple algoritmo:

tokens = (ancho px * alto px)/750

Aquí hay algunos ejemplos de tokenización aproximada y costos para diferentes tamaños de imagen dentro de las restricciones de tamaño de nuestra API, asumiendo el uso de Claude 3 Sonnet a $3 por millón de tokens de entrada:

Tamaño de imagen# de TokensCosto / imagenCosto / 1K imágenes
200x200 px(0.04 megapíxeles)~54~$0.00016~$0.16
1000x1000 px(1 megapíxel)~1334~$0.004~$4.00
1092x1092 px(1.19 megapíxeles)~1590~$0.0048~$4.80

Limitaciones

Si bien las capacidades de comprensión de imágenes de Claude son de vanguardia, hay algunas limitaciones a tener en cuenta:

  • Identificación de personas: Claude no se puede usar para identificar (es decir, nombrar) personas en imágenes y se negará a hacerlo.
  • Precisión: Claude puede alucinar o cometer errores al interpretar imágenes de baja calidad, rotadas o muy pequeñas de menos de 200 píxeles.
  • Razonamiento espacial: Las habilidades de razonamiento espacial de Claude son limitadas. Puede tener dificultades con tareas que requieren una localización o diseños precisos, como leer la esfera de un reloj analógico o describir las posiciones exactas de las piezas de ajedrez.
  • Conteo: Claude puede dar recuentos aproximados de objetos en una imagen, pero puede no ser siempre precisamente exacto, especialmente con grandes cantidades de objetos pequeños.
  • Imágenes generadas por IA: Claude no sabe si una imagen es generada por IA y puede estar equivocado si se le pregunta. No confíes en él para detectar imágenes falsas o sintéticas.
  • Contenido inapropiado: Claude no procesará imágenes inapropiadas o explícitas que violen nuestra Política de Uso Aceptable.
  • Aplicaciones de atención médica: Si bien Claude puede analizar imágenes médicas generales, no está diseñado para interpretar escaneos de diagnóstico complejos como tomografías computarizadas o resonancias magnéticas. Los resultados de Claude no deben considerarse un sustituto del asesoramiento o diagnóstico médico profesional.

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 una precisión perfecta o un análisis de imágenes sensible sin supervisión humana.


Preguntas frecuentes

¿Qué tipos de archivos de imagen admite Claude?

Actualmente, Claude admite los formatos de imagen JPEG, PNG, GIF y WebP, específicamente image/jpeg, image/png, image/gif y image/webp.

¿Puede Claude leer URLs de imágenes?

Claude no puede leer URLs de imágenes en ninguna interfaz, incluida claude.ai. Nuestra API actualmente no admite agregar URLs en los bloques text o image. Agregar URLs de imágenes (o URLs de cualquier tipo) en el bloque text podría hacer que Claude alucine, ya que actualmente Claude no puede recuperar información de esa URL.

¿Hay un límite para el tamaño del archivo de imagen que puedo subir?

Sí, el tamaño máximo permitido de archivo de imagen es de 5MB por imagen (10MB por imagen en claude.ai). Las imágenes de más de 5MB serán rechazadas y devolverán un error al usar nuestra API.

¿Cuántas imágenes puedo incluir en una solicitud?

Puedes incluir hasta 20 imágenes en una sola solicitud a través de la API Messages. Puedes incluir hasta 5 imágenes por turno en claude.ai. Los recuentos de imágenes por encima de ese límite serán rechazados y devolverán un error al usar nuestra API.

¿Claude lee los metadatos de las imágenes?

No, Claude no analiza ni recibe ningún metadato de las imágenes que se le pasan.

¿Puedo eliminar las imágenes que he subido?

No. Además, las cargas de imágenes son efímeras y no se almacenan más allá de la duración de la solicitud API. Las imágenes cargadas se eliminan automáticamente después de que se hayan procesado.

¿Dónde puedo encontrar más detalles sobre privacidad de datos y seguridad para cargas de imágenes?

Consulta nuestra página de política de privacidad para obtener información sobre cómo manejamos las imágenes cargadas y otros datos. No usamos las imágenes cargadas para entrenar nuestros modelos.

¿Qué debo hacer si la interpretación de la imagen de Claude parece incorrecta?

Si obtienes una interpretación de imagen de Claude que parece incorrecta, primero verifica que la imagen sea clara, de alta calidad y esté correctamente orientada. Si el problema persiste, intenta mejorar los resultados empleando técnicas de ingeniería de indicaciones. Si el problema no se puede resolver, háganoslo saber marcando el resultado preocupante directamente en claude.ai a través de la interfaz de pulgar hacia arriba / abajo o contactando a nuestro equipo de soporte. ¡Tu aporte nos ayuda a mejorar!

¿Puede Claude generar, producir, editar, manipular o crear imágenes?

No, Claude es solo un modelo de comprensión de imágenes. Puede interpretar y analizar imágenes, pero no puede generar, producir, editar, manipular o crear imágenes.


Profundiza en la visión

¿Listo para comenzar a construir con imágenes usando Claude? Aquí hay algunos recursos útiles:

Si tienes alguna otra pregunta, no dudes en comunicarte con nuestro equipo de soporte. También puedes unirte a nuestra comunidad de desarrolladores para conectarte con otros creadores y obtener ayuda de expertos de Anthropic.

¡Estamos emocionados de ver lo que creas con las poderosas nuevas capacidades de visión de Claude!