Prompts Multi-Modaux
Texte et images dans un même prompt
Les modèles grok-4 et supérieur sont capables d’analyser des images en plus du texte. Cette capacité multimodale ouvre un large éventail de possibilités : description d’images, OCR, analyse de graphiques, comparaison visuelle, et bien d’autres.
Maîtriser les prompts multimodaux vous permet d’utiliser Grok comme un assistant visuel en plus d’un assistant textuel.
Envoyer une image à Grok
Avec l’API Responses (endpoint principal), les images sont intégrées dans le champ input sous forme d’objets typés :
{
"model": "grok-4",
"input": [
{"type": "input_image", "image_url": "https://exemple.com/dashboard.png"},
{"type": "input_text", "text": "Analyse ce tableau de bord et identifie les métriques en baisse."}
]
}
Avec l’API Chat Completions (endpoint legacy), la structure est légèrement différente :
{
"model": "grok-4",
"messages": [{
"role": "user",
"content": [
{"type": "image_url", "image_url": {"url": "https://exemple.com/dashboard.png", "detail": "high"}},
{"type": "text", "text": "Analyse ce tableau de bord et identifie les métriques en baisse."}
]
}]
}
Le paramètre detail : contrôler la précision
Le niveau de détail influence la profondeur de l’analyse et le nombre de tokens consommés :
detail: low
L’image est traitée rapidement avec une résolution réduite. Utilisez ce mode pour :
- Classifier des images (photo, illustration, schéma)
- Décrire le contenu général
- Identifier des objets principaux
- Trier des images par catégorie
Consommation : moins de tokens, réponse plus rapide.
detail: high
L’image est analysée en haute résolution. Utilisez ce mode pour :
- Lire du texte dans une image (OCR)
- Analyser les détails d’un graphique ou d’un diagramme
- Comparer des éléments visuels précis
- Détecter des défauts ou anomalies
Consommation : plus de tokens (entre 256 et 1 792 selon la taille), réponse plus lente.
detail: auto
Le modèle choisit lui-même le niveau approprié. C’est le comportement par défaut.
Sources d’images
URL directe
La méthode la plus simple : fournir un lien HTTPS vers l’image.
{"type": "input_image", "image_url": "https://exemple.com/photo.jpg"}
Base64 (data URI)
Pour les images qui ne sont pas hébergées en ligne, encodez-les en base64 :
{"type": "input_image", "image_url": "data:image/png;base64,iVBORw0KGgo..."}
Cette méthode est utile pour les captures d’écran, les images générées programmatiquement, ou les images issues d’un pipeline de traitement.
Cas d’usage concrets
OCR et extraction de texte
{
"input": [
{"type": "input_image", "image_url": "https://exemple.com/facture.jpg"},
{"type": "input_text", "text": "Extrais de cette facture : le numéro de facture, la date, le montant HT, la TVA, et le montant TTC. Retourne le résultat en JSON."}
]
}
Analyse de graphiques
{
"input": [
{"type": "input_image", "image_url": "https://exemple.com/graphique-ventes.png"},
{"type": "input_text", "text": "Ce graphique montre nos ventes mensuelles sur 12 mois. Identifie les tendances, les pics, et les creux. Suggère des explications possibles pour les variations."}
]
}
Comparaison d’images
{
"input": [
{"type": "input_text", "text": "Compare ces deux versions de notre logo :"},
{"type": "input_image", "image_url": "https://exemple.com/logo-v1.png"},
{"type": "input_image", "image_url": "https://exemple.com/logo-v2.png"},
{"type": "input_text", "text": "Identifie les différences et recommande la meilleure version pour un usage web."}
]
}
Analyse d’interface utilisateur
{
"input": [
{"type": "input_image", "image_url": "https://exemple.com/mockup.png"},
{"type": "input_text", "text": "Évalue cette maquette d'interface mobile selon les critères suivants : lisibilité, hiérarchie visuelle, accessibilité, cohérence. Note chaque critère sur 10."}
]
}
Contraintes techniques à connaître
- Taille maximale : 20 Mo par image
- Formats : JPG, JPEG, PNG uniquement (pas de GIF, SVG, ou WebP)
- Pas de limite sur le nombre d’images par requête
- Conseil xAI : utilisez
store: falsedans l’API Responses lorsque vous travaillez avec des images, pour éviter les erreurs liées au stockage de l’historique
Rédiger un bon prompt multimodal
Les mêmes principes de clarté s’appliquent, avec des spécificités pour les images :
- Annoncez l’image : dites au modèle ce qu’il va voir avant l’image
- Soyez précis sur la tâche : “Décris cette image” est vague ; “Extrais les données du graphique en barres et retourne-les en CSV” est précis
- Guidez l’attention : si seule une partie de l’image vous intéresse, indiquez-le (“Concentre-toi sur le coin supérieur droit”)
- Spécifiez le format de sortie : comme pour les prompts textuels, précisez si vous attendez du JSON, une liste, un tableau
Mise en pratique
Prenez une capture d’écran d’un tableau de bord, d’un graphique, ou d’un document, et envoyez-la à Grok avec une demande précise. Testez avec detail: low puis detail: high et comparez la qualité et la vitesse des réponses.
Points clés à retenir
- Les modèles grok-4+ analysent les images en complément du texte
- Le paramètre
detail(low, auto, high) contrôle la profondeur d’analyse et le coût en tokens - Les images peuvent être fournies par URL ou en base64
- Annoncez l’image, soyez précis sur la tâche, et spécifiez le format de sortie
- Utilisez
store: falsepour éviter les problèmes de stockage avec les images - Les formats acceptés sont limités à JPG, JPEG et PNG, avec une taille maximale de 20 Mo