Wprowadzenie
MOSS-Image Tekst na obraz tworzy jeden obraz z pisemnego prompta na MOSS-Image, otwartym dyfuzyjnym transformerze o 5 miliardach parametrów od OpenMOSS, wydanym na licencji Apache-2.0. Model powstał z myślą o obrazach z dużą ilością dokładnego tekstu, takich jak plakaty, okładki magazynów, reklamy i szyldy. W naszych testach czytał też bardzo długie prompty do końca, a prompty NSFW wracały tak, jak je napisano, na każdym poziomie od Łagodnego do Maksymalnego. Platforma nie dodaje własnego filtra treści. Do własnych plików LoRA użyj MOSS-Image LoRA Tekst na obraz.
Wybierz model według potrzeb
| Czego potrzebujesz | Model |
|---|---|
| dokładny tekst, długie prompty i układ JSON z modelu bazowego | MOSS-Image Tekst na obraz (jesteś tutaj) |
| ten sam model plus do trzech własnych LoRA | MOSS-Image LoRA Tekst na obraz |
Najważniejsze funkcje
Tekst, który wychodzi tak, jak napisano
Plakat filmowy z nazwiskami obsady i reżysera, okładka magazynu z trzema hasłami i linią z ceną, nazwa perfum oraz neonowy szyld motelu zostały w naszych testach poprawnie napisane. OpenMOSS podaje tę samą mocną stronę dla tekstu po angielsku i po chińsku.
Prompty czytane do końca
Prompt przyjmuje do 12 000 znaków. Parasol wspomniany tylko w ostatnim zdaniu prompta na 13 000 znaków został narysowany w lewym dolnym rogu.
Układ JSON
Podaj układ JSON jako prompt, a każdy blok tekstu lub obiekt dostaje własne pole. Ulotka klubowa z tytułem, neonowym podtytułem, listą wykonawców i tancerką umieściła każdy element tam, gdzie wskazywało jego pole. OpenMOSS oznacza ten format jako eksperymentalny.
Piętnaście proporcji, trzy poziomy
Od 1:3 do 3:1 w 1k, 1.5k lub 2k. Obraz 16:9 w 1.5k wyszedł jako 2048 x 1152, a obraz 9:16 w 2k jako 1536 x 2720.
Bez cenzury
W naszych testach niczego nie odrzucono ani nie złagodzono na żadnym poziomie od Łagodnego do Maksymalnego. Nic nie jest filtrowane ani na wejściu, ani na wyjściu.
Parametry żądania
| Parametr | Wymagane | Uwaga |
|---|---|---|
prompt | Tak | Każdy fragment tekstu wpisz w cudzysłowie i napisz, gdzie ma być. Do 12 000 znaków; dobrze działa angielski. od 1 znaków · do 12000 znaków |
aspect_ratio | Nie | 15 kształtów od 1:3 do 3:1; domyślnie 1:1. W 1k obraz 4:3 ma 1168 x 880, a 16:9 ma 1360 x 768. |
resolution | Nie | 1k (około 1 megapiksela, domyślnie), 1.5k lub 2k. Poziom ustala cenę; szeroki obraz w 1.5k wyszedł jako 2048 x 1152. |
output_format | Nie | Domyślnie JPEG, albo PNG lub WebP. Format nie zmienia ceny. |
seed | Nie | Utrzymuje porównywalność obrazów, gdy zmieniasz jedno zdanie naraz. Nie gwarantuje identycznych pikseli. |
Cennik
Rozliczane za obraz według poziomu rozdzielczości (1k, 1.5k lub 2k). Proporcja obrazu i format wyniku nie zmieniają ceny. Za nieudane żądania nie pobieramy opłaty.
| Specyfikacja | Cena |
|---|---|
| $0.024 / obraz |
| $0.048 / obraz |
| $0.096 / obraz |
Zastosowania
Plakaty, okładki i reklamy
Tytuł, hasło, nazwiska obsady i data w jednym obrazie albo nagłówek magazynu z hasłami i linią z ceną. Każdy napis w cudzysłowie i w swoim miejscu.
Szyldy, banery i ulotki
Neonowe szyldy, ulotki na wydarzenia i szerokie banery, na których słowa niosą obraz. Użyj układu JSON, gdy chcesz pole dla każdego bloku.
Długie briefy w jednym żądaniu
Wklej cały brief ze scenerią, strojem, światłem, obiektywem i każdą linią tekstu, zamiast skracać go do kilku zdań.
Wskazówki
Cytuj tekst, potem wskaż miejsce
Napisz „LAST CALL AT THE MERIDIAN” w cudzysłowie, a potem określ, gdzie ma być i jak ma wyglądać: złote szeryfowe wersaliki w dolnej trzeciej części. Nowe linie wewnątrz cudzysłowu ustawiaj tam, gdzie wiersz ma się złamać.
Pisanie układu JSON
Prompt to obiekt JSON z summary (caption dla całego obrazu) i listą items. Każdy element ma label (text lub object), caption, opcjonalne text i bbox. Ustaw bbox_format na yxyx i bbox_coord_space na abs_centralized: pola to [góra, lewo, dół, prawo] w pikselach od środka płótna, z osią x rosnącą w prawo i y rosnącą w dół.
Licz na prawdziwym rozmiarze
Obraz 4:3 w 1k ma 1168 x 880, więc x biegnie od -584 do 584, a y od -440 do 440. Pole [-400, -560, -140, 40] to obszar tytułu w lewym górnym rogu. Sprawdź rozmiar wyjściowy dla swojej proporcji i poziomu, zanim ustawisz pola.
Miej zapasowy seed
Litery czasem się zlewają; jeden przebieg z perfumami odczytał NOIIR zamiast NOIR. Zmień seed i uruchom ponownie. Seed utrzymuje przebiegi porównywalne, ale nie gwarantuje identycznych pikseli.
Opisuj resztę zdaniami
Nie ma negative prompt ani guidance. Opisz podmiot, strój, miejsce, światło i obiektyw zdaniami, a napisy trzymaj na tyle krótkie, by dały się przeczytać w wybranym rozmiarze.
Szybki start z API
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "openmoss/moss-image/text-to-image",
"input": {
"prompt": "A ceramic teapot on a linen cloth, soft window light, muted palette",
"resolution": "1k",
"aspect_ratio": "1:1",
"output_format": "jpeg"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
Uwierzytelnianie, pełny schemat, odpytywanie i obsługę błędów opisuje dokumentacja API.




