API generowania obrazów Midjourney v8.2 / Niji 7
Generuj obrazy asynchronicznie za pomocą midjourney-v8.2 i midjourney-niji-7 przez APIMaster.
Generowanie obrazów Midjourney v8.2 / Niji 7
Użyj asynchronicznego API obrazów pod adresem https://apimaster.ai/v1 z midjourney-v8.2 lub midjourney-niji-7. Identyfikator modelu wybiera wersję; nie dodawaj pól nadpisujących wersję.
Utwórz zadanie
POST https://apimaster.ai/v1/midjourney/generations
curl -s "https://apimaster.ai/v1/midjourney/generations" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "midjourney-v8.2",
"prompt": "a quiet Japanese garden at dawn, cinematic composition",
"size": "16:9",
"speed": "relax"
}'
W przypadku Niji 7 ustaw model na midjourney-niji-7:
{"model":"midjourney-niji-7","prompt":"anime character under cherry blossoms","size":"9:16","speed":"fast"}
| Pole | Typ | Wymagane | Opis |
|---|---|---|---|
model |
string | Tak | midjourney-v8.2 lub midjourney-niji-7 |
prompt |
string | Tak | Opis obrazu, wraz z obsługiwanymi parametrami Midjourney |
size |
string | Nie | Proporcje, takie jak 1:1 lub 16:9; domyślnie 1:1 |
speed |
string | Nie | relax, fast lub turbo; domyślnie relax |
image_urls |
string[] | Nie | 1–20 adresów URL obrazów referencyjnych; obsługiwane są również obrazy Data URL |
iw |
number | Nie | Waga obrazu referencyjnego 0–3; wymaga image_urls |
quality |
string | Nie | 0.25, 0.5, 1 lub 2; nieobsługiwane przez Niji 7 |
stylize / chaos / weird |
integer | Nie | Zakresy: odpowiednio 0–1000, 0–100 i 0–3000 |
seed |
integer | Nie | Losowe ziarno 0–4294967295 |
negative_prompt |
string | Nie | Treść do wykluczenia |
sref / sw |
string / integer | Nie | Publiczny adres URL referencji stylu i waga 0–1000; sw wymaga sref |
dref / dw |
string or string[] / number | Nie | Adresy URL referencji (do 20) i waga 0–100; dw wymaga dref |
raw / tile / hd |
boolean | Nie | Styl raw, kafelkowanie i HD; tile i hd tylko dla v8.2 |
extra |
string | Nie | Obsługiwany ciąg parametrów, taki jak --ar 16:9 --s 750; pola strukturalne mają pierwszeństwo |
metadata |
object | Nie | Niestandardowe metadane biznesowe |
repeat |
integer | Nie | 2–40, aby utworzyć wiele zadań |
Niji 7 nie obsługuje quality, tile=true ani hd=true. Oba modele odrzucają draft=true, cref, cw, stop oraz pola żądania version i niji. style=raw jest normalizowane do raw=true. Nie używaj --v ani --niji w prompt ani extra, aby nadpisać wersję modelu.
Odpowiedź zawiera identyfikator partii i identyfikatory zadań:
{
"id": "imagine_batch_xxxxxxxx",
"request_id": "req_xxxxxxxx",
"model": "midjourney-v8.2",
"status": "queued",
"data": [{"id": "imagine_xxxxxxxx", "task_id": "imagine_xxxxxxxx", "status": "submitted"}]
}
Sprawdź status zadania
curl -s "https://apimaster.ai/v1/tasks/imagine_batch_xxxxxxxx" \
-H "Authorization: Bearer YOUR_API_KEY"
Ukończona odpowiedź zawiera adresy URL obrazów w data; tasks zawiera każde zadanie podrzędne:
{
"id": "imagine_batch_xxxxxxxx",
"status": "completed",
"progress": 100,
"data": [{"url": "https://example.com/generated.png"}],
"tasks": [{"task_id": "imagine_xxxxxxxx", "status": "completed", "progress": 100, "data": [{"url": "https://example.com/generated.png"}]}]
}
Odpytywaj, gdy status to queued lub processing. W przypadku niepowodzenia odczytaj tasks[].error i nie wysyłaj ponownie tego samego żądania. Pobierz zwrócone adresy URL niezwłocznie, ponieważ mogą wygasnąć.
Jeśli wysłanie zwróci 502 z nagłówkiem X-Task-ID lub zapytanie zwróci pending_timeout, zapisz identyfikator i sprawdzaj jego status, zamiast automatycznie wysyłać ponownie. Partia może zawierać zarówno udane, jak i nieudane zadania; sprawdź tasks[] indywidualnie. Zalecane jest odpytywanie raz na 15 sekund.
Błędy i cennik
model i niepusty prompt są wymagane. Nieobsługiwane wersje, nieprawidłowe proporcje, niedostępne referencje i nieobsługiwane parametry zwracają 400. 401 oznacza nieprawidłowy klucz, 402 oznacza niewystarczające saldo, a 429 oznacza ograniczenie szybkości. Zobacz kartę Midjourney v8.2 i kartę Niji 7, aby poznać aktualny cennik i trasy.
