用 AI 生成 Word、Excel、PPT,这件事听起来简单,做起来全是坑。
公式存完变成了死数字,模板编辑一轮后格式全乱了,数据透视表保存之后悄悄丢了……文件能打开,但没办法作为最终交付产出。
这就是为什么很多 AI 生成的文档只能停留在 demo 阶段,无法真正落地。
3月25日,MiniMax 做了一件实在事:把他们在生产环境中验证过的四套 Office Skills 完整开源,MIT 协议,代码、设计文档、评测框架全部放出。
这不是简单的"轮子分享",而是把他们在文档生成踩过的所有坑,以及对应的解决方案,一次性摊开来给你看。

四个 Skill,四种技术选型
这次开源的四个 Skill 分别对应 Word、Excel、PDF、PPT 四种格式。最值得看的不是代码本身,而是每个格式背后的技术选型逻辑——每一条都是"踩过坑才知道"的经验。
Word:为什么不用 python-docx?
这是整个项目里讨论最久的一个选型。
python-docx 是社区最常见的 Word 生成方案,轻量、易用。但问题在于:当需求推进到复杂表格嵌套、多级目录、页眉页脚控制、修订追踪这些场景时,有些功能它不支持,有些支持但生成出来的文档结构容易出错。
MiniMax 最终选择了 .NET OpenXML SDK——微软官方维护的底层库,对 Word 文件格式标准的实现最完整。
代价是需要额外部署 .NET 运行环境,但换来的是对 Word 文档结构更完整、更可靠的控制力。
结论:文档质量比部署便利性更重要。
Excel:为什么不用 openpyxl?
Excel 的坑更隐蔽。很多时候不是 Agent 写不出来,而是"写完以后悄悄坏了"。
openpyxl 有一个工程上很难接受的问题:文件读入再写回之后,一些高级内容会被静默丢弃。比如一个包含数据透视表、迷你图、VBA 宏的 Excel 文件,被 openpyxl 打开再保存,这些东西可能就没了——甚至没有报错和提示。
MiniMax 的方案很硬核:绕开所有 Python Excel 库,直接在 XML 层面操作。
.xlsx 文件本质上是一个压缩包,里面是一组 XML 文件。解压 → 只修改目标单元格对应的 XML 节点 → 重新打包。这样每次编辑只动需要动的地方,样式、图表、宏都原封不动保留。
另一个关键点是公式。很多方案会把公式提前算好,存一个静态数字进去。MiniMax 要求每一个派生值都必须是真正的 Excel 公式,比如 =SUM(B2:B9),这样用户打开文件后还能正常编辑和联动。

PDF:封面和正文要用两套引擎
PDF 的核心挑战不在于文字呈现本身,而在于需要做出一套可复用、可扩展的设计系统。
MiniMax 做了一个关键判断:封面和正文使用不同的渲染引擎。
封面用 HTML + CSS 编写,通过 Playwright 渲染为 PDF。原因在于渐变、网格、混合模式、自定义字体这些设计能力,CSS 原生就支持,而多数 PDF 绘图 API 做这些非常吃力。
正文交给 ReportLab 排版,它在段落流控制、分页策略、页眉页脚方面更稳定可控。
最后通过 merge 脚本把两部分合并成一份完整的 PDF。
结论:拆成两套引擎,系统更复杂,但封面可以大胆做设计,正文仍然保持工程上的稳定性。
PPT:视觉风格一致性的秘密
PPT 生成的难点不在于往 slide 上放内容,而在于视觉风格的统一——字体大小、间距、配色、圆角弧度,任何一个地方不一致,整份演示文稿看起来都会很粗糙。
MiniMax 的做法是先定义约束体系,再去做生成。
页面类型:定义了 5 种标准类型——封面、目录、章节分割、内容、总结。每种类型都有明确的布局规范和元素位置。
风格配方:设计了 4 套配方——Sharp、Soft、Rounded、Pill。每套配方定义了圆角半径、阴影参数、边框粗细、间距比例等一整套数值。
切换配方,就能整体改变一份 PPT 的视觉调性,而不用逐页调整。

Skill 自循环进化:Execute → Evaluate → Fix
构建一个 skill 并不难。真正的挑战在于:你怎么知道它下一轮是不是更好了,以及它有没有在修一个问题的同时,又把别的场景弄坏。
MiniMax 搭了一套固定的三阶段循环:
Execute(执行) → Evaluate(评估) → Fix(修复)
先执行一组真实用例,再根据规则检查输出是否达标,把失败样例沉淀成可修复的问题,进入下一轮迭代。
对"达标"的定义不只是文件能打开。真正关心的是:
结构是不是完整 公式还是不是公式 版式在读写之后有没有悄悄变形 模板约束有没有被破坏
一个 xlsx 文件即使成功保存,如果数据透视表丢了、公式被写成了静态数字,在真实交付里都算失败。
只有底层链路足够可控,评测才可能对齐到真正有意义的质量指标,而不是停留在"程序没报错"这一层。

开源信息
GitHub:github.com/MiniMax-AI/skills 协议:MIT 内容:代码、设计文档、评测框架全部开源
如果你也在做 AI 文档生成、Agent 工具调用,或者正在把"能跑"往"能交付"推进,这个仓库值得一看。
写在最后
这次开源最有价值的不是代码本身,而是那些"踩过坑才知道"的技术选型逻辑。
为什么选 .NET 而不是 python-docx?为什么直接操作 XML 而不是用 openpyxl?为什么 PDF 要拆成两套引擎?为什么 PPT 要先定义约束体系再生成?
每一个选择背后,都是真实生产环境中无数次失败换来的经验。
对于做 AI Agent 办公场景的开发者来说,这份开源相当于一张"避坑指南"。与其自己从头踩一遍,不如站在别人的肩膀上往前走。
参考资料:MiniMax 官方公众号
夜雨聆风