OpenAI
GPT Image 2.6
gpt-image-2.6-sunburst/image-to-image
Modèles de génération et d’édition d’images à deux niveaux d’OpenAI : Flare privilégie la vitesse, Sunburst vise la précision ; ils produisent directement des GIF animés et des SVG vectoriels et prennent en charge la retouche locale d’image
Essayer gpt-image-2.6-sunburst/image-to-image
Entrée
Sortie
imageTarifs
gpt-image-2.6-sunburst/image-to-image per image
Présentation
gpt-image-2.6-sunburst/image-to-image est un modèle dédié à l'édition image-à-image : il prend une ou plusieurs images sources accompagnées d'une description d'édition et produit une image modifiée. Son point fort est la cohérence des détails au fil des éditions successives : lorsqu'un même personnage, produit ou mise en page est retouché à plusieurs reprises, les détails de l'image restent plus stables, ce qui en fait un outil adapté à la production d'actifs visuels nécessitant des itérations continues. Les développeurs peuvent l'appeler via l'interface unifiée de HiAPI.ai, avec une facturation à l'image.
Points clés
- Cohérence des détails sur plusieurs passes d'édition — aux niveaux de qualité medium ou high, la cohérence des détails du personnage, du produit et de la mise en page est maintenue d'une passe d'édition à l'autre, ce qui convient aux retouches fines répétées.
- Édition locale par annotation — il est possible de soumettre une couche transparente superposée comportant des cercles ou des annotations comme indication de modification ; les annotations elles-mêmes ne sont pas conservées dans le résultat.
- Composition multi-sources et sortie grand format — jusqu'à 16 images sources peuvent être fournies en une seule fois, avec des ratios d'aspect de 3:1 à 1:3 et des niveaux de résolution de 1K à 4K.
Description des capacités
Édition d'image à partir d'images sources : avec 1 à 16 images sources jpeg, png ou webp en entrée, le modèle redessine ou modifie l'image selon une description d'édition pouvant atteindre 32 000 caractères ; le type de sortie est indépendant des images sources et peut être directement converti au format de livraison souhaité.
Deux modes de ciblage : masque et annotation : mask_url reçoit un PNG RGBA de mêmes dimensions que la première image source, les pixels transparents marquant la zone à éditer ; markup_url utilise quant à lui une couche transparente superposée comme indication de sélection. Les deux sont mutuellement exclusifs.
Contrôle distinct de la qualité et de la planification : quality contrôle le niveau de rendu (de low à max), tandis que complexity contrôle séparément la profondeur de planification ; pour les textes denses et les mises en page complexes, il est possible d'élever le niveau de planification sans augmenter simultanément le coût de rendu.
Format de sortie et gestion du fond : sortie possible en png, jpeg ou webp, jpeg et webp prenant en charge un niveau de compression de 0 à 100 ; le fond transparent est réservé au png ou au webp, ce qui convient aux éléments destinés à être directement superposés sur une page ou une maquette.
Résolution et ratio d'aspect au choix : la résolution de sortie peut être 1K, 2K ou 4K ; le ratio d'aspect peut suivre automatiquement l'image source ou être choisi parmi 16 préréglages allant de 1:1 à 21:9, afin d'obtenir dès la première génération un visuel adapté à l'emplacement cible.
Cas d'usage
- Équipes de design : itération de visuels de personnages et de gammes de produits — éditer de façon répétée une image de référence existante avec une description de modification pour produire des actifs visuels de série aux détails stables, destinés à l'harmonisation des supports de marque et des visuels produits.
- Équipes marketing : déclinaison en série de supports de campagne — utiliser un visuel principal existant comme image source pour produire des supports dans différents ratios d'aspect et résolutions, directement exploitables pour la diffusion publicitaire et les publications sur les réseaux sociaux.
- Développeurs : modifications locales guidées par annotation — téléverser une couche superposée avec des cercles pour désigner les zones à modifier et obtenir une image corrigée localement, à intégrer dans une chaîne de production de contenu afin de réduire les reprises manuelles.
- Front-end et construction de pages : génération d'images détourées — produire à partir d'une image de référence un png ou webp à fond transparent, directement utilisable pour les éléments de page et les ressources de composants.
Limites et conseils de choix
Les limites concernent principalement le niveau de qualité et la forme des entrées : l'avantage de cohérence des détails entre les passes ne vaut qu'aux niveaux de qualité medium ou high, il n'est pas garanti aux niveaux inférieurs ; le masque et l'annotation ne peuvent pas être utilisés simultanément, et le masque ne fait que marquer la zone à éditer, l'image entière pouvant tout de même être redessinée ; le fond transparent impose une sortie en png ou webp, et les paramètres de compression ne s'appliquent qu'au jpeg et au webp. Si la tâche consiste principalement à générer directement à partir de texte, sans contrainte d'image source, il convient de se tourner vers la variante texte-vers-image de la même famille.
Questions fréquentes
Voir toutes les questions →-
Comment se fait la facturation ? Les requêtes refusées sont-elles facturées ?
La facturation se fait à l'image, le prix unitaire étant déterminé par le niveau de qualité et la résolution, voir la grille tarifaire de cette page ; Flare et Sunburst sont au même prix. Pour l'image à image, chaque image de référence ajoute $0.012. Les GIF sont facturés séparément selon le niveau de qualité, indépendamment de la résolution. Les requêtes dont les paramètres sont invalides ou dont la taille du GIF dépasse la limite sont rejetées dès la soumission, et le montant prélevé est intégralement remboursé, sans frais.
-
Est-il possible de modifier seulement une partie de l'image ?
Oui, en utilisant la voie image-vers-image, avec l'une des deux méthodes suivantes au choix. Premièrement, mask_url : transmettez une image PNG RGBA de mêmes dimensions que la première image source ; les pixels entièrement transparents correspondent à la zone à modifier. Deuxièmement, markup_url : transmettez une image PNG transparente annotée, en indiquant par un cercle ou un autre marquage l'emplacement à modifier ; l'annotation elle-même n'apparaîtra pas dans le résultat. Les deux ne peuvent pas être transmises en même temps. Même avec un masque, le modèle peut encore effectuer une légère retouche sur l'ensemble de l'image.
-
Quelle est la différence entre Flare et Sunburst, et lequel choisir ?
Les deux modèles ont exactement les mêmes paramètres, le même mode d'utilisation et le même prix ; la différence réside dans leur orientation. Selon la présentation d'OpenAI, Flare génère les images plus rapidement, ce qui le rend adapté aux itérations rapides et à la génération d'images en lot : c'est le choix par défaut recommandé. Sunburst accorde davantage d'importance aux détails : lors d'éditions en plusieurs passes avec un niveau de qualité medium ou supérieur, les détails des personnages, des produits ou de la mise en page sont préservés de manière plus cohérente. En général, commencez par Flare ; si une même image doit être modifiée à plusieurs reprises et que la stabilité des détails est nécessaire, passez à Sunburst et réglez quality sur medium ou plus.
-
Peut-on générer directement des GIF animés ou des images vectorielles SVG ?
Oui, il suffit de définir output_format sur gif ou svg sur la ligne text-to-image ; la ligne image-to-image ne prend en charge que png, jpeg et webp. Le GIF est contrôlé par trois paramètres : frame_size définit la taille en pixels de chaque image (512x512 par défaut, la largeur et la hauteur déterminent aussi les proportions du GIF), frame_count définit le nombre d'images (2–16, 9 par défaut), frame_duration_ms définit la durée de chaque image (200 millisecondes par défaut). Lors de la génération d'un GIF, ne pas transmettre aspect_ratio ou transmettre auto.
Créer une tâche de génération
https://api.hiapi.ai/v1/tasks En-têtes
AuthorizationstringRequisClé API du compte. Requise sur chaque requête. Exemple : Bearer YOUR_HIAPI_API_KEY. Obtenir une clé API
Content-TypestringOptionnelLe corps de la requête est toujours analysé en JSON ; s'il est envoyé, seul application/json (charset facultatif) est accepté — toute autre valeur renvoie 415. Exemple : application/json.
Idempotency-KeystringOptionnelClé d'idempotence, jusqu'à 255 octets. Les reprises avec la même clé du même compte ne créent la tâche qu'une seule fois ; les rejeux renvoient le taskId d'origine.
En cas de timeout réseau ou de relance automatique du client, la même clé ne crée la tâche qu'une seule fois, sans double facturation (portée = le compte de la clé API). Utilisez un identifiant métier unique (ex. "order-42") ; les rejeux renvoient le taskId d'origine et les clés expirent 24 h après la première requête. La matrice complète des scénarios est dans la présentation de l'API asynchrone unifiée.
Corps
modelstringRequisValeur fixe actuelle : gpt-image-2.6-sunburst/image-to-image
routestringOptionnelValeur fixe actuelle : default
inputobjectRequis
Objet de paramètres métier pour gpt-image-2.6-sunburst/image-to-image et la route default — voir le tableau des paramètres ci-dessous.
promptstringRequisminLength 1maxLength 32000Décrivez les modifications à apporter à l'image source, ou l'image à générer à partir de l'image source, 32000 caractères maximum.
qualitystringOptionnelDéfaut: "high"Niveau de qualité de rendu, valeurs possibles : low, medium, high, xhigh, max ; high par défaut si non fourni.
lowmediumhighxhighmaxmask_urlstringOptionnelURL de l'image de masque : PNG RGBA de même dimension que la première image source, les pixels entièrement transparents marquent la zone à modifier, l'image entière peut tout de même être légèrement redessinée. Ne peut pas être fourni en même temps que markup_url.
backgroundstringOptionnelMode d'arrière-plan, valeurs possibles : auto, opaque, transparent ; transparent nécessite une sortie png ou webp.
autoopaquetransparentcomplexitystringOptionnelNiveau de planification, indépendant de la qualité de rendu : low convient aux modifications locales et ponctuelles, high convient aux textes denses et aux mises en page complexes ; high par défaut si non fourni.
lowmediumhighimage_urlsarrayRequisminItems 1maxItems 16Tableau d'URL d'images sources, 1 à 16 images http(s) accessibles publiquement, formats jpeg, png, webp pris en charge.
Array [ string ]
markup_urlstringOptionnelURL de l'image d'annotation : calque PNG transparent, utilisez des cercles et autres marques pour indiquer les emplacements à modifier, l'annotation elle-même n'apparaît pas dans le résultat. Ne peut pas être fourni en même temps que mask_url.
moderationstringOptionnelNiveau de modération du contenu, valeurs possibles : auto ou low ; low par défaut si non fourni.
autolowresolutionstringOptionnelDéfaut: "1K"Niveau de résolution de sortie, valeurs possibles : 1K, 2K, 4K ; 1K par défaut si non fourni.
1K2K4Kaspect_ratiostringOptionnelDéfaut: "auto"Ratio largeur/hauteur de sortie, auto par défaut si non fourni, c'est-à-dire qu'il suit le ratio de l'image source.
auto1:13:22:34:33:45:44:5Tout afficher (8)
16:99:162:11:221:99:213:11:3output_formatstringOptionnelDéfaut: "png"Format de sortie, valeurs possibles : png, jpeg, webp ; png par défaut si non fourni. Si output_compression est fourni, jpeg ou webp doit être fourni en même temps.
pngjpegwebpoutput_compressionintegerOptionnelmin 0max 100Niveau de compression 0–100, uniquement pour jpeg ou webp ; lorsque ce paramètre est fourni, output_format doit être défini sur jpeg ou webp en même temps.
callbackobjectOptionnel
Configuration de notification d'état terminal. Sans elle, aucun callback — interrogez la tâche vous-même.
Fournissez callback.url à la création et HiAPI envoie un POST à votre service à l'état terminal — plus besoin de polling. Le corps du rappel reprend la structure du détail de tâche ; vérification de signature, relances et idempotence sont décrits dans la présentation de l'API asynchrone unifiée.
urlstringRequisObligatoire si callback est présent. Un POST est envoyé vers cette URL à l'état terminal ; doit être une URL http(s) valide.
whenstringOptionnelDéfaut: "final"Seul final est pris en charge pour l'instant — notifié sur success et fail.
finalstoragestringOptionnelDéfaut: "temp"Niveau de stockage des artefacts : temp (par défaut, ~7 jours) ou persistent (long terme, facturé au volume). Solde insuffisant ou dépassement de limite ⇒ rétrogradation silencieuse en temp ; le niveau effectif figure dans la réponse de détail.
temppersistentExemples de requête
# Soumet une tâche asynchrone ; renvoie immédiatement un taskId (n'attend pas la génération)
curl -X POST "https://api.hiapi.ai/v1/tasks" \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2.6-sunburst/image-to-image",
"input": {
"prompt": "…",
"quality": "high",
"image_urls": "…",
"resolution": "1K",
"aspect_ratio": "auto",
"output_format": "png"
}
}' const res = await fetch("https://api.hiapi.ai/v1/tasks", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.HIAPI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "gpt-image-2.6-sunburst/image-to-image",
input: {
"prompt": "…",
"quality": "high",
"image_urls": "…",
"resolution": "1K",
"aspect_ratio": "auto",
"output_format": "png"
}
}),
});
const task = await res.json();
// { code: 200, message: "success", data: { taskId } } import os, requests
res = requests.post(
"https://api.hiapi.ai/v1/tasks",
headers={"Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}"},
json={
"model": "gpt-image-2.6-sunburst/image-to-image",
"input": {
"prompt": "…",
"quality": "high",
"image_urls": "…",
"resolution": "1K",
"aspect_ratio": "auto",
"output_format": "png"
}
},
)
print(res.json()) # { code, message, data: { taskId } } 200 OK
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR"
}
} 400 Bad Request
{
"code": 400,
"message": "invalid request",
"data": null,
"error_code": "INVALID_REQUEST"
} Obtenir le détail de la tâche
https://api.hiapi.ai/v1/tasks/:id Champs de réponse
taskIdstringRequisIdentifiant de tâche, toujours préfixé tk-hiapi-.
modelstringRequisNom complet résolu du modèle. Les tâches envoyées avec le paramètre route renvoient base@route (ex. gpt-image-2/text-to-image@ext) ; sinon identique au nom fourni.
routestringOptionnelPrésent uniquement si le paramètre route explicite a été utilisé ; renvoie la valeur soumise.
statusstringRequisStatut de la tâche.
queued En file, pas encore démarrée.
handling En cours de traitement.
archiving Traitement terminé, préparation des artefacts.
success Terminal : terminé, artefacts disponibles (output renvoyé).
fail Terminal : échec (error renvoyé).
Après soumission, suivez status : success et fail sont terminaux, le reste non terminal. Interrogez toutes les 1–3 s jusqu'à l'état terminal. En cas de succès, téléchargez les artefacts via output[].url et transférez-les avant expireAt ; pour une conservation longue durée, indiquez storage: "persistent" à la création.
creatednumberRequisDate de création de la tâche (secondes Unix).
completednumberRequisSecondes Unix de l'état terminal ; 0 tant que non terminal.
outputarrayOptionnel
Présent uniquement si status == success. Liste d'artefacts — toujours un tableau ; une tâche peut renvoyer plusieurs types à la fois (ex. video + first_frame).
Array [ object ]
Éléments du tableau
urlstringRequisURL de l'artefact, téléchargeable directement.
typestringRequisValeurs possibles actuelles : video, image, audio, first_frame, last_frame, thumbnail ; d'autres pourront s'ajouter.
expireAtnumberRequisSecondes Unix de disponibilité de l'artefact ; téléchargez ou transférez avant l'expiration.
errorobjectOptionnel
Présent uniquement si status == fail.
codestringRequisCode d'erreur métier.
messagestringRequisDescription de l'erreur.
Exemples de réponse
Succès
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR",
"model": "happyhorse-1-0",
"status": "success",
"created": 1777282033,
"completed": 1777282099,
"output": [
{
"url": "https://cdn.hiapi.ai/tasks/.../video.mp4",
"type": "video",
"expireAt": 1777886899
}
]
}
} En cours (non terminal)
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "archiving",
"created": 1777282033,
"completed": 0
}
} Échec
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "fail",
"created": 1777282033,
"completed": 1777282099,
"error": {
"code": "TASK_FAILED",
"message": "task failed"
}
}
} Articles
Voir tous les articles →-
Guide d'utilisation
Recraft V4.1 Flash pour photos produit e-commerce : des visuels de catalogue en série à 0,01 $ pièce
Un véritable lot parallèle sur recraft-v4.1-flash/text-to-image : photos de fiche produit et mises en situation, blancheur du fond mesurée, temps d'exécution et script par lots.
-
Comparatif et évaluation
Qwen Image 2.1 Pro vs GPT Image 2.5 : comment choisir ?
Pour une sortie en qualité 2K et 10 images de référence, choisissez Qwen Image 2.1 Pro ; pour le fond transparent et 16 images de référence, choisissez GPT Image 2.5 Flare. Avec deux comparaisons à prompt identique : affiche en chinois et flacon de parfum.
-
Comparatif et évaluation
Vidu Q4 Preview vs Kling 3.0 : quel modèle image-vers-vidéo choisir ?
Audio par défaut, 16 secondes et 5 paliers de résolution : choisissez Vidu Q4 Preview ; verrouillage des images par frames de début et de fin : choisissez Kling 3.0. Avec deux comparaisons à prompt identique, sur un hydravion et une barista.
-
Guide d'utilisation
Combien coûte l'API Mureka 9.5 ? 0,3215 $ par titre
Le prix des deux options, génération à partir de paroles et musique instrumentale, le budget selon le nombre de titres, la comparaison avec les autres modèles musicaux du site, et comment choisir entre les deux options.
-
Guide d'utilisation
Catalogue de prompts Mureka 9.5 : 6 cas réels à copier directement
Six scénarios — indie pop anglaise, city-pop chinoise, folk acoustique, musique de film, musique d'ambiance lo-fi et musique néo-chinoise — avec pour chacun un résultat réel, le prompt complet et un lien de génération en un clic.
-
Comparatif et évaluation
GPT Image 2.6 face à 2.5 : test réel avec un même prompt, l'amélioration en vaut-elle la peine ?
Avec le même prompt de comptoir à café, où se manifeste concrètement l'écart entre 0,049 et 0,025
-
Comparatif et évaluation
Qwen Image 3.0 vs Nano Banana 2 : prix, résolution, comment choisir ses images de référence
Prix unitaires 1K/2K/4K, facturation des images de référence, différences de champs de requête, plus trois séries de tests réels avec le même prompt pour vous aider à choisir la bonne API d'image sur HiAPI.
-
Guide d'utilisation
Tarifs de l'API GPT Image 2.6 : comment se calculent les niveaux de qualité, les résolutions et les formats de sortie
-
Guide d'utilisation
Qwen Image 2.1 Pro 提示词中文 : 7 recettes testées pour menus, étiquettes et affiches
Modèles associés
Voir tous les modèles →Même type
-
Google Virtual Try-On Google $0.107 /image -
FLUX.2 Klein 4B Black Forest Labs $0.0004 /image -
Wan 2.7 Image Alibaba $0.035 /image -
Ideogram V3 Character Ideogram $0.090 /image -
BRIA Product Shot Bria $0.058 /image -
851 Labs Background Remover 851 Labs $0.002 /image -
FLUX 1.1 Pro Black Forest Labs $0.050 /image -
Ideogram V4.5 Ideogram $0.011 /image -
Grok Imagine xAI $0.011 /seconde -
Nano Banana Google $0.011 /image -
GPT Image 2.6 OpenAI $0.023 /image -
Recraft V4.1 Recraft $0.010 /image