Ce guide décrit comment envoyer des images à Claude, les limites et les coûts qui s'appliquent, et où trouver des conseils pour les flux de travail basés sur les coordonnées.
Utilisez les capacités de vision de Claude via :
Sur l'API, fournissez des images à Claude sous forme de blocs de contenu image en utilisant l'un des trois types de source :
file_id renvoyé par l'API Files (téléversez une fois, référencez plusieurs fois)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://upload.wikimedia.org/wikipedia/commons/a/a7/Camponotus_flavomarginatus_ant.jpg",
},
},
{"type": "text", "text": "Describe this image."},
],
}
],
)
print(message)Pour les images que vous utiliserez de manière répétée ou lorsque vous souhaitez éviter la surcharge liée à l'encodage, utilisez l'API Files. Téléversez l'image une fois, puis référencez le file_id renvoyé dans les messages suivants au lieu de renvoyer les données base64.
client = anthropic.Anthropic()
# Téléverser le fichier image
with open("image.jpg", "rb") as f:
file_upload = client.beta.files.upload(file=("image.jpg", f, "image/jpeg"))
# Utiliser le fichier téléversé dans un message
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)Consultez les exemples de l'API Messages pour plus d'exemples de code et de détails sur les paramètres.
Vous pouvez inclure plusieurs images dans une seule requête, et Claude les analyse conjointement. Cela est utile pour comparer des images, poser des questions sur les différences, ou travailler avec une séquence telle que les pages d'un document. Lorsque vous envoyez plusieurs images, introduisez chacune d'elles avec une courte étiquette textuelle (Image 1:, Image 2:, etc.) afin de pouvoir y faire référence par leur nom dans votre prompt et dans les tours suivants.
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)Dans une conversation multi-tours, ajoutez de nouvelles images dans les tours user ultérieurs de la même manière. Claude a accès à toutes les images des tours précédents, donc les questions de suivi telles que « Sont-elles similaires aux deux premières ? » fonctionnent sans inclure à nouveau les images précédentes dans le contenu du nouveau tour.
Le nombre maximal d'images par message ou par requête est de :
Les dimensions maximales par image sont de 8000x8000 px.
Si une seule requête API contient plus de 20 images, une limite de dimension par image plus stricte s'applique. Sur Amazon Bedrock et Google Cloud, les blocs de documents tels que les PDF comptent également dans ce seuil. Les images dépassant la limite plus stricte sont rejetées avec une erreur invalid_request_error dont le message fait référence aux « many-image requests » et indique la limite actuelle en pixels. Pour rester sous la limite sur toutes les plateformes, redimensionnez chaque image de sorte qu'aucune dimension ne dépasse 2000 px, ou limitez la requête à 20 blocs d'images et de documents ou moins.
La taille maximale par image est de :
Claude prend en charge les images JPEG, PNG, GIF et WebP (image/jpeg, image/png, image/gif, image/webp). Les animations ne sont pas prises en charge, et seule la première image est utilisée.
Claude visualise les images en « patches » (fragments) plutôt qu'en pixels. Chaque patch est un bloc de 28×28 pixels de l'image, appelé token visuel. Une image coûte donc ⌈width / 28⌉ × ⌈height / 28⌉ tokens visuels.
Chaque modèle a une résolution d'image native maximale, exprimée sous forme de limite de bord long et de limite de tokens visuels. Les images dépassant l'une ou l'autre de ces limites sont réduites avant le traitement ; consultez Comment Claude redimensionne et remplit les images pour la règle exacte.
| Niveau de résolution | Modèles | Bord long max | Tokens visuels max |
|---|---|---|---|
| Haute résolution | Claude 4.7 et modèles ultérieurs | 2576 px | 4784 |
| Standard | Tous les autres modèles | 1568 px | 1568 |
La prise en charge de la haute résolution est automatique sur les modèles listés et ne nécessite aucun en-tête bêta ni activation côté client.
Le tableau suivant montre la résolution réduite et le coût en tokens visuels pour plusieurs tailles d'image sur chaque niveau :
| Taille de l'image | Niveau standard : réduite à | Niveau standard : tokens | Niveau haute résolution : réduite à | Niveau haute résolution : tokens |
|---|---|---|---|---|
| 200x200 px (0,04 mégapixel) | Non redimensionnée | 64 | Non redimensionnée | 64 |
| 1000x1000 px (1 mégapixel) | Non redimensionnée | 1296 | Non redimensionnée | 1296 |
| 1092x1092 px (1,19 mégapixel) | Non redimensionnée | 1521 | Non redimensionnée | 1521 |
| 1920x1080 px (2,07 mégapixels) | 1456x819 px | 1560 | Non redimensionnée | 2691 |
| 2000x1500 px (3 mégapixels) | 1269x952 px | 1564 | Non redimensionnée | 3888 |
| 3840x2160 px (8,29 mégapixels) | 1456x819 px | 1560 | 2576x1449 px | 4784 |
Lorsqu'une image est réduite, Claude la met à l'échelle à la plus grande taille qui respecte les limites du niveau tout en préservant son rapport d'aspect. Cela plafonne le coût en tokens. Pour la règle précise et une implémentation de référence, consultez Comment Claude redimensionne et remplit les images.
Pour estimer le coût, multipliez le nombre de tokens par le prix par token du modèle que vous utilisez. Par exemple, au tarif de 1 $ par million de tokens d'entrée de Claude Haiku 4.5 (niveau standard), l'image de 1000×1000 coûte environ $1,30 par millier d'images. Au tarif de 5 $ par million de Claude Opus 5 (niveau haute résolution), la même image coûte environ $6,48 par millier et l'image 4K environ $23,92 par millier.
Les images haute résolution peuvent utiliser jusqu'à environ trois fois plus de tokens visuels que la même image sur un modèle de niveau standard. Si vous n'avez pas besoin de la fidélité supplémentaire qu'offre la haute résolution pour l'utilisation de l'ordinateur, la compréhension de captures d'écran et les documents denses, sous-échantillonnez les images avant de les envoyer afin de contrôler les coûts en tokens. Pour minimiser la latence et simplifier les flux de travail basés sur les coordonnées, privilégiez le redimensionnement des images avant de les téléverser.
Lorsque vous fournissez des images à Claude, gardez à l'esprit les points suivants pour obtenir les meilleurs résultats :
Pour les boîtes englobantes, les points et les coordonnées en pixels, consultez Coordonnées et boîtes englobantes. Claude renvoie des coordonnées absolues en pixels relatives à l'image qu'il voit après redimensionnement ; ce guide explique comment Claude redimensionne et remplit les images et comment pré-redimensionner ou remettre à l'échelle afin que les coordonnées correspondent à votre image d'origine.
Bien que les capacités de compréhension d'images de Claude soient à la pointe de la technologie, il existe certaines limitations à connaître :
Examinez et vérifiez toujours attentivement les interprétations d'images de Claude, en particulier pour les cas d'usage à enjeux élevés. N'utilisez pas Claude pour des tâches nécessitant une précision parfaite ou une analyse d'images sensibles sans supervision humaine.
Obtenez des conseils et des techniques de bonnes pratiques pour des tâches telles que l'interprétation de graphiques et l'extraction de contenu à partir de formulaires.
Consultez la documentation de l'API Messages, y compris des exemples d'appels API impliquant des images.
Was this page helpful?