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が用意されており、メアド、名前、会社名、ユースケース、月の生成動画数を答えます。
回答後、権限付与の連絡を待ちます。
私は申し込んで約10日でアクセス許可のメールが届きました。
許可が付与された後、申し込み時のメールアドレスでログインすると、Organization名の入力が求められます。
クレジット購入
現在、動画生成は5秒で0.25ドル、10秒で0.50ドルかかります。
クレジットの購入はBillingのページから可能です。最低10.0ドル(1000クレジット)となります。10ドルで5秒動画なら40個、10秒動画なら20個が作れます。
値段について最新の情報はPriceをご覧ください。
API Keyの作成
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
元画像
今回はこちらの画像を元にして動画を生成します。
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株式会社 採用サイトよりご確認ください。