OpenMAIC v1.2.1 介绍与选型指南
OpenMAIC v1.2.1 介绍与选型指南:清华 MAIC 开源多智能体互动课堂的定位、架构、功能边界、MIT 许可与版本取证,并与 Moodle+AI 插件、Dify 类编排平台、Khanmigo 商业 AI 课堂做量化对比,给出自托管选型建议。
OpenMAIC v1.2.1 介绍与选型指南
目标:帮读者在动手部署前判断「OpenMAIC 是不是我要的东西」。本篇基于项目官方仓库、官方中文文档、GitHub 标签与 shields.io 徽章的联网溯源(查询日期 2026-10-25),讲清 OpenMAIC 是什么、由哪些部件组成、能产出什么样的课程、对服务器和模型有哪些硬要求,并与 Moodle + AI 插件、Dify 类大模型编排平台、Khanmigo 商业 AI 课堂做量化对比。部署、参数与 API 的逐步实测不在本篇展开。
一、环境信息与取材口径
本篇是选型篇,不包含本机部署实测;所有项目事实均来自可公开复核的来源,查询日期统一为 2026-10-25:
- 项目仓库:
https://github.com/THU-MAIC/OpenMAIC(清华大学 MAIC 团队) - 最新稳定版:
v1.2.1,Git 标签日期 2026-10-18;仓库package.json中的版本号同为1.2.1 - 许可证:MIT(仓库
LICENSE文件,版权行Copyright (c) 2026 THU-MAIC) - 社区规模:GitHub 星标约 4.1 万(shields.io 星标徽章实查;不直接调用 GitHub API)
- 官方文档:仓库内
packages/docs/content/docs/下的deployment.zh-cn.mdx、configuration.zh-cn.mdx等中文文档 - 官方体验站:
https://open.maic.chat/
说明:版本号与星标属于随时间变化的数据,读者复核时可能已有更新;本文只对 2026-10-25 这个时间点的取值负责。选型结论不依赖星标的具体数值,而依赖功能边界与运行要求。
二、软件概述
OpenMAIC(Open Multi-Agent Interactive Classroom,开放多智能体互动课堂)是一个开源的 AI 教学平台:输入一个主题或一份资料,它用大模型自动生成一整堂互动课,再由若干 AI 教师与 AI 同学在课堂里讲解、讨论、板书,学习者可以随时插话提问。
它解决的不是「生成一份课件」这一层问题,而是把备课、授课、互动、产出物串成一条流水线:
- 备课:根据需求描述或上传的资料,生成课程大纲;大纲确认后逐场景生成内容。
- 授课:课堂以场景(slide / quiz / interactive / PBL)为单位播放,AI 教师按脚本讲解,AI 同学参与讨论。
- 互动:学习者可以针对当前幻灯片、互动组件或白板内容提问,由课堂对话智能体作答。
- 产出:课程可导出为保留全部场景的
.pptx、可离线播放的单个.html,或用于迁移到另一套部署的课堂 ZIP。
与「聊天机器人套一个教育提示词」相比,OpenMAIC 的关键差异是把一节课拆成可编排的阶段与角色,并让这些阶段共享同一份课程文档与素材库。
三、核心架构
3.1 运行时组成
OpenMAIC 是一个 Next.js 应用,必须有一个常驻 Node.js 进程和一个 PostgreSQL 数据库,二者缺一不可:
| 部件 | 作用 | 硬要求 |
|---|---|---|
| Next.js 应用进程 | 提供 Web 界面与全部 HTTP API,同时内置课程生成 worker | Node.js 22.19.0 及以上;进程必须常驻,Serverless 平台不可用 |
| PostgreSQL | 保存课程文档、对话历史、学习进度、素材元数据与生成任务记录 | PostgreSQL 16;必须提供 DATABASE_URL |
| 数据目录 | 保存上传的原始资料、解析结果、课堂讲解媒体、用量记录与实例密钥 | 默认 data/,官方编排挂载到 /app/data |
| 可选渲染服务 | 把课堂导出为 MP4,内部使用 Chromium 与 FFmpeg | 独立部署;standard 档要求 8 GiB 内存,low-memory 档要求 4 GiB |
从 1.2.0 起,课程生成改为「服务端任务」:每次生成是数据库里的一条记录,由每个服务进程内的 worker 逐步执行;浏览器关掉、进程重启都不会丢任务,另一个进程或重启后的同一进程会从最后一个完成的步骤继续。这也解释了为什么项目明确放弃 Vercel 等 Serverless 平台——函数随请求结束而终止,无法承载一次持续数分钟的生成。
3.2 生成流水线
生成不是单次大模型调用,而是按槽位(slot)拆分的多阶段调用。官方配置把「哪一处用 AI」抽象成槽位,例如:
llm:默认对话模型,所有未单独指定的对话槽位跟随它;course.outline:课程大纲;course.content.*:幻灯片、测验、互动组件、PBL 等各场景内容;course.actions:教师讲解动作与白板脚本;course.agents:教师与同学的人设生成;classroom:课堂内互动对话;agent:Pro 工作台智能体,要求模型支持工具调用;tts/asr/image/video/webSearch/webFetch/document:语音、图像、视频、联网检索与文档解析等能力。
每个槽位可以指定「服务商:模型」,也可以给语言模型槽位配置一个 fallback,在主模型遇到可重试错误时兜底一次。这个设计意味着:一套部署可以混用多家模型,例如用便宜的长上下文模型生成大纲,用支持工具调用的模型跑课堂对话,用另一家的模型做插图。
💡 技术拓展:多智能体编排的三种常见形态。
形态 特点 适用场景 代价 单智能体 + 提示词链 一个模型按固定步骤串行调用 结构稳定的内容生产 角色单一,难以模拟多方互动 工作流 DAG(可视化编排) 节点与连线显式定义,可插人工审核 企业流程、RAG 管线 需要预先设计流程,临场感弱 角色扮演多智能体 教师、同学、助教各有独立人设与上下文,可相互发言 课堂、辩论、陪伴式学习 调度与成本控制更复杂 OpenMAIC 采用的是第三种:教师与同学是独立智能体,课程生成阶段则用「槽位 + 场景」的流水线约束产出结构,两种机制叠加。
3.3 数据与身份
课程归「所有者」所有。官方编排默认开启单用户模式(OWNER_SINGLE_USER=true),所有请求解析到同一个固定所有者,适合个人服务器;多人共用一个课程库时需要设置团队共享所有者并配合访问口令,且官方明确说明访问口令只做站点级门禁,不是用户认证。需要真实账号体系时,要在宿主侧注册所有者认证方法(例如对接 oauth2-proxy、Cloudflare Access 或自建登录)。
四、功能特性
4.1 课程生成
- 一键成课:只给一句主题描述即可生成大纲与全套场景;也可以上传资料作为依据。
- 资料解析:文本、文档与媒体资料在附加后立即进入后台解析,生成时直接复用解析结果。
- 大纲可改:大纲生成后先确认再继续,避免整堂课按错误方向生成。
- 断点续跑:生成任务在数据库中有检查点,进程重启或滚动升级后可继续。
4.2 课堂形态
- AI 教师 + AI 同学:教师负责讲解,同学参与提问与讨论,形成多方对话。
- 白板与语音:智能体可以画图、写公式,并通过 TTS 朗读讲解。
- 富场景:幻灯片、测验、可交互 HTML 模拟、项目式学习(PBL)。
- 课堂内提问:可以针对某页幻灯片、某个互动组件或白板涂鸦追问。
4.3 产出与集成
- PPTX 导出:保留每一个场景,便于二次编辑或归档。
- 离线 HTML:单个文件即可离线播放整堂课。
- 课堂 ZIP:迁移到另一套 OpenMAIC 部署。
- HTTP API:课程库、文件夹、资料、课程、生成任务、模型配置、用量统计等均有接口,可被外部系统调用。
- 智能体工作台集成:官方提供 OpenMAIC Skill,可接入 OpenClaw、Codex、DeepSeek、WorkBuddy 等,从飞书、Slack、Telegram 或 IDE 里触发成课。
五、版本、许可与发布节奏
| 维度 | 实测/实查结果 | 取证方式 |
|---|---|---|
| 最新稳定版 | v1.2.1(2026-10-18) | 仓库 Git 标签与 package.json |
| 预发布版 | v1.3.0-rc.1 已存在,未作为稳定版推荐 | 仓库 Git 标签 |
| 许可证 | MIT | 仓库 LICENSE |
| 星标 | 约 4.1 万 | shields.io 星标徽章 |
| 主要技术栈 | Next.js 16.3.3、React 19、TypeScript 5、Tailwind CSS 4 | 仓库 package.json 与徽章 |
| 运行时 | Node.js 22(官方构建产物实测 v22.23.4) | 官方 Dockerfile 与运行实例 |
| 数据库 | PostgreSQL 16(官方编排实测 16.15) | 官方编排定义与运行实例 |
| 官方发布物体积 | 应用运行层约 889 MB(压缩层约 243 MB) | docker images 实查 |
发布节奏上,1.x 系列在 2026 年 8 月至 10 月间连续发布了 1.0.0、1.0.1、1.0.2、1.0.3、1.1.0、1.1.1、1.1.2、1.2.0、1.2.1 等多个版本,其中多处为安全修复(SSRF、重定向、访问码令牌过期等)。这说明项目仍处于高频迭代期:升级前应读 CHANGELOG 与部署文档的升级章节,不要把它当成一个「装完就不管」的静态系统。
选型提示:高频迭代对自托管是双刃剑——功能与安全修复来得快,但破坏性变更也真实存在。1.1.x 升级到 1.2.x 就要求把
MODEL_ROUTES迁移为槽位、保留数据目录、并把浏览器里的旧课程导入一次。若你的环境变更窗口很窄,建议锁定一个次要版本并配套阅读对应版本的升级说明。
六、快速开始(官方最小流程)
官方文档给出的最小可用流程如下(命令取自仓库 README 与部署文档,未在本篇重复实测回显;完整实测部署步骤见本站后续发布的部署篇):
git clone https://github.com/THU-MAIC/OpenMAIC.git
cd OpenMAIC
pnpm install
cp .env.example .env.local
cp openmaic.example.yml openmaic.yml
pnpm build
DATABASE_URL=postgres://openmaic:q1w2e3r4@127.0.0.1:5432/openmaic pnpm start
这段流程有三个容易被忽略的前置条件:
openmaic.yml必须至少声明一个可用服务商,并在.env.local中给出对应的 Key;没有模型配置时,界面能打开,但生成课程会直接报「未配置模型」。- PostgreSQL 必须先就绪;官方推荐用项目自带的
pnpm db:up拉起开发数据库,生产环境则用自己的数据库实例。 pnpm start监听 3000 端口,且必须由 systemd、pm2 或编排系统托管,保证进程退出后自动重启。
七、适用场景与限制
7.1 适合的场景
- 个人或小团队自建 AI 课堂:一台 2 核 4 GiB 级别的服务器即可跑起应用与数据库,成本主要是模型调用费。
- 需要数据不出内网的教学/培训:课程、资料、对话与生成媒体都落在自己的 PostgreSQL 与数据目录里;模型可以接自建 OpenAI 兼容服务(如 Ollama),但本地模型需显式开启内网地址许可。
- 希望把「成课」能力嵌进现有系统:通过 HTTP API 上传资料、创建课程、轮询生成进度,再由自己的门户展示。
- 需要离线交付:导出离线 HTML 或 PPTX,交给没有网络的教室使用。
7.2 不适合的场景
- 纯 Serverless 托管:1.2.0 起官方明确不支持,生成任务需要常驻进程。
- 完全没有模型预算:项目不自带模型,也没有内置的免费额度;不配置模型就只能浏览界面。
- 需要严谨的教务管理:OpenMAIC 不是 LMS,没有班级、选课、成绩册、学分与合规审计;它只负责「课」的生产与播放。
- 需要开箱即用的多租户 SaaS:默认身份模型是「单用户」或「每浏览器匿名所有者」,真实账号体系要自己接。
- 强依赖 MP4 成片且机器很小:渲染服务最低档也要 4 GiB 内存,标准档 8 GiB,且需要额外的网络隔离能力。
八、同类选型对比
选型时最容易混淆的是三类产品:传统 LMS 加 AI 插件、大模型应用编排平台、商业 AI 课堂产品。下表按「能否自托管、产出什么、谁来教、模型怎么接、花多少钱」五个维度对比:
| 维度 | OpenMAIC v1.2.1 | Moodle + AI 插件 | Dify 类编排平台 | Khanmigo |
|---|---|---|---|---|
| 产品定位 | 多智能体互动课堂 | 老牌开源 LMS,AI 作为辅助能力 | 通用大模型应用/工作流平台 | 商业 AI 辅导产品 |
| 许可证 | MIT | GPL(Moodle 主体) | Apache-2.0 衍生物,附额外商用条件 | 闭源订阅 |
| 可否自托管 | 可以,官方提供 Compose 编排 | 可以,需自己维护 LAMP 运行环境 | 可以,社区版单机编排 | 不可以 |
| 核心产出 | 互动课堂(幻灯片/测验/模拟/PBL)+ PPTX/HTML | 课程结构、作业、成绩册,AI 生成测验题/摘要/图片 | 任意 LLM 应用:聊天、RAG、工作流 | 对话式辅导,绑定可汗学院题库 |
| 多智能体课堂 | 原生支持(教师 + 同学 + 白板 + TTS) | 不支持,AI 是工具型插件 | 可用工作流自行编排,但无课堂形态 | 单导师对话,无同学角色 |
| 模型接入 | 20+ 预设 + 任意 OpenAI 兼容端点,按槽位分配 | 通过 AI provider 插件接 OpenAI、Gemini、Ollama 等 | 模型供应商市场,按应用配置 | 不可选,由厂商托管 |
| 计费方式 | 软件免费,付模型 API 费用 | 软件免费,付插件与模型费用 | 社区版免费,企业功能付费 | 学习者 4 美元/月或 44 美元/年;教师免费 |
| 上手成本 | 中:需 Node + PostgreSQL + 模型配置 | 高:LMS 本身部署与课程建设都重 | 中:需自己设计应用与提示词 | 低:注册即用 |
| 数据归属 | 完全自有 | 完全自有 | 完全自有 | 厂商云端 |
关键差异解读:
- OpenMAIC 与 Moodle 不是替代关系。Moodle 强在教务与课程管理,AI 子系统(4.5 起内置的 AI provider 插件机制)主要做试题生成、文本摘要、图片生成这类「辅助教师」的工作;OpenMAIC 强在「把一节课直接生产出来并演给你看」,没有班级与成绩概念。需要正规教学管理时,常见做法是「Moodle 管人管课,OpenMAIC 管内容生产」,两者通过链接或 API 衔接。
- OpenMAIC 与 Dify 的差别在「形态」而非「能力」。Dify 是通用编排平台,理论上可以用工作流拼出一个课堂生成器,但课堂播放、角色对话、白板、TTS、离线导出这些形态要自己实现;OpenMAIC 把这些做成产品。反过来,Dify 更适合做企业知识库问答、客服、审批自动化等非教学场景。
- Khanmigo 代表商业订阅路线。它便宜、开箱即用、内容与题库深度绑定,但数据在厂商云端、模型不可替换、也无法改造成自己的课程生产系统。对数据合规敏感或有二次开发需求的团队,自托管路线更合适。
- 许可差异要提前确认。OpenMAIC 是标准 MIT,商用与二次分发限制最少;Dify 的许可证是修改版 Apache-2.0,多租户运营等场景需要额外商用授权,选型时应让法务确认。
九、结论
如果你的目标是「在自己的服务器上,把主题或资料自动变成一堂能演、能互动、能导出的课」,并且接受「需要自备模型 Key、需要一个常驻进程和 PostgreSQL」,OpenMAIC v1.2.1 是当前开源方案里形态最完整的一个:MIT 许可、活跃迭代、20+ 模型服务商预设、原生多智能体课堂与离线产出。
如果你的核心诉求是「管理学生与教学流程」,应选 Moodle 一类 LMS;如果是「搭建通用大模型应用」,应选 Dify 一类编排平台;如果只是「给个人提供一个随时可用的 AI 辅导」,商业订阅产品更省事。三者可以共存,不必互斥。
十、参考资料
- OpenMAIC 官方仓库(含 README、CHANGELOG、LICENSE):https://github.com/THU-MAIC/OpenMAIC (查询日期 2026-10-25)
- OpenMAIC 官方中文部署文档:https://github.com/THU-MAIC/OpenMAIC/blob/main/packages/docs/content/docs/deployment.zh-cn.mdx (查询日期 2026-10-25)
- OpenMAIC 官方中文配置文档:https://github.com/THU-MAIC/OpenMAIC/blob/main/packages/docs/content/docs/configuration.zh-cn.mdx (查询日期 2026-10-25)
- OpenMAIC 在线体验站:https://open.maic.chat/ (查询日期 2026-10-25)
- Moodle AI 子系统开发者文档:https://moodledev.io/docs/5.3/apis/subsystems/ai (查询日期 2026-10-25)
- Moodle 官方插件目录(AI provider 插件):https://moodle.org/plugins/aiprovider_gemini (查询日期 2026-10-25)
- Dify 官网与社区版说明:https://dify.ai/ (查询日期 2026-10-25)
- Dify 许可证原文:https://github.com/langgenius/dify/blob/main/LICENSE (查询日期 2026-10-25)
- Khanmigo 定价页:https://www.khanmigo.ai/pricing (查询日期 2026-10-25)