dall-e-3, le modèle avec une meilleure capacité de rendu de texte gpt-image-1, la dernière génération gpt-image-2, ainsi que la série de modèles nano-banana / nano-banana-2 / nano-banana-pro accessibles via la même interface. Tous peuvent générer des images de haute qualité à partir de descriptions textuelles.
Ce document présente principalement le processus d’utilisation de l’API de génération d’images OpenAI, qui permet d’utiliser facilement les fonctionnalités de génération d’images de la série OpenAI.
Processus de demande
Pour utiliser l’API de génération d’images OpenAI, rendez-vous d’abord sur la page OpenAI Images Generations API et cliquez sur le bouton « Acquire » pour obtenir les identifiants nécessaires à la requête :
Si vous n’êtes pas encore connecté ou inscrit, vous serez automatiquement redirigé vers la page de connexion pour vous inscrire et vous connecter, puis vous reviendrez automatiquement à cette page.
Lors de la première demande, un quota gratuit est offert pour utiliser l’API gratuitement.
Modèle GPT-Image-2
gpt-image-2 est un modèle de génération d’images nouvelle génération lancé par OpenAI, qui présente des améliorations significatives par rapport à dall-e-3 et gpt-image-1 dans les domaines suivants :
- Meilleure capacité à suivre les instructions : comprend précisément les instructions structurées complexes telles que la composition, le comptage, les relations de position, etc.
- Rendu du texte plus clair : dans des scénarios tels que posters, menus, infographies, logos, les textes en anglais et les chiffres sont quasiment exempts d’erreurs.
- Expression de styles plus riche : support natif de multiples styles comme portrait cinématographique, affiche rétro, illustration pour enfants, photographie de produit, infographie, etc.
- Support natif multi-rapport et haute résolution : couvre 5 rapports (1:1, 4:3, 3:4, 16:9, 9:16) avec 3 résolutions (1K / 2K / 4K).
model à gpt-image-2. Le champ url dans le résultat retourné est un lien permanent hébergé sur platform.cdn.xhuoapi.ai, pouvant être ouvert directement dans un navigateur ou intégré dans une page web.
Valeurs supportées pour size et niveaux de tarification
gpt-image-2 vérifie uniquement le format de size : tant que ce n’est pas auto ou une chaîne vide, il doit correspondre au format WIDTHxHEIGHT (par exemple 1024x1024, 2048x1152, 800x600) ; toute autre forme retourne une erreur 400. La tarification se divise en deux niveaux :
- Prix standard 1K : pour toute taille 1K recommandée dans le tableau ci-dessous, ou les alias 1K courants en amont (
1254x1254,1672x941,941x1672— ce sont les tailles effectivement retournées en 1K, réutilisées sans surcoût). - Autres niveaux (×1,5) : toute taille hors de la collection 1K ci-dessus, y compris les tailles 2K / 4K recommandées dans le tableau, ou toute taille personnalisée
WIDTHxHEIGHT.
| Rapport | 1K (prix standard) | 2K recommandé (×1,5) | 4K recommandé (×1,5) |
|---|---|---|---|
| 1:1 | 1024x1024 | 2048x2048 | 2880x2880 |
| 4:3 | 1536x1024 | 2048x1536 | 3264x2448 |
| 3:4 | 1024x1536 | 1536x2048 | 2448x3264 |
| 16:9 | 1792x1024 | 2048x1152 | 3840x2160 |
| 9:16 | 1024x1792 | 1152x2048 | 2160x3840 |
Vous pouvez aussi passersize: "auto"ou omettre le champsize, auquel cas le modèle choisira la taille par défaut, facturée au tarif standard 1K. En 1K, la sortie en amont ne garantit pas un alignement exact des pixels — par exemple, vous demandez1024x1024et obtenez1254x1254avec le même rapport. Si vous réutilisez cette taille commesize, la facturation reste en 1K. Les appels 4K prennent généralement 4 à 8 minutes, il est recommandé d’utiliser le mécanisme de rappel asynchronecallback_urlprésenté plus loin.
À propos du paramètreVoici plusieurs exemples réels illustrant les capacités dengpt-image-2ne supporte pasn > 1: ce paramètre est silencieusement ignoré, que vous passiezn=1oun=10, une seule image est retournée et facturée. Pour obtenir plusieurs images candidates, lancez plusieurs requêtes en parallèle (il est conseillé de varierpromptouseedpour éviter des images très similaires). Cette limitation s’applique aussi àgpt-image-1/gpt-image-1.5et à la sérienano-banana. Seuldall-e-2supporte nativementn > 1;dall-e-3supporte uniquementn = 1.
gpt-image-2.
Scénario 1 : portrait cinématographique
Le prompt peut utiliser des termes cinématographiques (pellicule 35 mm, faible profondeur de champ, néons, etc.) pour contrôler précisément l’ambiance et la texture. Exemple de code Python :
Scénario 2 : affiche de voyage vintage (avec rendu de texte)
gpt-image-2 est très stable pour la mise en page et le rendu typographique, idéal pour générer posters, menus, cartes de vœux avec texte.

AMALFI et ITALIA 1958 clairement et correctement rendus.
Scénario 3 : composition complexe et comptage
Ce prompt teste la capacité du modèle à suivre des instructions structurées sur les quantités et positions.
dall-e-3.
Scénario 4 : style illustration (paysage)
En spécifiant un médium artistique et des mots-clés d’ambiance, on peut guider le modèle vers une illustration stylisée.
Asynchrone et rappel
Un appel unique àgpt-image-2 prend généralement 60 à 90 secondes. Pour éviter de maintenir une connexion longue, vous pouvez utiliser le mécanisme de rappel asynchrone callback_url présenté plus loin, le processus d’appel est identique aux autres modèles.
Série Nano Banana
La sérienano-banana est un modèle de génération d’images basé sur Gemini, accessible via la même interface /openai/images/generations sans changer d’endpoint, il suffit de changer le champ model par l’un des suivants.
| Modèle | Tarification (Crédits / appel) | Scénarios d’usage |
|---|---|---|
nano-banana | 0.14 | Génération d’images standard, la plus rapide et économique |
nano-banana-2 | 0.28 | Qualité et détails nettement améliorés |
nano-banana-pro | 0.35 | Modèle phare, composition, détails et texte optimaux |
Important : portée des paramètres supportés Nano Banana est intégré via une couche d’adaptation au protocole OpenAI et supporte uniquement les paramètres suivants comparé àgpt-image-*:model,prompt,size.
sizeest mappé en interne suraspect_ratioselon le tableau ci-dessous, les tailles non listées sont ramenées à1:1:
1024x1024/512x512/256x256→1:11792x1024→16:91024x1792→9:16- Ne supporte pas
n,quality,style,response_format,background,output_format; ces paramètres sont ignorés s’ils sont fournis.- La structure de retour suit le format OpenAI (
data[].url), maiscreatedest toujours0, pas deb64_json, etrevised_promptest toujours identique aupromptoriginal.
Appel basique
url :

Passage au modèle phare nano-banana-pro
Il suffit de changer model en nano-banana-pro, les autres paramètres restent identiques :

Rappel asynchrone
Le mécanismecallback_url fonctionne également avec nano-banana, le processus d’appel est identique aux autres modèles, voir la section Rappel asynchrone.
Utilisation basique
Vous pouvez ensuite remplir les champs correspondants dans l’interface, comme illustré :
authorization (à sélectionner dans la liste déroulante), model (le modèle OpenAI DALL-E à utiliser, ici principalement un modèle disponible, détails dans la liste fournie), et enfin prompt (le texte décrivant l’image à générer).
Vous pouvez aussi voir le code d’appel généré à droite, que vous pouvez copier ou tester directement via le bouton « Try ».

created: identifiant unique de la génération d’image.data: informations sur le résultat de la génération.
data contient les informations détaillées de l’image générée, notamment url qui est le lien vers l’image générée.

Paramètre de qualité d’image quality
Vous pouvez configurer la qualité de l’image générée, avec deux options : standard pour une image standard, et hd pour une image avec plus de détails et une meilleure cohérence.
Exemple de configuration avec quality à standard :


quality à standard :

quality à hd, on obtient une image avec plus de détails et une meilleure cohérence :

Paramètre de taille d’image size
Vous pouvez aussi définir la taille de l’image générée.
Exemple avec taille 1024x1024 :


1024x1024 :

1792x1024, on obtient une image avec une taille visiblement différente :
D’autres tailles sont possibles, voir la documentation officielle pour plus de détails.
Paramètre de style d’image style
Le paramètre style propose deux options : vivid pour des images plus vivantes, et natural pour un rendu plus naturel.
Exemple avec style à vivid :


style à vivid :

style à natural, on obtient une image plus naturelle :

vivid produit des images plus vivantes et réalistes que natural.
Paramètre de format de lien d’image response_format
Le paramètre response_format propose deux formats : b64_json encode l’image en Base64, tandis que url fournit un lien direct vers l’image.
Exemple avec response_format à url :


url est accessible directement, image affichée ci-dessous :

response_format à b64_json, vous obtenez une image encodée en Base64, exemple :
Rappel asynchrone
Comme la génération d’images peut prendre du temps, pour éviter de maintenir une connexion HTTP longue et consommer des ressources système, l’API supporte un mécanisme de rappel asynchrone. Le processus est : le client envoie une requête en spécifiant un champcallback_url. L’API répond immédiatement avec un task_id unique. Une fois la génération terminée, le résultat est envoyé en POST JSON à l’URL callback_url fournie, incluant le task_id pour associer la réponse à la requête.
Exemple d’utilisation :
Un webhook est un service HTTP pouvant recevoir des requêtes. Pour la démonstration, utilisez un service public comme https://webhook.site/ pour obtenir une URL webhook, par exemple https://webhook.site/3d32690d-6780-4187-a65c-870061e8c8ab.
Ensuite, envoyez la requête avec le champ callback_url :
task_id permet de relier la réponse à la requête initiale.
Gestion des erreurs
En cas d’erreur, l’API retourne un code et un message d’erreur, par exemple :400 token_mismatched: requête incorrecte, paramètres manquants ou invalides.400 api_not_implemented: requête incorrecte, paramètres manquants ou invalides.401 invalid_token: non autorisé, jeton d’autorisation invalide ou manquant.429 too_many_requests: trop de requêtes, dépassement du quota.500 api_error: erreur interne du serveur.

