dall-e-3, model o silniejszych zdolnościach renderowania tekstu gpt-image-1, najnowszą generację gpt-image-2, a także modele z serii nano-banana / nano-banana-2 / nano-banana-pro, dostępne przez ten sam interfejs. Wszystkie potrafią generować wysokiej jakości obrazy na podstawie opisu tekstowego.
Niniejsza dokumentacja opisuje głównie proces korzystania z OpenAI Images Generations API, dzięki któremu możemy łatwo korzystać z funkcji generowania obrazów serii OpenAI.
Proces wnioskowania
Aby korzystać z OpenAI Images Generations API, najpierw można przejść na stronę OpenAI Images Generations API i kliknąć przycisk „Acquire”, aby uzyskać wymagane poświadczenia do żądań:
Jeśli nie jesteś jeszcze zalogowany lub zarejestrowany, zostaniesz automatycznie przekierowany do strony logowania, gdzie możesz się zarejestrować i zalogować. Po zalogowaniu zostaniesz automatycznie przeniesiony z powrotem na tę stronę.
Przy pierwszym wniosku otrzymasz darmowy limit, który pozwala na bezpłatne korzystanie z API.
Model GPT-Image-2
gpt-image-2 to nowa generacja modelu generowania obrazów od OpenAI, która w porównaniu do dall-e-3 i gpt-image-1 oferuje wyraźne ulepszenia w następujących aspektach:
- Lepsze przestrzeganie instrukcji: potrafi dokładnie zrozumieć złożone instrukcje dotyczące kompozycji, liczenia, relacji przestrzennych i innych struktur.
- Czystsze renderowanie tekstu: w scenariuszach takich jak plakaty, menu, infografiki, logotypy, tekst angielski i cyfry są niemal bezbłędnie odwzorowane.
- Bogatsze wyrażanie stylu: natywne wsparcie dla różnych stylów, takich jak portrety filmowe, plakaty retro, ilustracje dla dzieci, fotografia produktowa, infografiki itp.
- Natywne wsparcie wielu proporcji i wysokiej rozdzielczości: obsługuje 5 proporcji (1:1, 4:3, 3:4, 16:9, 9:16) i 3 poziomy rozdzielczości (1K / 2K / 4K).
model na gpt-image-2. W zwracanym wyniku pole url to trwały link do obrazu hostowany na platform.cdn.xhuoapi.ai, który można otworzyć bezpośrednio w przeglądarce lub osadzić na stronie.
Obsługiwane wartości size i poziomy rozliczeń
gpt-image-2 sprawdza tylko format size – jeśli nie jest to auto lub pusty ciąg, musi mieć postać WIDTHxHEIGHT (np. 1024x1024, 2048x1152, 800x600); inne formaty zwrócą błąd 400. Rozliczenia są podzielone na dwa poziomy:
- Standardowa cena 1K: wejście to dowolny rozmiar 1K z tabeli poniżej lub popularne aliasy 1K z upstream (
1254x1254,1672x941,941x1672– są to faktyczne rozmiary zwracane przez upstream dla 1K, które po ponownym przekazaniu nie powodują zmiany ceny). - Inne poziomy (1,5×): dowolne rozmiary spoza powyższej grupy 1K, w tym rekomendowane 2K / 4K oraz dowolne niestandardowe
WIDTHxHEIGHT.
| Proporcja | 1K (standard) | 2K rekomendowane (×1,5) | 4K rekomendowane (×1,5) |
|---|---|---|---|
| 1:1 | 1024x1024 | 2048x2048 | 2880x2880 |
| 4:3 | 1536x1024 | 2048x1536 | 3264x2448 |
| 3:4 | 1024x1536 | 1536x2048 | 2448x3264 |
| 16:9 | 1792x1024 | 2048x1152 | 3840x2160 |
| 9:16 | 1024x1792 | 1152x2048 | 2160x3840 |
Możesz także przesłaćsize: "auto"lub pominąć polesize, wtedy model wybierze domyślny rozmiar i zostanie naliczona standardowa opłata 1K. W przypadku 1K upstream nie gwarantuje ścisłego dopasowania pikseli – np. podając1024x1024możesz otrzymać1254x1254, proporcje są zachowane. Jeśli ponownie przekażesz ten rozmiar jakosize, nadal będzie naliczana opłata 1K. Wywołanie 4K zwykle trwa 4–8 minut, zalecane jest użycie asynchronicznego callbackucallback_urlopisanej dalej.
O parametrzePoniżej przedstawiamy kilka rzeczywistych przykładów, które obrazują możliwościngpt-image-2nie obsługujen > 1– parametr jest ignorowany, niezależnie czy podaszn=1czyn=10, pojedyncze wywołanie zwróci tylko 1 obraz i zostanie naliczona opłata za 1 obraz. Jeśli potrzebujesz wielu obrazów jednocześnie, wykonaj wiele równoległych wywołań (zalecane jest podanie różnychpromptlubseed, aby uniknąć bardzo podobnych obrazów). To ograniczenie dotyczy takżegpt-image-1/gpt-image-1.5oraz seriinano-banana. Modeldall-e-2jest jedynym natywnie wspierającymn > 1;dall-e-3obsługuje tylkon = 1.
gpt-image-2.
Scenariusz 1: Portret filmowy
W promptach można używać terminologii filmowej (35mm film, płytka głębia ostrości, neony itp.) do precyzyjnej kontroli atmosfery i jakości. Przykładowy kod w Python:
Scenariusz 2: Retro plakat podróżniczy (z renderowaniem tekstu)
gpt-image-2 jest stabilny w renderowaniu typografii i układzie, idealny do tworzenia plakatów, menu, kartek z tekstem.
url:

AMALFI i ITALIA 1958 są czytelne i poprawne.
Scenariusz 3: Złożona kompozycja i liczenie
Prompt testujący przestrzeganie instrukcji dotyczących liczby i rozmieszczenia elementów.
dall-e-3.
Scenariusz 4: Styl ilustracji (poziomo)
Poprzez określenie medium artystycznego i słów kluczowych nastroju można uzyskać stylizowane ilustracje.
Asynchroniczność i callback
Wywołaniegpt-image-2 zwykle trwa 60–90 sekund. Aby uniknąć utrzymywania długiego połączenia, można użyć mechanizmu asynchronicznego callback callback_url, którego użycie jest identyczne jak w innych modelach.
Modele z serii Nano Banana
Serianano-banana to modele generowania obrazów oparte na Gemini, dostępne przez ten sam endpoint /openai/images/generations. Wystarczy zmienić pole model na jeden z poniższych:
| Model | Koszt (Credits / wywołanie) | Zastosowanie |
|---|---|---|
nano-banana | 0.14 | Standardowe generowanie obrazów, najszybsze i najtańsze |
nano-banana-2 | 0.28 | Wyraźnie lepsza jakość i detale |
nano-banana-pro | 0.35 | Flagowy model serii, najlepsza kompozycja, detale i tekst |
Ważne: zakres obsługiwanych parametrów Nano Banana działa przez warstwę adaptacyjną OpenAI i w porównaniu dogpt-image-*obsługuje tylko parametry:model,prompt,size.
sizejest mapowane na wewnętrznyaspect_ratiowedług poniższej tabeli; nieujęte rozmiary są traktowane jako1:1:
1024x1024/512x512/256x256→1:11792x1024→16:91024x1792→9:16- Nie obsługiwane są parametry
n,quality,style,response_format,background,output_format– jeśli zostaną podane, zostaną zignorowane.- Struktura odpowiedzi jest zgodna z formatem OpenAI (
data[].url), alecreatedjest zawsze0, nie zwracany jestb64_json, arevised_promptjest zawsze równy oryginalnemuprompt.
Podstawowe wywołanie
url:

Aktualizacja do flagowego modelu nano-banana-pro
Wystarczy zmienić model na nano-banana-pro, pozostałe parametry pozostają bez zmian:

Asynchroniczny callback
Mechanizmcallback_url działa również dla nano-banana, proces wywołania jest identyczny jak dla innych modeli, więcej w sekcji Asynchroniczny callback.
Podstawowe użytkowanie
Następnie można w interfejsie wypełnić odpowiednie pola, jak na poniższym obrazku:
authorization – wybierane z listy rozwijanej, model – wybór modelu OpenAI DALL-E, szczegóły dostępnych modeli znajdują się w naszej dokumentacji, oraz prompt – tekstowy opis obrazu do wygenerowania.
Po prawej stronie pojawia się wygenerowany kod wywołania, który można skopiować i uruchomić, lub kliknąć przycisk „Try” do testu.

created– unikalny identyfikator wygenerowanego obrazu, służący do identyfikacji zadania.data– zawiera informacje o wygenerowanym obrazie.
data znajduje się szczegółowy link do wygenerowanego obrazu w url, jak pokazano poniżej:

Parametr jakości obrazu quality
Możemy ustawić szczegółowe parametry generowania obrazu, w tym jakość. Parametr quality ma dwie wartości: standard – generuje obraz o standardowej jakości, oraz hd – generuje obraz z większą szczegółowością i spójnością.
Przykład ustawienia quality na standard:


quality ustawionym na standard:

quality na hd, otrzymamy obraz z większą szczegółowością i spójnością:

Parametr rozmiaru obrazu size
Możemy ustawić rozmiar generowanego obrazu.
Przykład ustawienia rozmiaru na 1024x1024:


1024x1024:

1792x1024, otrzymamy obraz o innym rozmiarze:
Można ustawić także inne rozmiary – szczegóły dostępne w dokumentacji na stronie.
Parametr stylu obrazu style
Parametr style ma dwie wartości: vivid – obraz bardziej żywy, oraz natural – bardziej naturalny.
Przykład ustawienia style na vivid:


style ustawionym na vivid:

style na natural, otrzymamy obraz bardziej naturalny:

vivid są bardziej żywe i realistyczne niż z natural.
Parametr formatu odpowiedzi response_format
Parametr response_format ma dwie wartości: b64_json – link do obrazu zakodowany w Base64, oraz url – zwykły link do obrazu, który można bezpośrednio otworzyć.
Przykład ustawienia response_format na url:


url można bezpośrednio otworzyć, obraz wygląda tak:

response_format na b64_json, otrzymamy zakodowany w Base64 obraz:
Asynchroniczny callback
Ponieważ generowanie obrazów przez OpenAI Images Generations API może trwać stosunkowo długo, a długie utrzymywanie połączenia HTTP powoduje dodatkowe obciążenie systemu, API oferuje wsparcie dla asynchronicznego callbacku. Proces jest następujący: klient wysyła żądanie z dodatkowym polemcallback_url. API natychmiast zwraca odpowiedź zawierającą task_id – identyfikator zadania. Po zakończeniu generowania obraz zostanie przesłany metodą POST w formacie JSON na wskazany callback_url, zawierając również task_id, co pozwala powiązać wynik z zadaniem.
Przykład:
Webhook callback to usługa HTTP, którą programista powinien zastąpić własnym serwerem HTTP. Dla demonstracji można użyć publicznego serwisu https://webhook.site/, gdzie po wejściu na stronę otrzymujemy unikalny URL webhooka, np.:
Skopiuj ten URL, np. https://webhook.site/3d32690d-6780-4187-a65c-870061e8c8ab.
Następnie ustaw pole callback_url na ten URL i wyślij żądanie:
task_id oraz pole data z wygenerowanym obrazem, co pozwala powiązać odpowiedź z zadaniem.
Obsługa błędów
W przypadku błędów API zwraca odpowiedni kod i komunikat, np.:400 token_mismatched: Nieprawidłowe żądanie, brak lub błędne parametry.400 api_not_implemented: Nieprawidłowe żądanie, brak lub błędne parametry.401 invalid_token: Nieautoryzowany, nieprawidłowy lub brakujący token autoryzacji.429 too_many_requests: Zbyt wiele żądań, przekroczony limit.500 api_error: Błąd wewnętrzny serwera.

