サムネイル

Jellyfish: 脚本→映像を全自動化するAI短編ドラマ制作OSSをエンジニア目線で解説

  • 0

コードを書かないAIエンジニア、もるふぉです。

普段はClaude Codeで設計と指示に徹するスタイルで開発してますが、今回はコードの話ではなくAI動画制作ツールの話です。

AIで短編ドラマを作れるオープンソースの制作ツール「Jellyfish」がかなり面白いので紹介します。

脚本を入力すると、分鏡(ストーリーボード)の自動生成、キャラクターの一貫性管理、AI動画生成、ポストプロダクション編集までワンストップで完結するツールです。

しかもReact 18 + TypeScript + FastAPIで構築されていて、Dockerで一発起動できる。

エンジニアとしては「これ、ちゃんと作ってあるな」と思える構成だったので、技術スタックから機能の中身まで掘り下げていきます。

Jellyfishとは何か — AI短編ドラマ制作の「工場」

Jellyfishは、AIを活用した縦型ショートドラマ制作のためのオープンソースプラットフォームです。

GitHubリポジトリは Forget-C/Jellyfish で公開されていて、ライセンスはApache-2.0。 商用利用も可能な形でオープンになっています。

GitHub 2.4k starsが示す注目度

2026年4月時点でGitHub starsは2,400を超えています。

AI動画生成の分野でこのクラスのスター数を持つOSSはそう多くないです。

注目すべきは、日本語の解説記事がほぼゼロという点。 Zenn、Qiita、noteを調べましたが、Jellyfishを取り上げた日本語記事は見つかりませんでした。

つまり、この記事が日本語での最初のまとまった解説になります。

解決しようとしている課題: AI動画生成のキャラクターブレ

AI動画生成をやったことがある人なら、きっとこの壁にぶつかったことがあると思います。

シーン1の主人公とシーン2の主人公が別人になる。 背景の雰囲気がカットごとにバラバラになる。 これが、AIで「ドラマ」を作ろうとしたときに最初にぶち当たる課題なんですよね。

「一話だけ生成して終わり」ならまだいいのですが、複数シーンを繋いで物語として成立させようとした途端、この一貫性の問題が致命的になってきます。

Jellyfishはこの問題を正面から解決しにいっています。 グローバルシードパラメータと統一スタイル設定で、プロジェクト全体の一貫性を保つ設計になっています。

競合ツール(Toonflow, HeyGen)との違い

AI動画制作ツールとしては、ToonflowやHeyGen、Soraなども存在します。

ただし、これらはSaaS型が中心で、ソースコードは公開されていません。

Jellyfishの最大の差別化ポイントは、オープンソースであること。 自分のサーバーで動かせるし、カスタマイズもできます。

エンジニアにとって「中身が見える」「手を入れられる」というのは決定的に大きいです。 SaaSに閉じ込められるリスクがなく、自分のビジネスロジックに合わせて育てていける点は、長期的な視点でも重要な差です。

では、中身を見ていきましょう。

Jellyfishのコアアーキテクチャ — 技術スタックを読み解く

記事の画像

ここからはエンジニアが一番気になる技術的な構成を見ていきます。

フロントエンド: React 18 + TypeScript + Vite + Ant Design

フロントエンドはReact 18とTypeScriptで構築されています。

ビルドツールにはViteを採用。 UIコンポーネントはAnt DesignとTailwind CSSのハイブリッド構成です。

状態管理にはRedux ToolkitとZustandが使われていて、ワークフローエディタにはReact Flowが採用されています。

React Flowを使ったノードベースのワークフロー編集は、エージェントの処理フローを視覚的に組み立てられるのでかなり直感的ですね。 「このノードとこのノードを繋げる」という操作感は、n8nやDifyに慣れている人には馴染みやすいはずです。

バックエンド: FastAPIによるAPI設計

バックエンドはPythonのFastAPIで構築されています。

Swagger UIが /docs エンドポイントで自動生成されるので、APIの仕様確認やテストがブラウザから直接できます。

OpenAPI specからフロントエンドの型定義を自動生成する仕組みも用意されていて、pnpm run openapi:update で同期できます。 フロントとバックの型の乖離が起きにくい設計はちゃんとしていますね。

AI統合レイヤー: OpenAI / Anthropic / Runway / Kling / Luma

Jellyfishが面白いのは、複数のAIモデルプロバイダーを統合している点です。

テキスト生成にはOpenAIやAnthropicのLLM、画像生成にはMidjourney、動画生成にはRunway、Kling、Lumaといった主要サービスのAPIに対応しています。

モデルはテキスト・画像・動画のタイプ別に分類管理されていて、用途に応じて切り替えられます。

「このシーンの動画生成はKling、こっちはRunway」みたいな使い分けができるのは、実際のプロダクション環境では非常にありがたいです。 モデルの価格帯やクオリティはシーンの重要度によって変えたいケースも多いので、これは実用的な設計だと思います。

Dockerで一発起動できる構成の詳細

セットアップの手軽さもJellyfishの魅力です。

ストレージにはS3互換のRustFS、データベースにはMySQLを採用。 すべてDocker Composeでまとめて起動できます。

開発用にはSQLiteモードも用意されているので、ローカルでサクッと試すこともできます。 「まず動かしてみたい」という人が最短で試せる設計になっているのは好印象です。

アーキテクチャの概要が分かったところで、実際の機能を見ていきましょう。

10のコアモジュールをAI動画制作の機能別に解説

記事の画像

Jellyfishは単一のツールではなく、ドラマ制作のワークフロー全体をカバーするモジュール群で構成されています。

プロジェクト管理・章節ワークベンチ

プロジェクト単位でドラマを管理できます。 グローバルスタイルやシード値の設定、章ごとの統計ダッシュボードが用意されています。

脚本を入力すると、AIがインテリジェントに内容を要約・凝縮し、撮影可能なストーリーボードに自動変換してくれます。

「脚本を貼るだけで絵コンテが出てくる」というのは、映像制作の経験がない人にとっては特に衝撃的な体験だと思います。

インテリジェント分鏡 — WYSIWYGショットエディタ

ショット(カット)単位で細かくコントロールできる点が嬉しいです。

ショットタイプ、カメラアングル、カメラの動き、感情表現、尺、雰囲気、台詞、音楽、効果音まで、それぞれ独立してプロンプトを調整できます。

WYSIWYGエディタなので、編集結果をリアルタイムでプレビューしながら作業できます。 つまり「プロンプトを書いて、生成して、確認する」という試行錯誤のループが圧倒的に速くなります。

アセット管理 — キャラクター・場面・小道具のAI動画一貫性管理

キャラクター、ロケーション、小道具、衣装をプロジェクト単位とグローバルの二層構造で管理します。

この仕組みがキャラクター一貫性を担保する核になっています。

一度定義したキャラクターアセットを各ショットで参照することで、「シーンごとに顔が変わる」問題を抑制しています。

ControlNetによる骨格・深度マップの参照や、クロスショットの参照画像機能も搭載されていて、AI動画生成のキャラクター一貫性維持にかなり力を入れている印象です。 「同じキャラクターが複数シーンに出てくる」というドラマの基本を、技術的にちゃんと解決しようとしているのが分かります。

プロンプトテンプレートライブラリ

プロンプトのテンプレートをライブラリとして保存・再利用できます。

「このキャラクターの表情はこのプロンプトがベスト」みたいな知見をチームで共有できるので、制作効率が上がります。 ノウハウがツール上に蓄積されていくのは、チーム運用では地味に大きいポイントです。

ポストプロダクション編集・ワンクリックエクスポート

生成された動画セグメントをタイムライン上で編集できます。

マルチトラックの動画・音声編集、ドラッグ&ドロップでの構成変更、バッチエクスポートに対応。

最終的な動画ファイルをワンクリックで書き出せるので、「生成して終わり」ではなく「完成品として出力」まで面倒を見てくれます。 脚本からここまで、外部ツールを一切使わずに完結できるのが「工場」と呼べる理由です。

Agentワークフロー & マルチモデル管理

React Flowベースのノードエディタで、AIエージェントの処理フローを視覚的に組み立てられます。

抽出エージェントや提案エージェントをカスタマイズできるので、「脚本からキャラクターを自動抽出 → アセット登録 → 分鏡生成」みたいなパイプラインを自分で設計できます。

マルチモデル管理では、テキスト・画像・動画の各カテゴリでどのAPIを使うかをUI上で設定・切り替えできます。 このカスタマイズ性の高さが、OSSならではの強みです。

実際にDockerで動かす — AI短編ドラマ制作ツールのセットアップ手順

前提環境(Docker / Docker Compose)

必要なのはDockerとDocker Composeだけです。 Node.jsやPythonのローカル環境構築は不要です。

Dockerが入っていれば、ここから5分程度で動かせます。

.env設定と各モデルAPIキーの準備

まず環境変数ファイルをコピーします。

cp deploy/compose/.env.example deploy/compose/.env

.env ファイルには、利用したいAIモデルのAPIキーを設定します。 OpenAI、Anthropic、Runway、Klingなど、使いたいサービスのキーを記入してください。

docker compose up --build で起動

起動コマンドはこれだけです。

docker compose --env-file deploy/compose/.env -f deploy/compose/docker-compose.yml up --build

初回はビルドに少し時間がかかりますが、2回目以降はキャッシュが効いて速くなります。

ブラウザからlocalhost:7788にアクセス

起動が完了したら、ブラウザで http://localhost:7788 にアクセスするとフロントエンドが表示されます。

バックエンドのSwagger UIは http://localhost:8000/docs で確認できます。

開発モードで個別に起動したい場合は以下の通りです。

# バックエンド
cd backend && cp .env.example .env && uv sync && uv run uvicorn app.main:app --reload

# フロントエンド
cd front && pnpm install && pnpm dev

Pythonのパッケージマネージャーにuvを採用しているのも今風ですね。

起動確認できたら、次はJellyfishのコア技術を見ていきましょう。

JellyfishがAI動画生成のキャラクター一貫性問題をどう解決するか

記事の画像

ここがJellyfishの一番のコア技術です。

グローバルシードと統一スタイルの仕組み

プロジェクト作成時にグローバルシード値とスタイル設定を定義できます。

このシード値が全ショットに適用されることで、画像・動画生成の出力にベースラインの統一感が生まれます。

「全カットを同じ画風で」という制約を、プロジェクトレベルの設定一つで実現できるのは非常にスマートです。 通常は毎回プロンプトに書き込まなければいけない情報を、一度設定するだけで全シーンに効かせられます。

アセット再利用によるキャラクタードリフトの防止

キャラクターアセットに登録した参照画像やプロンプトを、各ショットで呼び出して使います。

「主人公・田中」のアセットを作成しておけば、どのシーンでも同じ参照情報が引き渡されるので、キャラクタードリフト(カットごとに顔や服装が変わる問題)を大幅に軽減できます。

これが嬉しいのは、制作本数が増えるほど効果が出てくる点です。 アセットが蓄積されれば、同じキャラクターを使った続編制作がどんどん楽になっていきます。

WYSIWYG分鏡エディタによる視覚的制御

分鏡エディタ上でショットのプレビューを確認しながら、プロンプトやパラメータを微調整できます。

「AIに任せっきり」ではなく、「AIの出力を人間が視覚的に確認・修正する」というループが組み込まれているのが実用的です。

完全自動化ではなく、人間が品質を担保できるポイントが適切に設計されているという印象ですね。 このバランス感覚が、実際のプロダクション現場でも使えるツールになっている理由だと思います。

どんな用途・チームにAI短編ドラマ制作OSSは向いているか

個人開発者・フリーランスエンジニア

「AIで動画を作ってみたい」というエンジニアには最適な入り口です。

Docker一発で起動できて、ソースコードが全部読めます。 気に入らない部分は自分でフォークして改良できます。

TypeScript + React + FastAPIという馴染みのあるスタックなので、コントリビューションのハードルも低いです。 「動かす → 中身を読む → 改造する」というエンジニアの習性に完全に沿ったツールですね。

AI動画スタジオ・コンテンツ制作会社

ショートドラマの量産体制を構築したいチームにとって、ワークフロー全体を一つのプラットフォームで管理できるのは効率的です。

アセットのチーム共有、プロンプトテンプレートの蓄積、エージェントワークフローのカスタマイズが揃っているので、制作のナレッジがツール上に蓄積されていきます。 「人が変わっても品質が保たれる」という仕組みを作れるのは、スタジオ運営では非常に重要です。

ブランド・EC企業のショートドラマ活用

TikTokやInstagramリール向けの縦型ショートドラマは、マーケティング手法として急速に広がっています。

Jellyfishを自社サーバーで運用すれば、データを外部に出さずにAI動画制作ができます。 ブランドのキャラクターやトーンをアセットとして統一管理できる点も、企業利用には嬉しい機能です。

まとめ — 今すぐGitHubをスターして試すべき理由

Jellyfishは、AI短編ドラマ制作に必要な工程を脚本入力からエクスポートまで一気通貫で提供するオープンソースツールです。

ポイントを整理すると:

  • 脚本 → 分鏡 → 動画生成 → 編集 → エクスポートの全工程をカバー
  • React 18 + TypeScript + FastAPIの堅実な技術スタック
  • OpenAI、Anthropic、Runway、Kling、Lumaなど複数のAIモデルを統合
  • グローバルシード・アセット管理でキャラクター一貫性を維持
  • Docker Compose一発起動、Apache-2.0ライセンスで商用利用可能

GitHub 2,400 starsを超えて注目が集まっているこのタイミングで、触っておいて損はないです。

AIで動画を作る流れは確実に加速していて、そのワークフローを「オープンソースで、自分の手元で、カスタマイズしながら」回せるツールは貴重です。

まずはGitHubリポジトリをチェックして、Docker Composeで起動してみてください。

GitHub: https://github.com/Forget-C/Jellyfish

会員登録して機能を使おう

この機能を利用するには、無料の会員登録が必要です。
お気に入りの記事を保存して、あとで読み返しましょう!