Wprowadzenie
Co robi ten endpoint
Przyjmuje jeden obraz i zwraca większą, ostrzejszą kopię na wybranym poziomie rozmiaru. Kompozycja, kolory i motyw zostają takie, jak je wysłano, a promptu nie ma.
Ważne dane wejściowe
image_url to obraz do powiększenia. resolution wybiera poziom: 2k (około 4 megapikseli), 4k (około 17, domyślnie) albo 8k (około 67). Proporcje są zachowane, a poziom niższy niż oryginał zmniejsza obraz. output_format ustala typ pliku: jpeg (domyślnie), png albo webp.
Co dostajesz
Jeden obraz na żądanie, udostępniany z magazynu platformy po zakończeniu zadania.
| Pole | Wartość |
|---|---|
| Wejście | Obraz |
| Wyjście | Obraz |
| Endpoint | Upscale |
| Poziomy rozmiaru | 2K (~4 MP), 4K (~17 MP), 8K (~67 MP) |
| Proporcje | Takie jak w oryginale |
| Ustawienia | Bez promptu — tylko poziom rozmiaru i format pliku |
Parametry żądania
| Parametr | Wymagane | Uwaga |
|---|---|---|
image_url | Tak | Bezpośredni link do pliku obrazu (JPEG, PNG lub WebP). Kadr i proporcje przechodzą bez zmian. od 1 znaków |
resolution | Nie | 2k (około 4 MP), 4k (około 17 MP, domyślnie) albo 8k (około 67 MP), z zachowaniem proporcji. Wybierz poziom powyżej liczby pikseli oryginału — niższy poziom zmniejszy obraz. |
output_format | Nie | jpeg (domyślnie) daje pliki rozsądnej wielkości — około 8 MB nawet na najwyższym poziomie w naszym teście. png jest bezstratny, ale kilka razy większy; webp plasuje się pośrodku. |
Cennik
$0.012 / obraz
Rozliczenie za każdy obraz wyjściowy. Poziom rozmiaru i format pliku nie zmieniają ceny.
Zastosowania
Rendery AI w rozmiarze do druku
Większość modeli obrazów zwraca jeden–dwa megapiksele. 4k albo 8k przenosi render do rozmiaru plakatu lub druku bez ponownego generowania i bez utraty ujęcia, które ci się podobało.
Zdjęcia produktów i katalogi
Powiększ packshot do widoków z zoomem i stron produktowych o wysokiej gęstości pikseli, a światło i etykieta zostaną dokładnie takie jak na zdjęciu.
Małe obrazy w nowych układach
Podnieś miniaturę, zdjęcie w rozmiarze do sieci albo starszy materiał do rozmiaru, jakiego dziś wymaga główny baner lub slajd.
Wskazówki
Sprawdź rozmiar oryginału
Wybierz poziom powyżej obecnej liczby pikseli — niższy poziom zmniejszy obraz. Upscaling zrób na końcu, po wszystkich edycjach, żeby kolejne kroki nie musiały obrabiać większego pliku.
Wyślij
image_urli resolutionimage_urlto obraz, a resolution wybiera 2k, 4k (domyślnie) albo 8k.output_formatdodaj tylko wtedy, gdy chcesz png lub webp zamiast jpeg.Odpytaj, a potem pobierz
Wywołanie jest asynchroniczne: utwórz zadanie, odpytuj je do końca i pobierz plik z magazynu platformy. Jpeg w 8k ma około 8 MB, więc uwzględnij czas pobierania.
Wprowadzenie
Image Upscaler powiększa jeden gotowy obraz do poziomu 2k, 4k albo 8k i przy okazji go wyostrza. Sam obraz się nie zmienia: kompozycja, kolory i motyw zostają dokładnie takie, jak je wysłano. Nie ma promptu ani niczego do ustawiania poza rozmiarem i formatem pliku.
Żądanie
{
"image_url": "https://example.com/product.png",
"resolution": "4k",
"output_format": "jpeg"
}
Wymagany jest tylko image_url. Domyślnie resolution to 4k, a output_format to jpeg.
Jak działają poziomy
Poziom to budżet pikseli, a nie stałe płótno, a proporcje zawsze zostają zachowane. Zdjęcie 1024×1536 wróciło w rozmiarze 1672×2508 przy 2k, 3344×5017 przy 4k i 6689×10033 przy 8k, za każdym razem po około 45 sekundach. Oryginał większy niż poziom zostaje zmniejszony: obraz 3344×5017 wysłany z 2k wrócił w rozmiarze 1672×2509.
Przebieg zadania
Wywołanie jest asynchroniczne. Utwórz zadanie, odpytuj je do stanu końcowego, a potem pobierz obraz z magazynu platformy. Na żądanie wraca jeden obraz.
Wskazówki
- Wybierz poziom powyżej liczby pikseli oryginału.
- Upscaling zrób na końcu, po wszystkich edycjach, żeby kolejne kroki nie przetwarzały większego pliku.
- Zacznij od najczystszego oryginału: artefakty kompresji i rozmycie też są powiększane.
- Używaj
jpeg, jeśli nie potrzebujesz wyniku bezstratnego. Nasz jpeg w 8k ważył około 8 MB;pngjest kilka razy większy.
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": "spicyapi/image-upscaler-v1/upscale",
"input": {
"image_url": "https://example.com/reference.png",
"output_format": "jpeg",
"resolution": "4k"
}
}'
# 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.






