OpenAI: GPT Image 1
GPT Image 1 generuje i edytuje obrazy na podstawie tekstu i materiałów wizualnych, w tym kompozycje oparte na referencjach i zmiany wskazane maską. Obsługuje wybór wierności wejścia, standardowe wymiary kadru, przezroczyste tła oraz wyniki PNG, JPEG lub WebP.
O modelu
Ten opis przedstawia możliwości modelu. Dane wejściowe, wyniki i opcje dostępne w Ailoot podano poniżej dla wybranej metody.
GPT Image 1 to natywnie multimodalny model obrazowy OpenAI, który przyjmuje tekst i obrazy, a wyniki zwraca w postaci obrazów. Może generować nową scenę, korzystać z obrazów referencyjnych do kształtowania kompozycji lub edytować istniejący materiał zgodnie z nową instrukcją. Praktyczne prace obejmują ilustracje, zdjęcia produktowe, koncepcje projektowe i lokalne zmiany kierowane maską. To wersja oznaczona GPT Image 1, odrębna od Image 1 Mini, Image 1.5 i późniejszych wersji GPT Image.
Przygotuj opis wskazujący główny obiekt, otoczenie, kompozycję, oświetlenie i styl wizualny. Jeśli zadanie wymaga widocznego tekstu, podaj dokładne brzmienie i wyjaśnij jego zamierzoną hierarchię i położenie. W kompozycji opartej na referencjach przypisz każdemu obrazowi jasną rolę, taką jak produkt, otoczenie lub sposób przedstawienia. Bezpośrednie procesy generowania i edycji dopuszczają prompt do 32 000 znaków i od jednego do dziesięciu wyników obrazowych. Porównaj zwrócone warianty z tym samym opisem i zachowaj wybrany materiał do dalszej pracy.
Edycja może przyjmować do szesnastu obrazów referencyjnych. GPT Image 1 obsługuje wartości low i high parametru input_fidelity, z low jako wartością domyślną. Ustawienie to wpływa na wysiłek wkładany w zachowanie cech i stylu obrazu źródłowego; jest niezależne od jakości renderowania i rozmiaru wyniku. Edycja z wysoką wiernością przydaje się, gdy liczą się szczegóły źródła, ale nie gwarantuje, że każda cecha pozwalająca je rozpoznać pozostanie identyczna. Określ, co należy zachować, a co może się zmienić, zamiast polegać wyłącznie na ustawieniu wierności.
Edycja z maską wskazuje obszar do modyfikacji. Przygotuj źródło i maskę w tym samym formacie i wymiarach, o rozmiarze poniżej 50 MB zgodnie z wymaganiami przewodnika, z kanałem alfa w masce. Przy wielu obrazach źródłowych maska jest nakładana na pierwszy. Przydatny opis edycji może dotyczyć zmiany koloru ściany przy zachowaniu mebli, kąta kamery i oświetlenia. Model używa maski jako wskazówki, nie obiecując dokładnej granicy, dlatego sprawdź zarówno zmieniony obszar, jak i jego otoczenie.
Udokumentowane standardowe rozmiary wyniku to 1024 × 1024, 1536 × 1024 i 1024 × 1536 pikseli, z automatycznym wyborem rozmiaru tam, gdzie jest obsługiwany. Jakość przyjmuje wartości low, medium, high lub auto. GPT Image 1 używa tych standardowych kadrów i poziomów jakości do high. Dobierz standardowy kadr do docelowego wyświetlania, a poziom szczegółów do przeznaczenia materiału.
Domyślnym wynikiem jest PNG, z alternatywami JPEG i WebP. Dla JPEG i WebP dostępna jest kompresja od 0 do 100. Tła przezroczyste, nieprzezroczyste i automatyczne odpowiadają różnym potrzebom dostarczenia materiału; przezroczystość wymaga PNG lub WebP. W przypadku wyizolowanej grafiki użyj formatu zachowującego kanał alfa przed umieszczeniem jej w późniejszym układzie. W przypadku kompletnej sceny uwzględnij w opisie tło i relację głównego obiektu do niego.
OpenAI dokumentuje bezpośrednie generowanie i edycję, a karta modelu obejmuje także konwersacyjne użycie obrazów. Przy stopniowym dopracowywaniu zachowuj wybrany wynik jako źródło kolejnej zmiany, zamiast niejawnie wybierać inny wariant. Dokumentacja obrazowa opisuje strumieniowanie do trzech obrazów częściowych; pokazują one postęp, a nie dodatkowe gotowe materiały. Przechowuj ukończony obraz wraz z opisem, aby późniejsze edycje odnosiły się do rzeczywistej kompozycji. Interfejs producenta obsługuje również przetwarzanie wsadowe.
Model nadal może mieć trudności z precyzyjnym położeniem tekstu, ściśle uporządkowanymi układami i spójnością powracających obiektów. Sprawdź napisy, granice przedmiotów, kolorystykę i cechy identyfikujące materiał źródłowy w docelowym rozmiarze. Jeśli edycja wymaga dopracowania, opisz widoczną rozbieżność i elementy do zachowania. GPT Image 1 przydaje się w konkretnej sekwencji generowania, edycji opartej na referencjach i przygotowania materiału, z zachowaniem odrębności jego standardowych rozmiarów i wybieralnej wierności wejścia względem innych wersji.
Ailoot Ultra · Obrazy POST /v1/images/generations openai/gpt-image-1
openai/gpt-image-1Start
GPT Image 1 generuje i edytuje obrazy na podstawie tekstu i materiałów wizualnych, w tym kompozycje oparte na referencjach i zmiany wskazane maską. Obsługuje wybór wierności wejścia, standardowe wymiary kadru, przezroczyste tła oraz wyniki PNG, JPEG lub WebP.
- Akceptowane dane wejściowe
- Tekst · Obrazy
- Wyniki
- Obrazy
Dostępne w Ailoot · dane wejściowe i metody
Ailoot Ultra · Obrazy POST /v1/images/generations
- Wejście
text,image- Wyjście
image
| Pole | Typ | Wymaganie | Wartości i limity | Domyślnie |
|---|---|---|---|---|
Polemodel | Typstring | WymaganieWymagane | Wartości i limity openai/gpt-image-1 | Domyślnie— |
Poleprompt | Typstring | WymaganieWymagane | Wartości i limity Minimalna długość: 1 | Domyślnie— |
Poleaspect_ratio | Typstring | WymaganieOpcjonalne | Wartości i limity 1:1, 3:2, 2:3, auto | Domyślnie— |
Polequality | Typstring | WymaganieOpcjonalne | Wartości i limity auto, low, medium, high | Domyślnie— |
Polebackground | Typstring | WymaganieOpcjonalne | Wartości i limity auto, transparent, opaque | Domyślnie— |
Polen | Typinteger | WymaganieOpcjonalne | Wartości i limity Minimum: 1 Maksimum: 10 | Domyślnie— |
Poleinput_references | Typarray | WymaganieOpcjonalne | Wartości i limity Minimalna liczba elementów: 0 Maksymalna liczba elementów: 16 | Domyślnie— |
Poleoutput_compression | Typinteger | WymaganieOpcjonalne | Wartości i limity Minimum: 0 Maksimum: 100 | Domyślnie— |
Poleprovider | Typobject | WymaganieOpcjonalne | Wartości i limity | Domyślnie— |
Parametry i cykl życia metody
| Parametr | Kontrakt |
|---|---|
Parametrcontent_type | Kontraktapplication/json |
Parametrrequired | Kontraktmodel, prompt |
Parametrmaterial_types | Kontrakttext, image |
Cykl życia: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · Rzeczywiście zwrócony task_id lub wpis w bibliotece multimediów
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Cennik
Jak obliczana jest ostateczna opłata
Wyświetlane stawki służą do oszacowania kosztu przed generowaniem. Ostateczna opłata jest obliczana na podstawie kosztu zarejestrowanego dla pierwotnego generowania. Zmierzony czas trwania wyniku i prognozowane ilości nie stanowią ostatecznej ilości podlegającej rozliczeniu.
Informacje taryfowe nie dodają opcji żądania. Obsługiwane parametry podano przy wybranej metodzie.
- Tryb szybki
- Nie określono Gdy wybrany jest tryb szybki
- Tryb flex
- Nie określono Gdy wybrany jest tryb flex
- Maksymalna intensywność rozumowania
- Nie określono Gdy dla maksymalnej intensywności rozumowania stosowana jest domyślna korekta (default)
Szacunkowe stawki do porównania
Ceny według konfiguracji
Dopasuj każdą opłatę do pokazanych warunków. Użyj jednej stawki dla każdego zestawu alternatywnych konfiguracji.
| Konfiguracja | Tabela stawek | Przewidywana ilość | Opłata |
|---|---|---|---|
| KonfiguracjaBazowe stawki za tokeny | Tabela stawekStawka podstawowa | Przewidywana ilość— | Opłata Wejście · Tokeny wejściowe · Szacunek tylko do porównania — / 1K tokenów Wyjście · Tokeny wyjściowe · Szacunek tylko do porównania — / 1K tokenów Wejście · Odczyt cache · Szacunek tylko do porównania — / 1K tokenów Wejście · Zapis do cache · Szacunek tylko do porównania — / 1K tokenów Wejście · Zapis do cache, 1 godz. · Szacunek tylko do porównania — / 1K tokenów |
| KonfiguracjaSzacowany koszt generowania | Tabela stawek— | Przewidywana ilośćszacunek dla jednego generowania | Opłata Wyjście · Szacowany koszt generowania · Szacunek tylko do porównania $0.32768 szacunek przed generowaniem Ten szacunek nie jest dodatkową opłatą ani stałą stawką za ukończone generowanie. |
Ailoot rezerwuje szacowaną kwotę przed żądaniem. Po otrzymaniu wyniku rozlicza ostateczną opłatę według zmierzonego użycia. Rozliczenie strumieniowania korzysta z końcowego rekordu użycia. Jak działają rezerwacja i rozliczenie →
Przykładowe żądania
Ailoot Ultra · Obrazy
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p={'model': 'openai/gpt-image-1', 'prompt': 'a red panda astronaut floating in space, studio lighting'}
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import base64, json, os, subprocess
from pathlib import Path
from urllib.parse import urlsplit, urljoin
def save_images(items):
if not items: raise SystemExit("No completed images; retain the full response")
for index, item in enumerate(items):
encoded=item.get("b64_json")
uri=item.get("url", "")
if not encoded and uri.startswith("data:image/"):
header, separator, encoded=uri.partition(",")
if not separator or ";base64" not in header: raise SystemExit("Unsupported image data URI")
if encoded:
raw=base64.b64decode(encoded,validate=True)
elif uri:
uri=urljoin("https://api.ailoot.ai",uri)
parsed=urlsplit(uri)
if parsed.scheme!="https" or not parsed.netloc or parsed.username or parsed.password:
raise SystemExit("Invalid returned image URL")
owned=parsed.netloc=="api.ailoot.ai" and parsed.path.startswith("/v1/media/assets/") and parsed.path.endswith("/content")
args=["curl","--fail-with-body","--silent","--show-error",uri]
if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
temporary=Path(f"image-{index}.bin")
subprocess.run(args+["-o",str(temporary)],check=True)
raw=temporary.read_bytes()
temporary.unlink()
else: raise SystemExit("Image has neither bytes nor URL")
if not raw: raise SystemExit("Empty image result")
ext="png" if raw.startswith(b"\x89PNG") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "svg" if raw.lstrip().startswith((b"<svg",b"<?xml")) else "bin"
Path(f"image-{index}.{ext}").write_bytes(raw)
print("Every returned image saved; complete response metadata retained")
save_images(json.loads(Path("result.json").read_text())["data"])
PY_RESULT
Odbieranie i zapisywanie wyników
Ailoot Ultra · Obrazy
Pobierz każdy zwrócony obraz lub zapisz jego zawartość Base64
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Inne odczyty treści
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
-H "Authorization: Bearer $AILOOT_API_KEY" -o owned-assets.json
# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.
Zachowaj wszystkie ukończone wyniki
Zapisz każdy ukończony obraz; pobierz każdy zwrócony URL lub zdekoduj zawartość Base64.
Zachowaj pełną odpowiedź i nagłówki, wszystkie rzeczywiście uzyskane wyniki, pierwotnie zwrócone identyfikatory oraz wszystkie pola zużycia. Odzyskaj pierwotną operację bez ponownego wysyłania żądania utworzenia.
Jeśli trzeba sprawdzić pierwotną odpowiedź
Zachowaj zwrócony X-Client-Request-ID do uzgodnienia danych. Odczytuj wyłącznie rzeczywiście zwrócone wartości task_id/asset_id lub własną bibliotekę multimediów; nigdy nie buduj adresu URL zadania na podstawie identyfikatora operacji i nigdy nie wysyłaj ponownie żądania utworzenia.
Pola odpowiedzi
| Pole | Typ |
|---|---|
Polecreated | Typ |
Poledata[].url | Typ |
Poledata[].b64_json | Typ |
Poleusage | Typ |
Aliasy
Aliasy modelu
Ailoot Ultra openai/gpt-image-1
Aliasy ścieżek metod
/v1/images
Powiązane ID modeli
FAQ · OpenAI: GPT Image 1
- Jakie dane wejściowe i wyniki są dostępne?
POST /v1/images/generations·openai/gpt-image-1:text,image→image- Jakich pól używa żądanie?
POST /v1/images/generations·openai/gpt-image-1:model,prompt,aspect_ratio,quality,background,n,input_references,output_compression,provider- Jakie limity obowiązują?
POST /v1/images/generations·openai/gpt-image-1:n.minimum:1;n.maximum:10;output_compression.minimum:0;output_compression.maximum:100