我知道市面上已经有太多太多的 PPT 生成 Agent ,但是他们都不够亲民,如果说,不用 Codex ,不用多模态大模型,就可以根据模板精准的生成 ppt ,你觉得怎么样?请大家来指点下我的想法靠不靠谱:
1 设计一套 PPT 的专属标记语言
我已经调查了太多的 ppt 生成 agent ,我得出了一个关键结论:
只有在 powerpoint 中,才能制作出最好的 ppt 。
是的,这看似是一句废话,但市面上大多数 agent 都在疯狂的生成 pptx 文件。我为此专门学习了如何制作 ppt ,我认为,除非你教会 llm 如何使用 powerpoint ,否则很多炫酷的效果都是制作不出来的。
所以我进行了一次反向思考,如果 llm 能力尚且达不到这个标准,我们能否给制作好的 ppt 打上标签,让 llm 识别到:这是文本、这里填充图片、这里填充序号。
那么,它不需要动这个 ppt 的形状、动画、过渡效果,它只需要精准的根据标记找到对应 pptx 数据的位置,修改这些数据即可,一个文本大模型就足够完成这个工作。
那我们该怎么精准的标记某个 ppt 组件呢?
魔法就是“选择窗格”:

在这里,我们可以精确的选择组件,并且给它标记:文本、序号、图片、图标。
我选择使用 @ 符号开头,这代表一个标记的开始。
2 自动扩缩的列表
除了这些简单的标记,我们还需要解决一个关键的问题:
ppt 经常表达一些组合的子项,构成一个列表。

你看,我们常常组合一些形状、文字、图标,然后复制它们,如果说,llm 学不会扩缩这些列表,那它就只能机械的填充内容,无法自动扩缩。
所以我还设计了动态列表标记,@开头,@1 代表第一个列表,由于没有长度标记,所以它是定长列表,无法动态扩缩。 @1[3-5]代表它是可以扩缩的列表,最少 3 项,最多 5 项。 @1[3-5]@1 代表这框住的是第一个列表的第一项。
列表的单项必须用组合功能框在一起,然后给组合标记上列表。
3 打包成 Skill
我一开始想把标记语言做成 Skill ,但我发现太难,太依赖视觉和操作了,目前这个步骤只能由 ppt 模板设计者完成。
但是只要标记完毕,后续的 ppt 生成完全就是 skill 自动化的了。我们只需要把标记好的 ppt 发送给大模型,让它解析模板,就可以要求它用这个模板生成任意内容的 ppt 。
我已经把这个 skill 完全开源,欢迎大家下载、研究:
广告时间
这个 skill 已经被我集成到我的项目:JoyfulWords ,只需要动动手指,它就可以帮你生成文章、信息图、思维导图、ppt 、播客音频,欢迎试用(基础功能完全免费,AI 功能送 200 积分,足够使用一个月了)。