モデル

Google: Veo 3.1

Markdown · JSON

Google: Veo 3.1

Veo 3.1は、生成音声、境界フレームのガイド、参照素材を使う、テキスト・画像主体のシーン向けGoogle動画モデルです。制作プロファイルは24fpsの4・6・8秒クリップを提供し、720p、1080p、4Kを選べます。

モデルについて

この説明はモデルの機能を紹介するものです。Ailootで利用できる入力、出力、オプションは、選択したメソッドごとに以下に記載されています。

Veo 3.1は、テキストまたは画像主体の指示から短い映像・音声シーンを作るGoogleの動画生成モデルです。制作プロファイルはテキストから動画、画像から動画、開始・終了フレームのガイドによる制作、生成音、素材参照、独立した続きのフローに対応します。映画的なコンセプト、短い商品の物語、明確なシーン・動作・聴取体験を持つ映像区間に使えます。

最初に被写体と見える出来事を説明します。周囲、時刻、光を定め、カメラの視点や動き、意図した視覚スタイルを示します。独自の指示なら、暗いスタジオの台にガラス容器を置き、カメラがゆっくり横へ移動して反射を見せ、柔らかな環境音を添える場面にできます。各指示は完成結果で評価できる、見える・聞こえる特徴を与えます。

Googleの指示枠組みは、被写体、動作、シーン、カメラ、美的表現を別々の部分として扱います。すべての形容を加えず、ショットに役立つ部分を使います。文書化されたプロンプトプロファイルでは演出を英語で書きます。複数の動作がある場合はその関係を述べ、短いクリップに収まる量にして、何かを見せる演出や被写体の反応が分かりやすく伝わるようにします。

開始画像は冒頭の外観と構図を定めます。キャラクター、商品、場所が視覚素材としてすでにある場合に使い、そこから展開する動きを説明します。最後のフレームは終わりの目標構図を加えます。自然な遷移が伝わり、主被写体を識別する細部が保たれた境界フレームを準備し、生成後にフレーム間の動きを確認します。

素材参照は別の役割です。新しいシーンのキャラクターや物体の外観を導き、境界フレームはそのシーンの特定の瞬間を定めます。重要な視覚特徴を示す参照を選び、各素材の役割をプロンプトで明確にします。制作モデルの参照画像から動画の仕様は、そのフローを8秒出力とし、通常のテキスト主体の長さ選択とは別です。

通常の制作プロファイルは4・6・8秒、24fpsです。横16:9、縦9:16、プロンプトごと最大4本、出力720p、1080p、4Kで、形式はMP4です。画像主体の仕様はJPEGまたはPNG、入力画像最大20 MB、720p/1080p入力設定に対応します。使用先に合う出力プロファイルを選び、そのサイズで構図を読み取りやすくします。

ネイティブの音を見えるシーンに伴わせられます。同じ指示にせりふ、雰囲気、効果音を指定し、それぞれを生む被写体や出来事を示します。対話指示は演技、カメラ指示は観客への見せ方を定めます。クリップで実際に話せる時間に言葉を収め、明瞭さと動作との関係を確認します。

続きの制作には、メーカーの独立した動画延長フローがあります。適切な生成済み元クリップから始め、次に見える出来事やシーン変化を記述します。外観、動き、音のつなぎ目を確認できるよう、元と続きの区間を保存します。通常の新規生成の時間・解像度の選択を、すべての延長操作の普遍的な契約とみなしません。

ネガティブな説明は、タスクの視覚要件に除外を集中できます。商品バリエーションのシリーズでは被写体と構図を一定にし、照明やカメラ距離など創作上の方向を一つ変えます。プロンプト、参照、選択設定を結果とともに記録します。無関係な生成の集まりでなく、有用な創作差を比較できます。

通常のVeo 3.1制作プロファイルとVeo 3.1 Fastでは出力解像度が異なります。Fastは720pと1080p、通常3.1は4Kも挙げています。制作モデル識別子を古いPreviewや別世代へ黙って替えず、選択エディションを結果に添えます。被写体の外観も対応する操作も、選択フローに依存します。

生成はoperationとして行われ、完了結果から再生や後の編集用の動画素材が得られます。返されたファイルを元フレーム、参照素材、指示とともに保ち、付属するコンテンツ来歴情報も保存します。実際の各出力の被写体の外観、動作、構図、音、最終構成を確認します。選んだクリップを制作の構成要素にし、タイトル、トランジション、その他の仕上げを周囲の編集工程で加えます。

Ailoot Ultra · 動画 POST /v1/videos google/veo-3.1

google/veo-3.1

Google /google/veo-3.1

はじめに

Veo 3.1は、生成音声、境界フレームのガイド、参照素材を使う、テキスト・画像主体のシーン向けGoogle動画モデルです。制作プロファイルは24fpsの4・6・8秒クリップを提供し、720p、1080p、4Kを選べます。

対応する入力
テキスト
結果
動画

Ailootで利用可能 · 入力とメソッド

Ailoot Ultra · 動画 POST /v1/videos
入力の種類
text
出力の種類
video
出力形式
mp4
出力数
最大 4 出力s
フィールド種類要件値と制限デフォルト
フィールドmodel種類string要件必須値と制限
google/veo-3.1
デフォルト—
フィールドprompt種類string要件必須値と制限
最大UTF-8バイト数: 10,000
空白以外の文字が必須: はい
デフォルト—
フィールドduration種類integer要件必須値と制限
4, 6, 8
デフォルト—
フィールドresolution種類string要件必須値と制限
720p
デフォルト—
フィールドaspect_ratio種類string要件必須値と制限
16:9, 9:16
デフォルト—
フィールドgenerate_audio種類boolean要件必須値と制限
false, true
デフォルト—
入力素材の組み合わせ

テキストから動画へ · 必須: prompt

メソッドのパラメータとライフサイクル
パラメータ仕様
パラメータcontent_type仕様application/json
パラメータrequired仕様model, prompt, duration, resolution, aspect_ratio, generate_audio
パラメータadditional_properties仕様false
パラメータparameters仕様{"name":"model","type":"string","required":true,"enum":["google/veo-3.1"]}, {"name":"prompt","type":"string","required":true,"non_whitespace":true,"max_utf8_bytes":10000}, {"name":"duration","type":"integer","required":true,"enum":[4,6,8]}, {"name":"resolution","type":"string","required":true,"enum":["720p"]}, {"name":"aspect_ratio","type":"string","required":true,"enum":["16:9","9:16"]}, {"name":"generate_audio","type":"boolean","required":true,"enum":[false,true]}
パラメータmaterial_types仕様text

メソッドのエイリアス: /v1/videos/generations, /videos, /videos/generations

ライフサイクル: submit_once_poll_original

GET /v1/videos/{request_id}

GET /v1/videos/generations/{request_id}

GET /v1/videos/{request_id}/content

GET /v1/videos/generations/{request_id}/content

完全なレスポンスと元の返却IDを保持してください。

結果不明の作成リクエストは、決して再送信しないでください。

料金

最終料金の計算方法

表示料金は生成前の費用の見積もりです。最終請求額は、元の生成処理に記録された費用から計算されます。実測された出力時間や予測数量が、そのまま最終的な課金数量になるわけではありません。

料金情報はリクエストの機能を追加しません。対応するパラメーターは選択したメソッドに記載されています。

高速モード
未指定 高速モードが選択されている場合
Flex モード
未指定 flex モードが選択されている場合
最大推論量
未指定 推論量が最大で、調整に既定値(default)を使用する場合

比較用の推定料金

設定別の価格

各料金を表示された条件と照合してください。選択肢となる設定の各組には、いずれか1つの料金を適用します。

設定料金表予測数量音声を生成解像度課金単位課金条件料金
設定基本トークン料金料金表基本料金予測数量—音声を生成—解像度—課金単位—課金条件—料金
入力 · 入力トークン · 比較専用の見積もり — / 1K トークン
出力 · 出力トークン · 比較専用の見積もり — / 1K トークン
入力 · キャッシュ読み取り · 比較専用の見積もり — / 1K トークン
入力 · キャッシュ書き込み · 比較専用の見積もり — / 1K トークン
入力 · キャッシュ書き込み、1時間 · 比較専用の見積もり — / 1K トークン
設定Ultra料金表—予測数量指定された設定(概算のみ)。音声を生成音声あり解像度720p課金単位出力動画1秒あたり課金条件—料金
出力 · 出力動画の推定秒数 · 比較専用の見積もり $0.8 出力動画1秒あたり

表示された単価は、生成前の費用見積もりに使用します。最終請求額は、元の生成に記録された費用から算出されます。動画の実際の再生時間は、課金対象の数量ではありません。

設定動画料金料金表—予測数量—音声を生成—解像度—課金単位動画1秒あたり課金条件音声:with_audio;解像度:4k料金
出力 · 動画料金 · 比較専用の見積もり $1.2 動画1秒あたり
設定Ultra料金表—予測数量指定された設定(概算のみ)。音声を生成音声なし解像度720p課金単位出力動画1秒あたり課金条件—料金
出力 · 出力動画の推定秒数 · 比較専用の見積もり $0.4 出力動画1秒あたり

表示された単価は、生成前の費用見積もりに使用します。最終請求額は、元の生成に記録された費用から算出されます。動画の実際の再生時間は、課金対象の数量ではありません。

設定動画料金料金表—予測数量—音声を生成—解像度—課金単位動画1秒あたり課金条件音声:without_audio;解像度:4k料金
出力 · 動画料金 · 比較専用の見積もり $0.8 動画1秒あたり
設定生成費用の見積もり料金表—予測数量生成1回分の概算音声を生成—解像度—課金単位—課金条件—料金
出力 · 推定生成コスト · 比較専用の見積もり $1.6 生成前の見積もり

この見積もりは追加料金ではなく、完了した生成処理に対する固定料金でもありません。

Ailootはリクエスト前に見積額を確保します。結果の取得後、実測使用量に基づいて最終料金を精算します。ストリーミング時の精算には最終の使用量記録を使用します。金額の確保と精算の仕組み →

参考料金の詳細

モデル単位の参照料金表は、メソッド選択、見積もり、課金を変更しません。実際の課金には、選択したAilootメソッドの料金を適用します。

動画設定の料金参照情報

設定別の価格

各料金を表示された条件と照合してください。選択肢となる設定の各組には、いずれか1つの料金を適用します。

設定課金条件料金
設定動画料金課金条件音声:with_audio料金
出力 · 動画料金 $0.8 動画1秒あたり

表示されている設定の公開料金の参照値です。最終請求額には、実際に課金された設定が適用されます。

設定動画料金課金条件音声:with_audio;解像度:4k料金
出力 · 動画料金 $1.2 動画1秒あたり

表示されている設定の公開料金の参照値です。最終請求額には、実際に課金された設定が適用されます。

設定動画料金課金条件音声:without_audio料金
出力 · 動画料金 $0.4 動画1秒あたり

表示されている設定の公開料金の参照値です。最終請求額には、実際に課金された設定が適用されます。

設定動画料金課金条件音声:without_audio;解像度:4k料金
出力 · 動画料金 $0.8 動画1秒あたり

表示されている設定の公開料金の参照値です。最終請求額には、実際に課金された設定が適用されます。

リクエスト例

Ailoot Ultra · 動画

curl · 設定済みのプロファイルを正確に使用する
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "google/veo-3.1", "prompt": "a calm greenhouse", "duration": 6, "resolution": "720p", "aspect_ratio": "16:9", "generate_audio": true}')
Path('request.json').write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('result.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT

結果を受け取って保存

Ailoot Ultra · 動画

mp4

  • GET /v1/videos/{request_id}
  • GET /v1/videos/generations/{request_id}
  • GET /v1/videos/{request_id}/content
  • GET /v1/videos/generations/{request_id}/content
ジョブのステータスを確認
GET · 元の処理のステータス取得
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_STATUS_URL'
import json
from pathlib import Path
from urllib.parse import quote
r=json.loads(Path('result.json').read_text())
if not isinstance(r.get('id'),str) or not r['id']:raise SystemExit('Keep the original response and headers for reconciliation; no returned ID')
Path('status-url.txt').write_text('https://api.ailoot.ai/v1/videos/'+quote(r['id'],safe=''))
PY_STATUS_URL
curl --fail-with-body --silent --show-error "$(cat status-url.txt)" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -D status-headers.txt -o status.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('status.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
その他のコンテンツ取得
完了した自分の出力をすべて保存
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_ASSETS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path('status.json').read_text())
if r.get('status')!='completed':raise SystemExit('Keep the original ID and read its status; never recreate an unknown job')
if not isinstance(r.get('data'),list) or not r['data']:raise SystemExit('Keep the complete original status; no completed outputs supplied')
urls=[]
for i,u in enumerate(r.get('data',[])):
    if not isinstance(u,str):raise SystemExit('Keep the original response; unexpected asset shape')
    urls.append((str(i),u))
for label,path in urls:
    u=urljoin('https://api.ailoot.ai',path);z=urlsplit(u)
    if z.scheme!='https' or z.netloc!='api.ailoot.ai' or z.username or z.password:raise SystemExit('Use the actual returned Ailoot owned content URL')
    target=Path('owned-'+label+'.bin')
    subprocess.run(['curl','--fail-with-body','--silent','--show-error',u,'-H','Authorization: Bearer '+os.environ['AILOOT_API_KEY'],'-D',str(target)+'.headers','-o',str(target)],check=True)
print('All returned owned URLs saved; complete metadata, timing and usage remain in the JSON.')
PY_ASSETS
完了した結果をすべて保存

完了した動画や返されたファイルをすべて保存し、実際に返されたすべてのアセットURLから取得してください。

完了したdata[]にある所有動画の署名付きURLと、ステータスメタデータ全体を保持してください。生成された音声も含めて、すべての出力を保存します。generate_audio=falseでも有効なAAC音声トラックが含まれる場合があります。その音声を含む元のMP4全体を保持してください。

元のレスポンスを確認する場合

既存の元のジョブを読み取ってください。結果不明の送信を決して再実行しないでください。

最大出力数: 4.

レスポンスのフィールド
フィールド種類意味
フィールドid種類string意味—
フィールドobject種類string意味—
フィールドmodel種類string意味—
フィールドstatus種類string意味—
フィールドdata[]種類signed content URL意味—
フィールドcharge_pending_check種類boolean意味—
フィールドerror.code種類string意味—
フィールドerror.message種類string意味—
フィールドoperation_id種類string意味HTTP503 result_pending_checkの元のステータス/コンテンツのレスポンス:idは同じ元の公開動画IDです。
フィールドerror.type種類string意味HTTP503のresult_pending_checkではserver_errorが返されます。
エラーと次の手順
レスポンス条件次の手順
レスポンス400 · invalid_request_error条件動画プロファイルの解析前に、未加工のリクエスト本文の読み取りに失敗します次の手順返されたレスポンスを保持し、読み取りできないリクエスト本文を修正してください。
レスポンス422 · price_unavailable条件正確な動画プロファイルを解析できないか、解析済みの完全なプロファイルに一致する利用可能な料金表がありません次の手順レスポンスを保持してください。利用が許可された正確で完全なプロファイルと、その公開料金表を使用します。この分岐は、プロバイダーへの送信前に実行されます。
レスポンス409 · video_not_ready条件元の結果のコンテンツはまだ利用できません次の手順元の返却IDをポーリングし、Retry-Afterに従ってください。
レスポンスserver_error条件返されたレスポンスは、操作または結果の確認が必要であることを示しています次の手順最初に返された操作/タスク ID、リクエストヘッダー、レスポンスを保存し、その元の操作に対してサポートされている読み取りを継続してください。作成リクエストを再送しないでください。
レスポンス503 · result_pending_check条件元のステータス/コンテンツをGETで取得する際、タスクが未公開で、元のジョブがfailed/cancelled/expiredのいずれでもなく、ローカル状態がunknownまたは元のジョブのステータスがcompletedである場合。次の手順元のidとoperation_id(同じ公開動画ID)、レスポンス、ヘッダーを保持してください。元のステータス/コンテンツだけを読み取ってください。新しい生成リクエストは決して送信しないでください。

エイリアス

モデルのエイリアス

Ailoot Ultra google/veo-3.1

メソッドパスのエイリアス

/v1/videos/generations, /videos, /videos/generations

関連する呼び出し用ID

google/veo-3.1

FAQ · Google: Veo 3.1
利用できる入力と結果は何ですか?

POST /v1/videos · google/veo-3.1: text → video

リクエストはどの項目を使用しますか?

POST /v1/videos · google/veo-3.1: model, prompt, duration, resolution, aspect_ratio, generate_audio

詳細を見る

AilootをClaude Code、OpenCode、Hermes、自分のアプリに接続しましょう。

企業とそのプロジェクト群

企業とそのプロジェクト群:数百万の顧客、毎月数十億規模の売上。

トークンを割引価格で購入。

継続利用にサブスクリプション割引。プロモコードでトークン購入が最大50%割引。

サブスクリプション
定期的なリクエストに合う割引プランを選びましょう。
最大50%のプロモコード
購入時にコードを入力すると、実施中のキャンペーンに沿って価格を再計算します。
支出を履歴で確認
各リクエストのモデル、トークン、金額が保存されます。

サブスクリプションを選ぶ · モデルの価格を見る

販売する製品に、 APIを組み込みましょう。

SaaS、アプリ、ボットをAilootの公式サービス提供条件とライセンス契約に基づいて接続できます。再販にはリセラーライセンスを申請できます。

商用アプリ
サービスの有料機能に、文章、画像、動画、音声の生成を組み込めます。
リセラーライセンス
プロジェクトの説明とアクセスの仕組みをお送りください。利用・再販条件の書面を申請できます。
サイトで契約文書を確認
接続前にサービス提供条件、ライセンス契約、データ処理ポリシーを読めます。

リセラーライセンスを申請 · サービス提供条件とライセンス契約