ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

用DeepSeek和Coze从0到1搭建AI获客智能体:流程、工作流与避坑指南

用DeepSeek和Coze从0到1搭建AI获客智能体:流程、工作流与避坑指南 简介基于DeepSeekCoze构建AI获客智能体的完整实战指南面向传统行业中小老板、创业者/个人IP及销售/运营人员聚焦短视频创作难、获客成本高的核心痛点。内容围绕智能体定位与目标、业务流程梳理与痛点分析、场景工作流与功能需求设计、Coze实现与发布等环节展开系统说明效率提升、创意助手、分析专家三大价值定位以及获客成本降低80%、日更短视频、转化率倍增等预期目标详解账号定位、对标账号拆解、选题库搭建、内容创作与拍摄、剪辑发布、数据分析等具体场景并以蛋糕店老板为例演示如何借助DeepSeek生成痛点分析表格同时给出工作流绑定、智能体测试发布等实现方案。资源共1个docx文档大小1.75MB可直接阅读学习。目前已有627人学习下载适合希望系统掌握智能体构建方法、将重复性分析工作交给AI并提升短视频获客效率的读者。1. 用 DeepSeek Coze 从 0 到 1 搭一个 AI 获客智能体先想清楚定位再动手拖节点先讲一个反直觉的结论搭建 AI 获客智能体最花时间的不是拖工作流节点而是把「业务痛点」翻译成「智能体功能需求」这一步。我见过不少人打开 Coze 就先建工作流结果视频链接解析、文案提取、飞书写入这些节点全拼完了才发现做出来的东西根本不是业务方想要的。这个项目以蛋糕店老板做短视频起号为场景从账号定位、对标账号拆解一直拆到数据分析和内容优化走的是完整闭环先明确智能体定位和目标再梳理业务流程、分析痛点然后设计实现方案最后用 Coze 把工作流搭出来并封装成智能体。适合三类人传统行业中小老板、想做个人 IP 的创业者和销售运营人员。换句话说你不需要会写复杂的后端代码只要理解业务逻辑就能用 DeepSeek 辅助梳理需求、用 Coze 搭建一个能把重复性短视频创作工作自动化掉的东西。2. 先梳理业务流程再谈提效DeepSeek 怎么把痛点变成功能需求2.1 业务流程就是智能体的骨架从七个环节说起任何一个智能体本质上都是在替代人完成某个流程里的重复环节。所以要构建 AI 获客智能体第一步不是打开 Coze而是把「人是怎么干活的」彻底搞清楚。以短视频起号为例完整的业务流程分为七个环节账号定位、对标账号拆解、账号基础搭建、选题库搭建、内容创作与拍摄、剪辑与发布、数据分析与优化。这七个环节不是凭空想出来的它是从实际操作中记录下来的。正文里给了一个非常朴素但有效的方法准备一个笔记本用一周时间记录日常工作中的所有操作步骤包括查阅的资料、处理的文件、使用的工具。记录完成后用思维导图或流程图可视化你就能看清整个工作流程的全貌。如果你的企业已经有标准操作流程SOP那这一步会更省力。为什么说业务流程是智能体的骨架因为你在 Coze 中创建的每一个节点、每一个插件调用对应到业务上都是流程中的某个动作。你在真实业务中怎么操作智能体就怎么执行。如果你的业务流程本身不清晰智能体只会把混乱放大而不是帮你理清。我见过很多翻车案例都是因为流程图都没画明白就开始搭建最后调试节点比手工干活还费时间。2.2 用 DeepSeek 分析痛点表格输出工作流、痛点、AI 协助和人工任务有了详细的业务流程接下来要分析每个环节的痛点。这一步的主角和工具是 DeepSeek——它不直接干活但它是一个极强的结构化分析助手。把业务流程丢给它让它帮你梳理「工作流、痛点问题、AI 能协助的、人工要做的事」这是整个构建流程中性价比最高的一步。比如正文中的案例蛋糕店老板是短视频小白想通过拍摄短视频给门店引流。把账号定位、对标账号拆解、账号基础搭建等流程发给 DeepSeek它输出了一张表格以账号定位环节为例流程环节痛点问题AI 能协助的人工要做的事账号定位缺乏经验难以明确账号方向、目标人群、差异化卖点分析平台热门蛋糕类账号数据提供定位建议如“烘焙教学产品种草”生成用户画像关键词结合自身资源确定最终定位明确账号核心价值这里要注意一个关键点DeepSeek 输出的表格不是最终需求文档而是分析框架和基础素材。正文中明确提到DeepSeek 的回答内容还不够具体无法完全满足智能体的开发需求。但你完全可以继续与它对话逐步深入。比如它会提醒你注意数据合规性需要确认账号数据爬取是否合法合规需人工确认授权或平台规则。这个提示非常重要。2.3 从粗粒度到细粒度把场景工作流细化成智能体功能需求痛点分析完成后只是完成了粗粒度的需求描述。要真正搭建智能体必须深入到每个环节的具体需求。正文以「对标账号拆解」为例做了演示向 DeepSeek 发送请求把你要做的流程描述给它让它梳理工作任务、AI 智能体功能和人工任务。DeepSeek 输出的表格包含获取对标账号基本信息、自动爬取视频列表、提取文案信息、生成结构化拆解报告、策略优化建议。这里它还会提示三个注意事项数据合规性要使用开放 API 或授权工具动态更新需要定期重新抓取数据人机协同要保留人工的情感化创意判断。这里有个判断标准AI 能处理的归 AI需要人工判断的必须最终由人来确认。正文也强调通过这样的流程你快速明确了对标账号拆解智能体的功能需求可以将 80% 的重复性分析工作交给 AI让人专注于创意决策和个性化调整。效率提升 5 倍以上的说法也是从这个逻辑推导出来的——五倍不是玄学是因为 AI 把 80% 的时间里的重复劳动拿走了。3. 在 Coze 中把工作流搭出来视频搜索、批处理、Python 节点和飞书表格一次讲清工作流创建这一步是从「设计文档」到「自动化脚本」的物理落地。Coze 的工作流实际上是一个可视化编排环境里面的每个节点都是一个可复用的功能模块。下面按照正文给出的路径拆解完整工作流的搭建顺序。3.1 工作流整体架构与开始节点定义输入参数在 Coze 的资源库里新建一个空白工作流命名为benchmark_analysis。标准动作是登录 Coze 官网在「资源库 - 工作流」里创建空白工作流。开始节点通常用来定义工作流启动时需要的输入参数比如对标账号的视频链接video_url。建议把开始节点的参数命名规范化。在后续 Python 节点里你直接依赖这些参数名比如params.get(video_url)如果你在开始节点叫videoUrl后续代码里忘了对应就会出现空值。养成习惯所有参数命名统一用下划线风格避免大小写混用导致取值为空。3.2 核心数据抓取节点视频搜索插件的两个关键工具工作流里最重要的数据来源是「视频搜索」插件里面有两个被反复调用的工具第一个是douyin_data工具作用是获取对标账号的视频信息。在这个场景里当你从抖音平台上选好一个对标账号后把账号链接或标识传给这个工具它能够解析出该账号的基本数据。第二个是get_user_video_all工具作用是批量获取视频列表。这两个工具的搭配逻辑是先用get_user_video_all拿到一个账号下的所有公开视频列表再逐个获取详情。除了这两个主要的数据获取入口后面还会用到「视频无水印下载」插件和「字幕获取」插件。注意一个边界抖音平台有反爬机制正文里也强调数据合规性。Coze 中的插件已经处理了大部分技术层面的兼容问题但当你自己调试时如果遇到数据返回异常第一反应应该是平台是否更新了接口规则而不是马上怀疑代码问题。3.3 批处理节点逐个获取视频详情并整合视频列表拿到之后需要批量获取每个视频的详细信息。这一步在 Coze 中用批处理节点实现。批处理体内部会执行两个节点通过douyin_data单个获取视频详情通过 Python 代码把视频详情整合进视频列表中。核心 Python 代码如下async def main(args: Args) - Output: params args.params aweme_detail params.get(aweme_detail, {}) aweme params.get(aweme, {}) aweme[aweme_detail] aweme_detail ret: Output { aweme: aweme } return ret逻辑说明这段代码的作用是把单个视频的详情数据挂到视频列表对应的元素上。aweme_detail是当前循环中获取到的视频详情对象aweme是视频列表中的当前视频条目。通过aweme[aweme_detail] aweme_detail把详情嵌入视频条目后续所有处理节点面对的都是带完整详情的数据结构。参数说明args.params批处理节点传入的参数包含aweme_detail和aweme两个字段。这里没有做空值判断。如果你在实际调试中发现报错需要先确认上游节点确实返回了aweme_detail和aweme。批处理节点中如果你不确定上游返回结构建议先接一个临时调试节点打印结果再写后续逻辑这是血泪经验能省半天调试时间。3.4 批量提取视频文案分享链接、无水印下载、字幕提取三连接下来是文案提取。这个环节也会使用批处理节点批处理体内部的核心节点逻辑包括三层提取视频分享链接、下载原视频、提取视频文案最后整合进视频列表。第一步通过 Python 代码提取视频分享链接async def main(args: Args) - Output: params args.params aweme params.get(aweme, {}) share_info aweme.get(share_info, {}) share_url share_info.get(share_url, ) return share_url if share_url else 逻辑说明从视频详情中取出share_info字段再取里面的share_url。这就是后续无水印下载插件需要的输入。这里做了一个兜底如果没有分享链接返回空字符串而不是直接抛错。参数说明aweme是当前批处理循环中的视频条目对象。share_info通常包含分享标题share_title、分享链接share_url等字段但不同平台的返回结构会有差异。如果你接入的是非抖音平台需要先打印aweme的结构再定位字段。拿到分享链接后调用「视频无水印下载」插件下载原视频再调用「字幕获取」插件提取视频文案。有的视频没有字幕或字幕是烧录在画面里的这种情况下插件可能提取不到内容不影响整体流程最后空字段处理即可。第二步通过 Python 代码把文案信息整合进视频列表async def main(args: Args) - Output: params args.params or {} aweme params.get(aweme) or {} text_data params.get(text_data) or {} aweme[text] text_data.get(content, ) ret: Output { aweme: aweme } return ret逻辑说明text_data是字幕提取节点返回的数据对象其中content字段存放了提取到的视频文案内容。把它挂到aweme[text]上给后续写入飞书表格的节点使用。参数说明这段代码比上一段更严谨对args.params、aweme、text_data都做了空值兜底。这种写法在实际使用中更稳妥。3.5 写入飞书多维表格字段整理与数据结构安全所有数据收集完毕后需要把信息整理为飞书表格可用的数据并写入飞书多维表格。这一步用 Python 代码实现把原始的抖音数据结构转换成飞书多维表格的行记录格式。完整代码如下async def main(args: Args) - Output: # 1. 先安全地获取 params params getattr(args, params, {}) if not isinstance(params, dict): return [] # 2. 安全地获取 aweme_list aweme_list params.get(aweme_list, []) if not isinstance(aweme_list, list): return [] result [] # 3. 遍历 aweme_list依次处理 for aweme in aweme_list: if not isinstance(aweme, dict): continue # 4. 安全获取 share_info 和 statistics share_info aweme.get(share_info, {}) if isinstance(aweme.get(share_info), dict) else {} statistics aweme.get(statistics, {}) if isinstance(aweme.get(statistics), dict) else {} text aweme.get(text, ) # 5. 提取各字段信息并在取值时加默认值 video_id statistics.get(aweme_id, ) title share_info.get(share_title, ) link share_info.get(share_url, ) digg_count statistics.get(digg_count, 0) comment_count statistics.get(comment_count, 0) collect_count statistics.get(collect_count, 0) share_count statistics.get(share_count, 0) # 6. 获取 aweme_detail 并判空 aweme_detail aweme.get(aweme_detail, {}) if isinstance(aweme.get(aweme_detail), dict) else {} author_info aweme_detail.get(author, {}) if isinstance(aweme_detail.get(author), dict) else {} author_name author_info.get(nickname, ) signature author_info.get(signature, ) sec_uid author_info.get(sec_uid, ) # 7. 获取时间和时长 raw_create_time aweme_detail.get(create_time, 0) create_time_ms raw_create_time * 1000 if isinstance(raw_create_time, int) else 0 raw_duration aweme_detail.get(duration, 0) duration_sec raw_duration / 1000 if isinstance(raw_duration, (int, float)) else 0 # 8. 组装返回数据 item_dict { fields: { 视频ID: video_id, 标题: title.strip(), 文案: text, 链接: {text: 查看视频, link: link.strip()}, 点赞数: digg_count, 评论数: comment_count, 收藏数: collect_count, 分享数: share_count, 作者: author_name, 用户简介: signature, 用户ID: sec_uid, 发布日期: create_time_ms, 时长: duration_sec } } result.append(item_dict) return result逻辑说明这段代码做了四层防护。第一层用isinstance判断params和aweme_list的类型防止上游节点返回异常结构导致整个批处理崩溃。第二层在遍历aweme_list时跳过非字典元素。第三层对share_info、statistics、aweme_detail、author_info都做了类型检查和默认值兜底。第四层在create_time和duration字段上做了类型判断防止乘法或除法操作时报错。参数说明create_time抖音返回的是秒级时间戳飞书表格的日期字段通常是毫秒级所以需要乘以 1000。duration抖音返回值是毫秒这里除以 1000 转成秒方便阅读。link字段是飞书多维表格的 URL 类型格式是{text: 显示文本, link: 实际URL}缺少text会导致飞书表格无法正确渲染超链接。3.6 用 DeepSeek 大模型节点生成拆解报告数据写入飞书表格后最后一步是用大模型节点生成研究报告。在 Coze 中创建大模型节点配置选用 DeepSeek 作为模型。系统提示词如下根据对标账号的视频列表信息{{input}}。 自动生成结构化的报告 - 账号基本信息名称、简介 - 定位账号核心受众、差异化价值 - 人设IP形象、语言风格 - 选题方向爆款主题分类、发布时间规律 - 内容结构开场、叙事节奏、结尾引导 - 变现路径广告、带货、课程等模式分析这里有个设计上的细节输入{{input}}直接引用飞书表格写入节点输出的数据结构。大模型节点支持引用上游节点的整体输出作为 prompt 变量。你不需要提前把所有视频信息拼成文本再传入直接把结构化数据丢给 DeepSeek它的推理能力可以直接消费这些原始 JSON 结构。需要注意的是DeepSeek 生成报告的内容质量严重依赖于你传给它的数据是否干净。如果你前一步视频详情没有抓全比如点赞数、评论数缺失那么报告中数据维度的分析就是一个黑匣子你看不到它推理的依据。所以在跑通全流程后值得回头检查一遍写入飞书表格的数据完整性。最后是结束节点输出对标拆解报告的文档链接。这一个工作流就完成了。从视频链接输入开始到报告文档输出中间所有步骤不需要人工干预这基本上就是完整的自动化对标账号拆解链路。4. 把工作流封装成智能体人设与逻辑的写法直接决定对话体验工作流只是自动化脚本想在对话里用起来要把它封装成 AI 智能体。这一步的核心有两个人设与逻辑、工作流绑定。4.1 人设与逻辑提示词的写法在 Coze 的智能体编辑页面「人设与逻辑」是用户体验的分水岭。直接贴一段符合正文案例的提示词# 角色 你是一个专业的对标账号拆解助手擅长帮助短视频小白用户深入拆解对标账号并根据拆解结果生成详细的拆解报告和针对性强的账号优化建议。 ## 技能 ### 技能 1: 生成对标拆解报告 1. 当用户输入视频 url 时调用 benchmark_analysis 工作流来生成对标拆解报告。 2. 生成报告过程中要确保报告内容清晰、有条理涵盖账号的关键要素和重要数据。 ### 技能 2: 给出账号优化建议 1. 基于生成的对标拆解报告结合短视频运营的专业知识和经验为用户提供切实可行的账号优化建议。 2. 优化建议要具体、可操作能够帮助用户提升账号的质量和影响力。 ## 限制: - 只回答与对标账号拆解和账号优化相关的问题拒绝回答无关话题。 - 所输出的内容需逻辑清晰、有条理拆解报告和优化建议要分开呈现。 - 确保生成的内容符合短视频行业的实际情况和规律。写作逻辑说明这份提示词的第一行直接定义角色。第二条技能圈定了智能体的行为边界。限制部分用来做话题收缩。写提示词的通用原则是角色定义越明确、技能描述越具体、限制条件越清晰智能体在对话中的表现就越可控。4.2 绑定工作流与对话测试人设与逻辑写完接下来要把之前创建的benchmark_analysis工作流添加到智能体中。添加后你要在右侧面板进行对话测试。测试方法是输入一个视频链接看智能体是否正确完成以下流程识别用户意图、调用工作流、工作流内部完成数据处理、返回飞书文档链接。这里有一个从正文里提炼出来的关键教训只有在工作流完全调试通过之后才建议进行智能体对话测试。因为工作流本身如果还有节点报错智能体包装层的提示词写得再好也救不回来。你在对话测试中看到的报错信息有可能是大模型层面的意图识别失败也有可能是工作流内部的数据异常排查时要先看工作流运行日志再看对话记录。4.3 数据合规注意事项本文中演示的是抖音平台的账号数据操作。正文中 DeepSeek 也提醒了三个注意事项使用抖音开放 API 或授权第三方工具避免直接爬取违规风险定期重新抓取对标账号数据跟踪内容迭代变化AI 生成结果后需要人工补充情感化和创意化判断。关于动态更新我建议在智能体的人设与逻辑中补充一句「如果用户需要对标账号的最新数据你可以提示用户重新发起拆解请求」。底层原因是工作跑一次生成的是静态报告不重新运行就无法更新数据。把这一点写到提示词里用户在对话中就不会误以为之前的结果永远是最新的这属于很容易被忽略但很有效的体验细节。5. 避坑与常见问题从零搭建 Coze 工作流最容易翻车的五个地方工作流搭多了之后你会发现翻车点高度集中在数据格式、参数名、上游依赖和插件变更这几类。以下是按「现象 → 原因 → 解决」整理的常见问题记录。5.1 批处理节点返回全空但单测节点有数据现象批处理节点输出结果为空数组但单独调试单个节点时数据正常。原因批处理节点中的代码块对参数取值不严谨上游字段名拼写不一致或参数层级不对。最常见的是aweme和aweme_detail存在嵌套层级取值时没有先查isinstance判断碰到空值直接抛异常整个批处理中断。解决在代码块开头加params args.params or {}所有嵌套字段取值前先用isinstance判断类型再继续。可以临时加一个调试节点打印args.params的所有 key确认实际结构后再写业务逻辑。5.2 飞书表格写入成功但字段为空值现象飞书多维表格新增了记录可见「标题」「链接」「作者」都是空的。原因飞书表格的表头字段名和 Python 代码中定义的fields字段名不一致。比如你的表格列叫「视频标题」Python 代码里 key 是「标题」飞书不会自动做映射只会写入空白。解决去飞书多维表格的表头确认精确名称复制过来再粘到代码里做 key。另外要注意字段类型链接字段必须是 URL 类型如果你表头是文本类型需要先在飞书侧改成「链接」格式。5.3 大模型节点生成报告后飞书文档没有数据现象大模型节点运行成功但生成的飞书文档内容是空白的或者只有一个标题。原因大模型节点输出的内容是纯文本但创建飞书文档的插件要求输入必须是带有特定结构的 JSON 数据。两者模式不匹配文档创建成功但没有正文。解决在大模型节点和飞书文档节点之间加一个 Python 代码节点把大模型的文本输出包装成飞书文档插件要求的格式{document_content: 这里是文本}。具体字段名要看你在 Coze 里用的飞书文档插件版本打开插件文档确认。5.4 视频详情抓取时偶发超时或连接失败现象运行工作流时douyin_data或get_user_video_all工具偶尔报超时重跑一次又恢复正常。原因抖音平台侧对高频请求有限流Coze 插件内部的请求如果触发限流会返回超时或空数据。这个问题不是代码逻辑错误而是外部服务不可控。解决在批处理节点前增加一个「间隔等待」节点或者在批处理节点设置中调低并发数。实测 1 秒到 2 秒的间隔不会影响整体效率但能显著降低超时概率。如果你只需要少量视频数据可以限制视频列表数量尽量不做全量抓取。5.5 智能体对话中无法正确调用工作流现象用户在对话框中输入短视频链接智能体却直接开始回复文本没有触发工作流。原因人设与逻辑中关于工作流调用的描述不够明确模型没有识别出应该调用benchmark_analysis。还有可能是你给智能体的工具描述不够清晰模型不知道什么时候该用。解决在人设与逻辑中明确写「当用户输入视频 url 时你应该调用 benchmark_analysis 工作流来生成对标拆解报告而不是直接回答问题。」然后在技能描述里补充触发条件。也可以再测试一轮看模型是否在遵循指令还是自行编造回复。如果你发现它能理解但是调用总出错回到工作流节点去看是否有无法通过测试的报错节点这一步经常被人忽略。6. 验证工作流跑通后再把这个智能体打磨到可以交付的细节工作流失误、智能体能跑通只是「能用了」离「能用好」还有一段距离。以我自己的习惯跑通之后我不会直接交付而是做三件额外的事补充空值保护、优化大模型提示词、测试边界场景。第一件事是检查所有 Python 节点的空值保护。正文中的代码已经做到了params.get(xxx, {})的兜底但aweme_detail.get(create_time, 0)之后直接乘以 1000如果上游传回来的是一个字符串格式的时间戳还是会报 TypeError。所以我后来会在这类节点里加一层类型检查判断raw_create_time到底是int还是str。如果是字符串就先转换转换失败再用当前时间戳兜底或者直接留空不阻断整个批处理。第二件事是优化大模型节点的提示词。在你把完整的数据交给 DeepSeek 之后系统提示词里的{{input}}会自动替换成视频列表的 JSON 结构。但这里有个细节如果输入数据量非常大超出模型的上下文窗口时报告生成质量会下降。这时候可以优先选择部分数据字段进行输入比如只传标题、点赞数、评论数、收藏数忽略链接和时间。具体做法是在大模型节点之前加一个 Python 节点先裁剪字段再传给 DeepSeek。实测这种做法让报告结构稳定很多DeepSeek 也不容易被多余的干扰项带偏。第三件事是测试智能体的边界场景。我每一次搭建完成后都会准备三组测试用例第一组是正常完整的抖音视频链接第二组是一个不完整的链接只有用户 ID 没有具体视频第三组是无关话题比如用户问价格和方式。正常的链路应该能自动触发工作流并返回报告不完整的链接应该触发智能体追问用户补充信息无关话题应该被限制条件拒绝回答。这三组成用例覆盖了最常见的输入模式既验证了正常的自动化路径也验证了失败兜底。从那以后我每次交付一个智能体都强制走一遍「空值保护检查、大模型提示词裁剪、三组边界测试」的流程。这个过程不复杂但能省下非常多后面配飞书文档和调整提示词的时间。希望这篇拆解能帮到你也欢迎你在自己的业务场景里复现一遍这个流程看看是不是能像案例里说的那样把 80% 的重复性分析工作交给 AI把精力留给真正需要你判断的地方。本文还有配套的精品资源点击获取
返回列表