タスクのライフサイクル
タスクがリクエストから結果に至るまでの流れ、通常どのくらいの時間がかかるか、そしてコード側でどれくらい待機すべきかについて学びます。
タスクの実行方法
作成リクエストは、タスクの実行を待たずにタスクIDを返します。その後タスクはバックグラウンドで実行され、次の3つの方法のいずれかで追跡できます。GETエンドポイントをポーリングする、ストリームエンドポイントを開く、またはWebhookを受け取る、のいずれかです。
PENDINGの状態で開始します。ワーカーがこれを取得するとIN_PROGRESSに移行し、タスクはほとんどの時間をこの状態で過ごします。最終的にはSUCCEEDEDまたはFAILEDで終了し、最終ステータスはそれ以降変化しません。PENDINGIN_PROGRESSSUCCEEDEDFAILEDタスクは各ステップをcreated_at、started_at、finished_atの各フィールドに記録します。
次の表は、各ステータスにおいてコード側で行うべき対応を示しています。
| ステータス | コード側で行うべきこと |
|---|---|
PENDING | 待機を続けます。 |
IN_PROGRESS | progress(完了した作業の割合、0から100)を追跡します。 |
SUCCEEDED | 結果をダウンロードします。Meshyはファイルを限られた期間のみ保持します。アセット保持期間を参照してください。 |
FAILED | task_errorを読み取り、入力を修正するか新しいタスクを作成します。エラーを参照してください。 |
CANCELED | 待機を停止します。このタスクは結果を生成しません。このステータスはCreative Labのタスクでのみ使用されます。 |
SUCCEEDED、FAILED、CANCELEDは最終状態です。タスクがこれらのいずれかに達した後は、ステータスが再び変化することはありません。
コード側から見ると、次のようになります。
リクエスト: POST/image-to-3d
レスポンス: 202{ "result": "<task_id>" }タスクが作成されました
- 数秒ごとに繰り返す
リクエスト: GET/image-to-3d/<task_id>
レスポンス: 200{ "status": "IN_PROGRESS","progress": 45 }Retry-After: 5
リクエスト: GET/image-to-3d/<task_id>
レスポンス: 200{ "status": "SUCCEEDED","model_urls": { "glb": "…" } }
GETしてください。処理時間
次の表は、2026年9月の本番API トラフィックにおける中央値の時間を示しています。
時間はタスク作成から最終ステータスに至るまでをカウントしています。タスクは通常PENDINGの状態に数秒しか留まらないため、ほぼすべての時間は処理に費やされています。キューが混雑している場合、タスクが開始するまでより長く待機することがあり、より高い優先度のプランのタスクは通常より早く開始します。
2分未満の時間は秒(s)で、それより長い時間は分(min)で示されています。「非対応」は、そのモデルではAPIがそのオプションを提供していないことを意味します。
3D生成
| API | 構成 | meshy-7.1(latest) | meshy-6 | meshy-6-lite | meshy-t2 |
|---|---|---|---|---|---|
| テキストから3D(Preview) | メッシュのみ | 75秒 | 90秒 | 45秒 | 10秒 |
| 画像から3D | メッシュのみ | 75秒 | 90秒 | 40秒 | 4秒 |
| 2Kテクスチャ付きメッシュ | 2分 | 3分 | 75秒 | 60秒 | |
| 4Kテクスチャ付きメッシュ | 2.5分 | 3.5分 | 非対応 | 80秒 | |
| 8Kテクスチャ付きメッシュ | 3.5分 | 4分 | 非対応 | 2.5分 | |
| マルチ画像から3D | メッシュのみ | 65秒 | 2分 | 30秒 | 非対応 |
| 2Kテクスチャ付きメッシュ | 2.5分 | 3.5分 | 85秒 | 非対応 | |
| 4Kテクスチャ付きメッシュ | 3分 | 4分 | 非対応 | 非対応 | |
| 8Kテクスチャ付きメッシュ | 3.5分 | 4.5分 | 非対応 | 非対応 |
画像から3Dおよびマルチ画像から3Dにおいて、「メッシュのみ」はshould_texture: falseを意味します。次のオプションおよび入力は所要時間に影響します。
- PBRマップ(
enable_pbr)は30から60秒を追加します。 - 高解像度ジオメトリ(
geometry_resolution: "2k"または"4k")は最大1分を追加します。 - 同じ設定の場合、より複雑な入力画像ほど時間がかかります。
テクスチャリング
| API | テクスチャ解像度 | 典型的な時間 |
|---|---|---|
| テキストから3D(Refine) | 2Kまたは4K | 80秒 |
| 8K | 3.5分 | |
| リテクスチャ | 2K | 55秒 |
| 4K | 90秒 | |
| 8K | 2.5分 |
画像生成
| API | nano-banana | nano-banana-2 | nano-banana-pro | GPT Imageモデル |
|---|---|---|---|---|
| テキストから画像 | 20秒 | 15秒 | 25秒 | 20から35秒 |
| 画像から画像 | 40秒 | 20秒 | 30秒 | 20から40秒 |
リギングとアニメーション
| API | 構成 | 典型的な時間 |
|---|---|---|
| Auto-Rigging | 自動リギング | 40秒 |
| アニメーション | リクエストごと | 15秒 |
| Text to Motion | prime mode | 15秒 |
swift mode | 10秒 |
後処理
3Dプリント
| API | 構成 | 典型的な時間 |
|---|---|---|
| プリント可能性を分析 | メッシュチェックのみ | 1秒 |
| メッシュおよび薄肉チェック | 10秒 | |
| Multi-Color | リクエストごと | 30秒 |
| プリント可能性を修復 | メッシュ修復のみ | 10秒 |
| 薄肉チェック、壁を維持 | 20秒 | |
| 薄肉チェック、壁を厚く | 100秒 | |
| Auto Split | リクエストごと | 70秒 |
v2では、プリント可能性を修復とプリント可能性を分析は常に薄肉チェックを実行します。v1では、プリンタータイプまたはプリントサイズを送信した場合にのみこれを実行します。
待機時間の目安
コード側が待機を停止しても、タスクは実行を続けます。リクエストがtimeoutになったり、接続が切断されたり、ストリームが閉じたりしても、タスクが失敗したりキャンセルされたりすることはありません。
- タスクの
created_atから数えて、少なくとも60分は待機してから待機を停止してください。それより早く停止すると、後で成功するタスクを見逃す可能性があります。これは主に混雑時に発生します。 - タスクIDを保持してください。タスクはいつでも再取得できます。60分経っても最終状態になっていない場合は、後でもう一度確認してください。その状態が続く場合は、サポートにお問い合わせください。
- タスクが失敗したことを意味するのは
FAILEDのみです。Meshyは失敗したタスクを自動的に返金します。
コード内では、次の値を使用してください。
| 設定 | 推奨値 |
|---|---|
作成リクエスト(POST)のtimeout | 60秒 |
100MBを超えるmodel_urlファイルを伴う作成リクエスト(POST)のtimeout | 120秒。Meshyはレスポンスを返す前にファイルをダウンロードします。 |
ステータスリクエスト(GET)のtimeout | 30秒 |
| ポーリング間隔 | Retry-Afterヘッダー、存在しない場合は5秒。ポーリングはレート制限にカウントされます。 |
ステータスリクエストの失敗(timeout、429、または5xx) | 次のポーリングで再試行してください。タスクが失敗したことを意味するものではありません。 |
| タスクごとの総待機時間 | created_atから少なくとも60分。ストリームを再接続してもこのカウントをリセットしないでください。 |
| ストリーム | ストリームはタスクが完了する前に閉じることがあります。最終ステータスなしで閉じた場合は、再接続するかポーリングに切り替えてください。 |
多数のタスクを同時に扱う場合は、それぞれをポーリングする代わりにWebhooksを使用してください。タスクの最終イベントが、その典型的な時間の約2倍を経過しても届かない場合は、GETエンドポイントからタスクを取得してください。