先说一个真实的处境。
做亚马逊久了,你一定经历过这种时刻:要上一个新品,或者老品要出图,坐下来开始“研究竞品图片”。然后打开几十个listing,一张一张点开看,脑子里隐约记住了一些东西,打几个字记在备忘录里,然后发现自己其实什么结论都没有。
问题在于信息量太大,人脑很难稳定处理。
我之前一直有个感觉:竞品图片里藏着大量信息,但我们绝大多数时候其实没有真正“读”过它们。我们看了,但没有提炼;提炼了,但没有结构;有了结构,但没有跟决策挂钩。
跑完数据之后有一个发现,让我自己也有点意外:有一个卖点,在4000张竞品图里出现的频率低得不成比例——但我去翻了一遍用户review,发现这个词出现过。竞品几乎没有人在图片里强调它,但买家一直在说它。我们把这个卖点放进了主推图的核心方向,现在看效果还不错。
这一步靠人工翻图,我大概率不会发现。信息在那里,但量太大,人脑处理不过来。
这篇文章想讲的,是我们最近跑通的一套工作流——用AI把300多个竞品的4000多张图做了结构化处理,最后变成一个可以一键筛选的数据看板。
不是为了炫技,是因为这套东西在我们实际选图方向和卖点规划上真的有用,所以想跟同行分享一下思路。
一、为什么要做这件事——光“看图”解决不了问题
很多运营做竞品图分析的方式,大概是这样的:
把几个主要竞品的图截图下来,发给摄影师或者美工,说“大概参考这个风格”。或者截图问GPT:“帮我分析一下这张图的卖点”,然后得到一段听起来有道理但你其实不知道怎么用的分析。
这两种方式都有同一个根本问题:信息没有结构化,也没有聚合。
单张图的分析,解决不了“这个品类的主流表达方式是什么”的问题。你需要的不是“这张图说了什么”,而是“300张图里,有多少张在强调X卖点,有多少张用了Y风格,哪些要素出现频率高,哪些几乎没人做”。
这是一个数量级的问题。人工翻300个竞品、4000张图,不是不可能,但时间成本摆在那里,更大的问题是——人脑在处理这种重复性信息时,很难保持标准的一致性。前100张和后100张,你的判断维度可能已经漂移了。
AI在这件事上有真实的优势:它可以用同一套标准,一致地处理4000张图。
但这里有一个前提,后面会反复提到:AI的输出质量,完全取决于你给它的任务定义有多清晰。
二、竞品从哪来——先把ASIN列表搞定
在处理图片之前,你得先有一份靠谱的竞品列表。
我们用的方式是卖家精灵。从BSR榜单前1000里导出数据,然后用AI做了一轮相似度筛选——核心逻辑是判断这些ASIN跟我们的目标品是不是真正的同款竞品,而不是搭边的相关品。
这一步筛下来,我们留了300多个不到400个ASIN。
这里有一个判断:竞品的数量要够,但不是越多越好。
数量太少,结论的代表性不够,可能只是几个头部卖家的风格;数量太多,里面会混进很多不相关的产品,反而稀释数据质量。300-400个同款竞品,在我们这个品类里已经覆盖了主要的玩家和风格。
ASIN列表有了之后,下一步是拿到图片。
三、图片怎么获取——两条路,先跑通再优化
路线一:卖家精灵插件(推荐先从这里开始)
如果你不想碰代码,或者只是想先跑通流程看看效果,卖家精灵的Chrome插件可以直接批量下载listing图片。操作步骤:
安装卖家精灵Chrome插件 在亚马逊竞品listing页打开 插件里找批量下载功能,按ASIN批量获取主图和A+图 图片会按ASIN分文件夹保存到本地
这条路的优点是门槛极低,几乎零代码,缺点是速度慢,几百个ASIN手动处理还是要花时间。
我的建议是:先用这条路跑通10-20个ASIN的完整流程,验证后面的处理逻辑没问题,再考虑批量化。
路线二:自己写脚本(适合有技术基础的)
我们实际跑的是自己写的爬取脚本,主要是因为要处理的量比较大,而且需要跟后面的处理流程对接。
这里不展开技术细节,只说几个关键点:
图片命名规则要在一开始就定好,建议格式:ASIN_图片序号_图片类型.jpg,后面数据对齐会方便很多 主图和A+图要分开标记,它们承担的功能不同,混在一起分析会干扰结论 下载过程中一定要记录失败的ASIN,后面补跑用
我们这批下来大概是4000张图,部分ASIN图片不完整或者质量太差,直接放弃了。
四、JSON字段怎么设计——这是整个工作流的核心
这一章是我最想认真写的部分,因为这里踩的坑最多,也是决定整套工作流能不能真正有用的关键。
先说一个反面教训
我们最早的版本,JSON字段设计是这样的:
{
"selling_points": ["大屏幕", "操作简单", "适合老人", "语音提醒,
"style": "科技感",
"description": "这是一张展示产品功能的图片,画面中心是产品..."
}
看起来挺合理,对吧?
跑起来之后发现问题很大。
第一版的问题:数据结构是乱的
selling_points 是一个列表,但每张图AI识别出来的卖点数量不一样——有的图给了2个,有的给了7个。
我当时想做的是:统计“大屏幕”这个卖点在4000张图里出现了多少次。但这个问题根本没法回答。因为每张图的卖点数量不同,有的图里“大屏幕”排第一,有的排第五,有的根本没有。你没有办法从一个长度不一致的列表里做稳定的频率统计。
数据跑出来,我盯着那张Excel看了很久,发现自己其实什么都算不出来。
description 字段的问题更隐蔽。我让AI自由描述图片内容,以为这样信息最全。结果每张图的描述角度完全不一样:有的在说产品外观,有的在说画面构图,有的在说图片上的文字,有的在说场景氛围。这些描述都是“对的”,但放在一起没有任何可比性,没有办法做系统性分析。
根本问题是一样的:我给了AI太大的发挥空间,它就按自己的理解发挥了,每次发挥方向不同。
第一次改动:把列表拆成单值
意识到问题之后,第一个改动方向是:把 selling_points 列表拆掉,换成 primary_selling_point(单值)和 secondary_selling_point(单值,可为null)。
逻辑是:如果一张图真的有很多卖点,让AI只选最突出的那一个作为主卖点。这样每张图的输出是固定的一个标签,可以直接做频率统计。
改完之后,数据结构对了。但跑一批样本之后,发现了新问题。
第二次改动:给选项,不让AI自由填写
数据结构对了,但标签不统一。
AI在填 primary_selling_point 的时候,会用不同的措辞描述同一个东西:有的图输出“大屏幕”,有的输出“大显示屏”,有的输出“屏幕清晰”,有的输出“大字体显示”。在我理解里,这四个标签大概是同一个意思,但在数据里它们是四个不同的值,没有办法自动合并。
做频率统计的时候,“大屏幕”出现了30次,“大显示屏”出现了18次,“屏幕清晰”出现了11次……这些到底是同一个卖点的不同说法,还是真的有差别?每次我都要手动判断,数量一大根本搞不过来。
解决方案是:给AI一个预定义的选项列表,让它从里面选,选不到才用自定义值。
Prompt里加一句:
primary_selling_point 请从以下选项中选择:
["精准测量", "大屏显示", "语音提醒", "操作简便", "长续航", ...]
如果图片的主卖点不在选项里,可以自定义,但优先从列表中匹配。
这样跑出来的标签,80%以上都是预定义的值,剩下的自定义值也相对集中,人工归并的工作量小了很多。
这是在字段结构上改动最大的一次,也是最有效的一次。
字段设计背后有一条统一逻辑
迭代到这个版本之后,我回头想了一下,其实这几次改动背后有一条逻辑是一致的:
描述性字段,AI输出稳定;评价性字段,AI输出会漂移。
visual_subjects 是“画面里出现了什么”,这是事实描述,AI看一遍就能说清楚,这个字段是列表也没问题——因为一张图里可以同时有“人+产品+标注文字”,这不是判断,是事实,多个值是合理的,你查的时候也只是问“这个元素出没出现”,不是算平均值。
text_on_image 是“图片上的文字照录原文”,同样是事实描述,我没有让AI翻译或总结,因为一旦让它处理,原始的销售话术就丢了。竞品用的是什么具体的表达方式,这个信息在后续写文案的时候非常有参考价值——AI一旦二次处理,就引入了信息损耗,还有幻觉风险。照录原文是信息损耗最小的方式。
如果换成“这张图的视觉表现质量是高还是低”,这就是评价性的,AI每次输出都会不一样。我试过,不稳定,后来这类字段全部放弃了。
正确的设计原则
重新设计字段的时候,我给自己定了几条规则:
1. 描述性字段,不要评价性字段
“图片风格是深色科技感”是描述,“图片做得好不好”是评价。描述性字段AI可以稳定输出,评价性字段每次都在猜,不稳定。
2. 每个字段只输出一个值,不输出列表
主卖点只有一个,次要卖点只有一个。如果一张图真的有很多卖点,让AI选最突出的那一个。这样数据是结构化的,可以直接做频率统计。
当然,也有例外。像 visual_subjects 这种字段,本身记录的就是“画面里出现了哪些元素”,天然可以有多个值。它和卖点不同,不承担主次判断,多个值不会破坏后续统计。
3. 字段的选项要预定义好
比如style字段,不让AI自由填写,而是给它一个选项列表:["dark_tech", "clean_white", "lifestyle", "infographic", "outdoor_scene", ...]。AI从里面选,选不到的才用其他值。
这样做的好处是:筛选的时候可以直接按字段值过滤,不会出现“深色科技”和“dark tech”两个词描述同一个东西却无法匹配的问题。
4. 字段粒度要和你的决策需求对齐
你设计字段之前,要先想清楚:这张数据看板最终是用来做什么决策的?
我们的核心问题是:
竞品都在强调哪些卖点,哪些卖点没人强调? 竞品的视觉风格分布是什么?我们想走哪个方向? 不同图片类型(主图/A+详情图/场景图)的内容分工是什么规律?
所以我们的字段是围绕这几个问题设计的,不是为了“尽量全面地描述图片”。
最终落地的字段结构(脱敏版)
{
"image_type": "主图/A+模块图/场景图/对比图/...",
"primary_selling_point": "最突出的单一卖点标签",
"secondary_selling_point": "次要卖点标签,可为null",
"style": "预定义风格标签",
"layout_type": "预定义布局类型",
"scene_type": "studio_white/home/outdoor/...",
"visual_subjects": ["画面中出现的主要视觉元素列表"],
"design_elements": ["设计手法列表,如callout/overlay_text/icon等"],
"text_on_image": "图片上的主要文字,原文照录",
"cn_copy_summary": "图片传达内容的中文摘要,一句话"
}
这套字段跑下来,每张图的输出是标准化的,可以直接入库做统计。
字段是跟AI对话出来的,不是想出来的
说一个实话:这套字段是迭代出来的,不是一开始设计完美的。
过程大概就是上面说的这些——跑小样本,发现数据结构乱了,改;再跑,发现标签不统一,再改;再跑,发现某个字段输出不稳定,要么砍掉,要么重新定义约束。
先跑50张图,比跑完4000张再发现结构不对,代价小得多。
这个原则我现在做任何批量处理任务都会用:小批量验证,发现问题,再放量。磨字段的时间花在前面,是值得的。
五、跑起来——配置、成本和实际操作
字段设计好了,下一步是让AI真正去读图。
模型选择:本地还是API
我们用的主力模型是MiniCPM-V,一个可以本地部署的多模态小模型。另外也用了部分API(千问VL之类的视觉语言模型)。
为什么选MiniCPM-V本地跑?
主要是成本和隐私两个考虑。4000张图如果全走API,费用不高但也不是零;更重要的是,竞品分析的数据我不太想全部走外部API,本地跑相对可控。
配置门槛:比你想的低
MiniCPM-V的配置要求在视觉模型里算是比较低的。我们用的是普通办公电脑,没有独立显卡,纯CPU跑,内存够大(16G以上)就能跑起来。
速度当然比GPU慢,但对于这种批量处理任务,可以放过夜跑。
( 能跑和跑得舒服是两回事。如果只是验证流程,CPU可以接受;如果要批量稳定处理,GPU或API会省很多时间。)
如果不想折腾本地部署,直接用千问VL的API是最省事的路线。成本方面,4000张图走API,按目前的价格,整体费用在可以接受的范围内,具体要看你的图片分辨率和token消耗。(如果预算充足, 其实也可以用openai或者gemini家的api, 那个设计promts是相对容易一些的。)
我们实际的做法是混跑:白天用API跑速度快的批次,要过夜的用本地模型跑,两边结果合并。API部分速度比较快,我们这批4000张图里,走API的部分大概两个小时跑完;本地模型主要用于不急的批次。
Prompt怎么写——这里有坑
给视觉模型的prompt设计,跟给文本模型的逻辑一样:输出空间越小,结果越稳定。
我们的prompt结构大概是这样:
你是一个专业的电商图片分析助手。
请分析这张图片,按照以下JSON格式输出,不要输出任何其他内容:
{
"image_type": "从以下选项中选择:[选项列表]",
"primary_selling_point": "用一个标签描述图片最突出的卖点,从以下选项中选择或自定义:[选项列表]",
...
}
注意:
- 每个字段只输出一个值
- primary_selling_point和secondary_selling_point不能相同
- 如果图片中没有明显的次要卖点,secondary_selling_point输出null
- text_on_image直接照录图片上的文字,不要翻译或总结
关键点是:不要让模型自由描述,给它选项;不要让它输出列表(除非字段本身就是列表类型);告诉它格式,只输出JSON。
批量处理的工程细节
几个实际操作中的注意事项:
失败重试机制要做好。 批量跑的过程中,偶尔会有图片解析失败或者模型输出格式不对的情况。我们的脚本会把失败的图片记录下来,统一补跑。 输出校验要加。 模型有时候会输出格式不规范的JSON(多了注释、用了单引号等等),处理管道里要加校验和清洗。 按ASIN分批处理,而不是全部混在一起。 这样如果中途出问题,可以只重跑某个ASIN,不用全部重来。 图片命名和输出JSON要能对应上。 我们的做法是每张图的输出JSON里包含原始文件名,最后合并数据的时候可以追溯到具体图片。
六、数据出来之后——看板怎么用,判断怎么做
这一章是我个人觉得最难写的部分,因为数据出来之后的“用”,有一半是工具层面的,有一半是判断力层面的,后者没办法标准化。
HTML看板:让数据可以被翻
我们把输出的JSON数据整合进Excel,然后转成了一个HTML看板。
这么做的原因是Excel的筛选在处理这种多维度标签数据时,联动体验不太好;HTML看板可以做成左侧多维筛选、右侧图片展示网格的布局,筛选的时候可以直接看到对应的图片,而不是只看数字。
实际用起来的场景比如:
筛选primary_selling_point = "大屏幕" + style = "dark_tech",看所有强调这个卖点的深色科技风图片都长什么样 筛选image_type = "A+模块图" + scene_type = "home",看竞品的家居场景A+图是怎么拍的 搜索design_elements包含callout,看所有用了标注气泡这个设计手法的图片
这个看板本身不给你答案,它给你的是一个可以快速定向查找的工具。
卖点分布——找到别人没做的地方
把4000张图的primary_selling_point做一个频率统计,你会得到一张清单:每个卖点被多少竞品强调过,占比是多少。
这张清单能告诉你两件事:
一是主流在哪里。 出现频率最高的卖点,是这个品类消费者最关注的东西,也是竞争最激烈的地方。你不做会显得缺失,但做了也很难差异化。
二是空白在哪里。 出现频率低的卖点,有两种情况:要么是这个卖点真的不重要,没人强调是有道理的;要么是这个卖点有价值但被忽视了,是可以切入的机会点。
判断是哪种情况,AI帮不了你。这一步需要你结合对品类的理解、对用户痛点的判断来做。我们的做法是:把频率低的卖点列出来,结合review里用户反馈的高频词,看有没有重叠——如果某个卖点在竞品图里很少出现,但用户review里经常提到,那基本上就是值得抢的位置。
这一步是整个工作流里我没有用AI替代的部分。 数据给了你视野,但判断是你的。
有一次,数据给的不是新方向,是“可以做”的许可
我想讲一个具体的例子,因为它跟上面说的逻辑不太一样——它不是“发现了竞品没做的空白,然后去做”,而是另一种用法。
我们有一个功能/认证,在图片里一直没有用。
不是不知道它的价值,是不确定能不能放进图里。这类信息涉及一些表达边界,我自己拿不准——如果用了,会不会触碰平台审核的灰色地带?会不会被竞品投诉?我一直有这个顾虑,所以这个东西在我们的listing里基本处于“藏着”的状态,图片里不出现,文案里也不强调。
竞品数据跑完之后,我去看了这个维度的筛选结果。
发现对手不仅在用,有的还做成了主视觉大图,整张图的核心就是这个信息。不是小角落里压着,是直接摆在最显眼的位置。
不是一两家。是有一定数量的卖家在用,包括几个头部。
我当时的第一反应不是“太好了有机会”,是有点懵——我保守了多久?
这个发现改变的不是我的策略方向,而是我的心理状态。我原来以为这件事有风险,但竞品的实际操作告诉我:这个风险是我自己评估过高了,或者说,这是行业里已经跑通的做法,不是我在开先例。
我们后来把这个信息放进了图片里。
竞品数据在这个场景里扮演的角色,不是告诉我去哪里,而是告诉我:你可以走了。 帮我解除了一个自己加的限制。
这种用法不是我一开始预期会有的收获,但回头看,它对决策的影响不比卖点分析小。
风格分布——选择你要去的方向
同样的逻辑,把style字段做频率统计,你会知道这个品类的视觉风格分布。
有时候你会发现:某个风格已经有很多人做了,视觉上高度同质化;某个风格出现的少,但头部卖家里有人在用。
这个信息可以帮你做一个选择:是跟着主流走,用消费者最熟悉的视觉语言?还是用一个相对少见但已经被验证的风格,做出差异感?
没有标准答案。但至少你的选择是基于数据的,而不是基于“我觉得这个风格好看”。
七、做完这件事,我的几个感受
有一层还没解决:图片的审美质量
说完能做什么,也要说说做不到什么。
现在这套工作流能稳定处理的,是结构性的信息:卖点是什么、风格是什么、用了什么设计元素。这些都是可以被定义、被量化的东西。
有一层我们目前还没有解决:图片的审美质量。
这套流程能稳定识别“图里在表达什么”,比如卖点、场景、布局、设计元素。但它还不能稳定判断“这张图为什么更高级”“为什么看起来更像美国本土品牌”“为什么有些图信息很多但不显乱”。
这件事我现在倾向于单独拆出来做。因为审美不是简单让AI打个分,它需要先定义标准:什么叫清楚,什么叫可信,什么叫高级,什么叫适合美国Amazon。这个标准没定义清楚之前,AI给出的审美评分大概率是不稳定的。
所以这一版,我只把它当成竞品图片的结构化检索工具。卖点和风格用数据看,审美质量仍然靠人眼判断。等我把审美标准拆清楚,再单独写一篇。
AI在这件事上做的是什么
本质上是把“图片里有什么”这个问题,按照你定义的标准,一致地、大量地执行了一遍。它替代的是人工重复执行同一套判断标准的时间成本。
它没有替代的,是“你应该关注什么”和“数据说明了什么”这两个问题。字段是你定义的,所以你关注什么,输出就体现什么;数据聚合出来的结论,意义是你解读的,不是AI给的。
为什么不直接问AI“帮我分析竞品图片趋势”
因为这个问题它回答不了。不是能力不够,是任务边界太模糊,它只能猜你要什么,每次猜的方向不一样,结论没有可复刻性。
把大问题拆成小的、定义清晰的执行任务,才是让AI稳定工作的方式。“这张图的主卖点是哪个”比“帮我分析这张图”稳定得多,因为前者的答案空间更小。
这套工作流值不值得做
门槛不低,需要你花时间设计字段、调整Prompt、搭工程管道。如果你是混品类的精铺或者铺货模式,性价比未必高。
但如果你在一个品类里深耕,或者要做系统性的竞品研究,这套东西的价值在于:它让你第一次真正地、系统性地“读”完了竞品图片。 之前那种看了等于没看的状态,是真的改变了。
数据在手,和凭感觉做判断,心里的底气是不一样的。
文章里提到的工具和模型都是公开可查的,具体的工程实现细节没有展开,有需要的可以自己研究。这套东西我们还在迭代,不是一个完成品,只是一个跑通了的版本。
关于我
Leon,一个做了很多年跨境的卖家。
平时喜欢折腾各种工具和自动化,也在研究 AI 对运营和效率的影响。
这个公众号主要记录一些:
AI工具 / 本地AI / 自动化 / 跨境运营的一些实践和思考。
如果这些内容对你有帮助,欢迎关注公众号:
《Leon的梦呓》
持续精进, 一起折腾,一起进步。
夜雨聆风