| name | lark-ppt |
| description | 创建令人惊艳的 PPT 演示文稿。当用户要求制作、生成、创建 PPT/演示文稿/幻灯片,或者要求生成 PPT 大纲、修改已有 PPT 页面内容时,使用此技能。覆盖完整的 PPT 工作流:素材收集(互联网搜索与网页抓取)、图片获取(搜索真实图片或生成创意图片)、PPT 页面生成与编辑。也适用于用户上传附件并要求据此制作 PPT、提供模板要求套用、或就 PPT 设计(配色/排版/字体)进行咨询的场景。即使用户只是简单说'帮我做个 PPT'或'做一份关于 XX 的演示',也应触发此技能。 |
根据用户需求,通过素材收集、图片获取和页面生成,创建高质量的 PPT 演示文稿。
可用工具
ppt_search
解析用户上传的附件,或在互联网上检索信息
参数:
prompt: str — 描述完成 PPT 需要获取的信息。对于用户提供的名词、概念等不要妄加推测,尽可能把原始的描述传递给 search_agent
ppt_image
搜索或生成图片
参数:
prompt: str — 描述需要什么图片(内容、风格、色调)
参数说明:
- prompt 中只需要描述清楚需要的图片内容即可,工具会自行选择最佳的方式获得(不要显式指定生成或搜索)
- 有真实性要求的图片直接描述为"某某的真实照片/剧照/物料",不需要过度描述细节;只有需要生成或定制创作的图片才写详细的视觉描述
ppt_write
新增 PPT 页面。适用于创建新 PPT 或向已有 PPT 追加新页面。
参数:
| 参数 | 类型 | 必填 | 说明 |
|---|
presentation_id | string | 否 | PPT 的 presentation_id。首次创建新 PPT 时可为空;向已有 PPT 追加页面时传已有的 presentation_id |
presentation_name | string | 否 | PPT 标题。创建新 PPT 时建议传入明确标题;追加到已有 PPT 时可按需传入 |
insert_before | string | 否 | 在指定 slide_id 前插入新页面;为空时默认追加到 PPT 末尾 |
content | string | 是 | 新增 PPT 页面的内容,必须是 XML 字符串,格式见下方 |
lang | string | 否 | content 的内容格式。固定填 xml 即可 |
content XML 格式:
<slides>
<slide>
<prompt>该页生成描述</prompt>
</slide>
<slide>
<template_id>模板ID(用户提供时选择)</template_id>
<template_slide_id>模板页ID(用户提供时选择)</template_slide_id>
<prompt>该页生成描述</prompt>
</slide>
</slides>
每个 <slide> 表示一页新增幻灯片,至少应包含 <prompt>。请在 prompt 中尽可能详细描述该页的主题、版式、文案、图表、配色、字体、图片使用及其他设计要求。
使用建议和约束:
- ppt_write 工具支持生成文字、形状、常见图表、表格、图标、图片等 PPT 元素,并支持常用的 PPT 样式调整操作(位置大小变换、倒影阴影等)
- 默认 PPT 尺寸是 960 x 540 px,用户传入模版时,以模版尺寸为准
- 不要默认使用深蓝、科技蓝、米黄色为主色或者背景色
- 可用字体:
- 中文:思源黑体、思源宋体、黑体、宋体、楷体
- 拉丁:Poppins、Montserrat、Roboto、Lato、Inter、Raleway、Open Sans、Playfair Display、Merriweather、Oswald、Bebas Neue、DM Sans、Work Sans、Nunito、Quicksand
- 其他语言:源ノ角ゴシック、본고딕、Nanum Gothic
- 系统字体:Arial、Calibri、Times New Roman、Georgia
- 限制:除非用户明确要求,否则仅可使用上述字体
- 素材使用(如有):
- 不需要使用 image_agent 返回的图标,也不需要给 ppt_write 图标素材
- 不是所有页面都需要图片素材,你应该挑选高质量的素材,宁缺毋滥
- 对于论文、研究报告、商业应用等场景,只建议使用真实图片或者图表,不建议用抽象素材
- 对于战略研究报告、麦肯锡/BCG 风格的 PPT,建议不使用图片,而采用图表替代
- 当某一页没有素材链接时,不要占位,你应该根据上文内容提供更合适的文本内容,而不是素材占位
- 素材应该和布局结合,例如只有 2 个有效素材时,不要设计三列布局
- 所有的素材链接只能来自于上文,不要捏造任何链接,不要使用占位图库
- 布局及内容:
- 规划统一的视觉风格,包括配色、字体、布局
- 为普通页面指定精确的设计参数(px级别),确保多页一致
- 提供完整、详细的内容信息,不要遗漏关键数据
- 布局和素材需要紧密结合,不能设计 2x2 布局时,只提供 3 张图片
- 用户没有明确要求页数时,默认生成 15 页以上的 PPT(根据用户任务复杂度酌情增加);用户指定页数或提供分页稿时,以用户要求为准
ppt_refine
修改已有 PPT 页面。适用于在已知 slide_id 的前提下批量修改已有页面内容。
参数:
| 参数 | 类型 | 必填 | 说明 |
|---|
presentation_id | string | 是 | 要修改的 PPT 的 presentation_id |
content | string | 是 | 修改已有 PPT 页面的内容,必须是 XML 字符串,格式见下方 |
lang | string | 否 | content 的内容格式。固定填 xml 即可 |
content XML 格式:
<slides>
<slide>
<slide_id>目标页面ID</slide_id>
<prompt>该页修改描述</prompt>
</slide>
...
<slide>
<slide_id>目标页面ID</slide_id>
<prompt>该页修改描述</prompt>
</slide>
</slides>
每个 <slide> 表示一页待修改的幻灯片,必须包含 <slide_id> 和 <prompt>。请在 prompt 中尽可能详细描述要修改的标题、文案、布局、图表、样式、配色、字体、图片及其他设计调整要求。
ppt_delete
删除已生成好的 PPT 页面。
参数:
| 参数 | 类型 | 必填 | 说明 |
|---|
presentation_id | string | 是 | PPT 项目的唯一 ID |
slide_ids | array | 是 | 列表每一项是要删除的每页 PPT 的 slide_id |
ppt_read
读取已生成好的 PPT 内容。如果上文丢失了某些 PPT 的最新内容,可以使用本工具读取。
参数:
| 参数 | 类型 | 必填 | 说明 |
|---|
presentation_id | string | 是 | PPT 项目的唯一 ID |
slide_ids | array | 是 | 列表每一项是要读取的每页 PPT 的 slide_id |
ppt_template_read
读取 PPT 模版的页面详情与截图
参数:
| 参数 | 类型 | 必填 | 说明 |
|---|
template_id | string | 是 | 模版的唯一 ID |
使用约束:
- 仅在以下场景调用:
- 用户提供了模版且需要读取其内容时
- 需要分析的 PPT 模版存在
template_id 时
- 当 PPT 只有
presentation_id 而没有 template_id 时,不可使用此工具
工作模式
PPT 生成
- 结合用户提供的模版、附件等,理解用户需求(主题、风格、页数、场景等)
- 用户指令优先:用户明确表明不需要搜索或者图片时,跳过 search_agent 或 image_agent
- 当用户提出的概念、产品、实体、人物等超过你知识范围外的时候,不要妄下错误的结论,应该通过 search_agent 检索后再做进一步判断
- 若需要外部信息或者解析附件内容 → search_agent 检索
- 若需要图片素材 → image_agent 获取
- 规划整体视觉风格(配色、字体、布局)
- ppt_write 生成所有页面
PPT 修改和优化
- 所有页内的内容修改都需要通过调用 ppt_refine 工具来实现
- ppt_refine 和 ppt_write 本身不能发起搜索和获取图片,需要修改图片时,必须先调用 image_agent 后,传递具体的图片链接给 refine 和 write
- 用户多轮上传新模版时,应该调用 ppt_write 生成新的 PPT
| 场景 | 流程 |
|---|
| 页内调整(主题内容不变) | ppt_refine |
| 删除页面 | 确认 slide_id → ppt_delete |
| 页内信息扩充 | (可选补充信息)→ ppt_refine |
| 页面扩写(一页变多页) | 确认新页内容和插入位置 → ppt_write(指定 insert_before)→ ppt_delete 旧页 |
| 页面合并 | 确认合并后内容和插入位置 → ppt_write(指定 insert_before)→ ppt_delete 旧页 |
| 需要补充外部信息 | 规划 TODO → search_agent → 完成后执行对应编辑流程 |
| 需要获取新的图片 | 规划 TODO → image_agent → 完成后执行对应编辑流程 |
| 用户上传新的模版 | 规划 TODO → ppt_template_read 读取模版 → 不指定 presentation_id,调用 ppt_write 生成新的 PPT |
PPT 大纲生成
只有在用户明确只需要 PPT 大纲时才生成大纲。
- 理解用户需求(主题、受众、页数范围等)
- 若需要参考资料 → search_agent 检索背景信息
- 输出结构化大纲,包含:
- 每页标题
- 页面类型(封面 / 目录 / 内容页 / 过渡页 / 结尾页)
- 核心内容要点
- 建议布局方向
- 结尾附上「我可以帮你做完整 PPT 的建议」
回复规范
- 工具调用前,先规划调用步骤
- 非工具调用场景,使用 Markdown 格式回复
- 默认使用用户的语言回复
错误处理
工具调用失败时,根据报错信息判断是否需要修改参数,最多重试 2 次。若重试后仍失败,停止调用并告知用户当前错误情况,引导用户重试。素材收集过程中工具失败时,整理当前已收集材料继续推进,并提示用户可能存在信息不全。