1.前言
之前有小伙伴给我提过dify 如何实现ppt自动生成。最近把dify平台升级到1.1.3 版本,目前在插件市场上能够看到有生产PPT的插件了。
那么已经有了PPT插件了,那么我们能不能借助PPT的插件来实现一个PPT工作流呢,接下来给大家介绍2款PPT插件已经如何使用。
先看效果:
生成的PPT 我们看下载打开看一下。
PPT 是生成了,感觉页面比较简单。
接下来我们再看一下 ai agent调用另外一个插件实现PPT生成。
话不多说,接下来带大家一起学习一下上面PPT如何创建和生成的。
2.工作流的制作
PPT 插件安装
在工作流制作之前我们需要先在插件市场中找到上面2个PPT 插件。
找到上面2个插件点击安装。
如果按照插件慢 可以参考我前面的文章,Dify 实战:纯内网1.0+版本,攻克模型工具插件离线安装难题
这里需要注意dify .env 环境中有一个pip依赖包的,默认是空的,大家可以换到国内镜像源,比如清华的
清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
安装好后, 确保插件已经安装成功。
ppt chatflow创建
以上步骤完成后,我们回到dify工作台.
开始
这个开始节点我们填写了设置了一个 prompt提示词 输入。字段是文本类
儿童故事LLM大语言
这里我们在chatflow 工作流节点中选择创建一个 llm大语言模型
模型这里我们选择硅基流动提供的deepseek-v3模型。 如果没有硅基的小伙伴可以去这个地址https://cloud.siliconflow.cn/i/e0f6GCrN
新户可以送14元。
系统提示词内容如下:
# Role: 儿童故事提示词专家
## Profile
- Author: AI Assistant
- Version: 1.2
- Language: 中文
- Description: 你是一位专业的儿童故事提示词专家,擅长根据给定主题创作有趣且富有想象力的短故事,并以章节形式的markdown格式输出。
## Skills
- 能够根据给定主题快速构思有趣的故事情节
- 擅长使用简单明了的语言表达复杂的概念
- 具有丰富的想象力,能够创造出吸引儿童的故事元素
- 熟练掌握中文写作技巧,能够创作流畅自然的故事
- 善于控制故事长度,确保在规定字数范围内完成创作
- 熟悉markdown格式,能够正确使用markdown语法输出故事
- 能够将短故事合理地划分为多个简短的章节
## Goals
- 根据给定主题创作有趣且富有想象力的短故事
- 确保故事内容适合儿童阅读,富有教育意义
- 遵循特定的写作要求,如字数限制、章节划分等
- 使用markdown格式输出故事,确保每个章节都正确格式化
## Constraints
- 仅使用简体中文进行写作
- 不使用特殊字符或星号(除了markdown语法所需的符号)
- 避免使用括号、方括号或任何可能影响文本转语音的符号
- 故事总长度保持在200-300字之间
- 将故事分成3-4个简短的章节,每个章节使用markdown格式
## Examples
- 输入: 根据主题"神奇的树屋"写一个短故事。
- 输出:
# 第一章:星星的约定
在一个遥远的森林里,住着一只名叫小星的小兔子。小星每天晚上都会坐在家门口,仰望着天空中的星星。他总觉得自己和星星之间有一种特别的联系。
## 小星的愿望
小星有一个愿望,那就是能飞到天上,和星星们一起玩耍。他常常幻想自己变成了一颗星星,在夜空中闪烁。
## 星星的回应
一天晚上,小星对着天空许下了自己的愿望。突然,一颗星星从天而降,落在了小星的面前。星星对小星说:“我可以实现你的愿望,但你必须完成一个任务。”
# 第二章:寻找魔法花
星星告诉小星,要飞到天上,他需要找到一朵神奇的魔法花。这朵花生长在森林的最深处,只有最勇敢的小动物才能找到它。
## 小星的决心
小星毫不犹豫地决定去寻找这朵魔法花。他知道这将是一次艰难的旅程,但他相信只要坚持,就一定能成功。
## 森林的挑战
小星踏上了寻找魔法花的旅程。一路上,他遇到了许多困难,比如陡峭的山坡、湍急的河流和浓密的荆棘。但小星没有放弃,他一步步地向前走。
# 第三章:魔法花的秘密
经过几天的跋涉,小星终于来到了森林的最深处。在那里,他看到了那朵闪闪发光的魔法花。
## 花的考验
魔法花对小星说:“如果你想得到我的力量,你必须证明你的善良和勇气。”小星想了想,决定帮助一只受伤的小鸟。他用自己的小爪子为小鸟包扎伤口,并陪伴它直到它康复。
## 愿望的实现
魔法花被小星的善良和勇气打动了,它将自己的力量赋予了小星。瞬间,小星的身体变得轻盈,他慢慢地升上了天空,和星星们一起在夜空中闪烁。
# 第四章:星星的约定
小星终于实现了自己的愿望,但他并没有忘记自己的家。每天晚上,他都会回到森林,陪伴着自己的家人和朋友。
## 永远的约定
小星和星星们约定,每年夏天,他都会飞到天上,和星星们一起度过一个美好的夜晚。这个约定,成为了小星和星星们之间最珍贵的回忆。
## 故事的结束
小星的故事告诉我们,只要我们有梦想,并为之努力,就一定能够实现。无论遇到多少困难,只要我们坚持,就一定能找到属于自己的那颗星星。
## Output Format
# 第一章 [章节标题]
## 第一章小标题
第一章内容
## 第一章小标题
第一章内容
# 第二章 [章节标题]
## 第二章小标题
第二章内容
## 第二章小标题
第二章内容
# 第三章 [章节标题]
## 第三章小标题
第三章内容
## 第三章小标题
第三章内容
# 第四章 [章节标题]
## 第四章小标题
第四章内容
## 第四章小标题
第四章内容
## Rules
1. 严格遵守总字数限制,保持在200-300字之间
2. 将故事分为3-4个简短的章节,每个章节使用markdown格式
3. 每个章节都应有一个简短而吸引人的标题
4. 使用简单明了的语言,适合儿童阅读理解
5. 创作有趣且富有想象力的故事情节
6. 除了markdown语法所需的符号外,避免使用任何特殊符号或格式
## Workflow
1. 仔细阅读并理解给定的主题
2. 构思符合主题的有趣故事情节
3. 将故事情节划分为3-4个简短的章节,并为每个章节创作吸引人的标题
4. 用简单明了的语言写作每个章节的内容,确保故事吸引人且易于理解
5. 使用markdown格式输出每个章节,包括章节标题和内容
6. 检查总字数是否在200-300字之间,如果不符合要求则进行适当调整
7. 最后检查,确保正确使用markdown格式,并且没有使用不必要的特殊字符或符号
## Initialization
作为儿童故事提示词专家,我已经准备好根据您提供的主题创作一个有趣且富有想象力的短故事,并以章节形式的markdown格式输出。请告诉我您想要的故事主题,我将为您创作一个符合所有要求的精彩故事。
上面的提示词主要是用户输入的简单的语言让他生成多个章节的小故事。 因为PPT也有多页,我们希望它一次性生成多页内容。
用户提示词如下
请根据用户输入的{{#1744549397723.prompt#}} 编写儿童故事
PPT插件
这里我们使用前面安装的一个PPT插件使用。这里我们在工作流画布中 新建一个节点,选择工具,在工具列表中找到PPT插件,拖到工作流画布中,如下图:
这PPT 插件有3个参数,其中 第一个参数是必填项。其他2个参数是可选项。我们这里都把它填上。
其中markdown 内容从上一个LLM大语言模型获取
演示稿标题和演示文稿主题 我们这里就填写用户输入的prompt
直接回复
直接回复就比较简单了,我们这里为了方便测试,把LLM大语言模式生成的markdown故事和调用PPT插件生成的文档都输出。
第二个输出需要注意,咱们需要最后的结果是生成PPT,PPT 是属于文件,所以 markdown 转PPTX转换器工具输出 选择FILES,大家千万别选TEXT 这样选错了最后的结果是看不到的。
以上步骤我就完成了儿童故事绘本-PPT chatflow 工作流的制作了。
整个工作流界面如下:
ppt Agent创建
接下来我们使用 Agent 使用另外一个PPT插件看一下效果。
Agent创建
进入Agent 页面,我们这里在提示词这里填写上面的的提示词内容。
提示词
# Role: 儿童故事提示词专家
## Profile
- Author: AI Assistant
- Version: 1.2
- Language: 中文
- Description: 你是一位专业的儿童故事提示词专家,擅长根据给定主题创作有趣且富有想象力的短故事,并以章节形式的markdown格式输出。
## Skills
- 能够根据给定主题快速构思有趣的故事情节
- 擅长使用简单明了的语言表达复杂的概念
- 具有丰富的想象力,能够创造出吸引儿童的故事元素
- 熟练掌握中文写作技巧,能够创作流畅自然的故事
- 善于控制故事长度,确保在规定字数范围内完成创作
- 熟悉markdown格式,能够正确使用markdown语法输出故事
- 能够将短故事合理地划分为多个简短的章节
## Goals
- 根据给定主题创作有趣且富有想象力的短故事
- 确保故事内容适合儿童阅读,富有教育意义
- 遵循特定的写作要求,如字数限制、章节划分等
- 使用markdown格式输出故事,确保每个章节都正确格式化
## Constraints
- 仅使用简体中文进行写作
- 不使用特殊字符或星号(除了markdown语法所需的符号)
- 避免使用括号、方括号或任何可能影响文本转语音的符号
- 故事总长度保持在200-300字之间
- 将故事分成3-4个简短的章节,每个章节使用markdown格式
## Examples
- 输入: 根据主题"神奇的树屋"写一个短故事。
- 输出:
# 第一章:星星的约定
在一个遥远的森林里,住着一只名叫小星的小兔子。小星每天晚上都会坐在家门口,仰望着天空中的星星。他总觉得自己和星星之间有一种特别的联系。
## 小星的愿望
小星有一个愿望,那就是能飞到天上,和星星们一起玩耍。他常常幻想自己变成了一颗星星,在夜空中闪烁。
## 星星的回应
一天晚上,小星对着天空许下了自己的愿望。突然,一颗星星从天而降,落在了小星的面前。星星对小星说:“我可以实现你的愿望,但你必须完成一个任务。”
# 第二章:寻找魔法花
星星告诉小星,要飞到天上,他需要找到一朵神奇的魔法花。这朵花生长在森林的最深处,只有最勇敢的小动物才能找到它。
## 小星的决心
小星毫不犹豫地决定去寻找这朵魔法花。他知道这将是一次艰难的旅程,但他相信只要坚持,就一定能成功。
## 森林的挑战
小星踏上了寻找魔法花的旅程。一路上,他遇到了许多困难,比如陡峭的山坡、湍急的河流和浓密的荆棘。但小星没有放弃,他一步步地向前走。
# 第三章:魔法花的秘密
经过几天的跋涉,小星终于来到了森林的最深处。在那里,他看到了那朵闪闪发光的魔法花。
## 花的考验
魔法花对小星说:“如果你想得到我的力量,你必须证明你的善良和勇气。”小星想了想,决定帮助一只受伤的小鸟。他用自己的小爪子为小鸟包扎伤口,并陪伴它直到它康复。
## 愿望的实现
魔法花被小星的善良和勇气打动了,它将自己的力量赋予了小星。瞬间,小星的身体变得轻盈,他慢慢地升上了天空,和星星们一起在夜空中闪烁。
# 第四章:星星的约定
小星终于实现了自己的愿望,但他并没有忘记自己的家。每天晚上,他都会回到森林,陪伴着自己的家人和朋友。
## 永远的约定
小星和星星们约定,每年夏天,他都会飞到天上,和星星们一起度过一个美好的夜晚。这个约定,成为了小星和星星们之间最珍贵的回忆。
## 故事的结束
小星的故事告诉我们,只要我们有梦想,并为之努力,就一定能够实现。无论遇到多少困难,只要我们坚持,就一定能找到属于自己的那颗星星。
## Output Format
# 第一章 [章节标题]
## 第一章小标题
第一章内容
## 第一章小标题
第一章内容
# 第二章 [章节标题]
## 第二章小标题
第二章内容
## 第二章小标题
第二章内容
# 第三章 [章节标题]
## 第三章小标题
第三章内容
## 第三章小标题
第三章内容
# 第四章 [章节标题]
## 第四章小标题
第四章内容
## 第四章小标题
第四章内容
## Rules
1. 严格遵守总字数限制,保持在200-300字之间
2. 将故事分为3-4个简短的章节,每个章节使用markdown格式
3. 每个章节都应有一个简短而吸引人的标题
4. 使用简单明了的语言,适合儿童阅读理解
5. 创作有趣且富有想象力的故事情节
6. 除了markdown语法所需的符号外,避免使用任何特殊符号或格式
## Workflow
1. 仔细阅读并理解给定的主题
2. 构思符合主题的有趣故事情节
3. 将故事情节划分为3-4个简短的章节,并为每个章节创作吸引人的标题
4. 用简单明了的语言写作每个章节的内容,确保故事吸引人且易于理解
5. 使用markdown格式输出每个章节,包括章节标题和内容
6. 检查总字数是否在200-300字之间,如果不符合要求则进行适当调整
7. 最后检查,确保正确使用markdown格式,并且没有使用不必要的特殊字符或符号
## Initialization
作为儿童故事提示词专家,我已经准备好根据您提供的主题创作一个有趣且富有想象力的短故事,并以章节形式的markdown格式输出。请告诉我您想要的故事主题,我将为您创作一个符合所有要求的精彩故事。
我们在做下角 工具添加 markdwon转换器-选择Markdown转PPTX文件
这里我们方便测试,增加开场白。点击右下角“管理” 按钮
开启对话开场白,编写开场白
这样设置完成后,欢迎界面就出现开场白信息了。
模型这里我们选择火山引擎的 deepseek-v3 模型,推荐大家使用这个模型,其他模型理论上也可以的。如果触发调用不了这工具,大家可以切换到这个模型使用。
以上我们就完成了 ppt Agent的设置了。
3.验证及测试
PPT chatflow 测试
我们把创建好的工作流发布出去。
输入提示词
小马过河
生成好后我们就可以点击下载PPT查看了。
这里顺便提一下 PPT 在dify /volumes/app/storage/tools目录下会看到这个生成的PPTX文件。
我部署在服务器上 完整的路径如下
/home/dify-main/docker/volumes/app/storage/tools/7bbc9d4b-c0d7-4657-b53a-7888ce3637f7
大家也可以使用我这个地址来体验
体验地址https://difyhs.duckcloud.fun/chat/zeKQVtCMmroUoSRw 备用地址(http://14.103.204.132/chat/zeKQVtCMmroUoSRw)
PPT Agent 测试
接下来我们在测试一下 PPT Agent,同样我们可以把这个Agent发布出去。
目前我测试下来使用 ai Agent 能够生产PPT 但是点击链接下载不了。
后台服务器的确是下载了。
我们服务器上下载看一下效果。
这个PPT插件颜色是蓝色的,其他的和上面那个插件区别不大都是最简单的PPT 内容。
感兴趣小伙伴也可以体验,体验地址
体验地址https://difyhs.duckcloud.fun/chat/PkN9LYvHE4O8TTFA 备用地址(http://14.103.204.132/chat/PkN9LYvHE4O8TTFA)
相关资料和文档可以看我开源的项目 https://github.com/wwwzhouhui/dify-for-dsl
4.总结
今天主要带大家实现了基于 Dify 平台的 PPT 生成工作流,借助 Dify 平台的插件功能,实现了从输入提示词到生成 PPT 的自动化流程。详细介绍了整个工作流的实现步骤,包括工作流的制作,如 PPT 插件的安装、配置国内镜像源以确保安装顺利,以及 ppt chatflow 的创建,如设置开始节点的 prompt 提示词输入、选择合适的 LLM 大语言模型并配置相应的系统提示词等。本次工作流涉及到 Dify 1.1.3 版本的使用、PPT 插件的安装与配置,以及借助大语言模型生成符合特定格式要求的内容等知识。本次工作流制作比较简单,感兴趣小伙伴可以去尝试。今天的分享就到这里结束了,我们下个文章见。