Note de l'auteur : OpenAI a publié en open source le projet de démonstration Photobooth basé sur gpt-image-2. Cet article décortique en profondeur le code source, le principe de fonctionnement du flux (streaming) et explique comment reproduire cette capacité sans aucune barrière technique via le service proxy API d'APIYI.
OpenAI a rendu public sur GitHub le projet openai-imagegen-demo. Il s'agit d'une application Next.js publiée pour accompagner gpt-image-2, illustrant des capacités uniques du nouveau modèle telles que la génération d'images en flux, la stylisation de portraits et la génération concurrente multi-styles. Adresse du projet : github.com/openai/openai-imagegen-demo.
Ce n'est pas un énième exemple "Hello World" : le code source cache le mode de sortie en flux progressif partial_images recommandé par OpenAI, ainsi que l'utilisation la plus récente du point de terminaison /v1/images/edits dans des scénarios d'édition multi-images.
Valeur ajoutée : Après avoir lu cet article, vous comprendrez parfaitement l'architecture, les paramètres clés et les étapes de reproduction de cette démo officielle, et vous saurez comment utiliser la même API gpt-image-2 en Chine sans VPN et sans attente via le service proxy API d'APIYI.

Points clés du projet openai-imagegen-demo
| Point | Description | Valeur |
|---|---|---|
| Positionnement | Démo Photobooth open source d'OpenAI, illustrant la stylisation de portraits par gpt-image-2 |
Référence la plus autorisée pour l'intégration de gpt-image-2 |
| Stack technique | Next.js 15 App Router + TypeScript + Tailwind + shadcn/ui | Stack web moderne, réutilisable en production |
| Point de terminaison | POST /v1/images/edits, avec stream: true et partial_images |
Première démo officielle de génération d'images en flux |
| Modèle | gpt-image-2, qualité high, format 1024x1536 (portrait 2:3) |
Accent mis sur la fidélité du portrait et la restauration des expressions |
| Licence | Licence MIT, libre pour usage commercial et développement secondaire | Intégration directe possible dans des projets commerciaux |
| Accès | Nécessite une clé API OpenAI ; le service proxy API apiyi.com permet une connexion directe en Chine |
Abaisse la barrière à l'entrée, pas besoin de VPN |
Détails sur le positionnement du projet imagegen-demo
openai-imagegen-demo est essentiellement un photomaton interactif (Photobooth) : l'utilisateur télécharge ou prend un selfie, choisit jusqu'à 4 styles prédéfinis (comme le style tricot, art numérique, peinture à l'huile, etc.), et l'application appelle simultanément le point de terminaison images/edits de gpt-image-2, renvoyant progressivement le résultat de chaque style en flux.
Contrairement aux "démos de génération texte vers image" courantes sur le marché, ce dépôt officiel se concentre sur deux nouvelles capacités : l'image vers image (image editing) et la sortie progressive en flux (partial_images). La première résout le défi technique du "maintien de la cohérence faciale", tandis que la seconde transforme l'attente de 30 secondes devant un écran noir en une apparition progressive image par image.

Analyse de l'architecture du projet imagegen-demo
Analyse du code source clé
Le cœur du projet repose sur une seule route API : app/api/photobooth/route.ts. Elle est chargée d'empaqueter l'image portrait et l'invite de style provenant du front-end, puis d'effectuer une requête en mode streaming vers le point de terminaison /v1/images/edits d'OpenAI. Voici la structure essentielle du corps de la requête :
const body = {
model: "gpt-image-2",
prompt: `${style.prompt}\n\n${OPENAI_IMAGE_OUTPUT_REQUIREMENTS}`,
images: [{ image_url: imageDataUrl }],
size: "1024x1536",
quality: "high",
output_format: "png",
stream: true,
partial_images: 2,
};
Trois détails méritent votre attention :
stream: true+partial_images: 2: Il s'agit d'une capacité de streaming exclusive àgpt-image-2. Le serveur envoie deux images intermédiaires avant de livrer le résultat final.- Paramètre
images: Accepte une ou plusieurs images de référence sous forme d'URL de données (data URL), permettant la fusion et l'édition multi-images. OPENAI_IMAGE_OUTPUT_REQUIREMENTS: Impose des contraintes strictes ("portrait au format 2:3, maintien de la posture et de l'expression du personnage"), ce qui constitue la règle d'or pour rédiger une invite efficace pour l'édition d'images.
Analyse des événements de streaming
La route utilise SSE (Server-Sent Events) pour écouter les réponses officielles et traiter trois types d'événements :
image_edit.partial_image: Image intermédiaire, transmetstyle-partialau front-end.image_edit.completed: Produit final, transmetstyle-finalau front-end.error: Lève une exception, gérée de manière centralisée par le front-end.
Côté React, le front-end utilise un hook personnalisé pour maintenir une chaîne de promesses writeQueue, garantissant que l'ordre des événements reste cohérent lors de requêtes simultanées sur plusieurs styles. C'est sans doute la partie la plus intéressante du point de vue de l'ingénierie dans cette démo.
Prise en main rapide de imagegen-demo
Étapes de reproduction minimalistes
Selon le README officiel, il suffit de 5 commandes pour faire fonctionner le projet :
git clone https://github.com/openai/openai-imagegen-demo
cd openai-imagegen-demo
cp .env.example .env.local
echo "OPENAI_API_KEY=sk-xxxxx" >> .env.local
npm install && npm run dev
Voir la configuration complète .env.local via le service proxy API de APIYI
# Option 1 : Utiliser l'API officielle OpenAI (nécessite un accès réseau étranger + quota API)
OPENAI_API_KEY="sk-proj-xxxxx"
# Option 2 : Utiliser le service proxy API de APIYI (connexion directe depuis la Chine, sans VPN)
OPENAI_API_KEY="your-apiyi-key"
OPENAI_BASE_URL="https://vip.apiyi.com/v1"
# Optionnel : ID d'organisation et de projet
OPENAI_ORG_ID=""
OPENAI_PROJECT_ID=""
Il suffit ensuite de remplacer le endpointBase codé en dur dans app/api/photobooth/route.ts par une lecture de process.env.OPENAI_BASE_URL ?? "https://api.openai.com/v1" pour basculer facilement entre l'API officielle et le service proxy.
const endpointBase = process.env.OPENAI_BASE_URL ?? "https://api.openai.com/v1";
const response = await fetch(`${endpointBase}/images/edits`, {
method: "POST",
headers: {
"Authorization": `Bearer ${apiKey}`,
"Content-Type": "application/json",
},
body: JSON.stringify(body),
});
Conseil d'intégration : Les développeurs basés en Chine rencontreront trois obstacles majeurs avec la démo officielle d'OpenAI (réseau, quota API, moyens de paiement). Nous recommandons d'utiliser une clé compatible via le service proxy APIYI (apiyi.com) et de pointer
OPENAI_BASE_URLvershttps://vip.apiyi.com/v1. Vous pourrez ainsi lancer le projet localement en un clic, avec une compatibilité totale des événements de streaming et des paramètres.
Comparaison des solutions d'intégration pour imagegen-demo

| Solution d'intégration | Exigences réseau | Vitesse d'activation | Prix par unité | Modifications SDK |
|---|---|---|---|---|
| OpenAI officiel | Réseau étranger requis | Carte bancaire + examen | Facturation par jeton (env. 0,15 $/image) | Aucune |
| API entreprise fal | Accès étranger | Contrat entreprise requis | Facturation par jeton | Modifications légères |
| Canal proxy APIYI | Accès direct local | Immédiat | Facturation transparente par jeton | Juste base_url |
| Canal inverse APIYI | Accès direct local | Immédiat | Fixe 0,03 $ / image | Juste le nom du modèle |
Analyse des solutions
Analyse de l'accès officiel OpenAI : Le canal officiel reste la référence absolue en termes de conformité et de SLA, et constitue l'environnement cible par défaut pour imagegen-demo. Cependant, son utilisation en Chine nécessite un VPN, une carte bancaire internationale et un délai d'approbation pour les quotas API. En comparaison, le canal proxy APIYI est bien plus adapté à la phase de test et aux environnements de production locaux grâce à sa facilité d'accès.
Analyse de l'API entreprise fal : fal a lancé ses points de terminaison entreprise pour gpt-image-2 le 21 avril 2026, offrant d'excellentes performances en termes de SLA à haute concurrence. Toutefois, pour les développeurs indépendants, la barrière à l'entrée est élevée. Pour ceux qui souhaitent faire tourner imagegen-demo localement, APIYI est une solution beaucoup plus légère.
Différences entre proxy et inverse APIYI : Le proxy signifie qu'APIYI transmet vos requêtes à l'API officielle d'OpenAI ; la facturation, le SLA et les fonctionnalités sont identiques à l'original, ce qui est idéal pour un usage commercial. L'inverse repose sur une rétro-ingénierie de l'interface web de ChatGPT, offrant un prix fixe de 0,03 $/image, parfait pour le prototypage. Les deux canaux sont disponibles simultanément sur la plateforme APIYI, permettant aux développeurs de basculer selon leurs besoins.
Note comparative : Les données ci-dessus sont compilées à partir de la tarification officielle d'OpenAI, des communiqués de presse de fal et de la documentation technique
docs.apiyi.com. Vous pouvez les vérifier en temps réel via APIYI sur apiyi.com.
Analyse détaillée des paramètres clés de gpt-image-2 (source : imagegen-demo)
D'après le fichier lib/constants.ts du projet imagegen-demo, voici les combinaisons de paramètres par défaut recommandées officiellement pour gpt-image-2 :
| Paramètre | Valeur par défaut du Demo | Description | Conseil d'ajustement |
|---|---|---|---|
| model | gpt-image-2 |
Modèle d'image le plus récent | Ne pas modifier |
| size | 1024x1536 |
Ratio portrait 2:3 | Pour du paysage réseaux sociaux, utilisez 1536x1024 |
| quality | high |
Qualité d'image maximale | medium/low pour réduire les coûts |
| output_format | png |
Supporte les fonds transparents | Utilisez webp pour le Web afin d'économiser la bande passante |
| stream | true |
Active le flux SSE | Indispensable pour les applications temps réel |
| partial_images | 2 |
Envoie 2 images intermédiaires | Max 3 ; compromis entre attente et bande passante |
Meilleures pratiques pour l'ingénierie d'invite (Prompt Engineering)
La constante OPENAI_IMAGE_OUTPUT_REQUIREMENTS du Demo est un modèle d'invite très précieux :
"portrait orientation (2:3 aspect ratio), preserve the exact people, poses, facial expressions, and scene composition as faithfully as possible"
Ce texte révèle le paradigme d'or pour l'édition d'images avec gpt-image-2 :
- Spécifier explicitement le ratio : Même si le paramètre
sizeest défini, réitérez le ratio dans l'invite pour améliorer le taux de réussite. - Insister sur la fidélité :
preserve the exact ...est la formule magique pour maintenir la cohérence faciale. - Énumérer les dimensions de fidélité : Citez précisément les personnes, les poses, les expressions et la composition de la scène ; plus vous êtes spécifique, meilleure sera la restitution.

FAQ – Questions fréquentes
Q1 : Qu’est-ce que le projet openai-imagegen-demo ?
openai-imagegen-demo est une application de démonstration "Photobooth" open-source publiée par OpenAI sur GitHub. Elle utilise Next.js 15, TypeScript et gpt-image-2 pour réaliser un flux complet : "téléchargement de portrait → choix du style → génération en flux de plusieurs images". C'est actuellement la référence la plus fiable pour l'intégration du point de terminaison images/edits de gpt-image-2, sous licence MIT pour un usage commercial.
Q2 : Quelle est la différence entre imagegen-demo et d’autres démos de génération d’images ?
La différence réside principalement dans deux points : d'abord, l'utilisation du tout nouveau point de terminaison /v1/images/edits de gpt-image-2 pour l'image vers image (plutôt que le texte vers image traditionnel de DALL-E), ce qui permet de maintenir la cohérence faciale ; ensuite, l'activation de la capacité de flux stream: true + partial_images, permettant aux utilisateurs de voir le rendu progressif de l'image au lieu d'attendre 30 secondes devant un écran noir.
Q3 : Quand imagegen-demo a-t-il été publié ?
Ce dépôt a été publié en même temps que ChatGPT Images 2.0, lancé par OpenAI le 21 avril 2026. Avec le lancement officiel du modèle gpt-image-2 dans l'API et Codex, l'objectif officiel est de réduire la barrière à l'entrée pour les développeurs. Le README est mis à jour régulièrement.
Q4 : Quels sont les cas d’usage les plus adaptés pour imagegen-demo ?
Il est principalement adapté aux quatre scénarios suivants :
- Changement de style / costume pour applications sociales : Les utilisateurs téléchargent des selfies pour générer des versions style peinture à l'huile, cyberpunk, etc.
- Uniformisation visuelle pour l'e-commerce : Convertir en masse des photos de produits vers une identité visuelle de marque cohérente.
- Photomaton IA pour événements : Dispositifs interactifs pour des événements physiques.
- Démos pédagogiques / Prototypage hackathon : Démonstration rapide des nouvelles capacités de gpt-image-2.
Q5 : Comment exécuter rapidement imagegen-demo via API ?
Nous recommandons d'utiliser le service proxy API d'APIYI pour une reproduction rapide :
- Visitez APIYI (apiyi.com), créez un compte et générez une clé API.
- Clonez le dépôt :
git clone https://github.com/openai/openai-imagegen-demo - Dans
.env.local, ajoutezOPENAI_API_KEYetOPENAI_BASE_URL=https://vip.apiyi.com/v1 - Modifiez
route.tspour queendpointBaseliseprocess.env.OPENAI_BASE_URL. npm install && npm run devpour voir le résultat surlocalhost:3000.
APIYI prend en charge gpt-image-2, Nano Banana Pro, Flux et d'autres modèles d'image majeurs, facilitant la comparaison et le basculement local.
Q6 : Comment fonctionne le paramètre partial_images d’imagegen-demo ?
partial_images indique combien d'images intermédiaires le serveur doit envoyer avant le résultat final. La valeur par défaut est 2, ce qui signifie que la génération passe par trois étapes : "ébauche initiale → optimisation secondaire → résultat final". Chaque image intermédiaire est envoyée via l'événement SSE image_edit.partial_image, permettant au frontend de rendre l'image en temps réel. Ce paramètre supporte jusqu'à 3, mais plus il y a d'images intermédiaires, plus la consommation de bande passante augmente.
Q7 : Comment les développeurs peuvent-ils exécuter imagegen-demo sans obstacles ?
L'exécution directe de la démo officielle depuis certains pays peut rencontrer des obstacles (accès réseau à l'API OpenAI, besoin de carte bancaire internationale, cycle d'approbation des quotas). Le service proxy APIYI résout cela :
- Inscrivez-vous sur
apiyi.com(paiement via méthodes locales). - Obtenez une clé API compatible avec le protocole OpenAI.
- Configurez
OPENAI_BASE_URL=https://vip.apiyi.com/v1dans.env.local. route.tslira cette variable d'environnement, sans aucune autre modification du code.
Le processus prend environ 5 minutes, sans besoin de VPN, avec une facturation transparente alignée sur celle d'OpenAI.
Q8 : Quelles sont les limites connues d’imagegen-demo ?
Voici les limitations actuelles :
- Temps de génération par image : En qualité élevée (
quality: high), comptez 20 à 30 secondes par image. - Cohérence faciale non garantie à 100% : Des déformations légères peuvent survenir dans des poses complexes ou des scènes avec plusieurs personnes.
- Coûts : La facturation officielle d'OpenAI est basée sur les tokens ; une image de haute qualité coûte environ 0,15 $ au départ. Pour du volume, utilisez la qualité
mediumou le service proxy APIYI (0,03 $/image). - Préréglages de style limités : La démo n'intègre qu'une dizaine de styles ; il faut étendre
lib/styles.tssoi-même. - Compatibilité mobile : L'autorisation de la caméra sur iOS Safari peut nécessiter une validation manuelle lors de la première visite.
Points clés de openai-imagegen-demo
- Open Source officiel d'OpenAI : Démo officielle publiée avec gpt-image-2, sous licence MIT, utilisable commercialement.
- Focus sur l'image vers image : Utilise le point de terminaison
/v1/images/edits, un paradigme technique pour maintenir la cohérence faciale. - Technique de rendu en streaming :
stream: true+partial_images: 2transforme l'attente d'un écran noir en un rendu progressif. - Full-stack Next.js 15 : L'architecture App Router + SSE est la meilleure pratique moderne pour les applications de génération d'images.
- Raccourci pour l'accès en Chine : Via le service proxy API d'APIYI (apiyi.com), il suffit de modifier la
base_urlpour une connexion directe. - Paradigme d'invite (Prompt) en or :
preserve the exact ...est la formule magique pour la fidélité, à copier absolument dans vos projets. - Double canal (officiel vs proxy) : Pour un usage commercial, privilégiez le canal officiel (aligné sur OpenAI) ; pour les tests, le canal proxy (tarif fixe de 0,03 $/image).
Conclusion
openai-imagegen-demo est la meilleure porte d'entrée pour comprendre les nouvelles capacités de gpt-image-2. Sa valeur ajoutée repose sur trois piliers :
- Référence officielle : Un modèle d'intégration écrit par OpenAI, couvrant les paramètres, les invites et l'architecture de streaming.
- Code prêt pour la production : Next.js 15 + SSE + concurrence multi-style, réutilisable directement dans vos propres projets.
- Reproductibilité locale : Grâce au service proxy APIYI, les développeurs peuvent faire fonctionner la démo officielle en 5 minutes.
Si vous souhaitez tester immédiatement les capacités d'édition d'image en streaming de gpt-image-2, nous vous recommandons d'obtenir une clé compatible via APIYI (apiyi.com), de cloner openai-imagegen-demo et de pointer OPENAI_BASE_URL vers https://vip.apiyi.com/v1. Vous pourrez ainsi reproduire localement les effets de la démonstration officielle d'OpenAI.
Lectures complémentaires
Si vous vous intéressez à gpt-image-2 et à openai-imagegen-demo, nous vous recommandons de poursuivre votre lecture :
- 📘 Où trouver l'API inversée de gpt-image-2 ? Connectez-vous au canal officiel APIYI en 3 minutes – Découvrez la solution économique à 0,03 $ par image via le canal officiel.
- 📊 Comparatif des modèles d'image : gpt-image-2 vs Nano Banana Pro – Analysez les différences de capacités entre les principaux modèles d'image.
- 🚀 Guide de déploiement de gpt-image-2 : 6 secteurs clés – Explorez des cas d'usage réels dans l'e-commerce, l'éducation, les réseaux sociaux, etc.
📚 Références
-
Dépôt officiel OpenAI imagegen-demo : code source complet, README et documentation d'installation.
- Lien :
github.com/openai/openai-imagegen-demo - Description : Le point de départ idéal pour accéder au code source original et aux guides d'installation afin de comprendre le paradigme d'intégration de gpt-image-2.
- Lien :
-
Documentation officielle de l'API OpenAI gpt-image-2 : paramètres du modèle, points de terminaison et détails de facturation.
- Lien :
developers.openai.com/api/docs/models/gpt-image-2 - Description : Consultez tous les paramètres pris en charge, les tarifs et les règles de limitation de débit.
- Lien :
-
Page de lancement d'OpenAI ChatGPT Images 2.0 : présentation des capacités du nouveau modèle.
- Lien :
openai.com/index/introducing-chatgpt-images-2-0/ - Description : Découvrez la philosophie de conception, les capacités principales et les cas d'utilisation de gpt-image-2.
- Lien :
-
Documentation du canal de transfert officiel APIYI pour gpt-image-2 : guide de connexion directe depuis la Chine.
- Lien :
docs.apiyi.com/en/api-capabilities/gpt-image-2-all/overview - Description : Obtenez votre clé API compatible, la configuration
base_urlet les détails tarifaires.
- Lien :
Auteur : Équipe technique APIYI
Échanges techniques : N'hésitez pas à partager vos retours d'expérience sur imagegen-demo dans les commentaires. Pour plus de documentation, visitez le centre de documentation APIYI sur docs.apiyi.com.
