Introduction
Chat compatible OpenAI pour Grok 4.3 : un tableau de messages qui porte des blocs texte et image, cinq niveaux d'effort de raisonnement dont none, et des réponses jusqu'à 900 000 tokens.
Grok 4.3 est le Grok rapide et fiable de xAI, publié comme un unique point de terminaison compatible OpenAI sur /v1/chat/completions. Une requête porte au plus 256 tours ordonnés et jusqu'à 1 000 000 de tokens, le contenu des images étant compté dans ce budget, et elle rend soit un objet chat.completion, soit un flux SSE de fragments. Depuis le 15 mai 2026, xAI redirige grok-4-fast, grok-4-1-fast, grok-4-0709, grok-code-fast-1 et grok-3 vers ce modèle : c'est donc sur lui que tournent désormais ces intégrations.
Fonctionnalités et points forts
none est un interrupteur, pas un cran plus bas
Le paramètre reasoning_effort prend none, low, medium, high et xhigh, et la valeur par défaut de ce modèle est low, pas high. Sur none, le modèle répond sans la moindre passe de délibération : une classification en oui ou non revient sous la forme d'un seul token, et non d'un paragraphe de raisonnement suivi du mot attendu. L'effort est facturé en tokens de sortie, le niveau choisi déplace donc à la fois la latence et l'addition. Parmi les modèles Grok publiés ici, seul celui-ci propose none.
La fenêtre fait 1 000 000 de tokens, la limite du long contexte reste à 200 000
Ce sont deux nombres différents, et c'est dans l'écart entre eux que se logent les surprises. La requête passe au tarif long contexte dès 200 000 tokens cumulés d'entrée et d'entrée en cache, soit un cinquième de ce que ce modèle accepte encore : il existe donc une large bande où le prompt tient largement et se facture déjà au tarif long. L'estimation affichée avant envoi nomme le palier dans lequel la requête tombe.
Paramètres de requête
| Paramètre | Obligatoire | Description |
|---|---|---|
messages | Oui | 256 tours au maximum. Le contenu peut mêler des blocs texte et |
reasoning_effort | Non | none, low, medium, high ou xhigh. low est la valeur par défaut et none saute entièrement la passe de délibération ; l’effort se dépense en tokens de sortie. |
max_tokens | Non | Limite la réponse visible à 900 000 ; la valeur par défaut de 4 096 tronque silencieusement une réponse longue. |
temperature | Non | 0 à 2, 0,7 par défaut. Mettez 0 pour comparer deux maquettes ou deux exécutions. |
top_p | Non | 0,01 à 1. Bougez celui-ci ou temperature, pas les deux ensemble. |
tools | Non | Jusqu’à 128 définitions de fonctions par requête. 128 éléments maximum |
parallel_tool_calls | Non | true ou false, true par défaut : le modèle peut demander plusieurs appels d’outils dans un même tour. Valeur par défaut: |
tool_choice | Non | auto, none, required, ou un objet qui nomme la fonction à appeler. |
response_format | Non | Réclamez un objet JSON quand la réponse est lue par du code plutôt que par un humain. |
Tarification
Entrée $1.25 / Sortie $2.50 par 1 million de tokens; Prompts de 200K tokens ou plus: Entrée $2.50 / Sortie $5
L’entrée totale inclut les tokens mis en cache. À partir de 200 000 tokens d’entrée, les tarifs de contexte long s’appliquent à toute l’entrée, à l’entrée en cache et à la sortie de la requête ; en dessous, les tarifs standard s’appliquent. La sortie inclut les tokens de raisonnement : au niveau none, faute de passe de délibération, il n’y en a aucun à payer. Vérifiez le budget avant l’envoi. Le montant bloqué au départ ne prévoit aucune économie de cache ; la régularisation rembourse ensuite la différence d’après l’usage mesuré.
Cas d’utilisation
Classer, extraire et aiguiller au niveau none
Étiqueter un ticket, sortir les champs d'une facture, décider quel modèle en aval reçoit la requête : none saute la passe de délibération, la réponse arrive aussi vite que le modèle sait écrire, et aucun token de raisonnement n'atterrit sur la facture. Associez-le à response_format pour récupérer un objet JSON que votre code lit directement, au lieu d'une phrase que quelqu'un devra découper.
Déplacer une intégration depuis un identifiant retiré
xAI a retiré grok-4-fast-reasoning, grok-4-fast-non-reasoning, grok-4-1-fast-reasoning, grok-4-1-fast-non-reasoning, grok-4-0709, grok-code-fast-1 et grok-3 le 15 mai 2026 et les redirige tous vers ce modèle. Pointez le client sur xai/grok-4.3, mettez reasoning_effort à low là où l'ancien identifiant était une variante reasoning et à none sinon. Le budget de contexte s'élargit au passage.
Un million de tokens de source en un seul tour
Un dépôt complet, une année de conversations d'assistance ou une pile de contrats tient dans une requête, la réponse n'est donc pas assemblée à partir de morceaux qui ne se sont jamais vus. Demandez que le texte soit cité clause par clause et relevez max_tokens quand la réponse elle-même doit être longue : la valeur par défaut de 4 096 tronque sans lever d'erreur.
Captures et traces d'appels dans le même message
Joignez un tableau de bord en panne comme bloc image_url avec detail high, collez la trace en texte dans le même tour utilisateur, puis demandez les causes classées. L'image et le journal arrivent ensemble, le modèle ne travaille donc sur votre transcription ni de l'une ni de l'autre, et les deux sont comptés dans la même fenêtre que le prompt.
Guide de prompt et conseils pratiques
Choisissez le niveau d'effort exprès
Décidez tâche par tâche au lieu de vous en remettre à la valeur par défaut : none pour la classification, l'extraction, l'aiguillage et la conversion de format ; low pour le suivi d'instructions ordinaire et les boucles d'outils ; medium, high ou xhigh quand la réponse doit vraiment être élaborée. L'effort se dépense en tokens de sortie, il pèse donc sur max_tokens autant que sur la facture, et une longue réponse en xhigh peut atteindre le plafond avant d'avoir fini.
Une requête à coller telle quelle
Le contenu d'un message utilisateur peut être une simple chaîne ou un tableau de blocs, et ce modèle en déclare deux types :
{"type": "text", "text": "..."}{"type": "image_url", "image_url": {"url": "...", "detail": "auto|low|high"}}
curl https://api.spicyapi.ai/v1/chat/completions \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "xai/grok-4.3",
"messages": [{"role": "user", "content": [
{"type": "text", "text": "Which panel shows the regression, and what changed?"},
{"type": "image_url", "image_url": {"url": "https://cdn.spicyapi.ai/models/examples/inputs/c681580c3c6a0b63.jpeg", "detail": "high"}},
{"type": "image_url", "image_url": {"url": "https://cdn.spicyapi.ai/models/examples/inputs/59f0bc6291069978.jpeg", "detail": "high"}}
]}],
"max_tokens": 4000
}'
Lisez la réponse, et le compteur
Le streaming est la façon pratique de consommer une longue génération : stream: true rend des événements chat.completion.chunk jusqu'à data: [DONE], et un appel sans streaming en xhigh sur une fenêtre pleine peut durer assez longtemps pour déclencher un délai d'attente côté client. Avant d'ajouter un document de plus, vérifiez si la requête a franchi 200 000 tokens d'entrée, car c'est là que commence le tarif long contexte. Les blocs fichier et PDF ne sont pas acceptés sur ce point de terminaison : une pièce jointe doit devenir du texte ou une image avant l'envoi.
Démarrage rapide de l’API
curl --fail-with-body -sN https://api.spicyapi.ai/v1/chat/completions \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"model": "xai/grok-4.3/chat",
"messages": [
{
"role": "user",
"content": "Summarise the following release notes into three bullet points."
}
],
"stream": true
}' \
| jq --unbuffered -Rrj 'select(startswith("data: ")) | .[6:] | select(. != "[DONE]") | fromjson | if .error then "\n[error] \(.error.message)\n" else (.choices[0].delta.content? // empty) end'
La référence API détaille l’authentification, le schéma complet, le polling et la gestion des erreurs.










