Note de l’auteur : cet article décrypte les limites des endpoints, les conflits de paramètres et les points de vigilance lors de la migration vers GPT Image 2.6 API pour les GIF, les SVG et la retouche locale par annotations. Objectif : éviter le piège qui consiste à croire qu’il suffit de changer le nom du modèle.
OpenAI a lancé GPT Image 2.6 le 4 novembre 2026. Les développeurs peuvent appeler deux modèles : gpt-image-2.6-flare et gpt-image-2.6-sunburst. En voyant « prise en charge des GIF, des SVG et de l’édition par annotations », beaucoup d’équipes ont d’abord le réflexe de remplacer le nom du modèle, puis de demander directement un GIF ou un SVG dans leur flux d’édition existant. D’après la documentation officielle, ces combinaisons ne sont pas possibles au niveau de l’API.
Il ne s’agit pas de chercher des défauts au nouveau modèle. La documentation officielle sur la génération d’images et le guide des invites pour GPT Image 2.6 précisent les contraintes entre les endpoints, les formats et les paramètres. Cet article se limite à présenter les restrictions documentées : il n’invente aucun test de requête et ne tire aucune conclusion sur les points qui n’ont pas encore été clarifiés publiquement.
L’essentiel : après lecture, vous saurez quel endpoint choisir pour un besoin donné avec GPT Image 2.6, quels paramètres ne peuvent pas être utilisés ensemble et quelles capacités vérifier avant d’intégrer une plateforme tierce.

GPT Image 2.6 : les limites de l’API en bref
Commençons par l’essentiel : ce n’est pas parce qu’un modèle possède une capacité qu’elle est disponible sur tous les endpoints de l’API. Actuellement, seuls les endpoints generations produisent des fichiers GIF et SVG, tandis que markup s’utilise uniquement avec edits. Leurs rôles sont donc bien distincts.
| Élément | Détails |
|---|---|
| Date de lancement | 4 novembre 2026 |
| Modèles pour les développeurs | gpt-image-2.6-flare (privilégie la vitesse), gpt-image-2.6-sunburst (privilégie la qualité et les modifications précises) |
| Principaux endpoints | POST /v1/images/generations, POST /v1/images/edits, ainsi que l’outil de génération d’images de la Responses API |
| Nouveaux formats de sortie | GIF, SVG, uniquement avec l’endpoint generations |
| Nouvelle méthode de modification | Modification par annotations markup, uniquement avec l’endpoint edits |
| Nouveau paramètre | complexity (low / medium / high, high par défaut) |
Quel est le rôle de chacun des trois types d’endpoints de GPT Image 2.6 ?
images/generations crée de nouvelles images à partir d’une invite textuelle. C’est le seul point d’accès officiellement prévu pour produire des GIF et des SVG. images/edits reçoit une image d’origine et des instructions pour modifier une image existante ; c’est aussi là que s’effectuent les modifications par annotations markup. L’outil de génération d’images de la Responses API convient aux conversations et aux workflows en plusieurs étapes. La documentation ne précise toutefois pas ses paramètres pour les GIF et les SVG : sans vérification, il ne faut donc pas supposer qu’il fonctionne exactement comme l’endpoint generations.
Autre source de confusion : dans ChatGPT, on peut importer des photos pour créer un GIF. Mais il s’agit d’une fonctionnalité du produit, qui ne signifie pas que l’endpoint de modification de l’Image API peut à lui seul produire un GIF. Assimiler l’expérience du produit aux capacités de l’API est l’une des erreurs les plus fréquentes ici.
| Besoin courant | Endpoint recommandé | Prise en charge dans la documentation officielle |
|---|---|---|
| Générer un logo SVG à partir d’un texte | generations + output_format="svg" |
Pris en charge |
| Générer une animation GIF à partir d’un texte | generations + output_format="gif" |
Pris en charge |
| Importer une photo de produit, entourer un objet et changer sa couleur | edits + markup | Pris en charge |
| Importer une image dans edits et produire directement un GIF | — | Combinaison non prise en charge par la documentation |
| Importer un SVG existant, modifier ses tracés dans edits et produire un nouveau SVG | — | Workflow de modification vectorielle non pris en charge par la documentation |

Les limites cachées de la sortie SVG de GPT Image 2.6
Pour obtenir un SVG, il faut définir output_format="svg" sur le point de terminaison generations. En apparence, il s’agit simplement d’un format supplémentaire, mais il s’accompagne de contraintes plus strictes que celles des images matricielles. Voici les règles explicitement indiquées par OpenAI :
ndoit être égal à 1 : il est impossible de générer plusieurs SVG en une seule requête.- Le streaming et
partial_imagesne sont pas pris en charge. output_compressionetprompt_rewriterne sont pas pris en charge.images/editsne peut pas produire de SVG, et un SVG ne peut pas non plus servir directement d’entrée pour modifier une image matricielle.
Le résultat se trouve dans data[0].b64_json : il faut le décoder en XML UTF-8, puis l’enregistrer dans un fichier .svg. Selon la documentation officielle, le SVG généré est un graphique vectoriel statique composé de formes, de tracés et de couleurs. Il ne contient aucun script, ne dépend d’aucune ressource externe et n’intègre aucune image matricielle. C’est pratique pour un rendu directement intégré au front-end, mais cela ne garantit pas que chaque SVG possède une structure de calques aussi claire qu’une création professionnelle.
Exemple minimal d’appel SVG avec GPT Image 2.6
L’exemple suivant utilise une syntaxe compatible avec OpenAI. La disponibilité du nouveau modèle et des nouveaux paramètres varie selon les plateformes : vérifiez-la avant toute intégration.
import base64
import openai
client = openai.OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.apiyi.com/v1" # Interface compatible OpenAI ; vérifier d'abord que le modèle 2.6 est disponible
)
result = client.images.generate(
model="gpt-image-2.6-flare",
prompt="极简风格的咖啡店 Logo,单色线条,圆形构图",
output_format="svg",
n=1, # Doit être égal à 1 pour le SVG
)
svg_xml = base64.b64decode(result.data[0].b64_json).decode("utf-8")
with open("logo.svg", "w", encoding="utf-8") as f:
f.write(svg_xml)
Le coût doit lui aussi être évalué séparément. OpenAI indique que la génération d’un SVG passe d’abord par la création d’une image de référence, puis par la production du résultat vectoriel par un modèle de création. Le coût comprend donc l’utilisation du modèle d’image pour l’image de référence et les tokens consommés par le modèle de création SVG. On ne peut pas appliquer directement le coût d’un PNG à une unité de SVG, et OpenAI n’a pas communiqué de tarif fixe valable pour toutes les tâches SVG.
🚀 Conseil pour une validation rapide : la consommation réelle de tokens pour un SVG dépend fortement de la complexité de l’invite. Testez d’abord le processus avec quelques invites représentatives, puis estimez le coût à grande échelle. Vous pouvez vérifier la disponibilité du modèle souhaité dans la console APIYI sur apiyi.com et utiliser le crédit de test réservé aux nouveaux utilisateurs pour effectuer des essais à petite échelle.
Paramètres et limites de sortie GIF de GPT Image 2.6
Les GIF ne sont eux aussi disponibles que via le point de terminaison generations. Après avoir défini output_format="gif", vous pouvez utiliser deux nouveaux paramètres pour contrôler le rythme de l’animation. La taille correspond à celle d’une image individuelle : si vous précisez la largeur et la hauteur, elles doivent être des multiples de 16.
| Paramètre | Valeurs possibles | Valeur par défaut | À noter |
|---|---|---|---|
frame_count |
2 à 64 images | 9 images | Un nombre élevé d’images est limité par le budget de pixels |
frame_duration_ms |
20 à 2000 millisecondes par image | 200 millisecondes | Arrondi par incréments de 10 millisecondes |
size |
auto ou WIDTHxHEIGHT |
— | Largeur et hauteur multiples de 16 |
streaming / partial_images |
Non pris en charge | — | Le GIF ne peut être renvoyé qu’en entier |
output_compression / prompt_rewriter |
Non pris en charge | — | Ne réutilisez pas la configuration JPEG/WebP |
Le nombre d’images, la résolution et le nombre de générations sont soumis à la fois aux limites du modèle et au budget total de pixels. Un maximum de 64 images ne signifie pas qu’on peut les générer de façon fiable à n’importe quelle résolution élevée : c’est le point le plus facile à mal interpréter dans le tableau des paramètres. L’exemple officiel utilise Sunburst, 512×512, quality=high, la valeur par défaut complexity=high, 9 images de 200 millisecondes chacune, soit une durée totale de 1,8 seconde. Il montre un petit singe vêtu d’un manteau vert qui soulève une lanterne, puis revient à sa position initiale pour former une animation en boucle.
Voir le code complet d’invocation pour générer un GIF
import base64
import openai
client = openai.OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.apiyi.com/v1" # Avant utilisation, vérifiez si la plateforme transmet les nouveaux paramètres comme frame_count
)
def generate_gif(prompt: str, path: str = "loop.gif") -> str:
"""Génère un GIF en boucle ; les champs non standard du SDK sont transmis via extra_body"""
result = client.images.generate(
model="gpt-image-2.6-sunburst",
prompt=prompt,
size="512x512", # Taille d'une image, multiple de 16
quality="high",
output_format="gif",
extra_body={
"frame_count": 9, # 2–64, valeur par défaut : 9
"frame_duration_ms": 200, # 20–2000, incréments de 10 ms
"complexity": "high", # Valeur par défaut, à conserver pour une première comparaison
},
)
data = base64.b64decode(result.data[0].b64_json)
if not data.startswith(b"GIF8"):
raise ValueError("返回内容不是有效的 GIF 文件")
with open(path, "wb") as f:
f.write(data)
return path
generate_gif("一只穿绿色外套的小猴子举起灯笼,再回到开始姿态,无缝循环")
Le code vérifie l’en-tête du fichier à la fin, car « la requête a réussi » et « le GIF obtenu est exploitable » sont deux choses différentes. La documentation officielle sur les limites précise aussi que la fluidité des mouvements et le naturel de la boucle doivent être vérifiés manuellement : le code de statut HTTP ne suffit pas.
Exigences pour l’édition locale avec markup dans GPT Image 2.6
Markup est une extension importante du endpoint edits dans GPT Image 2.6. La requête comprend l’image d’origine, un calque d’annotation transparent et une invite d’édition. Dans l’exemple officiel, l’image d’origine est kitchen.webp et le calque est un PNG transparent sur lequel un cercle rouge a été tracé. L’invite demande de rendre bleu le vase entouré, de conserver les objets autour et de supprimer le cercle rouge de l’image finale.
Les exigences de markup sont précises : si l’une d’elles n’est pas respectée, la requête peut échouer ou le résultat s’écarter de ce qui était attendu :
- Markup doit être un calque d’annotation PNG contenant des pixels transparents. Il ne faut pas dessiner le cercle rouge directement sur l’image d’origine pour l’envoyer comme markup.
- La largeur et la hauteur en pixels de l’image d’origine et de markup doivent être exactement identiques.
- Markup s’applique à la première image fournie ; les autres images servent uniquement d’images de référence.
- La première image et le calque d’annotation ne doivent pas dépasser 16,777,216 pixels chacun, et le fichier markup ne doit pas dépasser 50 MB.
- Markup ne peut être utilisé ni avec
maskni avecprompt_rewriter.
Autre point à retenir : selon la documentation officielle, l’édition basée sur un masque reste guidée par l’invite et ne respecte pas nécessairement les limites de chaque pixel. Le cercle et le masque servent à indiquer la modification souhaitée, mais ne garantissent pas une édition déterministe au pixel près comme dans Photoshop. Si certaines zones doivent rester identiques à l’image d’origine pixel par pixel, la recommandation officielle est de composer le résultat validé avec l’image d’origine, plutôt que de compter entièrement sur le modèle pour les préserver.

Tableau de compatibilité des paramètres de GPT Image 2.6
Regrouper les formats et les paramètres dans un tableau permet de repérer les incompatibilités plus facilement qu’en parcourant la documentation. Le tableau ne reprend que les règles explicitement indiquées dans les sources. « Non précisé » ne signifie pas que la fonctionnalité n’est pas prise en charge.
| Format de sortie | streaming / partial | output_compression |
Fond transparent | Limite de n |
Points de terminaison disponibles |
|---|---|---|---|---|---|
| PNG | Aucune restriction documentée | Sans objet | Pris en charge | Non précisé | generations / edits |
| JPEG | Aucune restriction documentée | Pris en charge | Inadapté | Non précisé | generations / edits |
| WebP | Aucune restriction documentée | Pris en charge | Pris en charge | Non précisé | generations / edits |
| SVG | Non pris en charge | Non pris en charge | Pris en charge | Doit être égal à 1 | generations uniquement |
| GIF | Non pris en charge | Non pris en charge | Non précisé | Soumis au budget de pixels | generations uniquement |

Quelques autres points passent facilement inaperçus. Les dimensions courantes sont 1024×1024, 1536×1024 et 1024×1536. Pour les dimensions personnalisées, la largeur et la hauteur doivent être des multiples de 16, et le rapport largeur/hauteur doit être compris entre 1:3 et 3:1. Les valeurs possibles de quality sont auto, low, medium, high, xhigh et max ; celles de complexity sont low, medium et high. Ces deux paramètres agissent sur des aspects différents : le premier influence le niveau de détail du rendu, tandis que le second influe sur la planification de la composition et la compréhension de la scène.
Impact des limites de GPT Image 2.6 sur les développeurs
Risques de compatibilité lors de la migration des workflows
Le guide officiel des invites précise qu’il faut omettre input_fidelity lors de la modification d’images et que GPT Image 2.6 ne prend pas en charge reasoning.summary. Si ces champs figurent dans votre ancien code, le simple remplacement du nom du modèle risque de provoquer une erreur. La procédure de migration recommandée peut se résumer ainsi :
- Commencez par sauvegarder des requêtes et des résultats représentatifs de l’ancien modèle pour disposer d’une référence.
- Remplacez uniquement le nom du modèle, sans modifier l’invite, les images de référence, les dimensions,
qualityni le format de sortie. - Conservez la valeur par défaut de
complexityau premier essai, puis ajustez une seule variable à la fois :qualityoucomplexity. - Surveillez à la fois la qualité des résultats, la latence, le taux d’échec, le nombre de nouvelles tentatives et le coût réel. Testez d’abord avec une faible part du trafic, puis augmentez-la progressivement.
Adapter le traitement au type d’erreur
La génération d’images peut échouer à cause d’un problème d’authentification, de quota, de limitation du débit, d’une erreur serveur ou du contenu fourni. Pour les limitations de débit et les erreurs serveur, des nouvelles tentatives avec délai progressif sont adaptées. En revanche, une erreur de quota ne doit pas déclencher de nouvelles tentatives systématiques. Si l’utilisateur doit modifier ses données, demandez-lui d’ajuster sa requête plutôt que de répéter l’invocation. En cas de blocage par la modération, l’API renvoie error.code = "moderation_blocked". Il est conseillé d’enregistrer aussi l’ID de la requête pour faciliter le diagnostic.
Points à vérifier avant de passer par une plateforme tierce
Lorsqu’on invoque un nouveau modèle via une plateforme d’agrégation, sa simple disponibilité n’est qu’une première étape. Les points ci-dessous proviennent de la liste officielle des capacités et doivent être vérifiés un par un avant l’intégration. Ils ne signifient pas qu’une plateforme donnée prend ou ne prend pas déjà en charge ces fonctionnalités.
| Niveau | Points à vérifier |
|---|---|
| Modèle | Les deux ID de modèles 2.6 Flare / Sunburst sont-ils proposés ? |
| Interface | Les requêtes generations et edits sont-elles transmises ? L’envoi de fichiers markup est-il pris en charge ? |
| Paramètres | complexity, frame_count, frame_duration_ms et output_format sont-ils transmis sans modification ? |
| Résultats | Le Base64 est-il renvoyé intégralement ? Les GIF volumineux sont-ils pris en charge ? Le XML original des SVG est-il conservé ? Les messages d’erreur facilitent-ils le débogage ? |
| Tarification | La facturation correspond-elle à l’utilisation de tokens ? Comment l’utilisation supplémentaire du modèle de création pour les SVG est-elle calculée ? |
💡 Conseil d’intégration : testez le même ensemble de requêtes sur l’interface officielle et sur la plateforme tierce, en comparant notamment les formats de réponse et les messages d’erreur. Avant d’intégrer APIYI apiyi.com, consultez la liste des modèles et la description des paramètres dans le centre de documentation. Vérifiez que les fonctionnalités liées à 2.6 sont disponibles avant de basculer le trafic de production.
Questions fréquentes (FAQ)
Q1 : L’interface edits de GPT Image 2.6 peut-elle générer directement un GIF ?
Non. Selon la documentation officielle, la sortie GIF est une fonctionnalité de `images/generations` ; `images/edits` ne permet pas de générer directement un GIF. La conversion de photos en GIF dans ChatGPT est une fonctionnalité du produit : elle ne doit pas être confondue avec les capacités du point de terminaison d’édition de l’API.
Q2 : Peut-on importer un SVG existant, le modifier avec GPT Image 2.6 et obtenir un nouveau SVG ?
Ce processus n’est pas pris en charge par la documentation officielle. Un SVG ne peut pas servir d’entrée pour une édition matricielle, et edits ne peut pas non plus produire de SVG. Pour faire évoluer un dessin vectoriel, le plus sûr est de modifier l’invite dans generations et de relancer la génération, ou d’utiliser un outil d’édition vectorielle.
Q3 : Peut-on utiliser markup et mask ensemble ?
Non. La documentation officielle précise que markup ne peut être utilisé ni avec `mask`, ni avec `prompt_rewriter`. Il faut choisir une seule méthode pour indiquer la zone à modifier.
Q4 : Comment tester rapidement les appels GIF et SVG de GPT Image 2.6 ?
Nous vous conseillons de commencer par exécuter une seule requête à partir des exemples de cet article, puis de vérifier que le fichier retourné est valide. Vous pouvez vous inscrire sur APIYI apiyi.com pour obtenir des crédits de test, vérifier d’abord la disponibilité du modèle et des paramètres visés, puis remplacer base_url par `https://api.apiyi.com/v1` pour effectuer des tests à petite échelle.
Q5 : Peut-on estimer le coût des SVG et des GIF à l’unité ?
Pas aussi simplement. La tarification officielle repose sur les tokens : il n’existe pas de prix unique par GIF. Pour les SVG, la consommation comprend aussi bien l’image de référence que la création vectorielle. Les tarifs des plateformes tierces sont ceux qu’elles affichent. Vous pouvez consulter le détail de votre consommation réelle dans la console APIYI apiyi.com, plutôt que de faire une estimation à partir des tarifs officiels.
Q6 : L’édition locale avec GPT Image 2.6 garantit-elle que les pixels des autres zones restent inchangés ?
Non. La documentation officielle précise que l’édition basée sur un masque reste guidée par l’invite et ne respecte pas nécessairement les limites des pixels à la lettre. Pour les zones qui doivent rester parfaitement inchangées, elle recommande de combiner le résultat de l’édition avec l’image d’origine.
Limites de l’API GPT Image 2.6 : points clés
- Une capacité n’est pas disponible sur tous les points d’accès : GIF et SVG sont uniquement proposés en sortie de generations ; markup s’utilise uniquement avec edits.
- SVG impose le plus de contraintes :
n=1; la sortie en streaming, les paramètres de compression etprompt_rewriterne sont pas pris en charge. Le contenu renvoyé doit être décodé en XML. - GIF est limité par un budget de pixels : 64 images ne signifient pas que la génération sera fiable à toutes les résolutions. La largeur et la hauteur de chaque image doivent être des multiples de 16.
- markup impose un format strict : il doit s’agir d’un PNG transparent, aux mêmes dimensions que l’image d’origine. Il ne peut pas être utilisé avec mask.
- La migration nécessite de retirer certains champs : lors d’une modification, omettez
input_fidelityet ne transmettez pasreasoning.summary. - Vérifiez chaque niveau avant l’intégration : consultez la documentation et utilisez le quota de test d’APIYI apiyi.com pour confirmer les capacités selon cinq critères : modèle, interface, paramètres, résultats et prix.
Conclusion
Les limites cachées de l’API GPT Image 2.6 se résument en trois points :
- Chaque point d’accès a un rôle précis : utilisez generations pour créer une nouvelle image et edits pour modifier une image existante. Les résultats d’édition ne sont pas disponibles en GIF ou en SVG.
- Certains paramètres sont incompatibles : SVG et GIF ne sont pas compatibles avec la sortie en streaming, les paramètres de compression et
prompt_rewriter. Il faut choisir entre markup et mask. - Les résultats doivent être vérifiés : une réponse réussie ne garantit pas un fichier exploitable. Vérifiez le format du fichier, l’effet de boucle et la zone modifiée.
Intégrer GPT Image 2.6 ne consiste pas seulement à remplacer le nom du modèle : il faut vérifier que les points d’accès, les formats, les paramètres et les données renvoyées répondent aux besoins métier. Commencez par tester les capacités recherchées avec un petit nombre de requêtes réelles sur APIYI apiyi.com. Une fois leur disponibilité et leur coût réel confirmés, migrez progressivement le trafic de production.
📚 Références
- OpenAI API – Image generation : documentation officielle sur les endpoints, les sorties SVG/GIF, la modification du balisage et la gestion des erreurs
- Lien :
developers.openai.com/api/docs/guides/image-generation -
Note : principale source pour les endpoints et les limites des paramètres présentés dans cet article
-
OpenAI API – GPT Image 2.6 prompting guide : paramètres du modèle, processus de migration et exemples GIF/SVG
- Lien :
developers.openai.com/api/docs/guides/image-prompting -
Note : contient des points à prendre en compte lors de la migration, notamment pour
input_fidelityetreasoning.summary -
OpenAI – GPT Image 2.6 Sunburst Model : page du modèle Sunburst
- Lien :
developers.openai.com/api/docs/models/gpt-image-2.6-sunburst -
Note : capacités et tarifs du modèle
-
OpenAI – GPT Image 2.6 Flare Model : page du modèle Flare
- Lien :
developers.openai.com/api/docs/models/gpt-image-2.6-flare - Note : capacités et tarifs du modèle
Auteur : équipe technique APIYI
Échanges techniques : contactez-nous depuis la page d’accueil du site officiel APIYI, apiyi.com. Pour plus de ressources sur l’intégration, consultez le centre de documentation docs.apiyi.com.
