当前位置:AIGC资讯 > AIGC > 正文

Coze工作流之使用Stable Diffusion插件实现儿童故事绘本

不清楚coze使用的可以参考这篇文章coze全方位剖析

也推荐这个免费AI知识库给大家 ​‬​‍‍​​‬​​​‬​​​​​‍‬​​​​​‌​​‬​‬⁠​​​​⁠​‌​​‬?AI洞察者中心|知识库 - 飞书云文档 (feishu.cn)

话不多说 正文开始

一、 Coze简介

1.1 Coze是什么

  Coze是一款强大的对话管理和自动化工具,旨在简化和加速聊天机器人(Bot)的开发过程。通过提供一系列易于使用的功能和接口,Coze使开发者能够快速构建、部署和管理各种类型的聊天机器人,从简单的问答机器人到复杂的多轮对话系统。

1.2 Coze的核心功能

Coze生态:Coze拥有一个丰富的生态系统,涵盖了从开发、测试到部署和维护的全生命周期。通过与社区和合作伙伴的紧密合作,Coze不断扩展其功能和应用场景,支持更多的行业和业务需求。

插件系统:Coze支持多种插件,开发者可以根据需要安装和配置不同的插件来扩展Bot的功能。这些插件涵盖了NLP处理、数据存储、第三方服务集成等多个方面,极大地提高了Bot的灵活性和可扩展性。

工作流管理:Coze提供了强大的工作流管理功能,支持复杂的业务逻辑和流程自动化。开发者可以通过可视化界面设计和管理工作流,简化了开发过程并提高了效率。

知识库:Coze内置了知识库管理系统,支持知识的创建、存储和检索。通过知识库,Bot可以快速访问和利用大量的知识,提高响应的准确性和智能化水平。

对话管理:Coze提供了灵活的对话管理功能,支持多轮对话、上下文管理和意图识别,使得开发者可以轻松设计和实现复杂的对话流程。

自然语言处理(NLP):内置强大的NLP引擎,支持多语言处理、实体识别和意图分类,提升了Bot的理解能力和响应准确性。

集成与扩展:支持与多种第三方服务和平台的集成,如Slack、Facebook Messenger、WhatsApp等,方便开发者将Bot部署到不同的渠道。

数据分析:提供全面的数据分析和报告功能,帮助开发者监控和优化Bot的性能和用户体验。

二、 背景及目的

2.1 需求分析

  目前,在小红书、抖音等各大媒体平台上,通过AI工具批量生成儿童绘本的案例越来越多。许多博主借此迅速涨粉,并已具备了变现能力,可见下图:

2.2 bot功能说明

1. 根据用户输入内容扩写故事内容

请提供一个简短的故事开头或主题,我们将根据此扩写出完整的故事内容。

2. 将故事内容拆分为5个分镜内容

我们会将扩写后的故事内容拆分成5个主要情节或场景。

3. 将5个分镜内容分别生成关键词

从每个分镜内容中提取出描述该场景的关键词。

4. 通过关键词生成相应的图片

使用关键词通过DALLE 3和Stable Diffusion生成相应的图片。

2.3 bot效果展示

DALLE 3

  Bot 链接 - DALLE 3:https://www.coze.com/store/bot/7375114153545187345?bid=6cnmcn3d85g07&from=bots_card&panel=1

  问题:一位红衣女侠客在荒凉的戈壁上看到一家客栈

  输出效果:

Stable Diffusion

  Bot 链接 - Stable Diffusion:https://www.coze.com/store/bot/7376115189772648449?panel=1&bid=6cnmeuvqg9g08

  问题:一位红衣女侠客在荒凉的戈壁上看到一家客栈

  输出效果:

三、 应用制作详细步骤拆解

3.1 创建一个新的Coze项目

  创建一个新的Coze项目的步骤如下:

登录 Coze

在左侧导航栏的 My Workspace 区域,选择进入指定团队

单击 Create bot

在 Create bot 对话框,完成配置并单击 Confirm

3.2 Bot的基本结构

Dream Storybook-DALLE 3主要使用了工作流的方式来实现故事与图片的生成,具体的实现步骤如下;

3.2.1 bot基础设置

基础prompt,定义调用工作流即可

Background image,选择一个符合场景的图片

Voices,儿童绘本选择一个能够吸引小孩子声音

开场白,可以使用markdown的格式放一些生成图片的效果图,能够更好的吸引用户使用

3.2.2 bot工作流设置

1、工作流整体结构图

2、输入

接收用户输入内容,用于后面流程分析

3、LLM大模型解析

模型选择

-建议选择GPT-4o或GPT 4 Turbo

-由于用户使用bot时调用workflow会增加响应回复时长甚至因为工作流较复杂导致请求超时,如不需要在prompt中处理极其复杂的逻辑,可优先使用GPT-4o

prompt配置

-在工作流中写prompt与在bot中写prompt规则一致

-Dream Storybook-DALLE 3中prompt解析主要分为以下三部分

角色定义

你是一个儿童绘本的专家,擅长根据用户的简单描述来创建详细且吸引人的故事。

流程1:解读内容并生成分镜

-分析{{input}}内容及语言 -创造五个分镜内容,分镜内容包括标题、正文 -每个分镜内容为一组数据,生成的标题赋值到title,生成的正文赋值到text -将title、text翻译成{{input}}对应语言 -将title、text按下方格式严格拼接为一个json字符串到content中输出 -最终输出格式示例,仅供参考: content:"[ {"title": "title1","text": "text1"},{"title": "title2","text": "text2"},{"title": "title3", "text": "text3"},{"title": "title4","text": "text4"},{"title": "title5","text": "text5"}]"

流程1的主要目的为创作故事并把创作完成的故事分解成5个分镜内容

流程2:以分镜内容为基础生成图片关键词

- 将流程1生成的五个分镜内容分别生成五组适用于DALLE 3图片生成工具的关键词 - 关键词包括三部分内容:角色描述、场景描述、通用关键词。 - 对于角色和场景的描述都要尽可能的详细 - 如分镜内容中涉及到相同场景或角色描述时相同的部分必须使用相同关键词 - 与图片风格相关的关键词必须使用相同的 - 通用关键词为默认固定值,其默认固定值为:dynamic composition、animation aesthetic、children's book illustration、Disney style、in the style ofWalt Disney、fairy tale style、animation aesthetic、peaceful scene、warm lighting、fantasy elements、fantasy scene、dynamic composition、storybook illustration、high detail、hyper quality、masterpiece、highres、cute - 将五组最终关键词翻译成英文词组,将五组英文词组作为一个数组输出到prompt 格式如下,仅供参考: prompt:["","","","",""]

通用关键词可根据想要生成图片的风格进行替换

output配置(输出格式如下)

content:存放根据prompt生成的故事标题与正文;输出格式为string字符串

prompt:存放根据prompt生成的图片关键词;输出格式为一维数组

4、code输出内容结构解析

通过代码的方式解析content内容,由字符串转换成二维数组,见下方

async function main({ params }: Args): Promise<Output> { const ret = { "outputcontent": JSON.parse(params.inputcontent) }; return ret; } //代码含义解读: params.inputcontent 是一个包含JSON格式字符串的变量,即在LLM大模型解析时生成的title、text。 JSON.parse() 是JavaScript中的一个方法,用于将JSON格式的字符串转换为JavaScript对象。 outputcontent 是解析后的JavaScript对象,及将input content由一个字符串转换成一个二维数组。 所以,"outputcontent": JSON.parse(params.inputcontent) 的作用是将 params.inputcontent 中的JSON字符串解析成JavaScript对象,并将其赋值给 outputcontent 变量。 举个例子,如果 params.inputcontent 的值是 '{ "title": "在森林里跳舞的开始", "text": "小女孩穿着白色的连衣裙,在阳光照射下的森林里快乐地跳舞" }',那么执行 JSON.parse(params.inputcontent) 后,outputcontent 的值将是一个包含两个属性的对象: { name: "Alice", age: 25 } 如果实在理解不了,遇到想要将一个字符串转换为二维数组的情况,可直接复制本段代码,将inputcontent与outputcontent替换为对应的输入与输出即可

5、图片生成

-添加DALLE 3插件,选择Batch processing 批量生成,即可一次性生成5张图片

-如选择Single time则只会根据第一条prompt生成一张图片

6、结果输出

最终结果输出时我们需要展示给用户是标题分镜内容及对应的图片

Selec Mode 可选择“Answer directly Answer Content(直接使用下方内容回复)”

固定格式内容输出,可是使用Markdown或html的格式

##二级标题

* 内容 * 正文内容使用斜体

![](图片链接) 将图片链接直接展示

*** 分割线

## {{outputtext[0].title}}
*{{outputtext[0].text}}*
![]({{outputimage[0].data_structural[0].image_thumb.url}})
 
***
 
## {{outputtext[1].title}}
*{{outputtext[1].text}}*
![]({{outputimage[1].data_structural[0].image_thumb.url}})
 
***
 
## {{outputtext[2].title}}
*{{outputtext[2].text}}*
![]({{outputimage[2].data_structural[0].image_thumb.url}})
 
***
 
## {{outputtext[3].title}}
*{{outputtext[3].text}}*
![]({{outputimage[3].data_structural[0].image_thumb.url}})
 
***
 
## {{outputtext[4].title}}
*{{outputtext[4].text}}*
![]({{outputimage[4].data_structural[0].image_thumb.url}})

四、 常见问题和解决方案

1、如何在工作流程确定使用插件的参数及使用规则

为什么要知道插件的用法?

为了确保工作流的顺利进行,插件参数的输入需要严格遵循格式要求。因此,在使用大语言模型(LLM)或其他工具时,必须预先定义好插件所需的参数格式,以确保插件能够成功运行。

如何了解插件的用法?

以DALLE 3和Stable Diffusion举例,可以在coze上找一个功能较全的聊天机器人

直接提问“stable diffusion 插件参数及用法”,回答如下,如对某一个参数有疑问可继续展开询问

2、markdown的常见语法

1、我们如果想要输出内容为固定格式需要使用markdown格式,什么是markdown及常见用法可查看下图

2、该bot中标题、分割线、图片展示等语法

3、补充stable diffusion 在workflow中调用方法

Stable Diffusion的text_prompt格式要求比较严格,需要是数组格式,此处需要通过代码方式解析格式,如果没有代码基础,可以直接修改参数值后饮用

第一步:使用LLM大语言模型解析关键词格式

注意:大模型存在一定解析失败的概率

- 最终输出格式如下,严格拼接为一个json字符串到prompt输出
最终输出格式示例,仅供参考:
prompt:"[
  {
    "text": "A(0)",
    "weight": 1
  },
  {
    "text": "A(1)",
    "weight": 1
  },
  {
    "text": "A(2)",
    "weight": 1
  },
  {
    "text": "A(3)",
    "weight": 1
  },
  {
    "text": "A(4)",
    "weight": 1
  }
]"
 
 
 //prompt输出参数名称,可替换

第二步:代码解析字符串格式为数字

生成单张图片

async function main({ params }: Args): Promise<Output> {

    const ret = {
        "outputprompt": JSON.parse(params.inputprompt),
        "outputtext": JSON.parse(params.inputtext)
    };

    return ret;
}

生成多张图片

async function main({ params }: Args): Promise<Output> {
    const inputPrompts = JSON.parse(params.inputprompt); // 假设是一个数组
    const formattedPrompts = inputPrompts.map(text => ({
        "prompt": [
            text
        ]
    }));

    const ret = {
        "outputprompt": formattedPrompts,
        "outputtext": JSON.parse(params.inputtext)
    };

    return ret;
}

欢迎讨论:

生成图片很难保证一套图片的角色和画风一致,大家有什么好的解决方案分享么~ (可以通过评论此文档或者在群聊里沟通哦)

五、如何利用Coze变现

BlueAD 是利用生成式人工智能改变营销和广告行业的革命性平台。开发者可以轻松地集成我们的 API,使他们的 GPT 、Coze或其他 AI 软件从中受益。此外,BlueAD也提供越来越多的广告形式和策略,以供广泛应用。目前已有数千位开发者接入BlueAD插件,均带来了流量的增长和可观的收益。(如有需要深入了解,请在群内添加群主详细咨询)

如何接入BlueAD到我的bot?

如果你使用Coze、GPTs等AI Agent平台,都有能够商业变现变现的机会,例如coze只需要将“BlueAD”插件加入到Bot中获取接入广告,你的使用者查看了广告即可获得一定比例的收入奖励,Coze上已经有很多高流量的bot已经接入了这个插件,有变现需求和兴趣的同学欢迎尝试!(具体接入教程可以参考群公告 >> 知识库入口 >> BlueAD平台使用指南)BlueAD使用指南飞书云文档 (feishu.cn)

总结

### 文章总结:Coze全方位剖析及其在AI创作中的应用
#### Coze简介
**定义与功能**:
- **定义**:Coze是一款强大的对话管理和自动化工具,简化并加速了聊天机器人(Bot)的开发、部署和管理流程。
- **核心功能**:
- **生态系统**:拥有完整的开发到部署的生命周期管理。
- **插件系统**:支持多种插件,扩展Bot功能,涵盖NLP处理、数据存储、第三方服务集成等。
- **工作流管理**:支持复杂的业务逻辑和流程自动化。
- **知识库**:内置管理系统,提升响应准确性和智能化。
- **对话管理**:支持多轮对话、上下文管理和意图识别。
- **自然语言处理(NLP)**:内置强大引擎,支持多语言处理。
- **集成与扩展**:与Slack、Facebook Messenger等平台集成。
- **数据分析**:提供全面数据分析帮助优化性能。
#### 背景及目的
**媒体AI创作需求**:
- 在小红书、抖音等平台,利用AI批量生成儿童绘本迅速涨粉变现,驱动Bot功能需求。
**Bot功能**:
1. **扩写故事**:根据提供的简短开头生成完整故事内容。
2. **内容拆分**:将故事拆分为5个分镜内容。
3. **生成关键词**:从每个分镜提取关键词。
4. **图片生成**:使用关键词通过DALLE 3和Stable Diffusion生成图片。
**效果展示**:展示了通过指定Bot生成的结果链接和效果。
#### 应用制作详细步骤
**项目创建**:
1. 登录Coze,进入My Workspace,选择团队,创建Bot。
**Bot基础设置**:
- 设定基础prompt、背景图片、语音风格及开场白。
**工作流设置**:
1. **整体结构**:定义工作流输入输出及关键步骤。
2. **LLM大模型解析**:使用GPT-4等模型分析输入生成故事分镜。
3. **生成关键词**:根据分镜内容生成图片关键词。
4. **代码输出内容解析**:处理模型输出,生成可用于图片生成的格式。
5. **图片生成**:通过DALLE 3或Stable Diffusion插件生成图片。
6. **结果输出**:以Markdown或HTML格式展示给用户。
#### 常见问题与解决方案
**插件参数了解**:
- 内容创作与图片生成中的插件使用需详知参数格式,通过Coze或文档查询。
**Markdown语法**:
- 焦点在于标题、图片和分割线的用法。
**Stable Diffusion调用**:
- 需要将关键词以特定格式送入模型,可通过代码进行解析和传递。
#### 变现途径
**BlueAD平台**:
- 提供将GPT或Coze等AI工具接入广告变现的平台,用户查看广告即可获得收入。
- 接入方法详细步骤可参考BuleAD平台使用指南。
总结而言,本文详细介绍了Coze作为对话管理和自动化工具的核心功能,结合具体应用场景(AI创作儿童绘本Bot)展示了其流程与效果,并提供了创建步骤和常见问题解决指南。最后,还介绍了如何利用BlueAD平台进行商业变现,为AS开发者提供了一条明确的商业价值提升路径。

更新时间 2024-09-01