LogoAIRosetta

Math-To-Manim 項目詳解:由文本到數學物理動畫嘅智能生成器

GitHub

SummaryMath-To-Manim 係一個開源 Python 工具,能夠由自然語言提示自動生成 Manim 數學/物理動畫同配套學習筆記。採用「反向知識樹」遞歸構建概念依賴,透過多代理管道(Claude Sonnet 4.5、Kimi K2),支援 LaTeX 呈現及 55+ 範例,採用 MIT 許可。

項目概覽

Math‑To‑Manim 係一個開源嘅 Python 項目,托管喺 GitHub(https://github.com/HarleyCoops/Math‑To‑Manim),目標係幫助使用者由簡單嘅自然語言提示(例如「解釋量子場論」)自動生成高質量嘅數學同物理動畫,並配套學習筆記。該項目由 HarleyCoops 開發,至 2025 年 11 月前持續迭代,目前已累積 55+ 個工作範例,覆蓋物理、數學、計算機科學、宇宙學等範疇。唔同於傳統需要大量訓練數據嘅 AI 工具,Math‑To‑Manim 採用「反向知識樹」(Reverse Knowledge Tree)嘅創新方法,從基礎概念遞歸構建複雜主題,確保動畫邏輯嚴謹、數學精確,並支援 LaTeX 呈現。

項目核心目標係解決 AI 生成動畫嘅痛點:傳統提示往往模糊,導致 LaTeX 錯誤、概念跳躍或視覺唔連貫。通過多代理系統同 Claude Sonnet 4.5 等大模型驅動,佢可以輸出 2000+ 令牌嘅詳細提示,生成兼容 Manim 框架嘅 Python 代碼,最終渲染為 MP4 視頻。項目採用 MIT 許可,適合教育、研究同內容創作,支持由高中到研究生級別嘅主題。2025 年 11 月 6 日新增 Kimi K2 實現,進一步提升工具調用同 API 兼容性。截至目前(2025 年 11 月 14 日),項目星標已超過 1000,社區活躍。


核心創新:反向知識樹

Math‑To‑Manim 最大嘅亮點係「反向知識樹」算法。呢個係一種遞歸先決條件發現機制,用嚟避免一刀切提示嘅限制。傳統方法例如「簡單提示 → 模式匹配 → 隨機輸出」容易出錯,而且唔能處理新概念。反向知識樹就反其道而行:

  • 輸入:使用者提示,例如「解釋宇宙學」。
  • 過程:遞歸問自己「喺理解 X 之前,需要掌握乜嘢?」例如由宇宙學追溯到廣義相對論,再到狹義相對論、洛倫茲變換,直到高中物理基礎。
  • 輸出:構建概念依賴圖,從基礎向上層層疊加 LaTeX 公式、視覺隱喻同敍事弧線。

呢種方法唔需要訓練數據集,只靠 Claude Sonnet 4.5 嘅推理能力,都可以生成連貫嘅動畫路徑。未來計劃整合 Nomic Atlas 語義知識圖譜,以實現先決條件快取同社區共享數據庫嘅 10 倍加速(詳見 docs/NOMIC_ATLAS_INTEGRATION.md)。呢種自底向上嘅構建方式確保動畫具備強嘅教學性,避免「先講高級再補基礎」嘅常見問題。

系統架構:多代理管道

項目採用 6 個代理系統(第 7 個 VideoReview 代理開發中),基於 Claude Agent SDK 構建,支持自動上下文管理同工具整合(例如文件操作、代碼執行)。管道流程如下:

  1. ConceptAnalyzer:解析提示,識別核心概念、領域同難度(例如量子力學嘅高中 vs. 研究生級別)。
  2. PrerequisiteExplorer:核心代理,遞歸構建知識樹,生成依賴圖。
  3. MathematicalEnricher:為每個節點加入 LaTeX 公式,確保數學嚴謹(例如 QED 拉格朗日密度 LQED=ψˉ(iγμDμ−m)ψ−14FμνFμν\mathcal{L}_{\text{QED}} = \bar{\psi}(i \gamma^\mu D_\mu ‑ m)\psi ‑ \tfrac{1}{4}F_{\mu\nu}F^{\mu\nu}LQED​=ψˉ​(iγμDμ​−m)ψ−41​Fμν​Fμν)。
  4. VisualDesigner:設計視覺元素,例如相機移動、配色(電場用紅波、磁場用藍波)同過渡動畫。
  5. NarrativeComposer:由基礎到目標編織敍事,生成 2000+ 令牌嘅詳細提示。
  6. CodeGenerator:翻譯成 Manim Python 代碼,支持 LaTeX 呈現。

新增嘅 Kimi K2 管道(KimiK2Thinking/ 文件夾)使用 OpenAI 相容 API 同工具調用,提供結構化數據提取,重點係 LaTeX 而唔係 Manim 類實現。整個管道耗時約 1⁠–⁠2 分鐘,渲染時間視質量而定(低質 10⁠–⁠30 秒,高質 1⁠–⁠5 分鐘)。

安裝方法

安裝簡單,支持 Windows/Linux/macOS。需要 Python 3.10+、FFmpeg(視頻渲染)同 Manim v0.19.0。最低 8GB RAM,建議 16GB;GPU 可選用嚟加速渲染。

1、克隆倉庫:

git clone https://github.com/HarleyCoops/Math-To-Manim
cd Math-To-Manim

2、安裝依賴:

pip install -r requirements.txt

(包含 Manim、Claude SDK 等;無網絡情況需額外處理安裝包)。

3、設定 API 金鑰:

  • Claude:echo "ANTHROPIC_API_KEY=your_key_here" > .env(從 Anthropic 取得)。
  • Kimi K2:echo "MOONSHOT_API_KEY=your_key_here" >> .env(Moonshot AI)。

4、安裝 FFmpeg:

  • Windows:choco install ffmpeg(需 Chocolatey)。
  • Linux:sudo apt‑get install ffmpeg。
  • macOS:brew install ffmpeg。

驗證安裝:運行 manim ‑‑version,確保為 v0.19.0。完整需求見 requirements.txt。

使用方法

項目提供 Gradio UI、CLI 同示例執行三種方式。初學者建議用 UI。

1、Gradio 介面(建議新手):

python src/app_claude.py
  • 瀏覽器打開 localhost:7860。
  • 輸入提示,例如「可視化畢達哥拉斯定理」或「解釋最優傳輸理論」。
  • 代理會自動構建知識樹、生成代碼並渲染視頻。支持 Kimi 模式切換。

2、Kimi K2 管道(CLI):

# 測試整合
python KimiK2Thinking/examples/test_kimi_integration.py
# 運行完整管道(需 tree.json)
python KimiK2Thinking/examples/run_enrichment_pipeline.py tree.json

詳見 KimiK2Thinking/README.md,適合批量處理。

3、運行示例動畫:項目喺 examples/ 資料夾中有分類整齊嘅範例。使用 Manim CLI:

# 量子力學示例
manim -pql examples/physics/quantum/QED.py QEDJourney
# 幾何示例
manim -pql examples/mathematics/geometry/pythagorean.py PythagoreanScene
# 宇宙學
manim -pql examples/cosmology/Claude37Cosmic.py CosmicScene

標誌說明:

  • ‑p:渲染後預覽。
  • ‑q:質量(l 低、m 中、h 高、k 4K)。
  • ‑l:低解析度以加速測試。

4、生成學習筆記:將 Manim 代碼回傳 LLM,提示「生成 LaTeX 學習筆記」,就可以輸出可直接使用嘅 PDF 文件。

常見提示技巧:用 LaTeX 豐富描述,例如「顯示 Minkowski 時空度規 ds2=−c2dt2+dx2+dy2+dz2ds^2 = ‑c^2 dt^2 + dx^2 + dy^2 + dz^2ds2=−c2dt2+dx2+dy2+dz2,高亮時間分量」。

範例與應用

項目包含 55+ 範例,分類詳盡(見 docs/EXAMPLES.md)。按難度分:

  • 基礎(高中級):geometry/pythagorean.py ⁠–⁠ 畢達哥拉斯定理證明,展示三角形分解同面積動畫。
  • 中級(本科):mathematics/analysis/optimal_transport.py ⁠–⁠ 最優傳輸理論,動畫顯示 Wasserstein 距離同粒子流動。
  • 高級(研究生):physics/quantum/QED.py ⁠–⁠ QED 之旅,包含費曼圖、拉格朗日密度同重整化流。
  • 前沿(研究級):computer_science/machine_learning/GRPO.py ⁠–⁠ 群相對策略優化,展示強化學習中嘅獎勵整形同梯度流。
  • 創意:misc/recursive_rhombicosidodecahedron.py ⁠–⁠ 遞歸菱形二十面體分形,3D 變換自相似幾何。

實際應用:教育者可以用佢嚟做教材動畫;研究者可以視覺化例如 ProLIP(概率視覺語言模型)嘅對比學習。示例可以無需手動修改,直接由單個提示生成。

支持模型

項目跨模型相容,示例用多種 LLM 捕捉唔同視角:

  • Claude Sonnet 4.5:主代理系統,擅長遞歸推理同上下文管理(Claude SDK)。
  • Kimi K2:Moonshot AI,新管道,支持工具調用同思考模式,成本較低、API 易整合。
  • DeepSeek R1:用於量子物理示例,擅長精確公式處理。
  • Gemini 2.5 Pro:QED 可視化嘅備選模型。
  • Grok 3:量子力學路徑(xAI 模型)。
  • Qwen Max:數學分析方向。
  • Mistral Large:引力波相關示例。

切換模型:編輯 .env 或代理腳本。Claude 為預設,Kimi 適合 OpenAI 生態。

常見問題與解決方案

  • LaTeX 錯誤:代理會驗證公式;出錯時會回傳錯誤提示畀 LLM 修正。
  • 渲染慢:用 ‑ql 測試,喺低 RAM 環境可分段運行。
  • 無 GPU:CPU 足夠,Manim 原生支持。
  • 商業使用:MIT 許可允許商業用途,建議保留署名。
  • 準確性:LaTeX 強制精確,知識樹確保邏輯;社區測試涵蓋邊緣情況。

未來計劃

短期(1⁠–⁠2 個月):完善 VideoReview 代理、測試套件同知識樹可視化 UI。中期(3⁠–⁠6 個月):整合 Nomic Atlas,實現語義圖譜同 10x 加速。長期(6⁠–⁠12 個月):建立社區平台、動畫庫同 RL 微調。目前狀態:重構至 Claude SDK,範例齊全(2025 年 11 月)。

CopyrightStatement

Comment

Please login before commenting

NoComments

RelatedNews

LoadingMore

Math-To-Manim 項目詳解:由文本到數學物理動畫嘅智能生成器 - Airosetta News