ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

Coze智能体仿写爆文实战:从工作流配置到Python调用

Coze智能体仿写爆文实战:从工作流配置到Python调用 简介面向公众号运营与自媒体创作者这是一份用Coze智能体搭建文章仿写与自动发布工作流的可运行源码整合了原文获取、AI观点提取、爆款文案改写、公众号格式转换、封面上传及草稿箱发布等环节。适用于需要高频产出内容、希望将创作流程自动化的运营人员有一定AI工具使用基础即可上手。资源包共3个文件包含页面文件html、项目定义文件inscode与Git忽略配置gitignore压缩后仅7KB轻量紧凑便于直接导入或查看结构。目前已有105人学习浏览参考该源码可快速理解Coze智能体各节点如何串联真实业务场景定制自己的爆文改写规则与发布策略。对于希望减少重复劳动、提升公众号内容产出效率的创作者来说这份源码是一份可落地、易扩展的实用参考。 最近帮团队做内容中台捣鼓了一个Coze智能体仿写爆文的项目源码已经跑通。这里说的“仿写”不是让你一键洗稿而是把爆文里真正值得学的东西——标题钩子、开头节奏、段落结构、金句设计——拆成可复用的套路再结合新选题重新生产一篇。这个智能体跑起来之后编辑从“看十篇爆文憋一篇稿”变成“丢一个选题进去、拿三版框架出来”效率差了好几倍。整个过程基于Coze低代码平台搭建我后面会把工作流节点配置和Python调用示例都贴出来。适合内容运营、自媒体编辑、想做Agent落地的程序员也适合想给团队搭内容工具的产品经理——不需要懂深度学习把节点连起来就能跑。这篇文章我就按项目实际落地的顺序写中间穿插我自己踩过的坑和调优过程。1. 先拆清楚爆文仿写的核心思路再动手搭智能体1.1 爆文不是“抄”是套路复用先说一个很多人理解的偏差。爆文的“爆”往往是反复验证出来的不是灵光一现。标题用数字、情绪词、断言句式开头前三句一定给出矛盾或悬念正文用短段落加小标题降低阅读压力每隔几段埋一个金句……这些是可以在不同选题之间迁移的。人工仿写的标准做法是读爆文、画结构、提炼风格、换选题重写。这条链路本身不复杂但它耗时而且大多数人坚持不下来。智能体仿写爆文的本质就是把这条链路自动化先解构再重组。我建议把重点放在“结构”和“风格特征”上而不是让模型去背原文句子。这也是一条合规边界——只学套路不搬运表达。实际操作时我会让模型输出三个东西标题策略用了什么词、制造了什么好奇、开头钩子靠什么让读者留下来、段落骨架按什么节奏推进、在哪埋金句。拿到这三样再给一个新选题让模型按原结构重新写。这样产出的文章即使跟原爆文完全不同读者也会觉得“味道很像”这就是仿写的价值。1.2 为什么用Coze而不是直接写代码有人会问这套逻辑用LangChain或者Dify也能做为什么选Coze。我的判断是这样的如果项目目标非常清晰、团队有正经后端用代码框架没问题但如果目标是快速验证“仿写爆文”这件事有没有价值Coze的低代码工作流让迭代成本少了一个数量级。它内置了网页内容提取、搜索等插件内容清洗不用自己从零写正则知识库和数据库对素材管理也够用最方便的是能直接发布到飞书等渠道团队落地很快。当然Dify这类自托管平台更适合数据不出内网、需要深度定制的场景Coze偏轻量和开箱即用。我这个项目选Coze就是冲着先跑通再优化去的。2. 五步搭出仿写Agent从工作流到可运行源码2.1 核心链路与节点选型整个工作流按“读—洗—拆—写—出”五个环节切分开始节点接收两个参数爆文链接url、新选题topic网页内容提取插件把url页面的正文抓下来代码节点清洗HTML标签、压缩连续空行输出纯文本大模型节点A做风格拆解输出结构化JSON大模型节点B读取拆解结果加新选题做仿写生成结束节点把最终文章和拆解报告一起返回。为什么要分两个LLM节点之前我试过“一个节点全搞定”效果不稳定。因为拆解需要输出严格的JSON而生成需要长文本自由发挥。两种任务的temperature和指令体系完全不同混在一起容易顾此失彼。拆开之后拆解节点用低temperature保证结构稳定生成节点用高temperature保证文风自然互不干扰。2.2 工作流核心配置可直接抄创建智能体后在工作流编辑页按以下顺序拖节点。每个节点的配置我给的是可直接用的版本字段名在不同版本里可能略有差异打开“节点输入输出”按实际环境对一下就行。开始节点定义两个输入[ {name: url, type: string, description: 爆文链接}, {name: topic, type: string, description: 新的写作主题} ]网页内容提取插件接上{{start.url}}输出字段一般是plain_text。如果页面是动态渲染导致抓不到正文就换一个网页提取插件或者直接把爆文正文复制成文本传入。代码节点用来清洗正文我写了一个最小可用的Python脚本import re def clean_html(raw: str) - str: text re.sub(rscript[^]*.*?/script, , raw, flagsre.S) text re.sub(rstyle[^]*.*?/style, , text, flagsre.S) text re.sub(r[^], , text) text re.sub(r\s, , text) return text.strip()[:6000] clean_text clean_html({{网页内容提取.output}})这里的截断上限6000字符是为了适配常见模型上下文窗口。Clean完成后把输出字段声明为op_clean_text后面的LLM节点直接读它。大模型节点A做风格拆解提示词我压成这样你是一名内容结构分析师。请分析下面这篇文章输出JSON不要输出任何其他内容。 字段要求 { title_strategy: 标题用了什么词、制造了什么好奇或情绪, hook: 前三句如何抓住读者, structure: [段落1的作用, 段落2的作用], golden_sentences: [金句1, 金句2], tone: 整体的语气与节奏特征 } 文章内容 {{op_clean_text}}这个节点temperature设为0.2防止模型在结构化输出时自由发挥。很多新手在这里翻车输出的JSON里夹了注释或者多余说明所以提示词里一定要写死“不要输出任何其他内容”。大模型节点B做仿写生成我用的提示词长这样你是资深新媒体写作编辑。请根据下面的风格拆解和新的写作主题写一篇全新文章。 要求 1. 复用拆解中的结构套路和语气但表达完全原创 2. 标题要有具体数字或冲突感 3. 正文每段不超过4行总分总节奏 4. 不得直接引用原文连续8个以上的字 5. 输出标题、正文、3句可作为金句的句子。 风格拆解 {{node_a_output}} 写作主题 {{start.topic}}这个节点temperature可以调到0.8左右让标题和段落更活跃。下面是工作流简化JSON你可以对照导入到Coze的JSON编辑器里再补全节点字段{ workflow: { nodes: [ {id: start, type: start, title: 开始, outputs: [url, topic]}, {id: fetch, type: plugin, plugin: 网页内容提取, input: {url: {{start.url}}, output: plain_text}}, {id: clean, type: code, language: python, input: {{fetch.plain_text}}, output: op_clean_text}, {id: parse, type: llm, model: doubao-pro-32k, prompt: 风格拆解提示词, temperature: 0.2}, {id: write, type: llm, model: doubao-pro-32k, prompt: 仿写生成提示词, temperature: 0.8}, {id: end, type: end, output: {{write.output}}} ] } }核心链路到这里就能跑了。你可以先用一篇文章自测把url填成真实爆文链接给一个同领域新选题看最终输出是否符合预期。2.3 用Python把流程调起来工作流在Coze里跑通后还能从外部系统调用。这里给一个最小可运行的Python示例替换成你自己的token和workflow_id就能用import os import requests def run_coze_workflow(url: str, topic: str) - dict: api_base os.getenv(COZE_API_BASE, https://api.coze.cn) token os.getenv(COZE_TOKEN, ) workflow_id os.getenv(COZE_WORKFLOW_ID, ) payload { workflow_id: workflow_id, parameters: {url: url, topic: topic}, } resp requests.post( f{api_base}/v1/workflow/run, jsonpayload, headers{Authorization: fBearer {token}}, timeout120, ) resp.raise_for_status() return resp.json() if __name__ __main__: result run_coze_workflow( https://example.com/hot-article, 如何搭建一个自动化内容选题库, ) print(result[data][output])这里我把token等信息放在环境变量里避免硬编码泄露。Coze的OpenAPI版本更新比较频繁有的环境已经支持新的chat接口大家以实际环境文档为准但这个请求结构基本能看懂改起来也不费劲。3. 进阶让智能体从“单次仿写”变成“持续产出”3.1 知识库存“弹药”数据库存“战绩”单次调用只是开始。我很快加了知识库和数据库。知识库用来存标题库按行业分类的爆款标题、开头钩子库、金句库数据库表保存每次仿写的源链接、生成主题、输出结果、人工评分。这样有两个好处一是后续生成时可先用知识库召回相近标题提高爆款概率二是数据库里去重不会对同一个主题反复生产相似文章。实现也不复杂在Coze知识库里直接上传文本文件数据库用平台内置的数据表把工作流输出用“写数据库”节点存进去就行。3.2 定时任务加飞书推送跑通内容流水线Coze自带定时触发。我把它配成每天早上9点跑一次先搜索近24小时垂直领域的爆文再自动完成拆解和仿写最后把结果推送到飞书群。编辑在群里点开就能用把“找素材—仿写—分发”压缩到一个早上完成。配置定时触发只要在触发器里选“定时任务”指定cron表达式再把工作流绑定上去。飞书推送用平台自带的飞书机器人插件填一下webhook地址和消息模板就能把标题和链接发到群里。这套流水线跑了半个多月整体稳定偶尔有内容质量不达标但至少“每天产出初稿”这个目标达成了。3.3 多智能体协作选题、仿写、审校各干各的跑了两周之后我又把单Agent拆成了三个角色选题Agent负责扫信息流、判断爆文仿写Agent负责上面的拆和写审校Agent负责检查重复率、事实错误、是否符合禁用词。三个Agent通过工作流或者消息队列串起来。这其实就是热词里常说的多智能体它的价值不是炫技而是每个Agent的任务边界清晰Prompt不容易互相污染出错以后也更好定位。如果团队里只有一个人维护这个系统我更推荐这种“小而专”的Agent组合而不是一个Agent塞进所有能力。4. 仿写智能体常见报错与排查速查表4.1 高频问题速查表我整理了一份自己踩过的坑直接做成速查表现象可能原因解决方案JSON解析失败拆解节点输出了多余文字提示词里强制“只输出JSON”打开模型输出格式校验抓取内容为空页面有反爬或动态渲染换一个网页提取插件或本地复制正文传入生成内容重合度过高没有设置改写约束在生成提示词里明确“不得连续引用原文8个字以上”长文被截断超出模型最大token设置max_tokens或把标题、开头、正文、金句分四段生成效果反复波动微调提示词影响整体返回维护回归用例集每次改完跑3到5篇测试新手阶段遇到最多的就是JSON解析失败。建议给模型一个输出示例而不只是JSON字段描述比如补一句“例如{title_strategy: 用具体数字制造好奇}”这样比干巴巴定义字段名稳定很多。4.2 调试习惯推荐别在完整流程里盲目试。Coze每个节点都能单独运行我习惯先用一篇真实爆文把拆解节点测到稳定再测生成节点最后才串全链路。出了问题按节点查输入输出效率高很多。另外建议固定一个“回归测试集”放3到5篇不同风格的爆文。每次改动提示词或节点后跑一遍对比哪个环节变好了、哪个环节退化避免修了一个问题又带出三个新问题。5. 最后聊聊我的踩坑心得做这个项目的过程中我最大的认知变化是仿写智能体的天花板不在模型在流程拆分。一开始我指望一个Prompt搞定所有事结果总是这里漏一点、那里跑偏。把它拆成“拆解—生成—审校”之后每个环节都能单独优化稳定很多。还要说一句合规边界智能体能复用的是结构、节奏、表达策略不是原文表达。我在自己用的版本里刻意加了“不得连续引用原文8个以上字符”这类规则产出的内容当作灵感参考和框架模板没问题但正式发布前还是需要人工编辑做事实核对和润色。最后分享一个小技巧给生成节点的temperature设置一个梯度标题和开头可以更奔放正文结构要保持稳定。实测下来标题温度0.9、正文温度0.7整体效果最舒服。改这个参数比反复改提示词带来的提升还明显值得多试几次。本文还有配套的精品资源点击获取
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进