OpenMAIC
THU-MAIC/OpenMAIC加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象这样一个场景:你在准备期末考试,想搞懂"量子纠缠"到底怎么回事。传统做法是打开慕课视频,看 40 分钟,然后发现自己还是似懂非懂。现在你只做一件事——把一份讲义丢进去,或者直接打一句"教我量子力学"。三分钟后,一间教室出现了:一位 AI 老师开始讲课,语音实时解说,幻灯片一页页推进,讲到关键处白板上手写公式;讲完一段,两位性格不同的 AI 同学会举手提问、和你辩论,甚至老师会点名让你回答问题,答错了当场纠正。这不是 PPT 生成器,这是一间有"人"的教室。

图:OpenMAIC 官方仓库首页横幅,一句话概括项目定位——"Get an immersive, multi-agent learning experience in just one click"
OpenMAIC 全称 Open Multi-Agent Interactive Classroom(开放多智能体互动课堂),来自清华大学 THU-MAIC 团队。名字里的 MAIC 是对 MOOC(Massive Open Online Courses,大规模开放在线课程)的直接对标与超越——MOOC 的核心体验是"我一个人看视频",MAIC 想做的是"我坐在一间有老师有同学的教室里"。
这不是一个空想出来的概念。清华团队在两年的时间里、700 多名真实学生中完成了课堂验证,研究成果发表于 Journal of Computer Science and Technology (JCST 2026),论文标题直白地叫 "From MOOC to MAIC: Reimagine Online Teaching and Learning through LLM-driven Agents"(从 MOOC 到 MAIC:通过 LLM 驱动的智能体重构在线教与学)。
时间线也印证了迭代节奏:项目 2026 年 3 月 11 日开源,4 月推出 Deep Interactive Mode(3D、仿真实验、游戏、思维导图、在线编程),6 月转为 MIT 协议并发布 @openmaic/* SDK,8 月 27 日发布 v1.0.0(Agent 工作台、持久化会话、可复用技能),10 月 22 日的 v1.3.0-rc.1 已经做到"个人知识库"。七个多月从 0 到 41k Star、6.4k Fork,是 2026 年 AI 教育赛道增长最快的开源项目之一。

如果传统 AI 生成课件是"雇了个美工画 PPT",OpenMAIC 更像是"请了个完整的教研组"。
这个教研组里有:
关键差别在于课堂是一个"多智能体系统",不是"一份文档生成任务"。老师和学生之间的轮次推进、讨论、辩论,都由状态机实时调度。
lib/generation/)生成不是一步到位,而是大纲生成 → 场景内容生成两阶段。先由 LLM 产出课程大纲与场景序列,再针对每个场景生成具体内容(幻灯片正文、题目、交互脚本)。两阶段拆分让长课程的结构稳定性大幅提升,也让"用户中途改大纲"成为可能。
lib/orchestration/)基于 LangGraph 的状态机管理智能体轮次与讨论——谁该说话、说多久、什么时候该让同学插话、什么时候该停下来测验。这是整个项目最难自研、也最有价值的部分:多智能体系统真正的难点不是"调 API",而是"状态与调度"。
lib/action/):21 种动作类型这是它区别于普通幻灯片播放器的核心。系统支持 21 种动作类型,包括语音输出、白板绘图/文字/形状/图表、聚光灯、激光笔等。每一页幻灯片本质上是一段带时间轴的指令流,播放引擎(lib/playback/)按时间轴驱动状态机渲染,于是"讲课"变成了一段可交互、可回放、可导出视频的多媒体叙事。
lib/playback/)驱动课堂回放与实时互动的状态机。它让生成结果不只是一次性的网页,而是可以回放、可以导出的完整课堂录像。
@openmaic/storage)Runtime / Document / 资产存储抽象,并附带 PostgreSQL 参考实现,HTTP 契约可对接任意外部存储服务。从 v1.2.0 起"server-first"成为稳定主线——生成跑在服务端,关掉浏览器标签页、重启服务都不会中断,Web 应用和 API 共用同一条流水线。
openmaic.yml 声明 providers(服务器可调用的账号)与 slots(每种 AI 用途:大纲、幻灯片内容、TTS、网页搜索……)绑定模型,支持默认值、锁定、以及禁止用户自带 Key三种策略。webFetch slot 可让 Agent 通过托管阅读器抓取页面。这是最"Agent 化"的设计。内置 Skill 支持 OpenClaw 以及 Codex、DeepSeek、WorkBuddy 等 Agent 工作台,让你在 飞书、Slack、Telegram、Discord 等 20+ 聊天应用或 IDE 里直接说"教我量子力学",系统自动生成课堂并推送链接回来。对企业内训场景,这是把"AI 教学"接入已有工作流最省力的方式。
课堂可导出为 PPTX(保留每个场景,事后可在 PowerPoint 里继续编辑)或单个离线 HTML 文件(完整播放这堂课)。这个设计对"发给学生自学"极其关键。

图:课堂中的 AI 同学讨论环节,AI 之间会主动发问与辩论
技术栈:Next.js 16 + React 19 + TypeScript 5 + Tailwind CSS 4,pnpm monorepo(packages/ 下含 generation、storage、docs 等),Vitest + Playwright 测试。
最低门槛:Node.js ≥ 22.19、pnpm ≥ 10、PostgreSQL 16。本地开发可用 pnpm db:up 一键拉起 Docker 数据库。配置上复制 .env.example 为 .env.local、复制 openmaic.example.yml 为 openmaic.yml,最少只需要一个 OPENAI_API_KEY(或换成你有 Key 的其他供应商)就能跑起来,pnpm dev 后打开 localhost:3000。
不想装环境? 官方提供在线 Demo open.maic.chat,核心体验可直接体验。
会踩的坑:
ACCESS_CODE(强烈建议,否则任何能访问端口的人都能共享、编辑甚至删除你的课程库),并设置 OPENMAIC_PUBLISH_ADDRESS=0.0.0.0。第一,"AI 同学"是价值还是表演? 支持者认为同伴讨论是被验证过的学习机制(Socratic 方法、费曼学习法),AI 同学正好补上了"没有学习搭子"这个真实痛点。质疑者则指出:AI 同学的"质疑"本质是 LLM 按提示生成的伪互动,缺少真实同伴那种基于共同经验的立场碰撞。目前这个项目验证的是"形式上补齐了互动环节",而非"效果等价于真人同伴"——学习效果的长期数据仍需时间积累。
第二,内容深度受限于基础模型。 OpenMAIC 是编排框架而非模型。它不会凭空创造知识,讲解质量的上限由所配模型决定。如果只用小模型,课堂会显得单薄。
第三,生成成本与时长。 完整一堂课涉及大纲、多轮场景生成、语音合成、配图、可能的网页检索,token 消耗和生成时间都不小。生产级使用需要精算。
第四,部署复杂度已从"一键"变"一套栈"。 README 仍打着一键生成的旗号,但 v1.2.0 之后需要 Node + pnpm + PostgreSQL + 长驻服务 + 模型配置,早期那种"clone 完就能跑"的轻快感已经过去。README 自己也提示了 3D/仿真场景涉及 TensorFlow.js、ONNX Runtime Web 等依赖,版本兼容性需要额外留意。
第五,学术转化仍是进行时。 700+ 学生、两年验证是扎实的,但样本量在教育研究里并不算大,且集中在单一一所高校的教学场景,向 K12、企业培训、跨文化教学迁移的有效性尚未被充分检验。
OpenMAIC 的意义不只在 41k Star。它把"多智能体系统 + 垂直场景 + 完整交互形态"这套组合跑通并开源,等于给行业提供了一个可复用的样板:
@openmaic/* SDK、Agent 工作台集成、供应商中立的 slot 配置——这套"不绑定单一模型"的架构,正成为 2026 年 AI 应用工程的主流共识;从 MOOC 到 MAIC 的类比未必精确——慕课的规模优势恰恰是多智能体难以企及的。但 OpenMAIC 提出的那个反向命题成立:如果在线教育的目标不是"覆盖最多人",而是"让每个人都被真正教到",那么从一对多的视频,换成多对多的智能体课堂,可能才是更接近目标的一步。
个人学习者:直接用在线 Demo,或按 README 走 pnpm dev。想省事就选 Ollama/Lemonade 本地模型跑通流程,再接入云端供应商提质量。
企业内训团队:重点看 OpenMAIC Skill + 飞书/Slack 集成,配合 ACCESS_CODE 做权限控制,导出 PPTX 或离线 HTML 供员工自学。
二次开发者:重点研究 lib/orchestration/(LangGraph 状态机)和 lib/action/(21 种动作类型)——这两块是整个项目的技术护城河,也是任何"AI 教学/AI 演练/AI 客服模拟"类产品的可复用骨架。存储层 @openmaic/storage 的抽象方式同样值得借鉴。
运维注意:务必阅读每次升级的 Breaking Changes;对外暴露时务必配置 ACCESS_CODE;保持跟随安全更新节奏。
项目地址:https://github.com/THU-MAIC/OpenMAIC | 在线体验:https://open.maic.chat/ | 论文:JCST 2026, DOI 10.1007/s11390-025-6000-0 | 商业合作:thu_maic@mail.tsinghua.edu.cn | License: MIT