Niniejszy dokument przedstawia instrukcję integracji SeeDream Images Generation API, które umożliwia generowanie oficjalnych obrazów SeeDream na podstawie wprowadzonych niestandardowych parametrów.Documentation Index
Fetch the complete documentation index at: https://docs.xhuoapi.ai/llms.txt
Use this file to discover all available pages before exploring further.
Proces rejestracji
Aby korzystać z API, należy najpierw zarejestrować odpowiednią usługę na stronie SeeDream Images Generation API. Po wejściu na stronę kliknij przycisk „Acquire”, jak pokazano na obrazku:
Jeśli nie jesteś zalogowany lub zarejestrowany, zostaniesz automatycznie przekierowany na stronę logowania, gdzie możesz się zarejestrować i zalogować. Po zalogowaniu zostaniesz automatycznie przeniesiony z powrotem na bieżącą stronę.
Przy pierwszym zgłoszeniu otrzymasz darmowy limit, który pozwala na bezpłatne korzystanie z API.
Podstawowe użycie
Najpierw zapoznaj się z podstawowym sposobem użycia, który polega na wprowadzeniu słowa kluczowegoprompt, działania action oraz rozmiaru obrazu size, aby uzyskać przetworzony wynik. Najpierw należy przekazać pole action o wartości generate, a następnie wprowadzić słowo kluczowe. Szczegóły przedstawiono poniżej:

accept: format odpowiedzi, który chcemy otrzymać, tutaj ustawiony naapplication/json(format JSON).authorization: klucz API do wywołania, który można wybrać z listy po rejestracji.
prompt: słowo kluczowe.model: model generujący, domyślniedoubao-seedream-5.0-lite. Obsługiwane modele todoubao-seedream-5.0-lite(najnowszy),doubao-seedream-4.5,doubao-seedream-4.0,doubao-seedream-3.0-t2i,doubao-seededit-3.0-i2i.image: dane wejściowe obrazu, obsługiwane są URL lub kodowanie Base64. Modeledoubao-seedream-5.0-lite,doubao-seedream-4.5,doubao-seedream-4.0obsługują pojedyncze lub wielokrotne obrazy,doubao-seededit-3.0-i2itylko pojedynczy obraz,doubao-seedream-3.0-t2inie obsługuje tego parametru.size: określa rozmiar generowanego obrazu, obsługiwane są dwie metody, które nie mogą być mieszane. Metoda 1 | określenie rozdzielczości obrazu i opisanie proporcji szerokości do wysokości wpromptw języku naturalnym. Każdy model obsługuje inne ustawienia domyślne:doubao-seedream-5.0-liteobsługuje2K/3K/4K;doubao-seedream-4.5tylko2K/4K;doubao-seedream-4.0obsługuje1K/2K/4K;doubao-seedream-3.0-t2iidoubao-seededit-3.0-i2inie obsługują ustawień domyślnych, akceptują tylko metodę 2. Metoda 2 | określenie szerokości i wysokości obrazu w pikselach: domyślnie2048x2048, zakres wartości całkowitej liczby pikseli i proporcji zależy od modelu (np. dla 5.0 / 4.5 minimalna liczba pikseli 3 686 400, dla 4.0 minimalna 921 600, dla 3.0-t2i / seededit-3.0-i2i zakres [512x512, 2048x2048]).seed: ziarno losowości, służy do kontrolowania losowości generowanego obrazu. Zakres wartości [-1, 2147483647]. Obsługiwane tylko przezdoubao-seedream-3.0-t2i.sequential_image_generation: generowanie serii obrazów powiązanych tematycznie na podstawie wprowadzonej treści. Obsługiwane przezdoubao-seedream-5.0-lite,doubao-seedream-4.5,doubao-seedream-4.0, domyślniedisabled.stream: kontroluje, czy włączyć tryb strumieniowego przesyłania wyników. Obsługiwane przezdoubao-seedream-5.0-lite,doubao-seedream-4.5,doubao-seedream-4.0, domyślniefalse.guidance_scale: stopień zgodności wyniku modelu zprompt, im większa wartość, tym większa zgodność. Zakres [1, 10]. Domyślnie 2.5 dladoubao-seedream-3.0-t2i, 5.5 dladoubao-seededit-3.0-i2i, nieobsługiwane przez inne modele.response_format: format zwracanego obrazu. Domyślnieurl, obsługuje równieżb64_json.watermark: czy dodać znak wodny do wygenerowanego obrazu. Domyślnietrue.output_format: format pliku obrazu, obsługujejpeg(domyślny) ipng. Obsługiwane tylko przezdoubao-seedream-5.0-lite.tools: konfiguracja narzędzi wywoływanych przez model, obecnie obsługujeweb_search(wyszukiwanie w sieci). Obsługiwane tylko przezdoubao-seedream-5.0-lite.callback_url: URL do wywołania zwrotnego (callback) z wynikiem.

success: status zadania generowania obrazu.task_id: identyfikator zadania generowania obrazu.trace_id: identyfikator śledzenia zadania.data: lista wyników generowania obrazu.image_url: link do wygenerowanego obrazu.prompt: słowo kluczowe.size: rozmiar wygenerowanego obrazu w pikselach.
image_url w polu data.
Jeśli chcesz wygenerować kod integracji, możesz go bezpośrednio skopiować, na przykład kod CURL wygląda następująco:
Zadanie edycji obrazu
Jeśli chcesz edytować istniejący obraz, musisz przekazać parametrimage z linkiem do obrazu, który chcesz edytować.
model: model używany do edycji obrazu,doubao-seedream-5.0-lite,doubao-seedream-4.5,doubao-seedream-4.0obsługują pojedyncze lub wielokrotne obrazy,doubao-seededit-3.0-i2itylko pojedynczy obraz.image: przesyłany obraz do edycji, jeden lub więcej.

Asynchroniczne wywołanie zwrotne (callback)
Ponieważ generowanie obrazów przez SeeDream Images Generation API zajmuje stosunkowo dużo czasu, około 1-2 minut, a długotrwałe oczekiwanie na odpowiedź API powoduje utrzymywanie połączenia HTTP i dodatkowe zużycie zasobów systemowych, API oferuje również wsparcie dla asynchronicznych wywołań zwrotnych. Cały proces wygląda następująco: klient wysyła żądanie z dodatkowym polemcallback_url. Po wysłaniu żądania API natychmiast zwraca wynik zawierający pole task_id, które identyfikuje zadanie. Po zakończeniu zadania wynik generowania obrazu zostanie przesłany metodą POST w formacie JSON na wskazany przez klienta callback_url, zawierając również pole task_id, co umożliwia powiązanie wyników z zadaniem.
Poniżej przykład działania.
Po uruchomieniu natychmiast otrzymasz wynik, jak poniżej:
task_id, pozostałe pola są podobne jak powyżej. Dzięki temu pole task_id można powiązać z konkretnym zadaniem.
Obsługa błędów
Podczas wywoływania API, w przypadku błędów, API zwraca odpowiedni kod błędu i komunikat. Przykładowe kody:400 token_mismatched: Nieprawidłowe żądanie, prawdopodobnie brak lub nieprawidłowe parametry.400 api_not_implemented: Nieprawidłowe żądanie, prawdopodobnie brak lub nieprawidłowe parametry.401 invalid_token: Brak autoryzacji, nieprawidłowy lub brakujący token.429 too_many_requests: Zbyt wiele żądań, przekroczono limit.500 api_error: Błąd wewnętrzny serwera.

