【扣子工作流】零基础搭建AI自动化:5个节点搞定内容生成全流程
一、问题背景:为什么你需要扣子工作流?
搞AI应用的开发者,大概率都经历过这种场景——
你让大模型"帮我写篇文章",它一会儿输出格式不对,一会儿漏掉关键信息,偶尔还给你来段废话。纯靠Prompt和AI聊天,结果不可控,稳定性差。
传统解决方案?写代码调API。问题是:你得搭环境、写逻辑、处理异常,一个简单的文本处理流程写下来动辄几百行代码。
扣子工作流(Coze Workflow) 把这件事变了:拖拽节点、连线、配置参数,不需要写代码就能搭出稳定的自动化流程。
本文会带你从零搭建一个"AI内容生成"工作流,只用5个核心节点,跑通从输入到输出的完整链路。
二、核心原理:工作流到底在干什么?
把工作流想象成一条流水线,每个节点就是流水线上的一个工位:
表格
| 节点类型 | 类比 | 干什么 |
|---|---|---|
| 开始节点 | 接单台 | 接收你的输入数据 |
| 大模型节点 | 脑力工 | 生成文本、分析语义、提取关键信息 |
| 插件节点 | 外协工 | 联网搜索、图片生成等AI做不到的事 |
| 代码节点 | 精加工 | 数学计算、字符串处理、格式转换 |
| 结束节点 | 出货口 | 把结果交给你 |
数据从"开始节点"进来,沿着连线流过每个工位,每个工位处理后往下传,最后从"结束节点"输出。
关键点: 节点之间的数据传递靠的是"变量引用"。上游节点的输出,用 {{节点名.输出字段}} 的方式传给下游。连线是路径,变量是货物。
三、实战步骤:5个节点搭出内容生成工作流
3.1 创建工作流
登录 coze.cn,进入工作空间 → 资源库 → 右上角点"+" → 选择"工作流"。
填写名称(只支持字母数字下划线,比如 content_generator)和描述,确认创建。
进入画布后,默认已有"开始"和"结束"两个节点。
3.2 配置开始节点——定义输入参数
点击开始节点,添加2个输入变量:
表格
| 变量名 | 类型 | 必填 | 说明 |
|---|---|---|---|
topic |
String | 是 | 文章主题 |
style |
String | 否 | 写作风格,默认"技术博客" |
小技巧: 必填变量尽量设默认值,避免运行时遗漏导致报错。
3.3 配置大模型节点——核心内容生成
点击画布上的"+"号,选择"大模型"节点,把它连到开始节点后面。
模型选择: 推荐用豆包Pro,性价比高,处理中文任务够用。
系统提示词(决定输出质量的灵魂):
你是一个专业的内容创作助手。根据用户提供的主题和风格,生成结构化的文章内容。
要求:
1. 输出必须是JSON格式
2. 包含三个字段:title(标题)、outline(大纲,数组)、content(正文)
3. 标题不超过25字,包含核心关键词
4. 大纲3-5个要点
5. 正文800-1200字
用户提示词:
主题:{{start.topic}}
风格:{{start.style}}
请按照系统要求生成内容。
输出格式: 选择 JSON,方便下游节点解析。
3.4 配置代码节点——格式化输出
大模型返回的是JSON,但实际使用时往往需要Markdown格式。加一个代码节点做转换。
点击"+"号,选择"代码"节点,连到大模型节点后面。
运行时选 Python,代码如下:
import json
async def main(args: Args) -> Output:
# 从大模型节点获取输出
llm_output = args.params['llm_result']
# 解析JSON(兼容大模型可能返回的非标准JSON)
try:
data = json.loads(llm_output)
except json.JSONDecodeError:
# 尝试提取JSON部分
import re
json_match = re.search(r'\{.*\}', llm_output, re.DOTALL)
if json_match:
data = json.loads(json_match.group())
else:
return {"result": llm_output}
# 拼接为Markdown格式
md = f"# {data.get('title', '无标题')}\n\n"
md += "## 大纲\n\n"
for i, item in enumerate(data.get('outline', []), 1):
md += f"{i}. {item}\n"
md += f"\n## 正文\n\n{data.get('content', '')}"
return {"result": md}
为什么加这步? 大模型输出不稳定,JSON解析经常翻车。代码节点做一层容错处理,比直接让大模型输出Markdown靠谱得多。
3.5 配置结束节点——输出结果
把代码节点的 result 变量连到结束节点的输出。
结束节点有两种模式:
- 返回变量: 直接输出原始数据,适合给其他工作流调用
- 返回文本: 按模板拼接输出,适合直接展示给用户
这里选"返回文本",配置为:{{code.result}}
3.6 试运行与调试
点击右上角"试运行",输入测试数据:
topic: "Python异步编程入门"
style: "技术博客"
调试三原则:
- 逐节点调试:别等全连完再测,每连好一个节点就单独跑一次
- 看输出格式:大模型节点重点检查JSON是否可解析
- 查变量传递:点开节点看"输入输出",确认数据是否正确流转
四、进阶:从5个节点到生产级工作流
上面的5个节点是骨架,实际项目中你可能需要这些增强:
表格
| 增强方向 | 怎么做 | 解决什么问题 |
|---|---|---|
| 联网搜索 | 在大模型前加"插件"节点,搜索实时素材 | 大模型知识截止日期限制 |
| 条件分支 | 加"选择器"节点,判断主题类型走不同路径 | 不同主题需要不同处理逻辑 |
| 批量处理 | 大模型节点开启"批处理"模式 | 一次生成多篇文章 |
| 错误处理 | 节点勾选"忽略异常"+设默认输出 | 某个节点挂掉不阻塞整体流程 |
| 子流程封装 | 把通用逻辑抽成独立工作流,用"工作流"节点调用 | 复杂流程拆解,方便维护 |
实战建议: 先跑通基础流程,再逐步加节点。一上来就搭复杂流程,调试起来会崩溃的。
五、常见问题排查
Q1:大模型节点输出格式不稳定怎么办?
两个办法:一是系统提示词里反复强调"只输出JSON,不要有任何其他文字";二是像我上面那样,在代码节点做容错解析。
Q2:变量引用时报错"未找到变量"?
检查连线。没连线的节点之间无法传递数据。另外确认引用写法是 {{上游节点名.输出字段名}},区分大小写。
Q3:试运行成功但发布后Bot不调用工作流?
两件事:一是Bot页面要把工作流添加为技能;二是Bot的人设与回复逻辑里要写明调用规则,比如"当用户要求生成文章时,调用content_generator工作流"。
Q4:代码节点超时了?
代码节点有执行时间限制(通常10秒)。如果处理逻辑复杂,考虑拆成多个代码节点,或者把计算逻辑移到大模型节点里用Prompt实现。
Q5:工作流更新后Bot没生效?
工作流发布新版本后,引用它的Bot需要重新发布才会用上新版本。这是个很容易踩的坑。
总结
扣子工作流的核心思路就一句话:把不确定的AI对话,变成确定性的数据流水线。
5个节点(开始→大模型→代码→结束+调试)能覆盖大部分内容生成场景。后续需要联网搜索、条件分支、批量处理,在这个骨架上加节点就行。
关键记住三点:
- 逐节点调试,别攒到最后一起测
- 大模型输出做容错,别信任它的格式
- 先简单后复杂,跑通再加节点
有问题欢迎评论区交流,下篇我会拆解"带条件分支的智能客服工作流",关注不错过。
更多推荐




所有评论(0)