当前位置: 首页 > news >正文

华为云Flexus+DeepSeek征文|基于Dify构建故事绘本制作工作流

华为云Flexus+DeepSeek征文|基于Dify构建故事绘本制作工作流

  • 一、构建故事绘本制作工作流前言
  • 二、构建故事绘本制作工作流环境
    • 2.1 基于FlexusX实例的Dify平台
    • 2.2 基于MaaS的模型API商用服务
  • 三、构建故事绘本制作工作流实战
    • 3.1 配置Dify环境
    • 3.2 配置Dify工具
    • 3.3 创建故事绘本制作工作流
    • 3.4 使用故事绘本制作工作流
  • 四、总结

一、构建故事绘本制作工作流前言

故事绘本作为一种极富创意与教育意义的形式,一直深受儿童喜爱。它是孩子们开启想象力大门的钥匙,也是培养阅读兴趣、语言表达能力与情感认知的绝佳载体。随着科技的不断发展,我们迎来了使用智能工具来优化绘本制作流程的新机遇。Dify,凭借其强大的语言生成与交互能力,为故事绘本制作开辟了一条全新的路径,此工作流旨在利用 Dify 的优势,从故事主题构思到图文并茂的绘本产出,打造一个高效、富有创意的创作体系,让创作者们能够更轻松地为孩子们编织出精彩纷呈的绘本世界。

华为 FlexusX 服务器是一款面向中小企业和开发者的柔性算力云服务器,具有高性价比、灵活可定制、性能强劲、智能优化、部署简便等特点。其独特的性能模式和智能感知业务动态升降配功能,可在满足不同业务负载需求的同时,实现资源的高效利用与成本控制。

在这里插入图片描述

二、构建故事绘本制作工作流环境

2.1 基于FlexusX实例的Dify平台

华为云FlexusX实例提供高性价比的云服务器,按需选择资源规格、支持自动扩展,减少资源闲置,优化成本投入,并且首创大模型QoS保障,智能全域调度,算力分配长稳态运行,一直加速一直快,用于搭建Dify-LLM应用开发平台。

Dify是一个能力丰富的开源AI应用开发平台,为大型语言模型(LLM)应用的开发而设计。它巧妙地结合了后端即服务(Backend as Service)和LLMOps的理念,提供了一套易用的界面和API,加速了开发者构建可扩展的生成式AI应用的过程。

参考:华为云Flexus+DeepSeek征文 | 基于FlexusX单机一键部署社区版Dify-LLM应用开发平台教程

2.2 基于MaaS的模型API商用服务

MaaS预置服务的商用服务为企业用户提供高性能、高可用的推理API服务,支持按Token用量计费的模式。该服务适用于需要商用级稳定性、更高调用频次和专业支持的场景。

参考:华为云Flexus+DeepSeek征文 | 基于ModelArts Studio开通和使用DeepSeek-V3/R1商用服务教程

在这里插入图片描述

三、构建故事绘本制作工作流实战

3.1 配置Dify环境

输入管理员的邮箱和密码,登录基于FlexusX部署好的Dify网站

在这里插入图片描述

将MaaS平台的模型服务接入Dify,这里我们选择的是DeepSeek V3商用服务,需要记住调用说明中的接口信息和 API Key 管理中API Key,若没有可以重新创建即可

在这里插入图片描述

配置Dify模型供应商:设置 - 模型供应商 - 找到OpenAI-API-compatible供应商并单击添加模型,在添加 OpenAI-API-compatible对话框,配置相关参数,然后单击保存

在这里插入图片描述

参数说明
模型类型选择LLM
模型名称填入模型名称。
API Key填入创建的API Key。
API Endpoint URL填入获取的MaaS服务的基础API地址,需要去掉地址尾部的“/chat/completions”后填入

3.2 配置Dify工具

SiliconFlow

SiliconFlow 基于优秀的开源基础模型,提供高质量的 GenAI 服务。您可以在 Dify 中使用 SiliconFlow 来调用 Flux 和 Stable Diffusion 等图像生成模型,并构建自己的 AI 图像生成应用程序。

申请 SiliconCloud API Key,在 SiliconCloud API 管理 页面上创建新的 API 密钥,并确保您有足够的余额

在这里插入图片描述

打开DIfy - 工具中搜索 SiliconFlow ,找到 SiliconFlow 并安装它

在这里插入图片描述

安装完成后点击 SiliconFlow,点击去授权,填入上面获取到的SiliconFlow API Key,点击保存即可

在这里插入图片描述

查看到已授权,后面就可以在Chatflow 和 Workflow 应用程序中添加 SiliconFlow 工具节点,提供了5种方法,如图像生成的Flux、Stable Diffusion、Janus-Pro-7B、视频生成 Image to Video、Text to Video

在这里插入图片描述

3.3 创建故事绘本制作工作流

在 Dify - 工作室,创建空白应用,选择 Workflow,输入应用名称和图标,点击创建

在这里插入图片描述

开始节点后添加参数 prompt 用于输入绘本故事的主题,用一段话描述即可,promptCount 用于控制输出图片的数量

prompt(文本):故事提示词
promptCount(数字):分镜数量

在这里插入图片描述

添加LLM节点,这步骤主要通过LLM大语言模型将其中的内容扩写转换成一段200-300字的小故事,模型使用由 Maas 提供的 DeepSeek V3,输入系统提示词,参考如下:

根据主题"{{#开始.prompt#}}"写一个短故事。要求:1. 用简体中文写作2. 不要使用特殊字符、星号或markdown格式3. 故事要有趣且富有想象力4. 保持在200-300字之间5. 分成3-4个自然段落6. 使用简单明了的语言7. 避免使用括号、方括号或任何可能影响文本转语音的符号

在这里插入图片描述

再添加LLM节点,这步主要是根据上面流程生成的故事和开始节点传递的分境数量生成一致性的AI 绘本脚本的提示词,模型使用由 Maas 提供的 DeepSeek V3,输入系统提示词,参考如下:

你是一个专业的儿童绘本插画师和AI绘画提示词专家,精通中英文双语。 请为这段文字{{#故事绘本.text#}}生成{{#开始.promptCount#}}个不同场景的绘图提示词。
重要提示:
不要在提示词中使用角色名字,而是用具体的外观特征来描述角色。
例如:不要用"小白兔"这样的名字,而是描述"一只白色的小兔子,有着蓬松的毛发和红色的眼睛"。
生成的提示词中,text_snippet 必须是与画面相符的中文文本片段。
要求:
角色形象和风格的严格一致性:
用具体的视觉特征描述角色,而不是用名字。
主角的外观特征(服装、毛色、体型等)在所有场景中必须保持一致。
主角的性格特征要通过外观和动作来体现。
配角的设计风格要与主角协调统一。
场景连续性:
场景之间要有清晰的故事发展脉络。
环境元素的设计要前后呼应。
艺术风格的统一:
所有场景使用相同的绘画风格(如:水彩风格、插画风格等)。
色彩方案要保持一致。
光影效果要统一。
适合儿童绘本的表现方式:
画面要富有童趣和想象力。
构图要简单清晰。
情感表达要生动直观。
每个场景需要包含:
场景描述(中文,简短精炼)。
详细的中文提示词,提示词字符总长度不超过800个字,分段描述以下要素:
Character: 角色的具体外观特征、表情、动作描述(不使用角色名字)。
Scene: 场景环境、氛围、天气等。
Lighting: 光线效果、时间、色调。
Composition: 画面构图、视角、重点。
Style: 具体的艺术风格、绘画技法。
Additional: 其他重要细节。
对应的文本片段(中文)。
输出格式:
[
{
"description": "场景描述",
"prompt": "Character:\n[角色具体特征描述]\n\nScene:\n[场景描述]\n\nLighting:\n[光影描述]\n\nComposition:\n[构图描述]\n\nStyle:\n[风格描述]\n\nAdditional:\n[补充细节]",
"text_snippet": "对应的文本片段",
"importance": "场景重要性评分(1-5)"
},
...
] 

在这里插入图片描述

生成好分镜头的AI 绘画提示词后我们需要调用AI 绘画模型,这里使用的工具SiliconFlow- Flux,添加此节点

在这里插入图片描述

接下来配置 Flux 节点,调用 Flux 参数如下:

  • prompt(必需):用于生成图像的文本提示
  • model:在 Flux.1-schnell 或 Flux.1-dev 之间进行选择
  • image_size:多种分辨率选项(1024x1024、768x1024、576x1024 等)
  • num_inference_steps: 1-100 (默认值: 20) - 步长越多,质量越高,但花费的时间越长
  • seed:用于可重复结果的可选参数

在这里插入图片描述

最后添加结束节点,输出绘本故事内容和生成的插画

在这里插入图片描述

编排工作流后点击右上角的运行进行测试,输入提示词为 喜羊羊和灰太狼在青青草原生活的故事,分镜数量为3,点击运行

在这里插入图片描述

查看完整流程,开始 - 绘本故事LLM - 绘画提示词LLM - 代码执行 - 并行(Flux1、Flux2、Flux3) - 结束,这里主要查看下 绘画提示词LLM 节点输出的结果

{"text": "[\n  {\n    \"description\": \"野餐会上的突袭\",\n    \"prompt\": \"Character:\\n- 一只白色卷毛小绵羊正机智地指向天空,身穿蓝色铃铛项圈\\n- 体型圆润的黄色小绵羊满脸沾着蜂蜜蛋糕渣,抱着甜品不撒手\\n- 戴粉色蝴蝶结的绵羊正在悄悄往地上放香蕉皮\\n- 灰色大尾巴狼从灌木丛跃出,举着捕羊网露出得意表情\\n\\nScene:\\n阳光明媚的青青草原野餐场景,铺着红白格野餐垫,散落着水果篮和果汁瓶\\n\\nLighting:\\n明亮的午后阳光,高饱和色彩,在角色身上投下柔和阴影\\n\\nComposition:\\n俯视视角展现完整野餐场景,灰狼位于画面左下方呈跳跃动态,香蕉皮作为视觉引导线\\n\\nStyle:\\n卡通渲染风格,粗轮廓线搭配水彩质感,类似儿童绘本的夸张表情处理\\n\\nAdditional:\\n背景点缀摇曳的蒲公英和雏菊,野餐垫上有打翻的果汁形成小小水洼\",\n    \"text_snippet\": \"突然,灰太狼从灌木丛里跳出来,举着捕羊网大喊:“今天一定要抓到你们!”\",\n    \"importance\": 4\n  },\n  {\n    \"description\": \"滑稽的陷阱时刻\",\n    \"prompt\": \"Character:\\n- 灰色狼四脚朝天跌入河中,捕羊网飞向空中\\n- 白色绵羊捂着嘴偷笑,蓝项圈铃铛在空中晃动\\n- 戴草帽的胖绵羊惊讶地捂住嘴巴,手里的果汁杯倾斜\\n\\nScene:\\r\\n河边灌木丛旁,水面溅起巨大水花,香蕉皮在岸边格外醒目\\n\\nLighting:\\n逆光效果展现水花晶莹剔透,整体保持暖黄色调\\n\\nComposition:\\n动态对角线构图,狼的坠落轨迹与飞起的捕羊网形成X形视觉焦点\\n\\nStyle:\\n延续前幅的水彩笔触,对水花采用半透明叠色技法\\n\\nAdditional:\\n河对岸隐约可见红色屋顶的狼堡,增添场景关联性\",\n    \"text_snippet\": \"灰太狼下意识抬头,结果踩到美羊羊偷偷放的香蕉皮,扑通摔进河里\",\n    \"importance\": 5\n  },\n  {\n    \"description\": \"平底锅的欢迎仪式\",\n    \"prompt\": \"Character:\\n- 浑身滴水的灰狼耷拉着耳朵上岸\\n- 穿红色裙子的母狼高举平底锅,眼睛喷着怒火\\n- 小绵羊们在远处围成半圆看热闹\\n\\nScene:\\n暮色中的河滩,芦苇丛里惊起飞鸟,地面有湿漉漉的爪印\\n\\nLighting:\\n黄昏的橙紫色调,平底锅反射着最后的夕阳光芒\\n\\nComposition:\\n近景特写,平底锅占据画面上部形成压迫感,夸张的形体透视\\n\\nStyle:\\n保持系列统一的厚涂手法,对金属质感进行漫画式高光处理\\n\\nAdditional:\\n背景散落着吸羊机的零件,暗示下个场景的伏笔\",\n    \"text_snippet\": \"灰太狼湿漉漉地爬上岸,发现老婆红太狼正举着平底锅等他\",\n    \"importance\": 3\n  }\n]","usage": {"prompt_tokens": 729,"prompt_unit_price": "0","prompt_price_unit": "0","prompt_price": "0","completion_tokens": 732,"completion_unit_price": "0","completion_price_unit": "0","completion_price": "0","total_tokens": 1461,"total_price": "0","currency": "USD","latency": 25.93310565102729},"finish_reason": "stop"
}

在这里插入图片描述

这里看到三个分镜的描述,通过 代码执行 分别传给三个 FLUX 节点用于生成图片

分镜1提示词:

{"description": "野餐会上的突袭","prompt": "Character: 一只白色卷毛小绵羊正机智地指向天空,身穿蓝色铃铛项圈体型圆润的黄色小绵羊满脸沾着蜂蜜蛋糕渣,抱着甜品不撒手戴粉色蝴蝶结的绵羊正在悄悄往地上放香蕉皮 灰色大尾巴狼从灌木丛跃出,举着捕羊网露出得意表情 Scene:阳光明媚的青青草原野餐场景,铺着红白格野餐垫,散落着水果篮和果汁瓶 Lighting:明亮的午后阳光,高饱和色彩,在角色身上投下柔和阴影Composition:俯视视角展现完整野餐场景,灰狼位于画面左下方呈跳跃动态,香蕉皮作为视觉引导线 Style:卡通渲染风格,粗轮廓线搭配水彩质感,类似儿童绘本的夸张表情处理 Additional:背景点缀摇曳的蒲公英和雏菊,野餐垫上有打翻的果汁形成小小水洼","text_snippet": "突然,灰太狼从灌木丛里跳出来,举着捕羊网大喊:“今天一定要抓到你们!”","importance": 4
}

分镜2提示词:

{"description": "滑稽的陷阱时刻","prompt": "Character: 灰色狼四脚朝天跌入河中,捕羊网飞向空中 白色绵羊捂着嘴偷笑,蓝项圈铃铛在空中晃动 戴草帽的胖绵羊惊讶地捂住嘴巴,手里的果汁杯倾斜Scene:河边灌木丛旁,水面溅起巨大水花,香蕉皮在岸边格外醒目Lighting:逆光效果展现水花晶莹剔透,整体保持暖黄色调Composition:动态对角线构图,狼的坠落轨迹与飞起的捕羊网形成X形视觉焦点 nStyle: 延续前幅的水彩笔触,对水花采用半透明叠色技法 Additional:河对岸隐约可见红色屋顶的狼堡,增添场景关联性","text_snippet": "灰太狼下意识抬头,结果踩到美羊羊偷偷放的香蕉皮,扑通摔进河里","importance": 5
}

分镜3提示词:

{"description": "平底锅的欢迎仪式","prompt": "Character: 浑身滴水的灰狼耷拉着耳朵上岸- 穿红色裙子的母狼高举平底锅,眼睛喷着怒火 小绵羊们在远处围成半圆看热闹Scene:暮色中的河滩,芦苇丛里惊起飞鸟,地面有湿漉漉的爪印Lighting:黄昏的橙紫色调,平底锅反射着最后的夕阳光芒Composition:近景特写,平底锅占据画面上部形成压迫感,夸张的形体透视Style:保持系列统一的厚涂手法,对金属质感进行漫画式高光处理Additional:背景散落着吸羊机的零件,暗示下个场景的伏笔","text_snippet": "灰太狼湿漉漉地爬上岸,发现老婆红太狼正举着平底锅等他","importance": 3
}

在这里插入图片描述

最后输出绘本故事内容如下,及其插图,插图生成的和提示词及其不匹配,我以为是提示词的问题,结果将描述的提示词单独测试效果也是一样的风格,属于模型问题

青青草原上,喜羊羊和伙伴们正在举行野餐会。懒羊羊捧着蜂蜜蛋糕吃得满脸都是,暖羊羊忙着给大家分果汁。突然,灰太狼从灌木丛里跳出来,举着捕羊网大喊:“今天一定要抓到你们!”喜羊羊眼珠一转,指着天空喊:“看!飞碟!”灰太狼下意识抬头,结果踩到美羊羊偷偷放的香蕉皮,扑通摔进河里。小羊们笑成一团,灰太狼湿漉漉地爬上岸,发现老婆红太狼正举着平底锅等他。第二天,灰太狼发明了“超级吸羊机”,却被喜羊羊调转了方向,反而把狼堡的家具全吸进了草原。红太狼追着灰太狼打时,小羊们帮忙修好了家具。灰太狼感动地说:“其实你们还挺好的……”话没说完就被平底锅敲晕了。从此,灰太狼还是每天来抓羊,但总会闹出笑话。小羊们有时甚至会故意留块蛋糕给他。青青草原的日子,就在这样的追逐中变得格外热闹。

在这里插入图片描述

测试完成就可以发布更新到探索页面了,发布后选择运行就可以获得一个在线运行的工作流的网页!

3.4 使用故事绘本制作工作流

在探索 - 故事绘本制作中开启新对话

在这里插入图片描述

输入提示词为 鲸鱼和渔夫的故事,分镜数量为3,点击运行

在这里插入图片描述

最后生成的故事如下,配图有点丑,和提示词好像完全不匹配啊,由于是正式环境无法查看具体的提示词细节,应该是选用的模型不太行。

在这里插入图片描述

故事内容还是比较有想象力,内容衔接很自然,逻辑清晰有条理

从前有个渔夫叫阿海,每天划着小船去捕鱼。一天,他捞到一条会说话的鲸鱼。鲸鱼说:“放了我吧,我可以实现你一个愿望。”阿海想了想说:“我想要永远吃不完的鱼。”鲸鱼点点头,突然吐出一颗闪闪发光的珍珠。阿海把珍珠带回家,发现每天早上一打开装珍珠的罐子,里面就会变出新鲜的鱼。他高兴极了,再也不需要出海打渔。可是过了几天,阿海开始想念大海。他回到岸边,看到鲸鱼正在等他。鲸鱼笑着说:“我就知道你会回来。真正的快乐不是不劳而获,而是做自己喜欢的事。”阿海恍然大悟,把珍珠还给了鲸鱼。从此,阿海又过上了每天出海的日子。虽然辛苦,但他很快乐。鲸鱼偶尔会游过来,帮他赶鱼群。他们成了最好的朋友。

四、总结

使用 Dify 搭建的故事绘本制作工作流,具备三大核心功能,一是依据故事主题生成小故事,输入一个主题词,Dify 迅速整合海量数据与创意模板,输出一段逻辑通顺、情节吸引的简短故事,为后续创作奠基。二是分境扩写功能,将生成的小故事拆解为多个场景,详细描绘每一场景中的角色动态、对话及周边环境细节,使故事更具画面感与层次感。三是基于儿童故事绘本文本分镜提示词生成图片,精准将文字描述转化为可视化图像,色彩搭配、构图设计均贴合儿童审美,大幅降低绘画门槛。

华为 MaaS 提供的 DeepSeek V3 推理 API 则凭借其卓越的推理性能、高性价比、创新的模型架构和广泛的应用场景,为企业提供了强大的推理服务。其在保持高性能的同时大幅降低成本,适合大规模部署的企业级应用,且易于部署和使用,能够帮助企业快速实现智能化转型。

http://www.lqws.cn/news/543673.html

相关文章:

  • Spark 写入hive表解析
  • Spring Boot项目开发实战销售管理系统——系统设计!
  • 知名流体控制解决方案供应商“永盛科技”与商派ShopeX达成B2B商城项目合作
  • iOS 远程调试与离线排查实战:构建非现场问题复现机制
  • 报道称CoreWeave洽谈收购Core Scientific,后者涨超30%
  • NV025NV033美光固态闪存NV038NV040
  • 《二分枚举答案(配合数据结构)》题集
  • Python Selenium 滚动到特定元素
  • Selenium基本用法
  • Spring Boot 性能优化与最佳实践
  • 6.27_JAVA_面试(被抽到了)
  • 洛谷P5021 [NOIP 2018 提高组] 赛道修建
  • 深入理解 Linux `poll` 模型:`select` 的增强版
  • 记录一次飞书文档转md嵌入vitepress做静态站点
  • 微信小程序进度条progress支持渐变色
  • Stable Diffusion入门-ControlNet 深入理解-第三课:结构类模型大揭秘——深度、分割与法线贴图
  • 【LeetCode 热题 100】42. 接雨水——(解法三)单调栈
  • FPGA在嵌入式图像处理中的深度应用!
  • 深圳中青宝互动网络股份有限公司游戏运维工程师面试题(笔
  • python实战项目79:采集知乎话题下的所有回答
  • 【用户权限】超级用户(二)
  • win7实现永恒之蓝ms17_010漏洞之445端口
  • matlab实现相控超声波成像
  • 推荐一个基于C#开发的跨平台构建自动化系统!
  • 通信无BUG,ethernet ip转profinet网关,汽车焊接设备通信有心机
  • 面向大语言模型幻觉的关键数据集:系统性综述与分类法_DEEPSEEK
  • Spring Boot整合Redis指南
  • 从电费追缴到碳减排:一个预付费系统如何重塑校园能源生态
  • 使用 Vcpkg 安装 Qt 时的常见问题与解决方法
  • CloudFormation 实现 GitHub Actions OIDC 与 AWS ECR 的安全集成