Tutoriel
GPT Image 2.6 en pratique : GIF d'animation pixel art, logos vectoriels SVG et retouche locale avec mask_url
Trois configurations de paramètres à copier telles quelles : nombre d'images et frame_size d'un GIF, sortie et facturation SVG, retouche locale avec mask_url
Sur cette page
Choisir la ligne : Flare ou Sunburst
Mêmes paramètres, deux lignes. GPT Image 2.6 dispose de quatre ID de modèle : gpt-image-2.6-flare/text-to-image, gpt-image-2.6-flare/image-to-image, gpt-image-2.6-sunburst/text-to-image, gpt-image-2.6-sunburst/image-to-image.
Le choix ne dépend que d'une chose : pour cette manche, voulez-vous de la vitesse ou de la cohérence dans le détail.
-
Flare : génération plus rapide, idéal pour les itérations rapides et la production en lot. C'est le choix par défaut.
-
Sunburst : plus soucieux du détail ; en qualité medium et supérieure, il offre une meilleure cohérence des personnages, des produits et de la mise en page lors d'éditions en plusieurs tours.
Les deux lignes ont des paramètres, un usage et des prix strictement identiques. Autrement dit, dans les trois scénarios ci-dessous, pas un seul caractère de configuration ne change quand on change de ligne. Vous pouvez d'abord tout régler avec Flare jusqu'à ce que ça fonctionne, puis basculer sur Sunburst pour la version finale.
Pages des modèles :
Scénario 1 : générer un GIF à partir d'une petite animation pixel art
Le GIF n'est disponible qu'en text-to-image ; passez output_format à gif. Trois paramètres dédiés déterminent le résultat : frame_size, frame_count et frame_duration_ms.
Une configuration à copier telle quelle
{
"model": "gpt-image-2.6-flare/text-to-image",
"prompt": "pixel art loop, a small slime bouncing on grass tiles, 16-bit palette, plain light background",
"quality": "high",
"resolution": "1K",
"output_format": "gif",
"frame_size": "512x512",
"frame_count": 8,
"frame_duration_ms": 120
}
Voici un GIF réellement généré par GPT Image 2.6 Flare : 512×512, 12 images, 120 ms par image.

Comprendre chaque paramètre
-
frame_size: largeur x hauteur en pixels de chaque image, de la forme512x512; les deux valeurs doivent être des multiples de 16, valeur par défaut512x512. C'est le ratio du GIF qui est déterminé ici, pas laresolution. Une écriture comme1:1sera directement rejetée — ici on attend des valeurs en pixels, pas une chaîne de ratio. -
frame_count: de 2 à 16, valeur par défaut 9. Pour une petite animation pixel art, 6 à 10 images suffisent généralement à boucler ; plus il y a d'images, plus le modèle doit caser de contenu dans un même canevas. -
frame_duration_ms: durée de chaque image, ≥20, valeur par défaut 200, arrondie à 10 ms près. Pour une animation pixel art, on utilise couramment 100 à 150 ms ; pour un effet « image par image » marqué, descendez à 80–120 ms.
Logique de découpage des images
Le modèle assemble les frame_count images en une grande image générée en une fois, puis la découpe selon frame_size. Le prompt doit donc décrire « une séquence d'actions continues », et non « une seule image ». Précisez comment le début et la fin s'enchaînent et si le sujet reste à une position fixe dans le cadre, pour que la boucle ne saute pas. En style pixel, ajoutez une phrase limitant la palette et le style de contour : la cohérence entre images sera meilleure.
À ne pas oublier
Lors de la génération d'un GIF, ne passez pas aspect_ratio ou passez auto. Le ratio est déterminé par frame_size ; mettre autre chose ici ne ferait que créer un conflit.
Limites du GIF : quand la requête est directement rejetée
Le GIF a plus de contraintes qu'une génération d'image classique, et toutes se manifestent à la soumission — en cas de dépassement, la génération n'est pas « tant bien que mal » effectuée : elle est directement rejetée, entièrement remboursée, sans frais. Vous pouvez donc essayer sans crainte, mais sachez pourquoi une requête est rejetée.
Quatre limites strictes
-
Nombre d'images : 2 à 16 ; mais
768x768est limité à 12 images. -
Chaque côté de l'image assemblée : ≤3840.
-
Total de pixels de l'image assemblée : ≤8 294 400, soit approximativement largeur × hauteur ×
frame_countdeframe_size. -
Ratio de l'image assemblée : ≤3:1.
Les points 3 et 4 sont les plus souvent oubliés, car ils ne portent pas sur un paramètre isolé mais sur le résultat après assemblage. La méthode : calculez d'abord largeur × hauteur × nombre d'images, puis vérifiez si le ratio de l'image assemblée ne dépasse pas 3:1.
Deux pièges classiques
-
512x512 avec 16 images passe ; les mêmes 16 images en 768x768 seront rejetées, car 768x768 est limité à 12 images.
-
Pour une animation en bandeau large, un
frame_sizetrès aplati et quelques images de plus font dépasser le ratio 3:1 de l'image assemblée.
Auto-vérification avant soumission
-
Les deux valeurs de
frame_sizesont-elles des multiples de 16 ? -
Avez-vous passé par erreur une écriture de ratio comme
1:1? -
aspect_ratioest-il vide ou àauto? -
frame_duration_msest-il ≥20 ? (arrondi automatique à 10 ms près)
Si ces points sont validés, le GIF ne bloquera pas à la soumission.
Scénario 2 : obtenir un véritable logo vectoriel SVG
svg n'est également disponible qu'en text-to-image ; passez output_format à svg. La sortie est un vecteur redimensionnable, net à n'importe quelle taille — la propriété la plus recherchée pour les logos, icônes et marques monochromes.
Configuration à copier telle quelle
{
"model": "gpt-image-2.6-flare/text-to-image",
"prompt": "minimal geometric fox head logo, flat vector, two colors, thick even strokes, centered, plain white background, no text",
"quality": "high",
"resolution": "1K",
"background": "opaque",
"output_format": "svg"
}
Voici un logo SVG généré par GPT Image 2.6 Flare en qualité low, un fichier de seulement 3 Ko, net à n'importe quelle taille :
Comment décrire un logo
Un logo vectoriel exige une forme « vectorisable » ; orientez le prompt dans cette direction :
-
Écrivez explicitement
flat vector,thick even strokes, et évitez les dégradés, le bruit, les halos et les matières réalistes. -
Limitez le nombre de couleurs : « two colors » donne un résultat plus propre que « colorful ».
-
Précisez
centeredet les contraintes de marge pour éviter que le sujet touche les bords. -
Pour un pur symbole, ajoutez
no textpour empêcher le modèle d'insérer du texte.
complexity contrôle le niveau de planification, indépendamment de quality, valeur par défaut high. Pour une cible structurellement simple comme un logo, un quality dès medium ou high suffit ; mieux vaut investir le budget dans plusieurs regénérations que de tout mettre d'un coup.
Combien ça coûte en plus
Le prix du SVG est celui du PNG de même palier plus 0,030. Par exemple, le palier low, 1K est à 0,053, et le palier max, 4K à 0,666. Commencez donc par medium + 1K pour fixer la composition, puis, une fois validé, passez en high + 2K (ou 4K) pour la version finale.
Attention : background: transparent exige png ou webp ; le SVG avec fond transparent n'est pas pris en charge, préférez opaque.
Scénario 3 : retouche locale avec mask_url
L'image-to-image accepte de 1 à 16 images sources (jpeg/png/webp), et la sortie ne peut être que png, jpeg ou webp. Deux voies pour la retouche locale : mask_url et markup_url, exclusivement l'une ou l'autre.
Voie A : mask_url, spécifier précisément la zone à modifier
mask_url est un PNG RGBA de même taille que la première image source. Les pixels transparents représentent la zone à modifier, les pixels opaques la zone à conserver.
{
"model": "gpt-image-2.6-flare/image-to-image",
"prompt": "replace the background with a soft studio gradient, keep the product untouched",
"image_urls": ["https://example.com/product.png"],
"mask_url": "https://example.com/product-mask.png",
"quality": "high",
"resolution": "2K",
"output_format": "png"
}
Trois points clés pour créer le masque :
-
La taille doit être strictement identique à celle de la première image source, un pixel d'écart suffit à désaligner.
-
Ce doit être un PNG avec canal alpha, où la transparence indique « à modifier ».
-
Le bord du masque peut être légèrement étendu vers l'extérieur pour éviter une jonction brutale entre ancien et nouveau contenu.
Voie B : markup_url, il suffit d'entourer
markup_url est une image d'annotation PNG transparente sur laquelle il suffit d'entourer la zone à modifier. L'annotation n'apparaît pas dans le résultat. Elle convient mieux au cas « je sais ce qui ne va pas, mais je n'ai pas envie de faire un masque précis » — par exemple entourer une personne dans l'image et demander « change cette veste ».
Une chose à savoir absolument
Même avec un masque, des changements légers peuvent apparaître hors de la zone masquée. Pour les éléments devant rester parfaitement fidèles (logo, texte, visage), ne comptez pas sur le masque comme assurance ; écrivez « rester inchangé » dans le prompt et comparez chaque image après génération. Lors d'éditions en plusieurs tours, Sunburst offre une meilleure cohérence du détail en qualité medium et supérieure — c'est précisément pourquoi il vaut mieux basculer dessus pour la retouche d'images.
Laquelle choisir
-
La forme à modifier a des contours nets et doit être précise →
mask_url. -
Indiquer simplement une position, zone irrégulière, envie de simplicité →
markup_url. -
Passer les deux → rejet direct, c'est une soumission gâchée.
Les trois scénarios font leurs comptes : prix par palier et erreurs fréquentes
Tous les prix sont à l'image. Le tableau complet des paliers se trouve sur la page des tarifs ; voici trois règles souvent mal retenues.
Règle 1 : le GIF est facturé uniquement selon la qualité, indépendamment de la résolution
Pour le GIF, peu importe que vous passiez 1K ou 4K : seul compte quality. low, medium, high, xhigh, max correspondent chacun à un prix fixe, de 0,070 à 0,598. Ajouter resolution: "4K" à un GIF ne le rendra ni plus cher ni plus net — la netteté dépend de frame_size.
Règle 2 : le SVG, c'est le PNG de même palier plus 0,030
La sortie vectorielle est un supplément fixe, ajouté au prix du PNG de même palier. Par exemple, un SVG medium 1K coûte $0,071, un high 2K $0,120. Pour maîtriser les coûts, essayez plusieurs versions en palier bas, puis montez en gamme pour la version finale une fois le choix fait.
Règle 3 : l'image-to-image ajoute 0,012 par image de référence
Le prix de base est identique à celui du text-to-image, puis s'ajoute selon le nombre d'images de référence, à raison de 0,012 par image. Par exemple, en high 2K, 2 images donnent $0,114, 16 images donnent $0,282. Ne passez que les images de référence réellement nécessaires.
Une soumission rejetée n'est pas facturée
Paramètres invalides, dépassement de taille GIF : tout est intercepté à la soumission, avec remboursement intégral et sans frais. N'ayez donc pas peur d'ajuster les paramètres par crainte du gaspillage ; le vrai coût vient des regénérations « qui fonctionnent mais dont le résultat ne plaît pas ».
Trois erreurs fréquentes
-
Croire que plus la résolution d'un GIF est élevée, mieux c'est :
resolutionn'a aucun effet sur le GIF, c'estframe_sizequi fixe les pixels. -
Croire qu'avec un masque tout est verrouillé au pixel près : des changements légers restent possibles hors du masque.
-
Croire qu'il faut deux configurations pour les deux lignes : Flare et Sunburst ont des paramètres et des prix identiques ; changer de ligne n'est pas une « migration », juste un changement d'ID de modèle.
Checklist avant mise en ligne
Passez en revue les points suivants dans cet ordre avant de soumettre : cela écartera l'immense majorité des rejets et des reprises.
1. Définir d'abord output_format
-
gif/svg→ uniquement en text-to-image. Vous voulez faire de l'image-to-image ? Revenez àpng/jpeg/webp. -
jpeg/webp→output_compressiondisponible (0–100). -
background: transparent→ doit êtrepngouwebp.
2. Vérifier les paramètres selon le scénario
GIF
-
Les deux valeurs de
frame_sizesont des multiples de 16, et ce n'est pas écrit1:1. -
frame_countentre 2 et 16, ≤12 en768x768. -
largeur × hauteur × nombre d'images ≤ 8 294 400, ratio de l'image assemblée ≤3:1. -
frame_duration_ms≥20 (arrondi automatique à 10 ms près). -
aspect_ratiovide ouauto.
SVG
-
Le prompt contient-il des descriptions anti-vecteur comme dégradés, bruit, matières réalistes ?
-
backgroundest-il bienopaque(pour éviter le conflit entre transparence et svg) ?
mask_url / markup_url
-
Un seul des deux est passé.
-
mask_urla la même taille que la première image source et est un PNG RGBA. -
Le prompt précise quelles zones doivent « rester inchangées ».
3. Confirmer ensuite la ligne et le palier
-
Essais par lots → Flare ; éditions multi-tours → Sunburst (medium et au-dessus).
-
quality,resolutionetcomplexitysont indépendants ; ne prenez pascomplexitypour un palier de qualité d'image.
4. Soumettre
N'envoyez qu'une fois tout validé. Un rejet n'est pas facturé, mais chaque nouvelle tentative coûte du temps — la valeur de la checklist est de réduire les allers-retours, pas d'économiser de l'argent.
Les configurations des trois scénarios sont à copier telles quelles : faire fonctionner d'abord, puis optimiser, c'est le chemin le plus rapide pour prendre en main GPT Image 2.6.
Articles similaires
Voir tous les articles →-
Tutoriel
Tutoriel d'intégration de l'API GPT Image 2.6 : choisir entre Flare et Sunburst, mise en œuvre pratique des sorties GIF et SVG
Du choix de l'ID de modèle à la mise en œuvre des paramètres texte-vers-image et image-vers-image, tout sur les paramètres de frames GIF et la sortie SVG
-
Tutoriel
Cas pratiques Recraft Creative Upscale : agrandissement de paysages et d'aquarelles
Examinez les variations de texture de la cabane, du lac et de la petite ville à l'aquarelle, distinguez le résultat complet de l'aperçu et vérifiez les détails redessinés.
-
Tutoriel
Clé API OpenAI invalide : dépannage des erreurs 401, des variables d'environnement et de la configuration du projet
Distinguez les erreurs 401, 403 et 429 d'OpenAI, vérifiez les variables d'environnement ainsi que les paramètres d'organisation et de projet, puis validez les identifiants avec une requête en lecture seule.