Source: https://ailoot.ai/models/ja/runway-gen-4-5/
Canonical: https://ailoot.ai/models/ja/runway-gen-4-5/
Language: ja

# Runway: Gen-4.5

[Markdown](https://ailoot.ai/models/ja/runway-gen-4-5/index.md) · [JSON](https://ailoot.ai/models/ja/runway-gen-4-5/facts.json)

## [Runway: Gen-4.5](https://ailoot.ai/models/ja/runway-gen-4-5/)

Runway Gen-4.5は、シーンの説明、または画像と動きの指示から動画を作成します。2〜10秒のクリップ、明示的なカメラ指示、テキストから動画と画像から動画で異なる構図の選択肢により、映画的なコンセプト、Bロール、動きのあるビジュアルシーンを制作できます。

- [**Ailoot Ultra · 動画** `POST /v1/videos` `runway/gen-4.5`](https://ailoot.ai/models/ja/runway-gen-4-5/#method-0)

モデルについて

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

Runway Gen-4.5は、テキストから動画、画像から動画のモードを備えた動画生成モデルです。シーンの構図、被写体の動作、カメラの動き、一連の出来事を記述した指示に従えます。生成された短いショットを確認・保存し、別の映像と組み合わせられます。

#### ショットに合う入力モードを選ぶ

テキストから動画は、文章のシーン説明から始まります。被写体、場所、照明、構図、動作、カメラの振る舞いなど、見える内容と動きを含めます。開始フレームで入力画像を再現する必要がない新しいシーン、Bロール、背景用映像、ビジュアルコンセプトに適します。

画像から動画は、最初のフレームになる画像から始まります。画像が構図、被写体、照明、スタイルを示します。文章のプロンプトは、被写体の動作、環境内の動き、カメラの移動、ショットの展開など、その後に起こることに集中させます。

重要な細部がすでに見える鮮明な画像を用意します。顔や手のぼけ、その他の不自然な箇所は、動かすと目立つことがあります。ほこりやモーションブラーを伴う高速移動を示唆する参照画像は、静止した被写体を求めるプロンプトと矛盾する場合もあります。

#### ビジュアルと動きを直接記述する

明確な自然言語を使い、意図した結果を肯定形で説明します。テキストから動画の指示では、カメラの視点、被写体、動作を先に述べ、その後にシーンの演出を加えられます。要件が定まったショットには詳しい説明が役立ち、簡単な説明は探索の余地を広げます。明確さに代わる理想的な語数はありません。

例えば、真ちゅうのデスクランプのクローズアップで灯りがつき、その後カメラがゆっくり動いて隣のノートを見せると記述します。テキストから動画では、見える素材と光を指定します。入力画像にそれらの細部がすでにある場合、画像から動画のプロンプトは照明の変化とカメラによる見せ方に集中できます。

矛盾する指示は避けます。被写体がわずかに動く固定カメラの画と、活発な手持ちの追跡ショットは異なります。無関係な視覚スタイルを長く並べず、役立つショットを定める細部を加えます。

#### カメラ用語と順序のある動作

メーカーのカメラガイドでは、構図、角度、移動、焦点を区別しています。クローズアップはフレームを占めるものを変え、ローアングルは見え方を変え、パンはカメラの向きを回転させ、トラッキングは被写体を追います。ラックフォーカスは、見えている被写体間で焦点を移します。移動が進むにつれて、何を映すか、何を見せるかを指定します。

順序のあるプロンプトは、通常の文章や大まかなタイムスタンプで出来事を表せます。タイムスタンプは順序とおおよその時刻を導くもので、フレーム単位の正確な実行を保証しません。選択した長さの中で動作が自然に起こるだけの時間を与えます。

固定ショットでは、フレーム内で起こる動きを説明し、カメラを静止させる意図を補強します。メーカーは、特に一部のワイドショットや導入ショットで、完全に動かない画は難しい場合があるとしています。固定カメラという表現だけで動きを防げると考えず、実際の結果に小さな不要な動きがないかを確認します。

#### 長さ、画面寸法、フレームレート

Gen-4.5のクリップ長は2〜10秒です。長い設定には順番のある複数の動作を収められ、短い反応や見せ場には短いショットを使えます。文書化された出力は720pで、メーカーの生成ワークフローでは毎秒24または25フレームです。

テキストから動画の仕様は、16:9で1280 × 720ピクセルです。画像から動画にはさらに、9:16で720 × 1280、1:1で960 × 960、4:3で1104 × 832、3:4で832 × 1104、21:9で1584 × 672が記載されています。両方の入力モードで同じアスペクト比を選べると考えず、モードと実際の寸法を合わせて確認します。

画像の比率によって既定の構図が決まり、変更すると入力が切り取られる場合があります。動きを評価する前に被写体の位置を確認します。動作が正しくても、元画像の重要部分が切れていれば使えません。

#### 完成ショットから長いシーケンスを作る

画像を使う制作では、メーカーは完成クリップの最後のフレームを次の生成の入力画像にして、シーケンスを続ける方法を説明しています。その後、動画編集ソフトで共有フレームとタイミングを調整し、クリップを結合します。これは複数の独立したショットの連続であり、長さが無制限の一回の生成ではありません。

最後のフレームと対応する指示を保存し、次のショットが意図した見た目の状態から始まるようにします。結合映像で、被写体の外観、カメラの方向、クリップ間のつながりを確認します。

#### 制作成果物を保存して確認する

生成後はクリップ全体を確認し、完成した出力を保存します。メーカーのワークフローには、別途アップスケールや、ProRes、PNG連番などの制作用書き出しの選択肢もあります。これらは追加のワークフローであり、ネイティブ生成の寸法と後からアップスケールした結果は別です。

Gen-4.5は、映画的なコンセプト、動きのあるビジュアル案、Bロール、短いシーンの開発に使えます。プロンプト、使用した入力画像、長さ、モード、返されたクリップを一緒に保存します。動作順序、カメラの振る舞い、被写体の細部、不要なカット、意図した構図を確認し、該当箇所に絞って修正します。

**Ailoot Ultra · 動画** `POST /v1/videos` `runway/gen-4.5`

[`runway/gen-4.5`](https://ailoot.ai/models/ja/#m=runway%2Fgen-4.5&route=Ultra&caller=runway%2Fgen-4.5&fmt=videos)

Runway /`runway/gen-4.5`

### はじめに

Runway Gen-4.5は、シーンの説明、または画像と動きの指示から動画を作成します。2〜10秒のクリップ、明示的なカメラ指示、テキストから動画と画像から動画で異なる構図の選択肢により、映画的なコンセプト、Bロール、動きのあるビジュアルシーンを制作できます。

対応する入力

テキスト · 画像

結果

動画

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

**Ailoot Ultra · 動画** `POST /v1/videos`

入力の種類

`text`, `image`

出力の種類

`video`

出力形式

元のMP4バイト列（正規化・トランスコードなし）

| フィールド | 種類 | 要件 | 値と制限 | デフォルト |
| --- | --- | --- | --- | --- |
| フィールド`model` | 種類`string` | 要件必須 | 値と制限 runway/gen-4.5 | デフォルト— |
| フィールド`prompt` | 種類`string` | 要件必須 | 値と制限 | デフォルト— |
| フィールド`duration` | 種類`integer` | 要件必須 | 値と制限 2, 3, 4, 5, 6, 7, 8, 9, 10 最小値: 1 最大値: 600 | デフォルト— |
| フィールド`resolution` | 種類`string` | 要件任意 | 値と制限 720p | デフォルト— |
| フィールド`aspect_ratio` | 種類`string` | 要件任意 | 値と制限 16:9, 9:16 | デフォルト— |
| フィールド`generate_audio` | 種類`boolean` | 要件任意 | 値と制限 false | デフォルト— |
| フィールド`frame_images` | 種類`array` | 要件任意 | 値と制限 最小項目数: 1 最大項目数: 1 入力コンテンツ: フレームオブジェクトの配列。各オブジェクトにはtype=image\_url、urlを含むimage\_url、およびframe\_typeを指定します。HTTPS画像URLを使用し、frame\_typeをfirst\_frameに設定してください。各フレームの役割はそれぞれ最大一回まで指定できます。 正確なキー: type, image\_url, frame\_type 条件: これらのキーは各フレームオブジェクトを記述します。image\_urlに含めるのはurlのみです。テキストのみのリクエストではframe\_imagesを省略してください。 | デフォルト— |
| フィールド`input_references` | 種類`array` | 要件任意 | 値と制限 | デフォルト— |
| フィールド`size` | 種類`string` | 要件任意 | 値と制限 1280x720, 720x1280 パターン: ^\[1-9\]\[0-9\]\*x\[1-9\]\[0-9\]\*$ | デフォルト— |
| フィールド`seed` | 種類`integer` | 要件任意 | 値と制限 最小値: -9,223,372,036,854,775,808 最大値: 9,223,372,036,854,775,807 | デフォルト— |
| フィールド`callback_url` | 種類`string` | 要件任意 | 値と制限 パターン: ^https:// | デフォルト— |
| フィールド`session_id` | 種類`string` | 要件任意 | 値と制限 | デフォルト— |
| フィールド`trace` | 種類`object` | 要件任意 | 値と制限 | デフォルト— |
| フィールド`user` | 種類`string` | 要件任意 | 値と制限 | デフォルト— |

入力素材の組み合わせ

**テキストから動画へ** · テキストのプロンプト。 · 必須: model, prompt, duration

`promptをテキスト、durationを整数の秒数で指定してください。サポートされている解像度を選び、アスペクト比を追加するか、一覧のサイズを使用します。`

`model`: 種類: string · runway/gen-4.5

`prompt`: 種類: string · 最大UTF-8バイト数: 10,000 · 空白以外の文字が必須: はい

**画像から動画へ** · テキストのプロンプトと先頭フレーム画像。 · 必須: model, prompt, duration, frame\_images

`frame_imagesは配列です。各フレームオブジェクトにはtype、image_url、frame_typeがあり、image_urlにはurlを含めます。typeをimage_urlに設定してください。first_frameを使用します。各フレームの役割は、それぞれ最大一回まで指定できます。各フレームには公開HTTPS画像URLを指定してください。サポートされている解像度を選び、アスペクト比を追加するか、一覧のサイズを使用します。`

正確なキー: type, image\_url, frame\_type

`model`: 種類: string · runway/gen-4.5

`prompt`: 種類: string · 最大UTF-8バイト数: 10,000 · 空白以外の文字が必須: はい

メソッドのパラメータとライフサイクル

| パラメータ | 仕様 |
| --- | --- |
| パラメータ`content_type` | 仕様application/json |
| パラメータ`required` | 仕様model, prompt, duration |
| パラメータ`material_types` | 仕様text, image |
| パラメータ`additional_properties` | 仕様false |
| パラメータ`optional_controls` | 仕様resolution, aspect\_ratio, generate\_audio, frame\_images, input\_references, size, seed, callback\_url, session\_id, trace, user |

ライフサイクル: `submit_once_poll_original`

`GET /v1/videos/{public_id}`

`GET /v1/videos/{public_id}/content`

### 料金

##### 最終料金の計算方法

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

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

高速モード

未指定 高速モードが選択されている場合

Flex モード

未指定 flex モードが選択されている場合

最大推論量

未指定 推論量が最大で、調整に既定値（default）を使用する場合

#### 比較用の推定料金

#### 設定別の価格

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

| 設定 | 料金表 | 予測数量 | 課金単位 | 課金条件 | 料金 |
| --- | --- | --- | --- | --- | --- |
| 設定基本トークン料金 | 料金表基本料金 | 予測数量— | 課金単位— | 課金条件— | 料金 入力 · 入力トークン · 比較専用の見積もり **—** / 1K トークン 出力 · 出力トークン · 比較専用の見積もり **—** / 1K トークン 入力 · キャッシュ読み取り · 比較専用の見積もり **—** / 1K トークン 入力 · キャッシュ書き込み · 比較専用の見積もり **—** / 1K トークン 入力 · キャッシュ書き込み、1時間 · 比較専用の見積もり **—** / 1K トークン |
| 設定動画料金 | 料金表— | 予測数量— | 課金単位動画1秒あたり | 課金条件この価格キーには追加条件が定義されていません。 | 料金 出力 · 動画料金 · 比較専用の見積もり **$0.24** 動画1秒あたり |
| 設定生成費用の見積もり | 料金表— | 予測数量生成1回分の概算 | 課金単位— | 課金条件— | 料金 出力 · 推定生成コスト · 比較専用の見積もり **$0.48** 生成前の見積もり この見積もりは追加料金ではなく、完了した生成処理に対する固定料金でもありません。 |

Ailootはリクエスト前に見積額を確保します。結果の取得後、実測使用量に基づいて最終料金を精算します。ストリーミング時の精算には最終の使用量記録を使用します。[金額の確保と精算の仕組み →](https://ailoot.ai/docs/ja/billing/reserve/)

#### 参考料金の詳細

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

動画設定の料金参照情報

#### 設定別の価格

| 設定 | 課金条件 | 料金 |
| --- | --- | --- |
| 設定動画料金 | 課金条件この価格キーには追加条件が定義されていません。 | 料金 出力 · 動画料金 **$0.24** 動画1秒あたり 表示されている設定の公開料金の参照値です。最終請求額には、実際に課金された設定が適用されます。 |

### リクエスト例

#### Ailoot Ultra · 動画

curl · 動画を作成する

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
from pathlib import Path
Path('request.json').write_text('{"aspect_ratio":"16:9","duration":8,"model":"runway/gen-4.5","prompt":"A serene mountain landscape at sunset","resolution":"720p"}', encoding='utf-8')
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 · 動画

所有コンテンツの署名付きURL

- `GET /v1/videos/{public_id}`
- `GET /v1/videos/{public_id}/content`

##### ジョブのステータスを確認

GET · 元の処理のステータス取得

```bash
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
```

その他のコンテンツ取得

完了した自分の出力をすべて保存

```bash
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から取得してください。

実際に得られた所有出力と、返された実測メタデータをすべて保持してください。

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

503 result\_pending\_check + 元のid + X-Should-Retry:false；元のリクエストを決して再実行しないでください

レスポンスのフィールド

| フィールド | 種類 | 意味 |
| --- | --- | --- |
| フィールド`index` | 種類integer | 意味出力リスト内での、この動画のゼロ始まりの位置。 |
| フィールド`content_url` | 種類string | 意味この完了済み動画の署名付きHTTPSダウンロードURL。 |
| フィールド`sha256` | 種類string \| null | 意味元の動画バイト列のSHA-256ダイジェスト。取得できない場合はnullです。 |
| フィールド`size_bytes` | 種類integer \| null | 意味元の動画ファイルのサイズ（バイト）。取得できない場合はnullです。 |
| フィールド`duration_ms` | 種類integer \| null | 意味実測された動画の長さ（ミリ秒）。取得できない場合はnullです。 |
| フィールド`width` | 種類integer \| null | 意味動画の幅（ピクセル）。取得できない場合はnullです。 |
| フィールド`height` | 種類integer \| null | 意味動画の高さ（ピクセル）。取得できない場合はnullです。 |
| フィールド`video_codec` | 種類string \| null | 意味動画コーデックの識別子。記録されていない場合はnullです。 |
| フィールド`has_audio` | 種類boolean \| null | 意味動画に音声トラックが含まれるかどうか。未測定の場合はnullです。 |
| フィールド`audio_codec` | 種類string \| null | 意味音声コーデックの識別子。識別子が記録されていない場合はnullです。 |

エラーと次の手順

| レスポンス | 条件 | 次の手順 |
| --- | --- | --- |
| レスポンス404 · `not_found_error` | 条件動画へのアクセスが利用できないか、この動画IDが見つかりません。 | 次の手順動画へのアクセス権を確認してください。既存の動画には、元の公開IDと同じAPIキーを使用してください。 |
| レスポンス401 · `authentication_error` | 条件APIキーが認証済みアカウントと一致しません。 | 次の手順送信する前に、APIキーとアカウントのアクセス権を確認してください。 |
| レスポンス400 · `invalid_request_error` | 条件リクエストを読み取れないか、ダウンロードのインデックスが無効です。 | 次の手順リクエスト本文を修正してください。ダウンロードする場合は、元のタスクから返された出力インデックスを選択してください。 |
| レスポンス422 · `price_unavailable` | 条件選択された動画設定の料金を算出できません。 | 次の手順サポートされている動画設定を選び、必須オプションをすべて指定してから、修正したリクエストを送信してください。 |
| レスポンス422 · `invalid_request_error` | 条件動画入力、または元の継続タスクが無効です。 | 次の手順有効なHTTPS入力を使用してください。継続する場合は、完了した元の動画の公開IDと、同じAPIキーを使用してください。 |
| レスポンス402 · `billing_error` | 条件利用可能な残高または上限の制約により、料金を仮押さえできません。 | 次の手順新しいリクエストを送る前に、利用可能な残高と上限を確認してください。 |
| レスポンス503 · `server_error` | 条件動画の検証、保存領域、またはサービスへのアクセスを一時的に利用できません。 | 次の手順サービスが利用可能になるまでお待ちください。すでに動画IDがある場合は、別の生成を作成せず、その元のタスクを確認してください。 |
| レスポンス503 · `result_pending_check` | 条件元の動画の結果と請求額を確認する必要があります。 | 次の手順返された動画IDを保持し、そのタスクを確認してください。確認中に、代わりの生成リクエストを送信しないでください。 |
| レスポンス503 · `owned_result_unavailable` | 条件既存の動画のダウンロードを一時的に利用できません。 | 次の手順後で同じ動画タスクを確認し、その既存の出力をダウンロードしてください。新しい生成を行うと、別の操作が作成されます。 |
| レスポンス409 · `video_not_ready` | 条件動画コンテンツは公開されていません。 | 次の手順元のタスクのステータスを確認してください。completedと報告されたらダウンロードします。failedと報告された場合は、その料金確認の通知に従ってください。 |

### エイリアス

#### モデルのエイリアス

**Ailoot Ultra** [`runway/gen-4.5`](https://ailoot.ai/models/ja/#m=runway%2Fgen-4.5&route=Ultra&caller=runway%2Fgen-4.5&fmt=videos)

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

上記に表示されたメソッドパスを使用してください。

#### 関連する呼び出し用ID

[`runway/gen-4.5`](https://ailoot.ai/models/ja/#m=runway%2Fgen-4.5&route=Ultra&caller=runway%2Fgen-4.5&fmt=videos)

FAQ · Runway: Gen-4.5

利用できる入力と結果は何ですか？

`POST /v1/videos` · `runway/gen-4.5`: `text`, `image` → `video`

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

`POST /v1/videos` · `runway/gen-4.5`: `model`, `prompt`, `duration`, `resolution`, `aspect_ratio`, `generate_audio`, `frame_images`, `input_references`, `size`, `seed`, `callback_url`, `session_id`, `trace`, `user`

どの制限が適用されますか？

`POST /v1/videos` · `runway/gen-4.5`: `duration.minimum`: `1`; `duration.maximum`: `600`; `frame_images.max_items`: `1`; `frame_images.min_items`: `1`; `seed.minimum`: `-9223372036854775808`; `seed.maximum`: `9223372036854775807`

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

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

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

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

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

サブスクリプション

定期的なリクエストに合う割引プランを選びましょう。

最大50%のプロモコード

購入時にコードを入力すると、実施中のキャンペーンに沿って価格を再計算します。

支出を履歴で確認

各リクエストのモデル、トークン、金額が保存されます。

[サブスクリプションを選ぶ](https://ailoot.ai/docs/ja/billing/subscriptions/) · [モデルの価格を見る](https://ailoot.ai/models/ja/)

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

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

商用アプリ

サービスの有料機能に、文章、画像、動画、音声の生成を組み込めます。

リセラーライセンス

プロジェクトの説明とアクセスの仕組みをお送りください。利用・再販条件の書面を申請できます。

サイトで契約文書を確認

接続前にサービス提供条件、ライセンス契約、データ処理ポリシーを読めます。

[リセラーライセンスを申請](mailto:support@ailoot.ai) · [サービス提供条件とライセンス契約](https://ailoot.ai/legal/offer?lang=ja)

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





Ailootは、蓄積した運営経験、幅広い顧客基盤、安定したサービス、継続的なKPI管理を基盤としています。





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





Ailootはこの運営経験を、お客様の製品、エージェント、アプリケーション、自動化でAI機能を利用するためのAPIアクセスに活かしています。
