Endpoint /v1/images/generations : premiers pas
Générer votre première image avec l’API Grok
L’API xAI propose un endpoint dédié à la génération d’images : POST /v1/images/generations. Ce point d’entrée vous permet de créer des images à partir d’une description textuelle, en exploitant les modèles Grok Imagine. Que vous souhaitiez produire des illustrations, des visuels marketing ou des prototypes créatifs, tout commence par cet endpoint.
Dans cette leçon, vous allez découvrir comment structurer une requête de génération d’image et comprendre les paramètres fondamentaux.
Structure d’une requête de génération
Pour générer une image, vous envoyez une requête POST à l’endpoint avec un corps JSON contenant au minimum un modèle et un prompt :
from openai import OpenAI
import os
client = OpenAI(
api_key=os.getenv("XAI_API_KEY"),
base_url="https://api.x.ai/v1"
)
response = client.images.generate(
model="grok-imagine-image",
prompt="Un phare breton sous un ciel étoilé, style aquarelle"
)
image_url = response.data[0].url
print(image_url)
L’API xAI est compatible avec le SDK OpenAI pour la génération d’images. Vous initialisez le client en pointant vers https://api.x.ai/v1 et utilisez votre clé API xAI.
Paramètres de la requête
Voici les paramètres que vous pouvez inclure dans votre requête :
model(obligatoire) : le modèle de génération à utiliserprompt(obligatoire) : la description textuelle de l’image souhaitéen: le nombre d’images à générer (1 à 10, défaut : 1)aspect_ratio: le ratio d’aspect de l’imageresolution: la résolution (1kou2k)response_format:url(défaut) oub64_jsonpour recevoir l’image en Base64
Exemple avec tous les paramètres
response = client.images.generate(
model="grok-imagine-image",
prompt="Une forêt enchantée avec des lucioles, style digital art",
n=2,
aspect_ratio="16:9",
resolution="2k",
response_format="url"
)
for image in response.data:
print(image.url)
Format de la réponse
La réponse contient un tableau data avec un objet par image générée. Chaque objet inclut :
url: l’URL temporaire de l’image (siresponse_formatesturl)b64_json: les données Base64 de l’image (siresponse_formatestb64_json)
Le type MIME retourné peut être image/png, image/jpeg ou image/webp.
Mise en pratique
Essayez de générer votre première image en adaptant le prompt à votre contexte professionnel. Par exemple, pour un visuel de présentation :
response = client.images.generate(
model="grok-imagine-image",
prompt="Graphique minimaliste montrant la croissance d'une startup, "
"couleurs bleu et blanc, fond sombre, style flat design",
resolution="2k",
aspect_ratio="16:9"
)
Points clés à retenir
- L’endpoint de génération est
POST /v1/images/generations - Deux paramètres sont obligatoires :
modeletprompt - L’API est compatible avec le SDK OpenAI Python en changeant la
base_url - Vous pouvez générer jusqu’à 10 images par requête
- Les résolutions disponibles sont
1ket2k