犬の紹介ショート動画を、スマホで撮影した素材だけで作るパイプラインです。rawのスマホ動画を複数本と自然言語の依頼文を1段落入力すると、約4分後に字幕とナレーション付きの縦型9:16動画が出力されます。検出からTTSまでの全工程が、MacBook 1台でローカル動作するよう設計しました。
LLMに動画を投げてそれらしいデモを出すこと自体は難しくありません。代わりに、2つの問いに答えることを目標にしました。明日も同じものを再生成できるか、そしてAIが作り上げたものと人間が設定したものが混ざらないか、です。
構造
- LLMは解釈のみ、実行は決定論です。Gemma(ローカル)は動作名、編集依頼の分解、シーン観察のような意味判断だけを担当し、ピクセル、フレーム、タイミングはすべてPython/OpenCV/ffmpegが扱います。同じ入力なら同じ出力になります。
- 検出と追跡はYOLO11 + ByteTrack、多頭飼い環境での再識別はDINOv2埋め込み + 飼い主の写真アンカー、動的・静的判定はカメラモーションを補償したROI残差測定が専任します。静止画1枚のモーションのように、LLMが構造的に見られない軸はLLMに任せません。
- TTSはQwen3-TTS(mlx-audio)でローカル合成し、Whisper往復CERゲートで検査します。
- LLMが作った字幕は事実主張を分解して動画の観察記録と照合し、根拠がなければ書き直します。ユーザーが直接書いた字幕は検査しません。
決定方法
- モデルとパラメータの変更はすべて手動ラベル付きゴールデンセットの採点で決定しました。
- 当然よくなると信じていた改善案が、ゴールデンセットの採点で2回も棄却されました。
数値
- 単体テスト148件、M4動作群判定精度1.00
- フルライフサイクルを8分から4分へと生成時間短縮。
限界
ゴールデンセットは動画5〜9本、単一ドメイン、1人開発です。方法論の厳密さであって、規模の検証ではありません。
開発過程はブログで連載しました。
MITライセンスです。この方法論を別ドメインへ移す話や、各判断についての質問を歓迎します。
まだコメントはありません。