Vercel AI Gateway、非同期動画生成をサポートへ
本文の状態
日本語全文を表示中
詳細モードで約4分の本文を読めます。
同じ出来事の情報源
この情報源を基点に整理
Vercel Blog
Vercel は AI Gateway の動画生成機能に非同期処理をサポートさせ、タイムアウト問題を解消し、開発者がウェブフックやポーリングで柔軟に結果を取得できる機能を追加した。
AI深層分析を開く2026年8月26日 02:27
AI深層分析
キーポイント
非同期処理のサポート開始
従来の動画生成はリクエストが完了するまで接続を維持したが、新機能では秒単位から分単位の生成でもタイムアウトに陥らずに済む。
3 つの実装オプションの提供
開発者はアプリケーションの状態に応じて、ウェブフックによる通知待ち、ポーリングによる状態確認、あるいはジョブ開始後の後日取得という 3 通りの方法を選べる。
SDK とトークンの連携要件
非同期処理を実現するには、呼び出しプロセスとウェブフックハンドラー間で共有トークンおよびストレージを確保し、生成ジョブの整合性を保つ必要がある。
結果取得とファイル管理の違い
ポーリングやウェブフックでは SDK が動画をダウンロードしてバイナリデータを返すが、後日取得モードではプロバイダ提供の URL またはインラインバイトが返されるため、保存が必要な場合は手動ダウンロードが必要となる。
非同期ジョブのフィルタリングと詳細表示
リクエストモードで「Async」を選択すると、非同期ジョブのみが表示される。エントリを開くとジョブIDとリクエストの詳細を確認できる。
重要な引用
By default, generateVideo keeps one HTTP request to AI Gateway open until the result is ready.
The calling process and webhook handler need a shared token and store so the delivery can be matched to the correct generation.
Unlike generateVideo, getVideoStatus does not download hosted videos. It returns provider URLs or inline bytes.
Under Request Mode, select Async to show only asynchronous jobs.
編集コメントを表示
編集コメント
動画生成は計算リソースを長時間消費するため、従来の同期処理では実運用でタイムアウト問題が頻発していた。今回の非同期サポート追加は、この課題に対する具体的な解決策として開発者の負担を大幅に軽減する重要なアップデートである。
Source Article
元記事を日本語で読む
本文に関係しない購読案内、埋め込み通知、サイト内プロモーションは除いています。
AI Gateway での動画生成が非同期処理に対応しました。
デフォルトでは、generateVideo は結果が準備されるまで AI Gateway への HTTP リクエストを保持し続けます。動画生成には数秒から数分かかるため、このリクエストがタイムアウト超過になる可能性があります。
非同期生成を利用すれば、アプリケーションは Webhook を受け取るか、完了状態をポーリングするか、あるいは生成を開始して後続のリクエストで結果を取得することが可能になります。
プロセスが継続実行できるかどうかや、Webhook の受信が可能かどうかに応じて、以下のオプションから選択してください。
既存の generateVideo コールはこれまで通り動作します。すべてのオプションで、テキストから動画へ(text-to-video)、画像から動画へ(image-to-video)、参照映像からの生成(reference-to-video)など、さまざまな入力形式に対応しています。
SDK のアップグレード
最新の AI SDK と AI Gateway プロバイダーをインストールしてください。
非同期動画生成の利用
generateVideo で Webhook を利用する
Webhook を generateVideo に渡すことで、ポーリングを行わずに完了イベントを待機できます。ジョブが完了または失敗すると、AI Gateway がイベントを送信します。SDK はそのイベントを待ち、生成された動画をフェッチして、元の generateVideo コールを解決します。
呼び出しプロセスと Webhook ハンドラーは、配信を正しい生成ジョブに紐付けるために共有トークンとストレージが必要です。このワークフローのために generateVideo が署名シークレットを公開することはありません。完全な受信パターンについては、Webhook 検証ドキュメントを参照してください。
generateVideo のポーリングと Webhook の両方のオプションは、結果として GeneratedFile オブジェクト(result.videos)を返します。SDK はプロバイダーがホストする動画をダウンロードするため、いずれのワークフローでも uint8Array、base64、mediaType を利用可能です。
generateVideo でポーリングを行う
既存の generateVideo 呼び出しにポーリングを追加するには:
AI Gateway が非同期ジョブを開始し、SDK はジョブが完了するまで一定間隔で短いステータス要求を送信します。呼び出し元のプロセスは generateVideo の解決(レスポンス取得)まで稼働し続ける必要がありますが、個別の AI Gateway へのリクエストが生成全体を保持し続けるわけではありません。
ジョブを開始して後から取得する
startVideo は、AI Gateway がジョブを受け付けた時点で即座に操作オブジェクトを返します。レンダリング完了を待たずに、この操作オブジェクトを保存しておき、同じプロセス内または別のプロセスから later に getVideoStatus を呼び出す際に渡してください。
この操作オブジェクトは JSON シリアライズ可能であるため、データベースへの保存やキュー経由での転送が可能です。本ワークフローには組み込みのタイムアウト機能がないため、ジョブの確認をどの程度継続するかはアプリケーション側で制御する必要があります。
また、startVideo に webhookUrl を指定することで、ステータス確認の代わりに完了イベントを受け取ることもできます。start のレスポンスには、Webhook の検証に使用する署名シークレットも含まれています。
generateVideo と異なり、getVideoStatus はホストされた動画をダウンロードしません。プロバイダー提供の URL またはインラインバイト列を返すだけです。ホスト URL は有効期限が切れる可能性があるため、保存が必要な動画は必ずダウンロードしてください。
非同期ジョブの監視
AI Gateway のログページでは、非同期生成が開始されると即座にその実行状況が表示されます。生成処理中は「Running(実行中)」として表示され、完了または失敗すると更新されます。
リクエストモードで「Async」を選択すると、非同期ジョブのみを表示できます。各エントリを開くと、ジョブ ID とリクエストの詳細を確認可能です。
ジョブが作成されるのは非同期ワークフローの場合のみです。通常の generateVideo 呼び出しは、動画の生成完了後に単一の完了済みリクエストとして表示されます。
サイズ制限や、再試行時のジョブ開始における整合性(idempotency)、Webhook 配信の再試行処理など、運用に関する詳細については、非同期ビデオ生成のドキュメントをご覧ください。また、すべてのビデオモデルの一覧も確認できます。
関連記事
今日のまとめ
AIデイリーブリーフで今日の重要ニュースをまとめ読み