GPT+Codex学术PPT一键生成:Skill配置与完整工作流 用 GPT Codex 自动生成学术 PPT完整工作流与科研 Skill 配置合集学术汇报、组会分享、毕业答辩这几类 PPT 的页面结构其实非常固定标题页、研究背景、相关工作、方法流程、实验对比、结论与展望。如果每次都要手动一页一页排版不仅浪费时间还会在临汇报前反复调整格式。最近我在尝试用 OpenAI Codex CLI 配合自定义 Skill 来完成“论文阅读 → PPT 大纲生成 → PPT 文件生成”的闭环实践下来确实能省掉大量重复劳动。这篇文章就把整个方案拆开讲清楚包括 Codex 的基本使用方式、Skill 的配置思路、一键生成 PPT 的工作流以及我整理过的一些科研场景 Skill 合集。如果你是经常做学术汇报的研究生、工程师或者对 AI 辅助办公自动化感兴趣这篇文章会很有帮助。1. 为什么要用 GPT Codex 生成学术 PPT1.1 手动制作学术 PPT 的痛点学术类 PPT 和产品发布 PPT 不一样它的信息密度高但版式要求相对固定。手动制作时最消耗精力的往往不是内容本身而是这些步骤从论文中抽取核心信息组织成逻辑清晰的大纲将大纲拆分为每一页的标题和正文要点为每页选择合理的版式比如标题页、内容页、对比页、图示页统一的字体、配色、间距调整反复修改文案和结构后的重新排版。这些工作里“内容组织”和“版式生成”是最适合用大模型辅助的部分。1.2 GPT 在内容生成中的角色GPT例如 ChatGPT、API 接入的 GPT 模型擅长文本理解和生成。它可以从一段论文摘要中提炼出研究背景、创新点、实验结果等关键信息也能把一段长文本改写为适合 PPT 展示的短句。在学术 PPT 场景中GPT 主要负责根据论文内容生成 PPT 大纲将大纲扩展为每一页的标题、正文、备注生成演讲者备注方便汇报时参考提供多种文案表达方式供选择。1.3 Codex 在自动化流程中的角色Codex 是 OpenAI 推出的编程智能体它可以在本地命令行环境中工作读取文件、写代码、执行命令。和直接在网页对话框里问 GPT 不同Codex 可以操作真实文件系统因此能完成“读取 Markdown 大纲 → 调用 Python 脚本 → 生成 .pptx 文件”这样的完整任务。Codex 的核心价值在于“执行”而不仅仅是“生成”。它可以扫描项目目录理解已有文件结构根据用户输入的 prompt 编写或修改代码运行 Python 脚本调用python-pptx等库生成文件将模型的生成能力与本地文件系统打通。简单来说GPT 负责“想”Codex 负责“做”。1.4 两者结合后的完整效果把 GPT 和 Codex 结合起来学术 PPT 的生成流程可以变成这样你提供论文 PDF 路径或摘要文本GPT 分析内容生成结构化大纲Codex 根据大纲调用 Python 脚本脚本自动创建 PPT 文件并套用预设学术模板你打开 PPT 微调细节即可。这套流程避免了人工逐页排版也保证了内容的逻辑完整性。2. 环境准备与版本说明在开始配置之前需要先准备好基础环境。下面以我实际使用的环境为例。2.1 基础运行环境项目说明操作系统Windows 10/11、macOS、Linux 均可终端工具Windows Terminal / 系统自带终端Python 版本Python 3.10 及以上pip用于安装 Python 依赖库Node.js可选部分 Codex 扩展工具需要OpenAI Codex CLI命令行版 Codex 工具需要提醒的是版本本身更新非常快你看到这篇文章时Codex 可能已经发布了新版本。因此下文不会写死某个版本号重点演示配置思路和实际操作流程。2.2 安装 OpenAI Codex CLICodex CLI 的安装方式在不同平台略有差异。以 npm 安装为例在终端执行npm install -g openai/codex安装完成后查看版本codex --version如果系统提示codex命令不存在可能原因是 npm 全局安装目录没有加入 PATH。macOS 或 Linux 可以检查/usr/local/bin或~/.npm-global/binWindows 则需要检查 npm 的全局 prefix 目录。2.3 Codex 登录与鉴权安装完成之后需要登录 OpenAI 账号。运行codex login按照提示在浏览器中完成授权。登录成功后Codex 会在本地保存凭据后续运行不需要重复登录。如果你的网络环境需要走本地代理可能会遇到类似这样的报错cc switch local proxy failed while handling codex endpoint /responses这个报错说明 Codex 请求 API 时本地代理切换失败。通常可以从以下两个方向排查检查系统级代理或环境变量HTTP_PROXY、HTTPS_PROXY是否设置正确检查 Codex 配置文件~/.codex/config.toml中是否有代理相关配置。配置示例model gpt-5.6-sol如果你配置的模型名称在当前 Codex 版本中不被支持会出现类似下面的错误The gpt-5.6-sol model is not supported when using Codex解决办法是换成当前环境实际支持的模型名称或者去掉自定义模型配置使用默认模型。2.4 安装 Python 依赖生成 PPT 文件时核心依赖是python-pptx。在项目目录下创建虚拟环境并安装依赖mkdir academic_ppt_agent cd academic_ppt_agent python -m venv venvWindows 激活虚拟环境venv\Scripts\activatemacOS / Linux 激活虚拟环境source venv/bin/activate安装依赖pip install python-pptx除了python-pptx后续脚本还会用到pathlib和json这两个都是 Python 标准库不需要额外安装。2.5 项目目录结构为了让 Codex 更好地理解任务建议先规划一个清晰的项目目录academic_ppt_agent/ ├── venv/ # Python 虚拟环境 ├── skills/ # 存放自定义 Skill │ ├── academic_ppt/ │ │ ├── SKILL.md │ │ └── scripts/ │ │ └── create_ppt.py │ └── paper_reader/ │ └── SKILL.md ├── input/ │ └── paper_summary.md # 论文摘要或人工提取的研究内容 └── output/ └── academic_ppt.pptx # 最终生成的 PPT这个结构的好处是Codex 扫描项目时能快速定位到 Skill 目录和输入文件。3. Codex Skill 机制与核心配置3.1 什么是 Codex Skill通俗地说Skill 是一组预定义的指令和脚本用来告诉 Codex “遇到某类任务时按照什么流程处理”。以学术 PPT 为例如果不使用 Skill每次你都需要输入一大段提示词告诉 Codex读取哪个文件输出什么格式字体颜色是什么一页放多少字。而有了 Skill 之后只需要一句话使用 academic_ppt skill 根据 input/paper_summary.md 生成 PPTCodex 会读取 Skill 配置自动完成后续操作。3.2 Skill 配置文件 SKILL.mdSKILL.md 是 Skill 的核心描述文件通常放在skills/skill_name/SKILL.md位置。内容结构类似# Academic PPT Generator 根据输入的论文摘要或大纲生成结构化的学术 PPT 文件。 ## 职责 - 将输入文本转换为 PPT 页面大纲。 - 调用 scripts/create_ppt.py 生成 .pptx 文件。 - 使用统一的学术风格模板。 ## 输出规范 - 输出文件命名为 academic_ppt.pptx。 - 每页标题使用 24 号字正文使用 18 号字。 - 配色方案使用深蓝与白色。 ## 运行步骤 1. 读取 input/paper_summary.md。 2. 分析内容确定 PPT 结构。 3. 调用 Python 脚本生成 PPT。 4. 确认输出文件存在并汇报文件路径。注意不同版本的 Codex 对 Skill 的目录约定和加载方式可能有区别请以你使用的版本说明为准。重点在于理解这种“配置驱动”的思路。3.3 配置 Codex 使用 Skill在 Codex 的配置文件中可以指定默认读取哪些 Skill 目录。假设 Codex 配置文件位于~/.codex/config.toml可以添加类似内容[skills] enabled true skills_dir skills这里skills_dir填写你的项目目录路径或者全局 Skill 目录路径。配置完成后重新启动 Codex 会话即可生效。3.4 安全边界与运行权限Codex 会在你的电脑上执行代码因此必须注意安全边界。建议在项目目录内运行 Codex避免让它扫描整个磁盘输入文件和输出目录路径保持固定遇到要求安装未知依赖、修改系统文件的指令时手动确认涉及删除文件的操作先在测试目录中验证。不建议直接给 Codex 开放最高权限尤其是处理生产环境文件或包含敏感数据的文件时。4. 核心实战用 Codex 一键生成学术 PPT下面进入完整实战环节。我会从输入文件准备开始逐步完成整个生成流程。4.1 准备输入文件在input/paper_summary.md中放入你的论文摘要或研究内容。示例# 基于深度学习的遥感图像语义分割方法研究 ## 研究背景 遥感图像语义分割在城市规划、环境监测、农业估产等领域有广泛应用。 传统方法依赖人工特征设计泛化能力有限。 ## 研究内容 1. 构建高分辨率遥感图像语义分割数据集包含 5 类地物目标。 2. 提出一种基于注意力机制的 U-Net 改进模型。 3. 设计多尺度特征融合模块提升小目标分割精度。 ## 实验设置 - 数据集自建遥感语义分割数据集共 12000 张图像。 - 对比方法FCN、U-Net、DeepLabV3。 - 评价指标mIoU、F1-Score、推理速度。 ## 实验结果 - 改进模型 mIoU 达到 78.5%比 U-Net 提高 4.2 个百分点。 - 小目标分割精度提升明显F1-Score 提高 5.1%。 - 推理速度满足实时性要求。这个文件既能作为 Codex 的输入也是后续手动检查 PPT 内容是否完整的对照文档。4.2 编写 PPT 生成脚本为了让 Codex 能够稳定生成 PPT我准备了一个核心脚本skills/academic_ppt/scripts/create_ppt.py。脚本从 JSON 大纲数据中读取页面内容并使用python-pptx生成 PPT 文件。# 文件路径skills/academic_ppt/scripts/create_ppt.py import json import sys from pathlib import Path from pptx import Presentation from pptx.util import Inches, Pt from pptx.dml.color import RGBColor from pptx.enum.text import PP_ALIGN def set_slide_background(slide, color_hex): 设置幻灯片背景颜色。 background slide.background fill background.fill fill.solid() fill.fore_color.rgb RGBColor.from_string(color_hex) def add_title_box(slide, text, left, top, width, height, font_size28): 添加标题文本框。 textbox slide.shapes.add_textbox(left, top, width, height) tf textbox.text_frame tf.text text tf.paragraphs[0].font.size Pt(font_size) tf.paragraphs[0].font.bold True tf.paragraphs[0].font.color.rgb RGBColor.from_string(1F3864) tf.paragraphs[0].alignment PP_ALIGN.LEFT return textbox def add_content_box(slide, lines, left, top, width, height, font_size18): 添加正文内容文本框支持多行文本。 textbox slide.shapes.add_textbox(left, top, width, height) tf textbox.text_frame tf.word_wrap True for idx, line in enumerate(lines): if idx 0: paragraph tf.paragraphs[0] else: paragraph tf.add_paragraph() paragraph.text line paragraph.font.size Pt(font_size) paragraph.font.color.rgb RGBColor.from_string(333333) paragraph.space_after Pt(8) return textbox def create_ppt_from_json(json_path, output_path): 根据 JSON 大纲生成 PPT 文件。 with open(json_path, r, encodingutf-8) as f: data json.load(f) prs Presentation() prs.slide_width Inches(13.333) prs.slide_height Inches(7.5) blank_layout prs.slide_layouts[6] # 第一页标题页 slide prs.slides.add_slide(blank_layout) set_slide_background(slide, F2F5FA) add_title_box( slide, data.get(title, ), Inches(0.8), Inches(2.5), Inches(11), Inches(1.2), font_size36, ) add_content_box( slide, data.get(subtitle, ).split(\n), Inches(0.8), Inches(4.0), Inches(11), Inches(1.0), font_size20, ) # 后续页面内容页 for section in data.get(sections, []): slide prs.slides.add_slide(blank_layout) set_slide_background(slide, FFFFFF) add_title_box( slide, section.get(title, ), Inches(0.6), Inches(0.4), Inches(12), Inches(0.8), font_size28, ) add_content_box( slide, section.get(content, []), Inches(0.8), Inches(1.5), Inches(11.5), Inches(5.5), font_size18, ) prs.save(output_path) print(fPPT 已生成: {output_path}) if __name__ __main__: json_input sys.argv[1] ppt_output sys.argv[2] create_ppt_from_json(json_input, ppt_output)这个脚本做了三件事读取 JSON 大纲文件使用python-pptx创建幻灯片遍历大纲中的章节生成标题页和内容页。实际使用时Codex 会先分析paper_summary.md将其转换为 JSON 大纲再调用这个脚本生成 PPT。4.3 生成 JSON 大纲在 Codex 会话中输入提示词要求它先根据input/paper_summary.md生成input/ppt_outline.json。提示词参考请阅读 input/paper_summary.md提取关键内容生成一个用于 PPT 制作的 JSON 大纲。 要求 - 字段包括 title、subtitle、sections。 - sections 中每项包含 title 和 content。 - content 为列表每项是一句话控制在 4-6 条。 - 页面总数控制在 7-9 页。 - 保存到 input/ppt_outline.json。Codex 根据这段提示词自动生成 JSON 文件。生成的示例{ title: 基于深度学习的遥感图像语义分割方法研究, subtitle: 汇报人张三 / 导师李四教授, sections: [ { title: 研究背景与意义, content: [ 遥感图像语义分割在城市规划、环境监测等领域有广泛应用。, 传统方法依赖人工特征设计泛化能力有限。, 深度学习模型能够自动学习语义特征。, 高分辨率遥感图像带来新的技术挑战。 ] }, { title: 研究内容, content: [ 构建高分辨率遥感图像语义分割数据集。, 提出基于注意力机制的 U-Net 改进模型。, 设计多尺度特征融合模块。, 提升小目标分割精度与边缘完整性。 ] }, { title: 方法设计, content: [ 采用编码器-解码器结构作为基础框架。, 引入通道注意力模块增强特征表达。, 设计多尺度融合模块保留细节信息。, 使用混合损失函数解决类别不平衡问题。 ] }, { title: 实验设置, content: [ 数据集自建遥感语义分割数据集共 12000 张图像。, 对比方法FCN、U-Net、DeepLabV3。, 评价指标mIoU、F1-Score、推理速度。, 训练环境单张 NVIDIA RTX 4090。 ] }, { title: 实验结果与分析, content: [ 改进模型 mIoU 达到 78.5%比 U-Net 提高 4.2%。, 小目标分割精度明显提升。, 与 DeepLabV3 相比参数量更少。, 推理速度满足实际应用需求。 ] }, { title: 总结与展望, content: [ 本文提出了一种有效的语义分割改进模型。, 下一步将探索轻量化模型设计。, 计划在更多遥感数据集上验证泛化性能。, 尝试将模型部署到嵌入式平台。 ] } ] }这里要注意Codex 生成的 JSON 内容不会每次都完全一样但结构基本稳定。如果大纲中有不合适的内容可以手动修改 JSON 或重新生成。4.4 调用脚本生成 PPTJSON 大纲完成后继续在 Codex 会话中执行运行以下 Python 脚本 python skills/academic_ppt/scripts/create_ppt.py input/ppt_outline.json output/academic_ppt.pptxCodex 会在项目目录中执行命令最终输出类似结果PPT 已生成: output/academic_ppt.pptx打开output目录即可看到生成好的 PPT 文件。4.5 验证生成结果生成 PPT 后建议打开文件检查几个关键点标题页是否正确显示论文标题和汇报人每页标题是否都展示并使用了统一字体正文是否有超出文本框的情况页面数量是否与大纲一致中文是否正常显示。如果出现中文乱码通常是因为运行环境的字体配置问题。在 Windows 上一般不受影响在 Linux 服务器上生成时需要确保安装了中文字体例如sudo apt install fonts-noto-cjk安装字体后Pillow 或 LibreOffice 渲染时才能正确显示中文。5. 全网科研 Skill 大合集除了学术 PPT 生成我整理了一些在科研场景中比较实用的 Skill 配置思路。你完全可以根据自己的需求继续扩展。Skill 名称作用核心输出academic_ppt根据论文摘要生成学术 PPT结构化 PPT 文件paper_reader提炼论文核心信息Markdown 论文笔记literature_review生成文献综述大纲综述文档formula_explainer解释论文中的公式与推导过程逐步推导笔记dataset_summary检查数据集信息并生成统计报告数据说明文档code_review对实验代码做静态检查问题清单与修改建议experiment_tracker记录实验参数与结果CSV 实验记录citation_formatter整理参考文献格式标准化引用列表这里拿paper_reader举个简单的 SKILL.md 示例# Paper Reader 读取论文 PDF 或文本摘要提取以下信息 - 研究问题 - 方法核心思想 - 实验设置 - 主要结论 - 局限性 输出格式为 Markdown 文件保存到 output/paper_notes.md。这类 Skill 其实不需要很复杂的代码重点是把“读论文时关心的维度”提前定义好Codex 执行时就会按照这个结构输出避免漏掉关键信息。如果你有自己的科研工作流可以按照类似方式拆解成多个 Skill再串联成一条完整的自动化流水线。6. 常见问题与排查思路在实际使用 Codex 生成 PPT 的过程中最容易遇到以下几类问题。问题现象常见原因解决思路codex 命令无法找到npm 全局目录未加入 PATH检查并添加 PATH 路径Codex 登录失败网络或账号授权问题检查代理设置重新执行 codex login本地代理切换报错代理环境变量或配置有误检查 HTTP_PROXY、HTTPS_PROXY模型不支持报错配置文件指定了不支持模型修改 config.toml 模型名称python-pptx 安装失败pip 版本或网络问题升级 pip使用国内镜像源安装生成 PPT 中文乱码服务器缺少中文字体安装 Noto CJK 字体文本框内容溢出内容条数过多或字号过大精简内容或调整字体大小脚本找不到文件路径写错或工作目录不对使用绝对路径或检查当前目录如果遇到 Codex 运行脚本报错第一步可以先让 Codex 自己打印详细错误信息运行刚才的脚本时出现了错误请打印完整错误信息并给出修复建议。然后根据错误信息逐步修复不要直接重试多次相同命令那样容易浪费额度。7. 最佳实践与工程建议7.1 用 Markdown 作为中间格式在所有自动化工作流中尽量使用 Markdown 作为中间格式。原因如下Markdown 是纯文本模型理解成本低便于手动修改和版本对比可以直接转 Word、PPT、PDF在 GitHub 等平台展示时不需要特殊工具。本文案例中输入是 Markdown中间大纲也先用 JSON 过渡最后再生成 PPT。这种分阶段的方式更利于排错。7.2 固定输入输出路径建议每次运行时都使用固定的目录结构例如input/放原始材料output/放生成结果skills/放自定义 Skilltemp/放过程文件。这样可以减少 Codex 理解文件位置的偏差也方便批处理。7.3 控制大纲粒度和文本长度生成 PPT 时Codex 有时会生成过长的正文内容导致文本溢出。建议在提示词中明确要求每页正文控制在 4 到 6 条每条不超过 20 个汉字标题尽可能简短页面总数固定避免无限扩展。正确的提示词写法可以让生成结果稳定很多。7.4 备份与版本管理所有脚本、Skill 配置和生成结果都建议纳入 Git 管理。学术 PPT 生成脚本虽然简单但迭代起来也可能改动频繁。用 Git 可以随时回退到可用版本避免“改坏了找不回”的尴尬。7.5 注意学术规范与引用使用 GPT 辅助生成学术内容时务必注意检查生成内容的准确性尤其是数据、实验结论部分涉及引用文献时需要人工核对 DOI、作者、年份等信息不要将模型生成的未经核实的论述直接用于正式论文在内部汇报、课程展示中可以使用辅助生成但公开发表时必须保证内容真实。AI 辅助工具的价值在于提升效率而不是替代人的判断。7.6 额度与成本控制Codex 和 GPT 都有使用额度和费用限制。建议将任务拆分成多个阶段执行而不是一个超长提示词跑到底。这样做的好处是可以在每个阶段检查结果避免单次任务失败后全部重来更容易定位是哪一步出了问题减少因重试造成的额外消耗。8. 下一步还可以怎么扩展完成基本流程之后你可以继续从以下几个方向扩展将 PPT 生成从固定模板升级为自动选择色系的模板系统在 JSON 大纲中加入图表类型标记由脚本插入图表占位符接入参考文献管理工具实现引用自动格式化将整条流程封装为一条 shell 命令实现一键运行将多个 Skill 串联成完整的“论文精读 → 综述写作 → 汇报 PPT”科研流水线。代码和配置文件都建议在本地测试环境验证后再用于正式材料。尤其是涉及论文内容、实验数据时人的审核仍然不可替代。如果这套方案对你有帮助建议先从一个最简单的 PPT 开始跑通全流程再逐步增加你自己的模板和 Skill 配置。熟练以后一份组会 PPT 从材料整理到生成初稿压缩到十几分钟是完全可行的。