Skip to main content
OpenAI Images Generations API attualmente supporta diversi modelli di generazione di immagini, tra cui il classico dall-e-3, la capacità di rendering testuale più avanzata di gpt-image-1, l’ultima generazione di gpt-image-2, e la serie di modelli nano-banana / nano-banana-2-lite / nano-banana-2 / nano-banana-pro accessibili tramite la stessa interfaccia. Tutti possono generare immagini di alta qualità in base a descrizioni testuali. Questo documento descrive principalmente il processo di utilizzo dell’API OpenAI Images Generations, che ci consente di utilizzare facilmente le funzionalità di generazione di immagini della serie OpenAI.

Processo di richiesta

Per utilizzare l’API OpenAI Images Generations, prima di tutto vai al pannello di controllo di Ace Data Cloud per ottenere il tuo API Token, da conservare per uso futuro. Se non hai ancora effettuato il login o la registrazione, verrai automaticamente reindirizzato alla pagina di login che ti invita a registrarti e accedere; una volta completato, verrai riportato automaticamente alla pagina corrente. Un API Token è sufficiente per accedere a tutti i servizi della piattaforma, senza necessità di richiederne uno separato per ogni servizio. La prima richiesta offre un credito gratuito, per un’esperienza senza costi; quando il credito è insufficiente, puoi ricaricare il saldo generale nel pannello di controllo.
📘 Documentazione completa: OpenAI Images Generations API →

Modello GPT-Image-2

gpt-image-2 è il nuovo modello di generazione di immagini lanciato da OpenAI, che presenta miglioramenti significativi rispetto a dall-e-3 e gpt-image-1 nei seguenti aspetti:
  • Maggiore capacità di seguire istruzioni: in grado di comprendere con precisione istruzioni strutturate complesse riguardanti composizione, conteggio, relazioni spaziali, ecc.
  • Rendering testuale più chiaro: in scenari come poster, menu, infografiche, loghi, l’inglese e i numeri non presentano quasi mai confusione.
  • Espressione stilistica più ricca: supporta nativamente vari stili come ritratti cinematografici, poster vintage, illustrazioni per bambini, fotografia di prodotto, infografiche, ecc.
  • Supporto nativo per più proporzioni + alta risoluzione: copre 5 proporzioni (1:1, 4:3, 3:4, 16:9, 9:16) con 3 livelli di risoluzione (1K / 2K / 4K).
Il modo di chiamata è completamente identico ad altri modelli, basta impostare il campo model su gpt-image-2. L’url nel risultato restituito è un link a un’immagine ospitata permanentemente su platform.cdn.acedata.cloud, che può essere aperto direttamente nel browser o incorporato in una pagina web.

Varianti di linea (:official / :reverse)

gpt-image-2 utilizza per impostazione predefinita la linea standard. È possibile scegliere esplicitamente la linea tramite il suffisso del nome del modello:
  • gpt-image-2:official: canale ufficiale, stabile e conforme. Supporta risoluzioni reali di 2K / 4K, addebito per ogni immagine, il prezzo è il doppio di quello predefinito di gpt-image-2. Se la linea non è disponibile, restituisce direttamente un errore, senza degradazione automatica.
  • gpt-image-2:reverse: completamente equivalente al gpt-image-2 predefinito, con un miglior rapporto qualità-prezzo, senza variazione di prezzo.

Valori supportati per size

gpt-image-2 controlla solo il formato di size, purché non sia auto o una stringa vuota, deve corrispondere a WIDTHxHEIGHT (ad esempio 1024x1024, 2048x1152, 800x600); qualsiasi altra forma restituirà 400. Tutte le dimensioni (1K / 2K / 4K / personalizzate) vengono addebitate uniformemente per immagine, senza sovrapprezzo per dimensione. Limitazioni delle dimensioni: le dimensioni personalizzate devono soddisfare che sia la larghezza che l’altezza siano multipli di 16, lunghezza massima ≤ 3840, numero totale di pixel ≤ 8.294.400; oltre i limiti, verrà restituito un errore 4xx.
Se si passa esplicitamente size: "auto", la piattaforma pianificherà la tela nello spazio proporzionale continuo e giudicherà secondo la seguente priorità: pixel o proporzioni esplicite nel prompt, standard di denominazione (carta / stampa / posizionamento della piattaforma / pubblicità / dispositivo / fotografia / cinema), consuetudini del mezzo, infine inferenza compositiva. Pertanto, oltre alle comuni proporzioni 1:1, 4:5, 9:16, 21:9, possono essere mantenute anche proporzioni non predefinite come 1.91:1, 1.85:1, 2.39:1, carta ISO 1:√2; la dimensione finale verrà automaticamente regolata ai multipli di 16 supportati dal servizio e al budget di pixel. Se l’automazione non è disponibile, si tornerà al formato predefinito del modello, senza interrompere la generazione. Se si omette il campo size, verrà utilizzato direttamente il formato predefinito del modello; se ci sono requisiti rigorosi sui pixel, si consiglia comunque di passare direttamente WIDTHxHEIGHT. L’output sotto 1K non garantisce un allineamento rigoroso dei pixel: se passi 1024x1024, potresti ricevere 1254x1254, mantenendo la proporzione. Se lo rimandi come size, il costo rimarrà invariato. Una chiamata a 4K richiede solitamente 4–8 minuti, si consiglia di utilizzarla in combinazione con il callback_url per callback asincroni.
Riguardo al parametro n gpt-image-2 supporta n > 1 (valori da 1 a 10): una richiesta può restituire e addebitare il numero corrispondente di immagini. Per garantire che i risultati siano diversi, si consiglia di passare contemporaneamente prompt o seed diversi. Questo vale anche per gpt-image-1 / gpt-image-1.5, e per la serie nano-banana / nano-banana-2-lite / nano-banana-2 / nano-banana-pro; dall-e-3 supporta solo n = 1. Si noti che response_format=b64_json supporta solo n=1, per n>1 si prega di utilizzare il ritorno URL predefinito. Se alcune immagini non vengono generate correttamente, verranno restituite e addebitate solo le parti riuscite.
Di seguito, attraverso alcuni esempi reali da diverse angolazioni, possiamo percepire intuitivamente le capacità di gpt-image-2.

Scena 1: Ritratto cinematografico

Nella frase di suggerimento si possono utilizzare termini cinematografici (pellicola 35mm, profondità di campo ridotta, luci al neon, ecc.) per controllare con precisione l’atmosfera e la qualità. Codice di esempio in Python:
Il risultato restituito è il seguente:
L’immagine generata è mostrata di seguito:

Scena 2: Poster di viaggio vintage (con rendering del testo)

gpt-image-2 si comporta in modo stabile nella composizione e nel rendering dei caratteri, ed è molto adatto per generare poster, menu, biglietti d’auguri e altri progetti di design con testo.
L’immagine corrispondente al campo url del risultato restituito è mostrata di seguito:

Si può notare che il modello ha non solo riprodotto accuratamente lo stile visivo del poster Art Deco, ma anche il testo del titolo AMALFI e ITALIA 1958 è stato reso in modo chiaro e corretto.

Scena 3: Composizione complessa e conteggio

Il seguente suggerimento è utilizzato per testare la capacità del modello di seguire istruzioni strutturate come “quantità” e “posizione”.
L’immagine generata è mostrata di seguito:

Si può notare che il numero di libri sui tre ripiani (1 / 3 / 7) corrisponde esattamente a quanto indicato nel suggerimento, cosa che era difficile da realizzare in modo stabile nell’era di dall-e-3.

Scena 4: Stile illustrativo (orizzontale)

Specificando il mezzo artistico e le parole chiave emotive, è possibile guidare il modello a produrre illustrazioni stilizzate.
L’illustrazione orizzontale generata è mostrata di seguito:

Asincrono e callback

gpt-image-2 richiede solitamente 60-90 secondi per una singola chiamata; se non si desidera mantenere una connessione lunga, è possibile utilizzare il meccanismo di callback asincrono callback_url descritto in seguito, il flusso di chiamata è identico a quello di altri modelli.

Modelli della serie Nano Banana

La serie nano-banana è un modello di generazione di immagini basato su Gemini, integrato tramite lo stesso endpoint /openai/images/generations, senza necessità di cambiare endpoint, basta modificare model in uno qualsiasi di quelli nella tabella sottostante.
Importante: intervallo di supporto dei parametri Nano Banana si integra con il protocollo OpenAI tramite uno strato di adattamento, rispetto a gpt-image-* supporta solo i seguenti parametri: model, prompt, size, n.
  • size verrà mappato alla aspect_ratio interna secondo la tabella sottostante, le dimensioni non elencate verranno ridotte a 1:1:
    • 1024x1024 / 512x512 / 256x2561:1
    • 1792x102416:9
    • 1024x17929:16
  • Non supporta i parametri quality, style, response_format, background, output_format, ecc.; anche se inseriti verranno ignorati. n > 1 è supportato (1–10), restituirà e addebiterà il numero corrispondente di immagini.
  • La struttura di ritorno segue il formato OpenAI (data[].url), ma created è fisso a 0, e non verrà restituito b64_json, revised_prompt sarà sempre uguale al prompt originale.

Chiamata di base

Il risultato restituito è il seguente:
L’immagine generata può essere accessibile direttamente tramite il campo url restituito:

Aggiorna al modello di punta nano-banana-pro

Basta cambiare model in nano-banana-pro, gli altri parametri rimangono esattamente gli stessi:
Esempio di risposta:

Callback asincrono

Il meccanismo di callback asincrono callback_url è altrettanto efficace per nano-banana, il flusso di chiamata è completamente identico ad altri modelli, vedere la sezione Callback asincrono qui sotto.

Uso di base

Ora puoi compilare i contenuti corrispondenti nell’interfaccia, come mostrato nell’immagine:

Quando utilizzi questa interfaccia per la prima volta, è necessario compilare almeno tre contenuti, uno è authorization, che puoi selezionare direttamente dall’elenco a discesa. Un altro parametro è model, model è la categoria del modello che scegli di utilizzare dal sito ufficiale di OpenAI DALL-E, qui abbiamo principalmente 1 tipo di modello, i dettagli possono essere visti nei modelli forniti. L’ultimo parametro è prompt, prompt è la parola chiave che inseriamo per generare l’immagine. Puoi anche notare che a destra ci sono i codici di chiamata corrispondenti generati, puoi copiare il codice e eseguirlo direttamente, oppure puoi semplicemente fare clic sul pulsante “Prova” per testare.

Esempio di codice di chiamata in Python:
Dopo la chiamata, abbiamo trovato che il risultato restituito è il seguente:
Il risultato restituito contiene diversi campi, descritti come segue:
  • created, l’ID generato per questa generazione di immagini, utilizzato per identificare univocamente questo compito.
  • data, contiene le informazioni sui risultati della generazione dell’immagine.
Dove data include le informazioni specifiche sull’immagine generata dal modello, il cui url è il link ai dettagli dell’immagine generata, come mostrato nell’immagine.

Parametro di qualità dell’immagine quality

Ora presenteremo come impostare alcuni parametri dettagliati per i risultati della generazione dell’immagine, dove il parametro di qualità dell’immagine quality include due tipi, il primo standard indica che l’immagine generata è standard, l’altro hd indica che l’immagine creata ha dettagli più fini e maggiore coerenza. Impostiamo il parametro di qualità dell’immagine su standard, le impostazioni specifiche sono mostrate nell’immagine qui sotto:

Puoi anche notare che a destra ci sono i codici di chiamata corrispondenti generati, puoi copiare il codice e eseguirlo direttamente, oppure puoi semplicemente fare clic sul pulsante “Prova” per testare.

Esempio di codice di chiamata in Python:
Dopo la chiamata, abbiamo trovato che il risultato restituito è il seguente:
Il risultato restituito è coerente con il contenuto di base utilizzato, si può vedere che il parametro di qualità dell’immagine è standard, l’immagine generata è mostrata qui sotto:

Con la stessa operazione sopra descritta, basta impostare il parametro di qualità dell’immagine su hd, per ottenere l’immagine mostrata qui sotto:

Si può notare che hd genera immagini con dettagli più fini e maggiore coerenza rispetto a standard.

Parametro di dimensione dell’immagine size

Possiamo anche impostare la dimensione dell’immagine generata, possiamo effettuare le seguenti impostazioni. Impostiamo la dimensione dell’immagine a 1024 * 1024, le impostazioni specifiche sono mostrate qui sotto:

Inoltre, si può notare che a destra ci sono i codici di chiamata corrispondenti, è possibile copiare il codice e eseguirlo direttamente, oppure cliccare direttamente sul pulsante “Try” per testare.

Codice di esempio per la chiamata in Python:
Dopo la chiamata, abbiamo trovato il risultato restituito come segue:
Il risultato restituito è coerente con il contenuto di base utilizzato, si può vedere che la dimensione dell’immagine generata è 1024 * 1024, mostrata qui sotto:

Con la stessa operazione sopra descritta, basta impostare la dimensione dell’immagine a 1792 * 1024, per ottenere l’immagine mostrata qui sotto: Si può notare che la dimensione dell’immagine è chiaramente diversa, inoltre è possibile impostare ulteriori dimensioni, per maggiori informazioni consultare la nostra documentazione ufficiale.

Parametro di stile dell’immagine style

Il parametro di stile dell’immagine style include due parametri, il primo vivid indica che l’immagine generata è più vivace, l’altro natural indica che l’immagine generata è più naturale. Impostiamo il parametro di stile dell’immagine su vivid, le impostazioni specifiche sono mostrate qui sotto:

Inoltre, si può notare che a destra ci sono i codici di chiamata corrispondenti, è possibile copiare il codice e eseguirlo direttamente, oppure cliccare direttamente sul pulsante “Try” per testare.

Codice di esempio per la chiamata in Python:
Dopo la chiamata, abbiamo trovato il risultato restituito come segue:
Il risultato restituito è coerente con il contenuto di base utilizzato, si può vedere che il parametro di stile dell’immagine è vivid, l’immagine generata è mostrata qui sotto:

Con la stessa operazione sopra descritta, basta impostare il parametro di stile dell’immagine su natural, per ottenere l’immagine mostrata qui sotto:

Si può notare che vivid genera immagini più vivaci e realistiche rispetto a natural. L’ultimo parametro di formato del link dell’immagine response_format ha anche due opzioni, la prima b64_json è la codifica Base64 del link dell’immagine, l’altra url è il link dell’immagine normale, che può essere visualizzato direttamente. Impostiamo il parametro di formato del link dell’immagine su url, le impostazioni specifiche sono mostrate qui sotto:

Inoltre, si può notare che a destra ci sono i codici di chiamata corrispondenti, è possibile copiare il codice e eseguirlo direttamente, oppure cliccare direttamente sul pulsante “Try” per testare.

Esempio di codice di chiamata Python:
Dopo la chiamata, abbiamo scoperto che il risultato restituito è il seguente:
Il risultato restituito è coerente con il contenuto di base utilizzato, si può vedere che il link dell’immagine con il parametro di formato url per l’immagine generata è URL immagine questo è accessibile direttamente, il contenuto dell’immagine è mostrato nella figura sottostante:

Con la stessa operazione sopra, basta impostare il parametro di formato del link dell’immagine su b64_json, per ottenere il risultato del link dell’immagine codificato in Base64, il risultato specifico è mostrato nella figura sottostante:

Callback asincrona

Poiché il tempo di generazione delle immagini dell’API OpenAI Images Generations potrebbe essere relativamente lungo, se l’API non risponde per un lungo periodo, la richiesta HTTP manterrà la connessione, causando un ulteriore consumo di risorse di sistema, quindi questa API offre anche il supporto per callback asincroni. Il flusso complessivo è: quando il client avvia la richiesta, specifica un campo callback_url aggiuntivo, dopo che il client ha avviato la richiesta API, l’API restituirà immediatamente un risultato, contenente un campo task_id, che rappresenta l’ID del compito corrente. Quando il compito è completato, il risultato dell’immagine generata verrà inviato al callback_url specificato dal client in formato JSON POST, che include anche il campo task_id, in modo che il risultato del compito possa essere associato tramite l’ID. Di seguito, attraverso un esempio, vediamo come operare concretamente. Innanzitutto, il callback Webhook è un servizio in grado di ricevere richieste HTTP, gli sviluppatori dovrebbero sostituirlo con l’URL del proprio server HTTP. Qui, per comodità di dimostrazione, utilizziamo un sito Web pubblico di esempio per Webhook https://webhook.site/, aprendo questo sito si ottiene un URL Webhook, come mostrato nella figura: Copia questo URL e puoi usarlo come Webhook, l’esempio qui è https://webhook.site/3d32690d-6780-4187-a65c-870061e8c8ab. Successivamente, possiamo impostare il campo callback_url su questo URL Webhook, riempiendo i parametri corrispondenti, come mostrato nel seguente codice:
Cliccando su Esegui, si può notare che si ottiene immediatamente un risultato, come segue:
Dopo un momento, possiamo osservare il risultato dell’immagine generata sull’URL Webhook, il contenuto è il seguente:
Si può vedere che nel risultato c’è un campo task_id, il campo data contiene i risultati di generazione dell’immagine come nella chiamata sincrona, attraverso il campo task_id è possibile realizzare l’associazione del compito.

Gestione degli errori

Quando si chiama l’API, se si incontra un errore, l’API restituirà il codice di errore e le informazioni corrispondenti. Ad esempio:
  • 400 token_mismatched:Richiesta non valida, probabilmente a causa di parametri mancanti o non validi.
  • 400 api_not_implemented:Richiesta non valida, probabilmente a causa di parametri mancanti o non validi.
  • 401 invalid_token:Non autorizzato, token di autorizzazione non valido o mancante.
  • 429 too_many_requests:Troppe richieste, hai superato il limite di frequenza.
  • 500 api_error:Errore interno del server, qualcosa è andato storto sul server.

Esempio di risposta di errore

Conclusione

Attraverso questo documento, hai appreso come utilizzare facilmente le funzionalità di generazione di immagini dell’API OpenAI Images Generations con l’ufficiale DALL-E di OpenAI. Speriamo che questo documento possa aiutarti a integrare e utilizzare meglio questa API. Se hai domande, non esitare a contattare il nostro team di supporto tecnico.