ByteDance Seed: Seedream 4.5
Seedream 4.5 udoskonala generowanie i edycję obrazów ByteDance Seed dzięki lepszemu zachowaniu szczegółów referencji, typografii drobnego tekstu i kompozycji wieloobrazowej. Pasuje do grafik produktowych, plakatów i skoordynowanych zestawów twórczych, w których znaczenie mają tożsamość i układ.
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.
Seedream 4.5 to udoskonalenie połączonego systemu generowania i edycji obrazów ByteDance Seed. Producent skaluje zarówno model, jak i dane treningowe, ze szczególną uwagą dla spójności referencji, drobnych szczegółów wizualnych, gęstego tekstu i rozpoznawania zamierzonego tematu w wielu obrazach. Jego przydatną różnicą względem Seedream 4.0 jest dokładniejsze wykonanie opisu wizualnego, szczególnie gdy wynik ma pozostać rozpoznawalnie powiązany z dostarczoną osobą, produktem lub projektem.
Spójność z obrazem referencyjnym Producent podkreśla zachowywanie rysów twarzy, oświetlenia, tonacji kolorystycznej i innych szczegółów źródła podczas wprowadzania żądanej zmiany. Demonstracje obejmują zachowanie jednej zaznaczonej osoby przy usunięciu pozostałych, tłumaczenie tekstu na chiński z zachowaniem reszty projektu, zmianę wyglądu wyróżnionego słowa oraz podmianę materiału ubrania z zachowaniem pozy i płynnego kształtu. Są to różne rodzaje edycji: wybór tematu, typografia, wygląd materiału i oświetlenie.
Przy edycji oddziel to, co się zmienia, od tego, co musi pozostać. „Zmień materiał kurtki na półprzezroczyste szkło; zachowaj pozę, sylwetkę i fałdy” daje bardziej użyteczny cel niż szeroka prośba o zmianę stylu. Przekształcenie materiału może również wymagać zmiany światła: przykład producenta odróżnia metaliczne odbicie od przezroczystego załamania. Porównaj wynik ze źródłem w obszarach, które miały zostać zachowane, w tym twarz, pozę, małe dodatki i otaczającą tonację kolorystyczną.
Układ plakatów, logotypy i gęsty tekst Strona modelu Seedream 4.5 następnie omawia projektowanie graficzne, skupiając się na kompozycji i czytelnym drobnym tekście. Przykłady łączą dominujący tytuł, grafikę i informacje drugorzędne w plakacie wystawy; inne eksplorują zaproszenia, grafiki ze szczegółami perfum i kompozycje reklamowe. Model przydaje się do testowania całej hierarchii wizualnej, zamiast traktowania tekstu jako późniejszego dodatku. Opisz miejsce głównego obrazu, podaj dokładny nagłówek i tekst uzupełniający oraz odróżnij styl pisma, wyrównanie, wyróżnienie i odstępy.
Przy poprawce typograficznej wskaż obszar tekstu i nowe słowa lub sposób przedstawienia. Prośba o zmianę jednego nagłówka na niebieski i kursywę jest konkretniejsza niż prośba o nowy styl plakatu. Sprawdź cały wyrenderowany tekst w docelowym rozmiarze wyświetlania, w tym małe etykiety i linie drugorzędne. Wygenerowany plakat lub koncepcja logo są grafiką obrazową; udokumentowane procesy obrazowe nie ustanawiają edytowalnego wyniku wektorowego ani projektu z warstwami.
Dokładna edycja wielu obrazów Producent podkreśla wybór docelowych elementów z różnych danych wejściowych i ich spójne łączenie. Wydanie 4.5 producenta opisuje kompozycje wieloobrazowe z maksymalnie 10 obrazami referencyjnymi. Oficjalne przykłady używają jednego obrazu do osoby, drugiego do otoczenia lub materiału ubrania, a kolejnego do produktu lub dodatku. Wspiera to grafiki produktowe w kontekście codziennego życia, skoordynowane reklamy, koncepcje stylu wnętrz oraz warianty postaci lub produktu. Model może również generować powiązane wyniki: pokazane zadania obejmują mały zestaw reklam i osobne ilustracje kroków przepisu, ze wspólnym stylem wizualnym.
Przygotuj referencje z wyraźnymi rolami. Na przykład przypisz jeden obraz do postaci, jeden do torby i jeden do lokalizacji, a następnie określ kompozycję i cechy do zachowania. Jeśli dwie referencje różnią się kolorem lub stylem, wskaż tę, która ma sterować daną cechą. Oceń wynikową skalę, położenie, oświetlenie i tożsamość w całym zestawie, zamiast przyjmować przekonujący pojedynczy obraz jako dowód zgodności wszystkich wyników.
Co dodaje udoskonalenie 4.5 Raport techniczny wyróżnia większą spójność edycji, zachowanie cech związanych z tożsamością i drobnych szczegółów, obsługę docelowego tematu w kompozycjach wieloobrazowych i typografię w gęstych układach plakatowych. Wydanie producenta opisuje także czytelniejsze małe twarze, poprawione proporcje przestrzenne, realistyczne światło i wynik obrazowy 4K. Te mocne strony czynią 4.5 szczególnie przydatnym do katalogów produktów, wariantów kampanii, koncepcji opakowań, grafiki przedprodukcyjnej i projektowania graficznego z rozbudowanym tekstem.
Opisy tekstowe kierują nowymi grafikami; obrazy źródłowe i instrukcje edycji kierują zmianami opartymi na referencjach. Używaj modelu do twórczej produkcji obrazów, a następnie sprawdzaj wynik względem rzeczywistego opisu: dokładnej treści, rozpoznawalnego produktu lub osoby, zachowanych szczegółów, spójnej skali i jednolitego sposobu przedstawienia wariantów. Lepsze zachowanie w tej wersji nie gwarantuje, że każdy szczegół źródła przetrwa każdą złożoną edycję. Limity liczby referencji i wyników zależą także od udokumentowanego interfejsu; budżetu referencji 4.0 nie należy zakładać dla każdego procesu 4.5.
Ailoot Ultra · Obrazy POST /v1/images/generations bytedance-seed/seedream-4.5
bytedance-seed/seedream-4.5Start
Seedream 4.5 udoskonala generowanie i edycję obrazów ByteDance Seed dzięki lepszemu zachowaniu szczegółów referencji, typografii drobnego tekstu i kompozycji wieloobrazowej. Pasuje do grafik produktowych, plakatów i skoordynowanych zestawów twórczych, w których znaczenie mają tożsamość i układ.
- 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 bytedance-seed/seedream-4.5 | Domyślnie— |
Poleprompt | Typstring | WymaganieWymagane | Wartości i limity Minimalna długość: 1 | Domyślnie— |
Poleresolution | Typstring | WymaganieOpcjonalne | Wartości i limity 1K, 2K, 4K | Domyślnie— |
Poleaspect_ratio | Typstring | WymaganieOpcjonalne | Wartości i limity 1:1, 1:2, 2:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 9:19.5, 19.5:9, 9:20, 20:9, 9:21, 21:9, auto | 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: 14 | 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ść | Jednostka rozliczeniowa | Opłata |
|---|---|---|---|---|
| KonfiguracjaBazowe stawki za tokeny | Tabela stawekStawka podstawowa | Przewidywana ilość— | Jednostka rozliczeniowa— | 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 |
| Konfiguracjaobraz wejściowy | Tabela stawek— | Przewidywana ilość— | Jednostka rozliczeniowaza obraz wejściowy | Opłata Wejście · obraz wejściowy · Szacunek tylko do porównania $0 za obraz wejściowy |
| Konfiguracjaobraz wyjściowy | Tabela stawek— | Przewidywana ilość— | Jednostka rozliczeniowaza obraz wyjściowy | Opłata Wyjście · obraz wyjściowy · Szacunek tylko do porównania $0.08 za obraz wyjściowy |
| KonfiguracjaSzacowany koszt generowania | Tabela stawek— | Przewidywana ilośćszacunek dla jednego generowania | Jednostka rozliczeniowa— | Opłata Wyjście · Szacowany koszt generowania · Szacunek tylko do porównania $0.08 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': 'bytedance-seed/seedream-4.5', '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 bytedance-seed/seedream-4.5
Aliasy ścieżek metod
/v1/images
Powiązane ID modeli
FAQ · ByteDance Seed: Seedream 4.5
- Jakie dane wejściowe i wyniki są dostępne?
POST /v1/images/generations·bytedance-seed/seedream-4.5:text,image→image- Jakich pól używa żądanie?
POST /v1/images/generations·bytedance-seed/seedream-4.5:model,prompt,resolution,aspect_ratio,n,input_references,provider- Jakie limity obowiązują?
POST /v1/images/generations·bytedance-seed/seedream-4.5:n.minimum:1;n.maximum:10