Le Format du Contenu
Les deux formats d’entrée de Grok
Lorsque vous envoyez un message à Grok, le champ content de chaque message peut prendre deux formes distinctes. Comprendre cette dualité est important car elle détermine ce que vous pouvez transmettre au modèle : du texte seul, ou un mélange de texte et d’images.
La chaîne de texte simple
La forme la plus directe : le contenu est une simple chaîne de caractères. C’est ce que vous utiliserez dans la majorité de vos interactions textuelles.
{
"role": "user",
"content": "Explique les avantages du langage Rust par rapport au C++"
}
Ce format est suffisant pour toutes les tâches purement textuelles : questions, instructions, fourniture de données, demandes de génération. C’est le format recommandé quand vous n’avez pas besoin d’intégrer des éléments visuels.
Le tableau d’objets typés
Pour les requêtes multimodales (texte + images), Grok accepte un tableau d’objets où chaque élément porte un type qui indique sa nature.
Format Chat Completions (endpoint legacy)
{
"role": "user",
"content": [
{"type": "text", "text": "Décris cette interface utilisateur et suggère des améliorations"},
{"type": "image_url", "image_url": {"url": "https://exemple.com/screenshot.png", "detail": "high"}}
]
}
Format Responses (endpoint principal)
{
"input": [
{"type": "input_text", "text": "Analyse ce graphique et extrais les tendances principales"},
{"type": "input_image", "image_url": "https://exemple.com/graphique.png"}
]
}
Notez la différence de nommage entre les deux endpoints : text / image_url pour Chat Completions, input_text / input_image pour Responses.
Combiner texte et images
Le tableau d’objets vous permet de mixer librement texte et images dans n’importe quel ordre. Vous pouvez envoyer plusieurs images dans la même requête, accompagnées de texte avant, après, ou entre les images.
{
"role": "user",
"content": [
{"type": "text", "text": "Compare ces deux maquettes d'interface :"},
{"type": "image_url", "image_url": {"url": "https://exemple.com/maquette-v1.png"}},
{"type": "text", "text": "Version 1 ci-dessus, version 2 ci-dessous :"},
{"type": "image_url", "image_url": {"url": "https://exemple.com/maquette-v2.png"}},
{"type": "text", "text": "Identifie les différences principales et recommande la meilleure version."}
]
}
Sources d’images acceptées
Grok accepte les images de deux manières :
- URL directe : un lien HTTPS vers l’image hébergée en ligne
- Base64 encodé : l’image embarquée directement dans la requête sous forme de data URI
{"type": "image_url", "image_url": {"url": "data:image/jpeg;base64,/9j/4AAQ..."}}
Le format base64 est utile quand vos images ne sont pas hébergées en ligne (captures d’écran locales, images générées par votre application).
Le paramètre detail pour les images
Chaque image peut recevoir un paramètre detail qui contrôle le niveau d’analyse :
- auto : le modèle choisit lui-même (comportement par défaut)
- low : analyse rapide et économique, consomme moins de tokens
- high : analyse détaillée, consomme plus de tokens mais capture les détails fins
{"type": "image_url", "image_url": {"url": "https://...", "detail": "low"}}
Utilisez low pour les tâches simples (classification, description générale) et high pour les analyses précises (OCR, détection de détails, lecture de graphiques).
Contraintes techniques
Gardez en tête ces limites lorsque vous travaillez avec des images :
- Taille maximale : 20 Mo par image
- Formats acceptés : JPG, JPEG, PNG uniquement
- Pas de limite de nombre d’images par requête
- Modèles compatibles : grok-4 et supérieur
- Les images consomment entre 256 et 1 792 tokens selon leur taille et le niveau de détail
Mise en pratique
Testez les deux formats avec une tâche simple :
Format texte simple :
{"role": "user", "content": "Quels sont les 5 principes fondamentaux du design UX ?"}
Format tableau (texte seul, mais structuré) :
{
"role": "user",
"content": [
{"type": "text", "text": "Contexte : je conçois une application mobile de livraison de repas."},
{"type": "text", "text": "Question : quels sont les 5 principes UX les plus importants pour ce type d'application ?"}
]
}
Même sans image, le format tableau vous permet de séparer clairement le contexte de la question, ce qui peut améliorer la pertinence de la réponse.
Points clés à retenir
- Le contenu peut être une chaîne simple (texte pur) ou un tableau d’objets (multimodal)
- Le format tableau permet de mixer texte et images dans n’importe quel ordre
- Deux formats de nommage existent selon l’endpoint : Chat Completions vs Responses
- Le paramètre
detailcontrôle la profondeur d’analyse des images (low, auto, high) - Les images consomment des tokens : adaptez le niveau de détail à votre besoin
- Le format base64 permet d’envoyer des images sans les héberger en ligne