Životní cyklus úkolu
Zjistěte, jak úkol prochází od požadavku k výsledku, jak dlouho to obvykle trvá a jak dlouho by na něj měl váš kód čekat.
Jak probíhá úkol
Požadavek na vytvoření vrátí ID úkolu, aniž by čekal na jeho dokončení. Úkol poté běží na pozadí a vy jej sledujete jedním ze tří způsobů: dotazováním na jeho koncový bod GET, otevřením jeho streamovacího koncového bodu nebo přijetím webhooku.
PENDING. Worker jej převezme a přejde do stavu IN_PROGRESS, kde stráví většinu času. Skončí ve stavu SUCCEEDED nebo FAILED a konečný stav se již nikdy nemění.PENDINGIN_PROGRESSSUCCEEDEDFAILEDÚkol zaznamenává každý krok ve svých polích created_at, started_at a finished_at.
Následující tabulka ukazuje, co by měl váš kód udělat při každém stavu.
| Stav | Co by měl váš kód udělat |
|---|---|
PENDING | Pokračovat v čekání. |
IN_PROGRESS | Sledovat progress: procento dokončené práce, od 0 do 100. |
SUCCEEDED | Stáhnout výsledek. Meshy uchovává soubory po omezenou dobu. Viz Uchování assetů. |
FAILED | Přečíst task_error, poté opravit vstup nebo vytvořit nový úkol. Viz Chyby. |
CANCELED | Přestat čekat. Úkol nevytvoří výsledek. Tento stav používají pouze úkoly Creative Lab. |
SUCCEEDED, FAILED a CANCELED jsou konečné. Jakmile úkol dosáhne jednoho z nich, jeho stav se již nikdy nezmění.
Z pohledu vašeho kódu to vypadá takto:
Požadavek: POST/image-to-3d
Odpověď: 202{ "result": "<task_id>" }úkol vytvořen
- Opakovat každých pár sekund
Požadavek: GET/image-to-3d/<task_id>
Odpověď: 200{ "status": "IN_PROGRESS","progress": 45 }Retry-After: 5
Požadavek: GET/image-to-3d/<task_id>
Odpověď: 200{ "status": "SUCCEEDED","model_urls": { "glb": "…" } }
GET se stejným ID úkolu.Doby zpracování
Následující tabulky ukazují mediánové doby na produkčním provozu API v září 2026.
Doba běží od vytvoření úkolu po konečný stav. Téměř celá doba připadá na zpracování, protože úkol obvykle zůstává ve stavu PENDING pouze několik sekund. Když je fronta vytížená, úkoly mohou čekat na spuštění déle, a úkoly v plánech s vyšší prioritou obvykle startují dříve.
Doby kratší než 2 minuty jsou uvedeny v sekundách (s), delší doby v minutách (min). „Nepodporováno“ znamená, že API tuto možnost u daného modelu nenabízí.
Jedná se o typické doby, nikoli zaručené doby dokončení. Během vytížených období může některým úkolům trvat déle, přesto však uspějí. Chcete-li zkontrolovat stav Meshy, přejděte na stránku stavu. Nepoužívejte tyto doby jako timeouty ve svém kódu. Hodnoty pro timeout naleznete v části Jak dlouho čekat.
Generování 3D
| API | Konfigurace | meshy-7.1 (latest) | meshy-6 | meshy-6-lite | meshy-t2 |
|---|---|---|---|---|---|
| Text na 3D (Preview) | Pouze síť | 75 s | 90 s | 45 s | 10 s |
| Obrázek na 3D | Pouze síť | 75 s | 90 s | 40 s | 4 s |
| Síť s texturami 2K | 2 min | 3 min | 75 s | 60 s | |
| Síť s texturami 4K | 2,5 min | 3,5 min | Nepodporováno | 80 s | |
| Síť s texturami 8K | 3,5 min | 4 min | Nepodporováno | 2,5 min | |
| Více obrázků na 3D | Pouze síť | 65 s | 2 min | 30 s | Nepodporováno |
| Síť s texturami 2K | 2,5 min | 3,5 min | 85 s | Nepodporováno | |
| Síť s texturami 4K | 3 min | 4 min | Nepodporováno | Nepodporováno | |
| Síť s texturami 8K | 3,5 min | 4,5 min | Nepodporováno | Nepodporováno |
Pro Obrázek na 3D a Více obrázků na 3D znamená „Pouze síť“ should_texture: false. Tyto možnosti a vstupy mění dobu zpracování:
- PBR mapy (
enable_pbr) přidávají 30 až 60 sekund. - Ultra geometrie (
geometry_resolution: "2k"nebo"4k") přidává až 1 minutu. - Při stejném nastavení trvá zpracování složitějších vstupních obrázků déle.
Texturování
| API | Rozlišení textury | Typická doba |
|---|---|---|
| Text na 3D (Refine) | 2K nebo 4K | 80 s |
| 8K | 3,5 min | |
| Retexturování | 2K | 55 s |
| 4K | 90 s | |
| 8K | 2,5 min |
Generování obrázků
| API | nano-banana | nano-banana-2 | nano-banana-pro | Modely GPT Image |
|---|---|---|---|---|
| Text na obrázek | 20 s | 15 s | 25 s | 20 až 35 s |
| Obrázek na obrázek | 40 s | 20 s | 30 s | 20 až 40 s |
Rigging a animace
| API | Konfigurace | Typická doba |
|---|---|---|
| Auto-Rigging | Automatický rigging | 40 s |
| Animace | Na požadavek | 15 s |
| Text na pohyb | mode prime | 15 s |
mode swift | 10 s |
Následné zpracování
| API | Typická doba |
|---|---|
| Remesh | 2 min |
| UV rozbalení | 35 s |
| Převést | 7 s |
| Změnit velikost | 15 s |
3D tisk
| API | Konfigurace | Typická doba |
|---|---|---|
| Analyzovat tisknutelnost | Pouze kontroly sítě | 1 s |
| Kontrola sítě a tenkých stěn | 10 s | |
| Multi-Color | Na požadavek | 30 s |
| Opravit tisknutelnost | Pouze oprava sítě | 10 s |
| Kontrola tenkých stěn, stěny zachovány | 20 s | |
| Kontrola tenkých stěn, stěny zesíleny | 100 s | |
| Auto Split | Na požadavek | 70 s |
Ve verzi v2 vždy spouští Opravit tisknutelnost a Analyzovat tisknutelnost kontrolu tenkých stěn. Ve verzi v1 ji spouští, pokud odešlete typ tiskárny nebo velikost tisku.
Jak dlouho čekat
Úkol pokračuje v běhu, i když váš kód přestane čekat. Pokud váš požadavek vyprší, spojení se přeruší nebo se stream uzavře, úkol neselže ani se nezruší.
- Počkejte alespoň 60 minut, počítáno od pole
created_atúkolu, než přestanete čekat. Pokud přestanete čekat dříve, můžete přijít o úkol, který uspěje později. K tomu dochází nejčastěji ve vytížených obdobích. - Uchovejte si ID úkolu. Úkol můžete kdykoli znovu získat. Pokud po 60 minutách stále není v konečném stavu, zkontrolujte jej znovu později. Pokud tento stav přetrvává, kontaktujte podporu.
- Pouze
FAILEDznamená, že úkol selhal. Meshy automaticky vrací kredity za neúspěšné úkoly.
Ve svém kódu použijte tyto hodnoty:
| Nastavení | Doporučená hodnota |
|---|---|
Timeout požadavku na vytvoření (POST) | 60 sekund |
Timeout požadavku na vytvoření (POST) se souborem model_url větším než 100 MB | 120 sekund. Meshy soubor stáhne, než odpoví. |
Timeout požadavku na stav (GET) | 30 sekund |
| Interval dotazování | Hlavička Retry-After, nebo 5 sekund, pokud chybí. Dotazy se započítávají do vašeho limitu rychlosti. |
Neúspěšný požadavek na stav (timeout, 429 nebo 5xx) | Zkuste to znovu při dalším dotazu. Neznamená to, že úkol selhal. |
| Celková doba čekání na úkol | Alespoň 60 minut od created_at. Při opětovném připojení streamu toto počítadlo neresetujte. |
| Stream | Stream se může uzavřít dříve, než úkol skončí. Pokud se uzavře bez konečného stavu, znovu se připojte nebo přepněte na dotazování. |
Pro velké množství úkolů najednou použijte místo dotazování na každý z nich webhooky. Pokud konečná událost úkolu nedorazí ani po přibližně dvojnásobku jeho typické doby, získejte úkol z jeho koncového bodu GET.