Sora 2 API
Sora2がリリースされました。まだ今のところ招待制みたいですが、APIも公開されました。APIはもちろん有料ですが、少しだけでもデポジットを支払っておけば、Tier 1でもsora-2で1分間に2回、sora-2-proで1分間に1回まで動画生成できます。
Webから生成した動画にはウォーターマークがつきますが、API生成したものはつかない点もメリットです。
APIを呼ぶコード自体はとても簡単ですが、誰でも使えるようにOpenWebUIの拡張機能を作ってみました。
Open WebUI
qiitaにもたくさん記事が上がっているので、Open WebUI自体の説明は省きます。dockerを使えば簡単に起動することができます。参考になる記事を挙げておきます。
Pipe Function
Open WebUIには複数の機能拡張方法がありますが、manifold pipe functionを定義すると、複数の仮想的なモデルが定義されて、通常の言語モデルを選択するようにチャットインタフェースから利用できます。こんな感じで今回は設定の違うモデルを4種類定義してみました。
インストール
すでにOpen WebUIが動いていれば、インストールは簡単です。
Sora 2 Function for OpenWebUIを開いて、Getボタンを押せばインストールできます。
プロンプト
プロンプトの書き方はOpenAIがガイドを出しています。制限としては以下のような内容があります。
- 18歳未満が視聴しても問題がないコンテンツだけが許されます
- 著作権が主張されているキャラクターや音楽は拒否されます
- 人間やフィギュアの写真を初期フレームに使うことはできません
- 人の顔が含まれる写真を初期フレームに使うことはできません
プロンプトには撮影状態、被写体、行動、設定、照明を説明すると良い結果が得られるとしています。
最初のフレーム
生成される動画の最初のフレームの1枚だけ、画像で直接指定することができます。今回のPipe Functionでは、チャットメッセージに添付された画像(最初の1枚)を最初のフレームにします。APIではサイズを厳密にあわせる必要がありますが、Function内で自動的にリサイズするようにしました。縦横比が合わない範囲はカットするので、アスペクト比には注意してください。
実際の例
今回はこんな主題でやってみました。
犬専用のノートパソコンのコマーシャル動画を作ります。この世界では犬たちが明るいオフィスで表計算ソフトウェアを使って仕事をしているオフィス風景から始まります。主人公のプードルが四角ではない肉球型の不思議な形のノートパソコンを取り出して開くと、スピーディーに仕事をこなします。他の犬たちが驚きの表情を浮かべ、質問をします。最後に主人公は『ワンテル、入ってる!』と言って締めくくります。
リミックス
作成した動画はremix APIで修正できます。Open WebUI上では、同一スレッドのチャットを続けると、自動的に直前の動画への修正プロンプトとして処理します。納得できるものが作れるまで修正しましょう。

