OpenMAIC 是由清华大学 THU-MAIC 团队开源的多智能体互动课堂项目,面向沉浸式多人协作学习场景。它让多个 AI 智能体与学生共同参与教学互动,把传统单向授课变成多角色协作的课堂体验。最新稳定版 v1.3.1(2026-11-02,Latest):常规补丁版——Token Plan 新增 DeepSeek 一键预设(一把 DeepSeek API key 同时点亮聊天、网页搜索与抓取);资源上传不再在慢速对象存储上长期占用数据库连接,持久化连接全忙时 10 秒即报错,离开页面前一瞬的编辑不再丢失。升级注意:须先停掉所有 1.3.0 实例再让 1.3.1 接受写入,回滚只能靠数据库恢复。(完整更新记录见下方「版本记录」) 定价:开源免费。编辑评分:⭐ 4.8。
OpenMAIC是什么?
简单说,它是一个「AI 多智能体课堂」。
清华大学 THU-MAIC 团队开源的项目,定位是沉浸式多人协作学习场景——课堂上不止一个 AI,而是一群 AI 智能体,加上学生,一起完成教学互动。
传统的在线学习大致是两种形态:一个老师讲、一群人听,或者你问一句、AI 答一句。OpenMAIC 想换一种玩法:让不同的 AI 扮演不同角色,在课堂里分工、配合、讨论,学生也参与进来,整体更接近真实课堂的讨论,而不是单向灌输。
代码托管在 GitHub 上,开源免费。热度也能说明一些问题——据 GitHub Trending 数据,目前该项目已获得 32,209 stars,本周新增 9,253。首发时间是 2026-09,是个非常新的项目。
核心功能
1. 多 AI 智能体协同教学 一堂课里跑的不是单个模型,而是一组智能体。每个智能体可以承担不同职责,互相配合完成教学任务。从设计定位看,它更接近「一支教学团队」,而不是一个会答题的机器人。
2. 沉浸式多人协作学习场景 项目的目标场景就是多人、协作、有课堂氛围。适合拿来做小组研讨、课堂模拟、角色扮演式学习这类事情。相比一个人对着聊天框,参与感明显更强。
3. AI 智能体与学生实时教学互动 学生可以在过程中提问、参与讨论、和智能体来回交流。这种实时互动,是它和录播课、静态问答最大的区别所在。
4. 面向课堂的多角色分工与配合 谁主讲、谁提问、谁补充、谁总结——这些可以在多个智能体之间分配。课堂节奏不靠单一角色撑起来,结构上更贴近真实教学。
5. 开源代码,支持自行部署与二次开发 仓库公开,可以自己部署、改逻辑、接自己的模型或课程内容。这是它吸引开发者和教研团队的主要原因——不会被锁死在某个平台上。项目也在 GitHub 上持续迭代更新。
版本/套餐对比
| 形式 | 说明 | 价格 |
|---|---|---|
| 开源项目本体(GitHub) | 公开代码,可自行部署、修改与二次开发 | 开源免费 |
官方目前没有公开其他版本或收费套餐的信息,所以这里不做推测。想看最新情况,直接去 GitHub 仓库最靠谱。
值不值得用?
先说优点。清华 THU-MAIC 团队出品,学术背景相对可信;多智能体架构是它最核心的差异点,不是简单包一层聊天界面;面向多人协作学习,课堂感比通用 AI 强不少;开源免费,能自己部署和二次开发,不被平台绑住;社区热度也确实高。
缺点也得实话实说。项目首发于 2026-09,太新,文档和周边生态都还在完善,遇到问题可能要自己啃代码;场景偏教学与课堂协作,拿它当通用助手用并不合适;开源项目自行部署和配置有一定技术门槛,非技术用户上手会比较吃力。
总体结论: 如果你做的是教学、教研,或者想研究多智能体协作,这个项目值得认真看看;如果你只是想找个日常问答的 AI 助手,那它不是你需要的那个东西。
使用建议
- 先去 GitHub 仓库把 README 和示例过一遍,确认它解决的问题和你的需求对得上,别急着部署。
- 评估阶段可以先跑官方示例,感受一下多智能体课堂的实际交互节奏。
- 真要落地,先把课堂结构想清楚:需要几个角色、各自负责什么、学生从哪些环节介入。多智能体协作的效果,很依赖这层设计。
- 部署前盘一下技术条件——服务器、模型接口、并发能力,这些都要提前确认。
- 教学场景别指望一次就顺,建议先小范围试,收集反馈再调整角色分工。
- 生态还在早期,关注仓库的 issue 和更新节奏,遇到问题优先去社区找答案。
适合谁用?
推荐
- 做教学设计、教研的团队,尤其是想尝试多智能体课堂的。
- 想研究或搭建多智能体协作应用的技术人员。
- 学校、培训机构中需要自建、可控、不依赖第三方平台的场景。
可考虑
- 有开发能力,想把它改造成其他协作场景(比如模拟演练、内部培训)的个人或团队。
- 对多智能体技术好奇、愿意自己折腾的开发者。
不推荐
- 只想找个日常问答、写文案的通用 AI 助手的人。
- 完全没有技术背景、也不打算找人帮忙部署的个人用户。
- 需要成熟稳定、开箱即用的商业产品的人。
版本记录
以下按时间倒序收录历次版本更新的完整说明(页面顶部简介只保留最新一版要点)。
最新稳定版 v1.3.1(2026-11-02,GitHub 标记 Latest,常规补丁版):新增——Token Plan 增加 DeepSeek 一键预设,一把 DeepSeek 平台 API key 即点亮聊天(默认 deepseek-flash,另有 deepseek-v4-pro)、网页搜索与抓取(走 https://api.deepseek.com/v1),图像、视频与 TTS 不受影响,连接或断开时保留个人 deepseek 提供方。行为变更——课堂聊天移除讨论的固定上限(六轮 agent 限制、Director 工具调用与 call_agent 尝试上限、连续空回复守卫、Legacy 动作上限),改由 Director 通过正常的完成与终止工具收尾,取消请求会停掉运行中的子任务与待投递事件;持久化连接全部繁忙时请求 10 秒后报错,不再无限等待且无错误无日志。修复——服务器资源存储不再在对象存储字节 I/O 期间长期占用数据库事务(改为短事务记 stage pin、无连接上传、短事务校验配额,慢速对象存储不再拖垮连接池),新增 stageTtlMs(默认一天);编辑器在刷新、关标签或离开站点前一瞬的编辑不再丢失(离开时用 keepalive 请求直接写入,写不进去才提示);工作台里 agent 改动花名册后已打开的课堂无需刷新即显示,课堂内的本地花名册编辑会保留;模型自造的动作类型(多为 "text")丢弃并告警,不再整场失败;导出的 PPTX 里长公式不再折行。破坏性变更——@openmaic/storage 0.39 引入资源迁移 v3:升级前必须停掉所有 1.3.0 实例才能让 1.3.1 接受写入,不可混版本滚动部署;v3 应用后 0.38 实例会因 schema 更新而拒绝启动,回滚只能靠恢复数据库,不能重启旧版本。已知问题——课堂上限移除后,Director 对持续失败的子任务没有停止机制,会一直调用模型直到被取消(自建部署没有平台侧请求超时)。
前一版 v1.3.0(2026-10-29,GitHub 标记 Latest,版本主题为知识库与 Pro 工作台):知识库在 1.3.0-rc.1 落地——上传内容留在上传者自己的知识库直到被删除、按文件夹组织并只解析一次,写作台与 agent 都能调用;本版新增 Pro 工作台升级——会话出现第一张页面之前,右栏用标签页展示 agent 正在做什么(理解需求、调研、提问、组建名单、生成),随后交接到「学习」模式的课程,agent 的提问可在预览里直接回答;课堂标签页可在「学习 / 编辑」之间切换并按课程记忆,生成中不可编辑;纯自然语言的新课程请求会读取 stage-design 技能;render_scene_preview 重新可用(渲染服务以 tini 作 PID 1 回收退出的 Chromium);首页与对话框适配手机。破坏性变更(沿用 1.3.0-rc.1)——移除内置 Veo 视频提供方,知识库设定了发布条件:升级前须停掉所有旧实例、不可混版本滚动部署、不可回滚到本版以下、MATERIALS_POOL_BACKFILL=1 须在所有旧实例停止后再设并重启;自建迁移方需先按「Material library upgrade reference」补表与列;升级时须连同 render-service 镜像一起更新。行为变更——generate_tts 按提供方连接限流(默认一次一个,OPENMAIC_AGENT_TTS_CONCURRENCY 可放开)。
前一版 v1.2.1(2026-10-18,GitHub 标记 Latest,常规补丁版,主题是网页研究):新增——webSearch 增加 Kimi、DeepSeek、Firecrawl 三个搜索提供方(均为显式开启或指派,原有默认与免密钥的 builtin 阅读器保持不变);新增 webFetch 能力槽位,让 agent 的 fetch_url 工具改用托管阅读器——默认仍是 builtin,openmaic.yml 里 webFetch: null 可移除该工具,Kimi 是首个托管阅读器(复用 kimi / kimi-coding-plan 凭据),URL 与内网地址检查在进入托管阅读器前与最终 URL 上各做一次,单次请求只用一个阅读器、不做回退;Kimi Coding Plan 在「设置 › Token Plan」连接后会同时接管聊天、搜索与抓取,断开则回到服务端默认;内置模型目录清退已下线的模型。破坏性变更——旧版 director-graph 课堂聊天被移除,课堂聊天一律跑在 Pi 上(需为 Classroom 选择支持工具调用的模型,或在 openmaic.yml 设置 classroom 槽位,Gemini 用原生 google 预设);移除 NEXT_PUBLIC_PI_CHAT_ENABLED,生产构建只接受未设置、空串、true 或 1,其他值直接失败并给出迁移提示;POST /api/chat 接口删除并返回 404(设了 ACCESS_CODE 时未认证请求仍先返回 401)。
前一版 v1.2.0(2026-10-16,GitHub 标记 Latest,架构级更新):课程生成、身份与模型配置整体搬到服务端——经典课程生成改为服务端运行,关闭页面也继续、崩溃或重启后从检查点续跑、暂停在失败步骤时重试只重跑该步,图像与视频随场景一并生成且单个失败项可重试,网页端与无头 API 共用同一条流水线;模型改由 openmaic.yml 在服务端声明 provider 与能力槽位(llm 的 course.* / classroom / agent,以及 tts、asr、image、video、webSearch、document),slots 为默认值、lock 可锁定、allowUserKeys: false 禁止用户自带密钥,密钥在服务端加密存储;材料上传即解析(就地显示进度/就绪/失败可重试);课堂可导出为保留全部场景的 PPTX(交互、测验与 PBL 场景为占位页 + 「Open online」按钮与二维码),或导出为离线单文件 HTML 直接播放课堂(含字幕旁白、聚光与激光笔、自动翻页、讨论卡与互动组件)。破坏性变更:v1.2.0 起需要 PostgreSQL(DATABASE_URL 必填)与常驻 Node.js 服务,Serverless 托管(含 Vercel)只能停留在 1.1.x;使用服务端凭据的 provider 必须显式配置模型列表(*_MODELS 或 YAML models),否则启动告警且仅授权默认/回退/槽位引用;render-service 需与应用同版本或先行升级。
前一版 v1.1.4(2026-10-11,GitHub 标记 Latest,安全修复版):修复三处安全问题——服务端托管凭据下缺少模型授权(GHSA-r2xp-m5r2-g7xj,High,@13ob0 报告)、MP4 渲染任务未绑定请求者(GHSA-x3gm-gw9m-94h9,Medium,@Duang777 报告)、已删除课程未撤销旧课堂媒体 URL(GHSA-6jrw-cp5x-j8jc,Low,@Duang777 报告)。现渲染任务绑定到请求者(每个 render-service 实例需与应用一起或之前升级,混合版本经专用 owner-bound 任务命名空间 fail closed);课程删除后旧课堂媒体不再被服务,媒体响应改用私有缓存并重新验证,生命周期查询失败 fail closed;使用服务端凭据的提供商在访问前先授权所选模型(覆盖 chat、生成、媒体、语音、转录、搜索与连接测试),拒绝时统一返回 HTTP 403 PROVIDER_DISABLED,用户自有凭据与无密钥提供商不受影响。破坏性变更:服务端托管模型授权需配置 *_MODELS 或各 provider YAML 的 models 列表,未配置时 chat 仅授权 DEFAULT_MODEL 与 operator 的 MODEL_ROUTES 引用,其他选模型能力只授权其单一默认,预设目录不授予访问权限;配置显式列表后 TTS/ASR/图像/视频与 Claude 网络搜索使用列表中的客户端选择,未列出或缺失时替换为列表首个模型。同一修复进入 v1.2.0-rc.2。
前一版 v1.1.3(2026-10-05,安全修复版):修复课程文档服务端持久化(/api/persistence)未对幻灯片 HTML 做消毒的存储型 XSS——此前经该路径写入的幻灯片 HTML 会在任何打开该课程链接者的浏览器中执行脚本(GHSA-6c52-8h4v-5xvg);现对写入与读取的舞台/场景统一套用与 /api/classroom 相同的消毒策略,新文档落库即干净、旧文档在读取时被消毒。行为变更:经该接口写入的幻灯片 HTML 被收敛到渲染器支持的格式词表(移除脚本、事件处理属性、javascript: URL 与内嵌对象,行内样式重新序列化),编辑器正常产出的格式保留。同一修复同步进入 v1.2.0-rc.1。