Coze智能体:批量生成高质量博客文章
拥抱 AI,智启未来
前言
Coze智能体在AI领域的热度一直很高,关于用它生成文章的资源也随处可见。如果企业或个人正在做SEO,需要在各大自媒体平台发布上百甚至上千篇带外链的文章,那这就是一个实实在在的痛点。今天这篇内容,就专门聊聊如何用智能体批量生成高质量博客文章。设计这个工作流用到的节点包括插件、大模型、代码生成器、选择器、变量、文本处理以及消息,这里不再赘述这些节点的基础用法,直接进入实战。最终我们会通过CSDN平台发布生成好的博客文章,并查看质量评分。
背景介绍
直接拿智能体生成的文章来用肯定不行,必须经过洗稿和修改——大模型输出的质量,完全取决于数据来源。如果基于业务场景的数据再投喂给大模型,生成的文章质量会高很多。这次我们用到的业务数据,来自API服务详情。通常API服务按类别分有很多种:生活服务、安全服务、教育服务、公共数据、位置服务、AI技术、开发者服务等等。比如想写一篇某类API服务的推荐文章,就得先起好标题——标题一般包含分类名称和标签关键词(最新、最热、免费)。正文则按前言、正文、总结的结构来组织。
生成博客文章原理
根据用户提供的信息(服务列表、服务类别、服务标签),用API插件查询到的服务信息数据做判断。如果返回成功,就分别生成文章标题、前言、段落和总结,每一段内容通过消息节点返回结果,最终整合到一起进行文本处理,生成一篇完整的文案。如下图所示:
创建服务列表插件
服务信息数据源都来自准备好的API接口。服务列表数据格式如下(省略插件配置步骤,不清楚的小伙伴可参考之前的文章《Coze智能体接入,免费API插件》):
入参:
{
"serviceCode": "scd2024041701861d19d840"
}
出参:
{
"applicableScenarios": "详情介绍-适用场景",
"faq": [
{
"answer": "常见问题及答案",
"question": "常见问题及答案"
}
],
"coreInterfaces": "详情介绍-核心接口清单",
"feeType": "付费方式",
"useRestrictions": "详情介绍-使用限制",
"competitor": "详情介绍-竞争对手",
"coreBenefits": "详情介绍-核心优势",
"detailFormatType": "详情介绍",
"code": "返回码",
"useLimit": "使用限制",
"url": "服务地址",
"specialApiInfo": {
"packageDetail": "价格信息",
"unitPrice": "价格"
},
"serviceName": "服务名称",
"serviceInfo":"API 服务信息",
"technicalPrinciple": "详情介绍-技术原理",
"usageGuideFormatType": "使用指南"
}
按步骤把入参和出参填入插件编辑界面:
编辑开始节点
如下图所示,开始工作流一共需要提供3个输入参数。其中 serviceCodeList 是数组,用户可以根据需要输入1个或多个服务编码;category 和 keyword 分别表示服务分类和标签。所有参数均为必填项。
一、获取服务列表信息
新增已经创建好并调试发布成功的 get_api_info 插件。输入参数 serviceCodeList 是个列表,支持多个输入,这里我们选择批处理方式,流程如下:
因为需要对返回的服务列表进行检查是否成功,所以需要做代码处理——主要遍历 infoList,检查 code 是否符合预期返回值。这也会作为IF选择器的判断依据,决定下一步操作。
二、根据选择器判断
这里有一个分支条件:IF选择器“服务列表检查”。如果返回TRUE,则进行文章段落生成、前言生成以及标题生成;如果返回FALSE,直接进入“结束”节点。
三、文章标题生成
需要添加两个节点:标题生成大模型和标题消息。大模型提示词如下:
根据关键词 ,{{keyword}},{{category}}API推荐, 生成一个文章标题,要像真人写的
消息节点“标题消息”返回内容:标题生成完成: {{title}},作为文本处理的输入参数 {{String1}}。流程如下:
标题生成流程总结:先判断服务列表检查是否返回SUCCESS(选择器节点)→ 标题生成(大模型节点)→ 标题消息(消息节点)→ 作为文本处理的输入参数(文本处理节点)→ 结束
四、前言生成
代码节点:获取服务列表信息。当前函数的作用是将输入数组中每个对象的 serviceName 和 serviceInfo 属性拼接成一段介绍文本,并返回这些文本的集合。
async function main({ params }: Args): Promise
大模型节点“前言”提示词:
##角色:你是一个专业的{{category}}领域文章创作智能体,非常善于针对{{category}}领域,创作一个API 服务推荐文章的前言。
##任务:请你根据用户给出的{{category}}类型和API 服务简介创作出文章的前言。
##API 服务简介:{{result}}
消息节点“前言消息”生成 {{output}},作为文本处理的输入参数 {{String2}}。前言生成流程如下:
前言生成流程总结:先判断服务列表检查是否返回SUCCESS(选择器节点)→ 获取服务列表信息(代码节点)→ 前言(大模型节点)→ 作为文本处理的输入参数(文本处理节点)→ 结束
五、文章段落生成
大模型节点“文章中段生成”提示词:
## 服务名称={{serviceName}}
## 简介={{serviceInfo}}
## 基本信息={{productDefinitions}}
## 特性={{coreFeatures}}
## 优势={{coreBenefits}}
## 定价信息={{price}}
## 服务详情页面地址={{url}}
添加人设与回复逻辑:
输入参数共接收9个。
代码节点:拼接文章中段生成内容,作为文本处理的输入参数 {{String3}}。
async function main({ params }: Args): Promise
文章段落生成流程如下:
六、文章总结生成
大模型节点“总结”提示词:
## 任务:请你根据用户给出的{{category}}类型和文章主体部分创作出文章的总结部分。
## 文章主体部分 {{result1}}
消息节点“总结消息”生成 {{output}},作为文本处理的输入参数 {{String4}}。
文章段落和总结流程总结:先判断服务列表检查是否返回SUCCESS(选择器节点)→ 文章段落生成(大模型节点)→ 拼接文章段落(代码节点)→ 文章总结生成(大模型节点)→ 总结消息(消息节点)→ 作为文本处理的输入参数(文本处理节点)→ 结束
至此,文章标题、前言、段落以及总结所用到的流程和节点都已设置完毕。将所有节点汇总到文本处理,然后统一返回。文本处理的作用是拼接之前返回的各个参数 {{String1}}{{String2}}{{String3}}{{String4}}。
限于篇幅,测试发布和创建bot的过程就不展开了(前面的文章中已有介绍)。最终在CSDN平台上的质量评分94分,质量相当高。
再用AI生成内容检测器(如 Neuralwriter 的工具)检测一下结果:
总结
本篇文章主要分享的是通过Coze智能体批量生成高质量博客文章的实战玩法。文章质量取决于投喂的数据,实战案例中的数据源来自提供的插件。用户通过输入一个或多个服务编码参数 serviceCodeList 来生成文章,工作流中通过选择器判断走哪一个分支节点。每个分支工作流都由大模型做出总结,然后生成消息节点并输出结果,并将结果参数作为文本处理节点的入参,最后再由一个总文本处理节点把所有参数拼接,输出最终结果。希望今天的分享能给大家在AI应用的道路上带来一些启发。