CLI
非同期実行とステータス
送信直後に戻り、あとからtufty statusで結果を取得します。
デフォルト:完了まで待機
ツールコマンドは送信後、デフォルトで待機します。実行が完了または失敗するまで3秒ごとに確認し、最大--timeout秒(デフォルトは900)待ちます。
- 実行を送信すると、すぐに
runIdが標準エラー出力に表示されます。 - 待機はいつでも中断できます(Ctrl+C)。実行はサーバー上で続くため、あとから
tufty status <runId> --waitで続きを待てます。 - ポーリング中の一時的な接続切れ(連続3回まで)は再試行されるため、一度ネットワークが途切れただけで待機全体が無駄になることはありません。
--no-wait
tufty image-to-video --still ./corgi.jpg --duration 10 --no-wait送信後すぐに戻ります。
{
"ok": true,
"result": {
"tool": "image-to-video",
"runId": "9b1d4c7e-2f3a-4d8b-a6e5-7c0f1e2d3b4a",
"status": "running",
"outputs": []
}
}tufty status
tufty status 9b1d4c7e-2f3a-4d8b-a6e5-7c0f1e2d3b4a
tufty status 9b1d4c7e-2f3a-4d8b-a6e5-7c0f1e2d3b4a --wait
tufty status 9b1d4c7e-2f3a-4d8b-a6e5-7c0f1e2d3b4a --wait --timeout 1800 --format url| フラグ | 説明 |
|---|---|
<runId> | 実行を送信したときに返されたID |
--wait | 実行中の場合、完了または失敗するまでポーリング |
--timeout <seconds> | 最大待機秒数。デフォルトは900 |
--format <mode> | json(デフォルト)またはurl |
--waitを付けない場合は1回だけ確認します。実行中ならstatus: "running"と空のoutputsを、完了していればすべての生成物のURLを返します。
tufty statusには--saveがありません。ダウンロードしたい場合は、--format urlでURLを取得して自分でダウンロードするか、ツールコマンドで--saveを使って結果を待機してください。
タイムアウトと失敗
| 状況 | 出力 |
|---|---|
--timeout以内に完了しなかった | code: "timeout"、details.runId。実行はキャンセルされないので、あとでtufty status <runId> --waitを実行してください |
| サーバー側で生成に失敗した | code: "task_failed"。detailsにrunId、tool、サーバーのエラーコードserverCodeが入ります |
--timeoutは正の数である必要があります。それ以外の値ではusage_error(終了コード2)が返されます。
スクリプトで使う
RUN_ID=$(tufty image-to-video --still ./corgi.png --no-wait | jq -r '.result.runId')
tufty status "$RUN_ID" --wait --format url