THU-MAIC / OpenMAIC

THU-MAIC/OpenMAIC

open_in_new前往仓库

开源多智能体互动课堂——一键开启沉浸式多智能体学习体验。

项目概览

项目概述

OpenMAIC(Open Multi-Agent Interactive Classroom)是一个开源的 AI 平台,旨在将任意主题或文档转化为沉浸式的多智能体互动课堂体验。它通过多智能体编排,自动生成幻灯片、测验、互动模拟和项目式学习活动,并由 AI 教师和 AI 同学进行实时讲解、讨论和互动。项目由清华大学相关团队开发,采用 MIT 许可证,支持一键部署到 Vercel 或使用 Docker 自托管。

核心功能

  • 一键生成课程:描述主题或上传材料,AI 在几分钟内构建完整课程。
  • 多智能体课堂:AI 教师和同学实时授课、讨论和互动。
  • 丰富场景类型:支持幻灯片、测验、互动 HTML 模拟和项目式学习(PBL)。
  • 白板与 TTS:智能体可绘制图表、书写公式并进行语音讲解。
  • 深度互动模式:生成 3D 可视化、模拟、游戏、思维导图和在线编程等互动 UI,AI 教师可主动操作 UI 引导学习。
  • 随处导出:可下载可编辑的 .pptx 幻灯片或交互式 .html 页面,支持离线使用。
  • OpenClaw 集成:通过飞书、Slack、Telegram 等 20+ 消息应用直接生成课堂。
  • 多语言支持:界面支持简体中文、繁体中文、英语、日语、俄语、阿拉伯语和巴西葡萄牙语。

适用与不适用场景

适用场景:

  • 个人自学:快速将任意主题转化为互动课程。
  • 课堂教学:教师可生成课件、测验和互动模拟,增强课堂参与度。
  • 企业培训:创建项目式学习活动,提升员工技能。
  • 在线教育平台:集成 OpenMAIC 提供个性化学习体验。

不适用场景:

  • 需要高度定制化、非标准教学流程的场景。
  • 对数据隐私要求极高,且无法接受默认浏览器存储或需自行改造持久化方案的场景。
  • 完全离线且无任何 LLM API 的环境(除非配置本地模型如 Ollama 或 Lemonade)。

技术架构与依赖

  • 前端框架:Next.js 16(App Router)、React 19、TypeScript 5。
  • 样式:Tailwind CSS 4。
  • 多智能体编排:LangGraph 1.1。
  • 状态管理:Zustand。
  • 编辑器:ProseMirror(用于大纲编辑)、Canvas 渲染器(用于幻灯片编辑)。
  • 导出:自定义 pptxgenjs 和 mathml2omml 包。
  • 存储:浏览器 IndexedDB(默认),可选 PostgreSQL 服务端持久化。
  • AI 提供商:支持 OpenAI、Azure OpenAI、Anthropic、Google Gemini、DeepSeek、Qwen、Kimi、MiniMax、Grok、OpenRouter、GLM、Ollama、Lemonade 等。
  • 语音:支持多种 TTS/ASR 提供商,包括 VoxCPM2、FunASR、Azure STT 等。
  • 文档解析:支持 MinerU、AliDocMind 等。

安装与快速开始

前置要求: Node.js >= 20,pnpm >= 10。

  1. 克隆仓库:
    git clone https://github.com/THU-MAIC/OpenMAIC.git
    cd OpenMAIC
    
  2. 安装依赖:
    pnpm install
    
  3. 配置环境变量:
    cp .env.example .env.local
    
    至少配置一个 LLM 提供商密钥,例如 OPENAI_API_KEY。
  4. 启动开发服务器:
    pnpm dev
    
    访问 http://localhost:3000。
  5. 生产构建:
    pnpm build && pnpm start
    

典型使用方法

  • 生成课程:在首页输入主题或上传文档,点击生成,AI 将创建包含幻灯片、测验和互动场景的完整课程。
  • 互动学习:在课堂中与 AI 教师和同学实时讨论,参与测验和互动模拟。
  • 编辑幻灯片:使用 MAIC Editor 的 Pro Mode 直接编辑生成的幻灯片,支持拖拽、缩放、旋转等操作。
  • 导出课件:将课程导出为 .pptx、交互式 HTML 或 ZIP 包,便于分享或离线使用。
  • 通过 OpenClaw 使用:安装 OpenMAIC skill,通过飞书、Slack 等消息应用直接生成课堂。

配置与部署要点

  • 环境变量:在 .env.local 中配置 LLM、TTS、ASR、图像生成等提供商密钥。
  • ACCESS_CODE:设置站点级密码保护部署。
  • Vercel 部署:一键部署,需配置环境变量。
  • Docker 部署:使用 docker compose up --build,可选启用 server-persistence 和 video-export 配置文件。
  • 服务端持久化:使用 PostgreSQL 存储运行时状态,需设置 DATABASE_URL 和 PERSISTENCE_DEV_TOKEN。注意 NEXT_PUBLIC_PERSISTENCE_TOKEN 是公开的,仅适用于可信网络。
  • 视频导出:可选启用 render-service 容器,需 Chromium 和 FFmpeg。
  • 安全:注意 SSRF 防护,可通过 ALLOW_LOCAL_NETWORKS 控制本地网络访问。

限制、风险与许可证

  • 限制:默认使用浏览器存储,服务端持久化需自行改造认证;视频导出需额外服务;部分功能依赖第三方 API。
  • 风险:AI 生成内容可能存在不准确或偏差;多智能体交互可能产生意外行为;数据隐私需注意。
  • 许可证:项目采用 MIT 许可证,但包含的 packages/mathml2omml 为 LGPL-3.0-or-later,packages/pptxgenjs 为 MIT(第三方)。

官方链接

信息来源和分析时间

  • 信息来源:GitHub 仓库 README、CHANGELOG、CONTRIBUTING 文档,以及最新发布信息(v0.3.1)。
  • 分析时间:2026-07-21(基于最新发布版本日期)。