Wing900/ManimCat
EN: ManimCat: AI-generated math animations from natural language. High-quality Manim rendering with LaTeX support and auto-code fixing. 中: ManimCat:AI 数学动画生成器。支持描述即视频,内置 LaTeX 与代码纠错,让数学动效触手可及。
ManimCatとは?
ManimCatは、数学的なビジュアライゼーションを作成するための、ウェブベースのAI支援型ワークスペースです。自然言語のプロンプト(例: "級数 1/4+1/16+… の幾何学的証明を示す")を入力すると、バックグラウンドでLLMがシーンを設計し、適切なManim(アニメーション)またはmatplotlib(静的プロット)のコードを書き、コードを実行し、レッスンに埋め込めるビデオや画像を返します。
システムは主に2つの方法で動作します:
| モード | 使用する場面 | 機能 |
|---|---|---|
| Workflowモード | 簡単な画像や短いビデオが欲しい場合。 | 単一のリクエストがLLMに送信され、生成されたコードがレンダリングされ、結果がUIにストリーミングされます。 |
| Agent (Studio)モード | インタラクティブなマルチステップセッションが必要な場合 – ビジュアルの調整、レンダリングの確認、一連の関連図の作成など。 | 長期間続く「スタジオ」セッションが状態(タスク、実行、結果)を保持します。反復、エージェントへのコード変更依頼、レンダリングの承認、専用ワークスペースでの作業整理が可能です。 |
両モードとも2つのレンダリングエンジンをサポート:
- Manim Community Edition – タイムラインベースのアニメーション用。
- matplotlib – 静的チャートや教材用図(「Plot Studio」)用。
仕組み(高レベルアーキテクチャ)
User (browser) ──► React UI (Vite + Tailwind) ──► Express/TS backend
│
├─► Bull + Redis queue
│ (job scheduling, retries)
├─► OpenAI‑compatible LLM API
│ (scene design → code generation)
└─► Python runtime
├─► Manim CE (animation)
└─► matplotlib (static)
- フロントエンド – 最新のReactアプリ(React 19、Vite)で、クラシックな生成UI、Studioワークスペース、Plot Studioツールを表示します。
- バックエンド – Node/Expressサービスで、生成リクエストを受け入れ、RedisバックアップのBullキューにジョブをプッシュし、Server-Sent Eventsを介してステータス更新をストリーミングします。
- レンダリング – PythonコンテナがManimまたはmatplotlibを実行し、LaTeXをコンパイルし、ffmpegを使用してビデオ/オーディオファイルを生成します。
- 状態と永続化 – オプションのSupabaseテーブルがセッション履歴を保存できます。それ以外はすべてメモリ/Redisに存在します。
- デプロイメント – Docker(またはDocker Compose)はローカルで動作します。シングルコンテナイメージ(
wingflow/manimcat)はHugging Face Spacesにデプロイできます。
クイックスタート
# Clone and install the Node side
npm install
cd frontend && npm install
# Run locally (frontend + backend)
npm run dev # opens http://localhost:3000
Dockerをお好みの場合:
docker pull wingflow/manimcat
docker run -p 7860:7860 wingflow/manimcat
UIでプロンプトを入力し、ビデオまたは画像を選択し、生成の進行状況を確認できます。
誰に役立つか?
- 教師・教育者 – Manimコードを書かずに、カスタムのその場限りの数学アニメーションを求める方。
- 学生 – 入力した概念の視覚的な説明を求める方。
- コンテンツクリエイター(YouTuber、MOOC) – 数学重視のビジュアルを迅速にプロトタイプする必要がある方。
- 研究者 – 科学的ビジュアライゼーションのためのAI駆動のコード生成を実験している方。
制限事項とメンテナンスノート
- 作者は趣味のメンテナーであるため、問題やPRへの対応時間が遅い場合があります。
- Studioモードはまだ発展途上です。アニメーション重視の「Manim Studio」は、Plot Studioほど機能が充実していません。
- LLM部分には、OpenAI互換モデル(または他のプロバイダー)へのアクセスが必要です。プロジェクトは設定フックを提供しますが、モデルは同梱されていません。
- レンダリングされたビデオの永続ストレージには外部ボリュームの処理が必要です – そうでないと再ビルドで削除されます。
ライセンス
AGPL‑3.0‑or‑later。manim-video-generator(MIT)からのサードパーティコードは、書き直されるか、元の帰属表示の下に保持されます。
要約: ManimCatは、自然言語の数学プロンプトをManimとmatplotlibを使用してアニメーションまたは静的ビジュアルに変換する、AI拡張されたデュアルモードのウェブアプリであり、反復的で協力的な作成のためのより豊かな「Studio」体験を提供します。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト