Runway Gen-3 Alpha Turboで架空の猫を動かすためのプロンプトエンジニアリング実践記録
はじめに
Runway Gen-3 Alpha Turboを使用して架空の猫を動かす試行錯誤のプロセスをまとめていく。特に、猫の動作の表現方法と、AIが解釈しやすいプロンプトの作成工程に着目する。なお、当記事は2024/12/14時点の記録であることに留意されたし。
実現したいこと
ファンタジー要素などを絡めた架空の猫を動画空間上で生き生きと動かしたい。なぜならかわいいから。画像はmidjourneyで作成。アイデア出しやプロンプト作成補助はClaude 3.5 Sonnetに頼んでいる。最終的にはネタ出し→画像生成→動画生成→SNS投稿の流れを半自動化したい。
実際に動かしてみた例。
いいなと思ったらチャンネル登録・高評価お願いします。
https://www.youtube.com/shorts/OnQegzCVYA0
プロンプトの基本構造案
まだ試行錯誤の途中だが、プロンプトは以下の要素で構成するのが無難そう。
主体の説明(キャラクターの特徴)
動作の指示
カメラワーク
スタイルの指定
主体の説明がないと動画生成AI側が架空の猫を猫として認識しない感じがした。まずは猫っぽい何かがフレームの中央にいる、と明示するのが吉。うまくいったのは以下のようなプロンプト。
ただしgentle head turn from forward to left then right and back to centerあたりは効いていなさそう。動作についてはなるべくシンプルなものに留めるのがよい印象。
指示が効きやすい動作とそうでない動作
成功しやすい動作
単純な頭の動き
目の開閉
耳の細かな動き
尻尾の揺れ
避けるべき動作
毛づくろいなどの複雑な動作
前足/後ろ足を使う細かい動作
複数の動作の組み合わせ
「徐々に」変化する表現
特に毛づくろいは苦戦。よく猫の毛づくろいを「顔を洗う」と表現するが、そのままプロンプトにすると急に人間の手が生えてくる。grooming motions with paw raising to earsと表現しても同様だった。このとき題材にしていたのは冒頭のケーキ・キャットだが、おそらくあの画像だと「猫の足」がどこなのかAI側で認識できないのだろう。これは画像側の問題でもある。
印象別の動作パターンに切り分ける
具体的な動作の再現が難しいとわかったので、簡単かつ汎用的な動作をリストップするべきなのかと考えた。それが前項の「成功しやすい動作」なのだが、今後さまざまな架空の猫を作るとして、毎回どの動作を適用するか考えるのが面倒だ。そこで、題材となる何かの印象から逆算して動作プロンプトを分岐させることにした。ケーキ・キャットならおっとりした動きに、水晶の猫なら気品のある動きに、といった具合に。以下がその一部。
おっとりした印象
slow gentle blinks with peaceful breathing motions, tail swaying softly
気品のある印象
graceful slight head tilts while maintaining elegant posture, delicate ear movements
無邪気な印象
curious eye movements with playful ear twitches, subtle head tilting
まどろむ印象
slowly closing eyes then staying peaceful in a relaxed pose
どこまでうまくいくかは未知数。結局毎度プロンプトを作った方がいいという着地になる可能性は十分ある。
得られた教訓
AIの現状の限界:
「毛づくろい」のような複雑な動作パターンの理解が困難
動物特有の動作の認識が不完全
特殊なキャラクターの体の構造理解が限定的
そもそも、画像生成の時点でAIが理解しやすいように猫らしさを強めに残した方がいいのかもしれない。もちろん自分のプロンプトエンジニアリングのスキル不足もある。
すべての生成AIに言えることだが、出力がうまくいかないとき、AIの性能の問題なのかプロンプトの問題なのかを切り分けるのが難しい。とはいえ、基本的にはプロンプト含めた入力の問題と捉えて改善を進めるほうがよいだろう。
避けるべきプロンプト要素:
人間の動作を連想させる表現(「洗う」「使う」など)
複数の体の部位を連動させる動作
道具(この場合は前足)を使用する動作
世では料理をするAI猫の動画が人気を博している。あれができるならプロンプトエンジニアリングで生き生きとした動作をさせることも不可能ではない気がする。料理AI猫動画の生成工程が知りたい。少し調べたが出てこなかった。引き続き調査する。
代替アプローチ:
より基本的な動作(首振り、瞬き)に置き換える
動作を最小限に抑える
静的な状態からの微細な動きに限定する
逃げではあるが、無茶な動きをさせようとすると破綻するので、今時点では安全策かもしれない。ただ、生き生きとした動画になりにくいのが悩み。
いくつかyoutubeの動画を見てもらえればわかるが、正直「ただのオブジェクトだな」という印象の猫が多い。一方で、「生きてるな」の印象になる猫もある。この印象の差がどこから来るのかもいずれ言語化しておきたい。
今後
普通の猫画像でどこまで動作指示が効くのか試してみるのがよいと思う。というか、最初にそっちをやるべきだった。ただし毛づくろい動作を普通の猫で再現しようとしても失敗したので、結局シンプルな動作にすべしとなる可能性は大いにある。
お願い
動画プロンプト初心者につき、アドバイス等は大歓迎です。
何か参考になりそうな情報があればシェアいただけますと幸いです。