尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

广告传媒AI Agent开发实战:从素材整理到方案辅助的完整架构与踩坑记录

广告传媒AI Agent开发实战:从素材整理到方案辅助的完整架构与踩坑记录 干我们这行的办公桌上永远摊着两座山一座是永远找不到的素材一座是永远改不完的方案。客户周三一句“要更有质感一点”周五就得交整版提案网盘里躺着几万张图片文件名从“主视觉最终版”到“主视觉最终版2千万别删”别说新同事连原作者都未必找得到。这不是某个广告公司的问题是广告传媒行业整个工作流的常态。所以我花了大概一个多月做了个广告传媒场景下的AI Agent专门解决两件事素材整理和方案辅助。这篇就把从架构设计到落地部署、再到处处踩坑的过程完整写出来希望能帮你少走几步弯路。不管你是广告公司的策划、自媒体工作室的运营还是想找切入点的独立开发者这套思路都值得参考。1. 先搞明白广告传媒为什么需要 Agent而不是一个聊天机器人很多人的第一反应是用ChatGPT不也能写方案、找灵感吗何必非叫Agent。说实话写一段文案、给一个创意启发聊天机器人确实够用。但回到真实业务里问题从来不是“写不出来”而是“流程推不动”。方案要引用真实素材素材散落在不同盘符客户需求藏在几段语音会议纪要里需要先解析成结构化的条目提案有固定模板每次都要从零开始拼装。这些事没有一件是单个对话框能解决的。Agent和LLM的区别用一个类比你就明白了LLM是大脑Agent是大脑加手和眼睛。手负责拿素材、写文件、调接口眼睛负责检查结果对不对。它是有目标、会拆解步骤、能调用外部工具、有记忆的完整闭环。比如“给某个美妆客户做一份小红书投放提案”Agent的内部流程不是直接吐一篇通用文章而是先解析客户需求 → 检索素材库里符合调性的实拍图 → 生成创意方向 → 按提案模板排版 → 检查素材编号是否有效 → 输出初稿。每一步都有输入输出校验这才是Agent和聊天机器人的本质区别。1.1 广告传媒工作流里的三个效率黑洞我梳理了实际接触过的广告公司、MCN和品牌市场部发现大家的工作流几乎清一色卡在三个位置。第一个是素材管理混乱。品牌方给过来的产品图、历史投放数据、过往获奖案例散落在共享盘、个人网盘、微信文件传输助手甚至U盘里。没人维护统一目录检索基本靠“文件名猜谜”。光是把这些素材汇总到一个库就要花不少人力。第二个是需求解析靠个人经验。客户说“要有高级感”这句话在不同行业、不同渠道、不同目标人群下的含义千差万别。资深策划能靠经验把这句话翻译成执行方向新入行的人就完全懵了。这个翻译过程如果能有标准化产出团队的效率和下限都会明显提高。第三个是提案撰写重复劳动。做过提案的人都知道项目背景、市场分析、人群洞察这些板块换个客户换组数据又写一遍重复度六成以上。真正值钱的创意策略部分只占提案的一小段时间精力但整个流程的体力消耗是巨大的。1.2 单 Agent 还是多 Agent我为什么拆成两个智能体技术圈聊Agent架构绕不开单Agent和多Agent的争论。我最初的设想是只做一个全能Agent既能管素材又能写方案。做了一半发现不行素材整理是高频、低延迟、数据密集型操作方案辅助是低频、高延迟、创作密集型操作。硬塞在一个Agent里工具列表越来越长提示词越写越复杂任务路由经常出问题。后来我改成“两个Agent加一个共享知识库”的多Agent架构素材整理Agent只管素材的采集、打标、去重、检索方案辅助Agent只管需求解析、策略生成、提案输出两者通过共享知识库协作。方案Agent需要素材时调用素材Agent暴露的检索接口即可两个Agent之间不直接耦合。这么做的好处很直接素材Agent可以单独部署在高并发环境下方案Agent的迭代完全不影响素材侧运行两个Agent的模型配置可以独立调整素材侧用便宜的轻量模型方案侧用好一点的大模型。1.3 Agent 的四个标准化组件规划、工具、记忆、执行不管架构怎么分主流AI Agent的底座组件基本是固定的可以记成四个词规划、工具、记忆、执行。规划是Agent把大任务分解为子任务。比如“做一个提案”会被拆成需求解析、素材检索、策略生成、模板填充、自检保存这五步。工具是Agent能调用的外部能力比如文件扫描接口、OCR识别、视觉打标API、数据库查询、图片缩略图生成。记忆分两层短期记忆是当前任务的上下文长期记忆是客户偏好、历史项目标签、常用的提案模板。执行则是真正调用LLM产生结果并且在产出后做合法性校验。这套组件几乎是目前主流Agent框架的通用范式不管是LangGraph、AutoGen还是低代码平台Dify底层逻辑都逃不开这四块。广告传媒场景的Agent开发本质上就是把“素材整理”和“方案辅助”两个业务过程映射到这四类组件上。2. 素材整理Agent的开发打标、去重、检索一个都不能少先聊素材整理因为它是方案辅助的地基。素材Agent做不好后面的方案Agent就拿不到好“弹药”。2.1 素材采集把散落文件收拢到一个库采集是第一道工序。要覆盖的路径有四种本地/共享盘扫描、网盘API同步、聊天工具文件自动抓取、以及手动上传。本地共享盘同步我用的是“文件夹挂载 事件监听”监控指定目录的新增文件检测到变动就增量上传到素材库。网盘则直接调官方API不少网盘都开放了文件同步接口写一个定时任务就能同步新增。聊天工具这块实操上最有效的办法是建一个素材收集机器人成员把文件转发给它Agent自动抓取入库。这里有个容易被忽视的细节文件命名。入库时我建议自动统一重命名否则源头的“史上最全版”这种命名会一路带到素材库。我的命名规则是时间 项目名 类型 版本比如20250412_美妆直播项目_主视觉_v02.png。这样即使将来脱离数据库在网盘里翻文件也能快速定位。2.2 素材智能分析图像、视频、文案三线并行素材收集完要让它变成能被检索的结构化记录。信息抽取是关键而且图像、视频、文案的抽取方式完全不同。图像抽取我用视觉模型识别主体产品、人物、场景再提取颜色直方图判断风格和色调最后合并生成一组标签主体、场景、风格、色调、情绪、行业适配。比如一张“模特在阳光下手拿奶茶”的图标签是人物、饮品、户外、明亮、温暖、生活化。视频抽取比图像复杂因为它有时间轴。我的方案是三步走先做关键帧抽取按场景切换点隔几秒抽一帧然后对音频轨转文字拿口播内容做文本检索最后对画面上的字幕做OCR识别。合起来的效果是你能搜“这段视频里口播提到买一送一”也能搜“画面角落出现折扣信息的视频素材”。文案抽取则相对简单核心是自动摘要和语义向量化。长文案压缩成要点同时转成向量存起来供后续语义检索用。文案类型也要识别是标题、卖点、活动规则还是风险声明不同用途检索逻辑不同。最终所有素材都收敛到一个统一的数据结构里素材记录 基础信息文件名/大小/路径/入库时间 内容信息类型标签/对象标签/风格标签/文本内容/向量Embedding 使用信息被哪个项目用过/效果数据。2.3 标签体系怎么设计才不会变成新的脏数据素材打标这块我踩过最大的坑就是标签失控。一开始想把标签做细模型能识别的元素全部打上去结果标签数量冲到上千个检索时运营根本不知道选什么标签选完结果也很零散。后来彻底推翻把标签体系收敛到五个维度素材类型图文/视频/音频/PDF案例、内容对象产品/人物/场景/元素、表现风格实拍/插画/3D/动态/国潮/赛博朋克……、情感调性温暖/科技/高级/活泼/冷静……、渠道适配适合抖音/小红书/朋友圈/电梯屏……。每个维度取值控制在15到30个整体标签库容量控制在100到200个。这个量级的好处是运营能记住、愿意用模型打标的准确率也高。广告素材库的天职是“能快速找到”不是“归档完美”。标签太多维护成本会反噬检索效率。2.4 同类素材去重感知哈希和向量相似度的实战用法素材库最怕的就是重复。同一张图换个滤镜存两遍、同一个视频剪了片头又传一遍存储浪费不说检索结果里还全是似曾相识的内容反而干扰判断。图像去重最经典有效的办法是感知哈希pHash。原理不复杂把图像统一缩放到8x8或32x32转灰度计算所有像素的平均灰度每个像素和平均值比较得到64位指纹。两张图的指纹做异或运算统计位为1的个数也就是汉明距离。距离越小越相似。实际操作时汉明距离小于等于5基本可以判定为重复或近似重复。def hamming_distance(hash1: int, hash2: int) - int: return bin(hash1 ^ hash2).count(1) # 阈值示例距离小于5判定为近似重复 if hamming_distance(img_hash_a, img_hash_b) 5: judge_duplicate True这里有个优化点上万张图两两比对是O(n²)复杂度不能接受。我用的是分桶法先按指纹的前16位分桶只在桶内比对。这样大部分计算量被索引分流实测一张库扫下来耗时能降一个量级。文本去重用Embedding算余弦相似度大于0.92视为高度相似。“换了个标题其他全一样”的广告文案靠字面去重抓不到但语义相似度能轻松识别。视频去重更麻烦我用关键帧集合的思路每段视频抽10到20个关键帧和另一个视频的关键帧两两比对pHash相似帧占比超过阈值就判定重复。2.5 检索接口标签检索、语义检索、反查三合一素材Agent最终要同时服务人和方案Agent两个“客户”所以检索接口不能只有一种。我实现了三种模式。标签检索用户勾选组合条件比如“类型 视频 风格 实拍 渠道 小红书”返回精确匹配结果。这是传统但最高频的检索方式必须快。语义检索用户输入一句自然描述比如“找一张给运动品牌拍的、有力量和速度感的画面”通过向量相似度返回最接近的素材。这个靠Embedding实现效果的好坏取决于向量模型对中文语义的理解能力建议用专门做过中文优化的模型。反查检索用户放一张参考图返回库里风格相似的其他素材。这对设计找参考特别实用看着别家的图找自己库里能不能拍同款。此外每个检索结果我都会附上“素材使用次数”和“项目命中率”两个指标。广告审美是跟着流行走的用得多的素材说明被验证过排前面基本不会错。3. 方案辅助Agent的开发把客户需求翻译成提案初稿素材库建好以后方案Agent就有“弹药”了。这个Agent要解决的是提案过程中最重复、最耗时的需求解析和初稿生成环节。3.1 需求解析先把“要高级”翻译成结构化参数客户需求往往是零散的、口头的、甚至是在聊天记录里随便扔两句话。方案Agent的第一道工序就是把它解析成结构化需求卡。我固定的JSON Schema大概是这样的{ product: 具体产品/服务名称, target_audience: {age: , gender: , consumption_preference: , media_habit: }, channels: [抖音, 小红书, 电梯屏, 朋友圈], budget: , timeline: , tone_keywords: [], competitors: [], taboos: [] }原始素材可能是语音、会议纪要、微信截图。语音先转文字截图先OCR然后由LLM抽取字段填充这个JSON。这里的核心经验是不要相信一次抽取的准确率。客户口中的“高级感”到底是极简性冷淡还是奢华巴洛克Agent抽取完必须生成“待确认问题清单”让人先确认需求卡再往后走。这个确认动作等于给烂需求加了一道防火墙避免后面所有步骤建立在错误理解上。3.2 策略生成每个结论都要有“依据字段”拿到需求卡之后进入策略生成环节。我把它拆成四个子环节产品洞察、人群洞察、创意方向、媒介组合建议。产品洞察根据产品名称和描述结合素材库里沉淀的历史行业案例生成“这个产品可打的点”清单覆盖功能卖点、情感价值、身份认同。人群洞察结合目标人群的触媒习惯给出渠道偏好分析比如25到35岁女性用户主阵地是小红书晚8点到10点活跃偏好真实测评和场景化种草。创意方向最关键生成3到5个创意概念每个都包含主题名、一句话简介、视觉风格描述、视觉参考素材、传播动作建议。媒介组合建议根据预算区间给渠道投放比例分配并说明理由。这四步生成逻辑里最容易翻车的是“证据链断裂”。LLM为了讨好你会编造“某品牌通过这个策略实现销量翻三倍”这类无法验证的结论。我在结构化输出里强制加了一个“依据字段”每个断言必须引用素材库里的案例ID或数据来源。没有依据的断言不允许出现在输出里。这一招能大幅抑制幻觉也让策划人员复核时有迹可循。3.3 提案模板模块化输出避免“自由发挥”提案结构在广告公司里是有固定套路的我固定为八块项目背景与目标、目标人群洞察、创意核心概念、创意表现与素材展示、媒介投放策略、执行排期、预算分配、效果预估与风险提示。Agent生成提案时每个板块单独调用对应的prompt模板最后汇总成Markdown文档。和素材库协同体现在创意板块会自动检索一批匹配素材作为“示意画面”并在图旁标注素材编号策划人员后续替换成正式作品即可。生成完还有一道强制自检关键词覆盖度是否达到需求卡要求素材编号在库里是否存在预算分配相加是否等于100%禁止词是否出现任何一项不过就重新生成对应板块。这个“规划—执行—反思”的循环是Agent质量的核心保障。3.4 人机协同三个必须人工介入的节点做方案Agent最忌讳的是把它设计成“无人驾驶”。广告创意行业最终决策必须由人来。所以我在流程里留了三个介入点需求卡确认方案Agent解析完需求以后必须等人点头创意方向选择生成3到5个方向后由人挑选1到2个细化终稿审核输出正式提案前必须经过人工确认。这样设计的好处是兼顾效率和可控。实际跑下来策划从“每案从零起草”变成了“初稿马上可用”工作效率提升明显但最费脑的策略调优和创意打磨依然由人来完成。4. 技术选型与部署落地的实操记录4.1 Python、Rust还是低代码框架我最后用的混合方案搜索榜单里挂着“基于Rust语言的AI Agent”这个方向确实有它的理由但我必须先给结论绝大多数广告传媒团队用Python生态更省事。Rust的优势在于内存安全、并发性能好、部署产物是单二进制文件这恰好适合素材扫描流水线这种高频任务。但Agent编排涉及大量快速迭代的LLM调用逻辑Rust的开发效率远不如Python顺。我们最后做的是混合方案素材处理的“扫描—分析—入库”流水线用Rust写成独立微服务负责处理大量图片缩略图生成和高频检索Agent编排层仍用Python选择LangGraph做任务状态机两个服务之间用HTTP/gRPC通信。这样既吃到Rust的并发红利又保住了Python侧快速迭代的速度。如果团队没有Rust能力也没必要强求。纯Python FastAPI LangGraph/Dify完全够用。Dify这类低代码平台甚至可以让人工运营同事直接维护工作流不用等开发排期对广告公司这种小团队尤其友好。技术选型不是越酷越好是越贴合团队现状越好。4.2 Token是什么以及四个省Token的实操做法我看到热搜里有人问“AI Agent token是什么意思”。Token是LLM处理文本的基本计费单位中文场景下大约一个token对应0.5到1个汉字。方案Agent跑完一次完整任务可能消耗几千到上万token费用主要花在模型调用上。很多团队上线第一天不看token消耗月底账单出来就傻眼了。我的成本控制策略有四条都是实测有效的。第一素材分析走专用小模型或嵌入模型价格只有大模型的十分之一标签分类和向量化完全够用。第二需求解析用高质量大模型但输出严格限制为JSON结构限制输出长度可以避免模型发散浪费token。第三提案生成不要一个大prompt催生全文改成一个板块一个prompt稳定且某板块失败时只重试该板块成本可控。第四公司介绍、标准服务流程这类高频固定文案直接缓存复用不重复调用模型。4.3 私有化、云端还是混合部署广告传媒业务最大的不确定因素其实是客户数据的敏感度。品牌客户通常不太接受核心素材全量上云但又有大量任务要调用云端大模型API所以部署形态要按数据敏感度分等级。如果素材完全不能出域就走本地私有化部署。用Docker Compose一键拉起模型服务、Agent服务、PostgreSQL加向量检索插件、对象存储。素材文件量大建议本地NAS或S3兼容存储兜底。如果素材脱敏程度高、团队不想自己维护GPU就走云上部署用大模型API加云数据库免运维、可弹性扩容数据安全靠合同约束。混合部署是广告公司里最常用的方案。素材库放本地敏感素材不落云盘只有抽取后的标签和向量传到云端做检索中间由Agent网关做转发。这样既能用云端大模型的能力又可以守住素材不出域的安全底线。阿里云早前发布过AI Agent白皮书基本已经把Agent定位为大模型落地的重点方向。部署选型的核心建议是先跑通再扩容前期一台带GPU的本地工作站加云端API足够不要为了所谓高可用去过度设计。4.4 最小可用Demo怎么快速跑通写给想立刻动手的人。最小可用的闭环大概三块素材入库服务、方案Agent编排、前端界面。素材入库服务用Python FastAPI写一个接口接收文件后调用视觉模型提取标签和向量存入数据库。方案Agent用LangGraph或Dify编排节点分别是需求解析、素材检索、提案生成、自检。前端界面先用Streamlit搭个简化管理台能看素材预览、按标签筛选、和方案Agent对话就行。我建议立刻把这三块跑通交付给团队真实用上一星期然后收集问题迭代。技术理想是无限膨胀的业务需求是具体而有限的。我见过太多项目卡在“想把所有素材都完美打标”这种执念上连一个能用的小Demo都拿不出来。先让业务方用起来再谈优化。5. 常见问题与排查实录5.1 素材入库速度太慢怎么办一万张图逐一调用模型打标串行跑六七个小时很正常。排查先从瓶颈链开始文件读盘、模型推理、数据库写入哪块最慢我们的做法是三步改造把“识别”拆成“读取 推理”并行用线程池控制并发数一批二三十个任务并发跑半小时内完成先生成缩略图大图分析走异步后台任务前端先看到图标签后补批量任务打标完成后再统一写数据库避免逐条插入的IO瓶颈。5.2 打标不准、漏标严重视觉模型漏标不可避免特别是风格类标签主观性很强。我的补救方案是加一道人工确认闭环新素材入库默认“待审核”运营一键确认或修正标签修正记录回流到数据库后续模型调用时把历史修正记录作为上下文参考每周随机抽50条素材人工核对准确率低于80%就换模型或调提示词。5.3 方案Agent写提案写跑题了最大的坑永远是模型和需求不在一个频道。我们的排查清单是每次生成前是否把完整需求卡拼接进prompt而不是只传一句话摘要生成后的自检是否覆盖禁止词检测、关键词覆盖度检测、素材编号有效性检测如果连续两次自检不过别再死磕生成主动返回“需求需澄清”给用户。这套组合拳能把跑题率压到很低的水平。5.4 Token消耗突然翻倍我们踩过一次。查下来是一个后台定时任务把历史三千多条文案全部重新跑了一遍大模型纯粹是逻辑写错了。现在强制规定批量任务必须先做代价评估每日设置Token消耗告警超阈值自动暂停批量任务重试上限最多两次超限就标记“需人工处理”防止Agent自己陷入无限循环。5.5 素材版权问题不能留给Agent自动判断素材库里有大量外部素材和客户素材Agent自动引用素材进提案时要非常小心版权。强制约定素材入库时记录版权归属字段分为自有、客户授权、图库授权、未授权四类方案Agent检索素材时默认过滤未授权素材输出提案时每张配图带版权状态提示由策划人员做最终确认。6. 后续可以继续扩展的几个方向6.1 内容分发自动化有了素材库和方案Agent内容从选题到成稿的前半段已经打通后半段自然可以接上分发自动化。比如把生成好的小红书文案和话题标签通过官方内容接口做定时推送形成“选题→素材→成稿→分发→数据回收”的完整闭环。这和“用小号自动发消息”的逻辑完全不一样是把运营工作流规范化、可管理化避免踩到平台合规限制。6.2 数据回填让素材库自己长知识素材被使用后产生的投放数据是广告公司最值钱的资产之一。可以把曝光量、点击率、转化率这些数据回填进素材字段慢慢训练出一个“素材投放策略库”。下次做提案时方案Agent就能说“这类视觉风格的素材在上个项目中点击率比均值高20%”这会大大提升提案的说服力。6.3 项目级权限和版权协同品牌客户的数据往往需要跨项目隔离。下一步可以按项目和客户做素材访问控制细分多账号素材协同管理让品牌在不同平台、不同代理商的素材统一归集避免同一个视觉素材在多个项目里被重复购买版权。这套权限体系做扎实了Agent才有资格进入更多核心业务环节。我个人在实际操作中体会最深的一点是这类Agent项目的成败不在模型选得够不够新、架构拆得够不够花哨而在业务数据能不能被稳定地结构化。素材整理和方案辅助本质上是把一组杂乱无章的业务信息变成有标签、有依据、可追溯的结构化资产。这一步做扎实AI Agent就能实实在在地帮你每天节省几个小时做不扎实再强的模型也只是个偶尔投对一篇文章的玩具。希望这篇记录能给你的项目少添点坑。
返回列表