1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Runwayの「Gen-3 Alpha Turbo」のAPIを呼んで動画をAI生成してみた

Posted at

Supershipの名畑です。ダンダダンOPも本編もEDもこれぞアニメーションというクオリティで毎週楽しみすぎる。

はじめに

Runwayというプラットフォームで、動画生成AI Gen-3-Alpha が提供されています。過去記事「動画生成AI「Gen-3 Alpha」のImage to Videoで画像を動画に変換してみたらやっぱり自然すぎて恐くなりもした」でも取り上げました。

Gen-3-Alphaの低コスト版であるGen-3 Alpha TurboのWeb APIの提供が開始されましたので呼んでみました、というのが今回の記事となります。

We are excited to announce the launch of our new API, providing developers with access to our Gen-3 Alpha Turbo model for integration into various applications and products. This release represents a significant step forward in making advanced AI capabilities more accessible to a broader range of developers, businesses and creatives.

参考:Runway News | Introducing the Runway API for Gen-3 Alpha Turbo

Waitlist登録

現在はAPIアクセスするためにWaitlistへの登録が必要です。

Google Formが用意されており、メアド、名前、会社名、ユースケース、月の生成動画数を答えます。

gen3-api-image1.png

回答後、権限付与の連絡を待ちます。

私は申し込んで約10日でアクセス許可のメールが届きました。

許可が付与された後、申し込み時のメールアドレスでログインすると、Organization名の入力が求められます。

gen3-api-image2.png

クレジット購入

現在、動画生成は5秒で0.25ドル、10秒で0.50ドルかかります。

gen3-api-image3.png

クレジットの購入はBillingのページから可能です。最低10.0ドル(1000クレジット)となります。10ドルで5秒動画なら40個、10秒動画なら20個が作れます。

値段について最新の情報はPriceをご覧ください。

API Keyの作成

gen3-api-image4.png

API Keysのページから作成できます。

作成時にモーダルでAPI Keyが表示されるのですが

Securely copy the key above and store it in a safe place. Once you close this modal, the key will not be displayed again.

と注意喚起されます。つまり、後からAPI Keyを確認することはできませんので、ご注意ください。

環境

私の端末のOSはmacOS 14 Sonomaです。

今回もPythonで書きます。

$ python --version
Python 3.12.2

quickstartに従い、SDKをインストールしておきます。

$ pip install runwayml
Collecting runwayml
  Downloading runwayml-2.0.0-py3-none-any.whl (71 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 71.2/71.2 kB 3.5 MB/s eta 0:00:00
     
中略

Installing collected packages: runwayml
Successfully installed runwayml-2.0.0

先ほどのAPI Keyを環境変数に保存します。私の環境での設定ファイルはzshrcです。

$ open ~/.zshrc

RUNWAYML_API_SECRETという環境変数名にします。

export RUNWAYML_API_SECRET=ここに取得したAPI Keyを書く

環境変数名を間違えると実行時に以下のエラーが出ますのでご注意ください。

The api_key client option must be set either by passing api_key to the client or by setting the RUNWAYML_API_SECRET environment variable

元画像

今回はこちらの画像を元にして動画を生成します。

gen-3_original_image.jpg

FLUX 1.1 [pro] で生成した画像となります。サイズは1280x768です。Gen-3 Alpha Turboのデフォルト比率が16:9のため、それに合わせました。

FLUX 1.1 [pro] について詳しくは過去記事「Stable Diffusionのオリジナル開発陣による画像生成AIモデル最新版FLUX 1.1 [pro]のWeb APIを呼んでいくつかの画像を生成してみた」をどうぞ。

元画像はAPI呼び出し時にURLを渡すため、適当な場所にアップロードしてください。

動画生成

では実際に動画を生成してみます。

基本的にはquickstartのコードをそのままですが、プロンプトとして「A Japanese woman is smiling happily」と指定しました。訳すと「幸せそうに笑っている日本人女性」です。

また、指定可能なパラメータの追加など、コメント文の変更はしています。

より詳しくはAPI Referenceをご覧ください。

import time
from runwayml import RunwayML

client = RunwayML()

# 動画生成を呼び出し
task = client.image_to_video.create(
    model='gen3a_turbo',
    prompt_image='画像urlをここに書く',
    prompt_text='A Japanese woman is smiling happily',  # 512文字以下
    # seed=0,  # デフォルト ランダム値
    # watermark=True,  # デフォルト False
    # duration=5,  # デフォルト 10
    # ratio="9:16"  # デフォルト "16:9"
)
task_id = task.id

# 完了確認
time.sleep(10)  # 待ち
task = client.tasks.retrieve(task_id)
while task.status not in ['SUCCEEDED', 'FAILED']:
    time.sleep(10)  # 待ち
    task = client.tasks.retrieve(task_id)

print('Task complete:', task)

生成が完了すると、動画のurlが出力されます。

生成結果は以下です。

指示通りの動画が無事生成されました。素晴らしいです。ちょっと動きが恐いけど。

最後に

生成AI周りの進化と競争が本当に激しすぎる。

いつまでこの流れは続くのだろう。

宣伝

SupershipのQiita Organizationを合わせてご覧いただけますと嬉しいです。他のメンバーの記事も多数あります。

Supershipではプロダクト開発やサービス開発に関わる方を絶賛募集しております。
興味がある方はSupership株式会社 採用サイトよりご確認ください。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?