数学动画生成代理

一个使用AWS Strands、Manim和MCP构建的自主代理,用于根据自然语言数学查询生成高质量数学动画视频。

  • by DanielPuentee
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 DanielPuentee/strands-agents-manim

使用说明

🧶 Strands Agents+MCP教程——Manim可视化

一个最小的端到端教程,用于构建一个使用AWS Strands、Manim和MCP生成数学动画的自主代理。

作者 丹尼尔·普恩特·维耶霍


🎯 目标

此存储库显示了如何 结合AWS Strands代理和Manim 使能够 模型驱动可视化 使用 模型上下文协议(MCP). 我们将构建一个自主代理,接受自然语言数学查询,并编排一个本地渲染引擎,使用 原生AWS基岩模型.


🧠 核心理念

我们从硬编码的工作流程转向流畅的、4步自主流程:

  1. 查询: 您提供提示(例如。, 创建一个网格和一个单位正方形。将剪切变换矩阵[[1,1],[0,1]]应用于网格,以显示空间是如何变形的).
  2. 工具使用: 这 Strands特工 使用MCP工具编写必要的Python/Manim代码。
  3. 执行: 本地MCP服务器接收代码并运行渲染引擎。
  4. 世代: 将生成一个视频文件并保存到您的输出文件夹中。

🧩 需求

此项目使用 紫外线 用于依赖性管理。

  • 环境变量: 创建 .env 使用您的AWS凭据创建文件:
    AWS_ACCESS_KEY_ID=<your_aws_access_key>
    AWS_SECRET_ACCESS_KEY=<your_aws_secret_key>
    AWS_REGION=<your_aws_region>
    

🚀 如何跑步

该项目由以下人员设立 pyproject.toml 和 uv.lock。您需要两个终端窗口才能同时运行代理和服务器。

1.启动MCP服务器

在第一个终端中,启动处理Manim引擎的服务器:

uv run start_mcp_server.py

2.运行代理

在第二个终端中,启动客户端应用程序以开始与代理聊天:

uv run app.py

📃 许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。