商品上架材料人工核验太折磨?我用双大模型自动体检


在这里插入图片描述
P.S. 目前国内还是很缺AI人才的,希望更多人能真正加入到AI行业,共同促进行业进步,增强我国的AI竞争力。想要系统学习AI知识的朋友可以看看我精心打磨的教程 传送门http://blog.csdn.net/jiangjunshow,教程通俗易懂,高中生都能看懂,还有各种段子风趣幽默,从深度学习基础原理到各领域实战应用都有讲解,我22年的AI积累全在里面了。注意,教程仅限真正想入门AI的朋友,否则看看零散的博文就够了。

一个商品想上架,第一关不是质检,是材料。产品说明书、检测报告、品牌授权书、平台发布规则、商品参数表、待发布文案,六样东西,少一样平台都不搭理你,比甲方还挑剔。

更绝的是,这六样东西来自六拨人。说明书是研发写的,检测报告是第三方机构出的,授权书是品牌方签的,发布规则是平台下发的,文案是运营编的。五拨人各写各的,最后要能互相咬合,这难度不亚于让甲方和乙方在同一句话上达成共识。

关键字段必须对得上:型号、净含量、品牌名、生产企业、授权渠道、授权有效期。任何一个对不上,轻则被驳回重提,重则被扣上一顶「虚假宣传」的帽子。对不上不可怕,可怕的是你不知道哪里对不上,只能一页一页翻。

1. 人肉核验:一款纯体力劳动

1.1 六份文件,十一页,二十分钟

我手头这套资料加起来十一页,逐项比对完大概二十分钟。这二十分钟不是脑力劳动,是纯体力活,本质上是人肉 OCR 加人肉数据库——把每一页翻过去,把字段抄出来,再对着看。

人一累就漏。漏了也没人骂你,但平台会。审核驳回的理由永远是同一句:「请核对后重新提交。」那一刻我深刻理解了什么叫无效加班。

这份活干久了,我怀疑自己上辈子是个条形码扫描枪。

1.2 这活能不能让机器干

能,但有一个前提:得先想清楚机器怎么分工。这就是这篇文章要聊的事——把二十分钟压成一次点击,顺便把我的眼睛还给我。

2. 一个模型干不了两种活

2.1 数学老师教体育的悲剧

最开始我图省事,一个模型全包。文档丢进去让它读,图片转 base64 也丢进去让它看,一次请求解决所有问题。

跑是能跑,但结果像开盲盒。同一个模型在长文档上抠细节抠得跟侦探似的,到了图片上就开始含糊,包装上的品牌名和净含量经常读错,或者干脆回我一句「图片未显示相关信息」。

这句话我看了十几次,一度怀疑模型在装死。后来发现不是,它是真的没看见。

让一个模型同时干文本和图像,等于让数学老师去教体育、体育老师去教数学,俩人还都觉得自己教得挺好。

2.2 两个活,性质根本不一样

文本审查吃的是上下文长度和逻辑推理。在一万多字的材料里找字段冲突,判断一句宣传语有没有踩广告法的线,这是长跑。

图片识别吃的是视觉解析,要把包装图上的品牌、品名、型号、净含量一个字符不差读出来,这是短跑冲刺。

硬塞给一个模型,等于让它一边长跑一边冲刺,最后两个成绩都不及格。

所以方案拆开:文本交给 qwen3.8-max,图片交给 qwen3.5-omni-plus,各管一段,结果在本地合并。

选这俩不是拍脑袋。qwen3.8-max 给了 1000k 上下文,文档级判断就靠它;qwen3.5-omni-plus 是 256k 的全模态模型,看图归它。至于为什么这么分,后面有实测数据,先往下看。

3. 建一个 Key:只有一次露脸的机会

蓝耘 MaaS 的入口在 maas.lanyun.net,注册登录之后到「API Key 管理」新建一个。

这里有两件事要记牢。

第一,Key 只在创建那一刻完整显示,关掉页面就没了。这个设计让我想起初恋,都是只有一面之缘,错过就再也找不回。

第二,账户得有余额,否则新建的 Key 调不通,返回一个让你怀疑人生的鉴权错误。

好消息是,整个项目从头到尾只用这一个 Key。蓝耘是统一网关,文本模型和视觉模型共用同一个凭证,不用给每个模型单独办一张「身份证」。

4. 改配置:一个 Key,两个模型名

4.1 模型名拆成两项

工程原来的配置只有一组三元组:API_KEY、BASE_URL、MODEL,一个模型名走天下。要支持双模型,得把模型名拆成 text_model 和 vision_model。

我把模型相关的配置收进一个 PROVIDERS 结构,接入地址、凭证变量、文本模型、视觉模型排在一起,换模型只改这一个文件:

PROVIDERS = {
    "lanyun": {
        "label": "蓝耘元生代 MaaS",
        "short": "蓝耘",
        "base_url": "https://maas-api.lanyun.net/v1",
        "base_url_env": "LANYUN_BASE_URL",
        "key_env": "LANYUN_API_KEY",
        "text_model": "qwen3.8-max",
        "vision_model": "qwen3.5-omni-plus",
    },
}

4.2 Key 只从环境变量读

有个小设计要说明:代码里不出现明文密钥。key_env 指向 LANYUN_API_KEY 这个变量名,真正的值放在 .env 里,仓库里只留一份 .env.example。这样配置结构可以随手贴,凭证不会跟着代码一起裸奔。

旧的单模型字段我保留成了 property,指向上面的 text_model,上层代码里原来那些 settings.qwen_model 的调用一行都不用动。改动面收在一个文件里,这大概是我这周做过最优雅的活。

5. 跑一遍,86.2 秒里发生了什么

5.1 六份文件加一张图,一次体检

资料准备齐,六份文档加一张商品包装图一起传进去,点「开始体检」。前端把执行过程流式推出来,每一步都带着耗时,跟外卖配送一样透明,就差一个「骑手正在赶来」。

六份文件依次读取,本地解析层先跑完,图片送去做多模态识别,最后一步才是大模型语义复核。页头那行「当前引擎:蓝耘元生代 MaaS · qwen3.8-max」是从后端配置读出来渲染的,不是写死的文案,改配置它跟着变。

5.2 12 次调用,只有 2 次花钱

完整跑一轮,工具调用明细和模型调用统计都记在过程面板里:

项目数值
模型调用次数2 次
Prompt Tokens1654
Completion Tokens3747
Total Tokens5401
总耗时86.2 s

两次调用的分布差异非常明显:

调用模型耗时Total Tokens
vision_llm蓝耘 · qwen3.5-omni-plus3.1 s1336
text_llm蓝耘 · qwen3.8-max83.0 s4065

视觉识别 3.1 秒就回来了,提取出四个可见字段。文本复核花了 83 秒,占总耗时的 96%。

这 83 秒是整条流程里最需要提前知道的事:它不是卡,是 qwen3.8-max 要把六份材料的关键字段全过一遍,再逐条判断合规风险,输出 token 有 3676 个。前端有进度事件推着,不会让人觉得程序死了,但第一次跑的人十有八九会以为它挂住了——我第一反应是去查网线。

这一轮总共触发了 12 次工具调用,其中只有 2 次真的消耗了 token:

pdf_parser       解析 01_产品说明书.pdf:2页、857字符       16 ms
pdf_parser       解析 02_产品检测报告.pdf:3页、975字符     17 ms
pdf_parser       解析 03_品牌授权书.pdf:1页、543字符       7 ms
pdf_parser       解析 04_平台商品发布规则.pdf:3页、1041字符  17 ms
markdown_parser  解析 06_商品信息表结构.md:1个表格、685字符   0 ms
markdown_parser  解析 05_待发布商品草稿.md:1个表格、443字符   0 ms
field_extractor  抽取品牌/型号/规格/功效/授权等关键字段        0 ms
vision_llm       蓝耘 · qwen3.5-omni-plus                3.1 s
consistency_checker   比对名称/品牌/型号/规格/生产企业,发现 4 处  0 ms
compliance_checker    扫描绝对化用语与功效证据,发现 11 处      0 ms
authorization_checker 核对授权渠道与有效期,发现 2 处         0 ms
text_llm         蓝耘 · qwen3.8-max                   83.0 s

格式解析、字段抽取、一致性比对、合规扫描、授权核对,全部跑在本地,耗时都在 20 毫秒以内,一分钱 token 不花。真正必须交给大模型的只有两件事:看图,和判断语义。

把能本地做的先做掉,模型只处理它独有的那部分——这是成本最低的分工方式,也是我唯一一次体会到「少用模型」居然比「用好模型」更重要。

模型调用失败也有兜底。两个客户端遇到网络异常、限流或者返回格式不对时都返回 None,编排层收到 None 不会抛异常,而是沿用本地规则引擎的结论继续走,报告里会如实标出引擎来源。一次 API 抖动不至于让整个体检失败,代价是那一轮语义判断精度下降。相当于临时工请假了,值班经理顶上,结论会写清楚是谁给的。

6. 三个模型跑同一张图

6.1 5.2 倍的差距

上面说视觉那步选了 qwen3.5-omni-plus,理由是快。这个判断是测出来的,不是信仰。我用同一张商品包装图,让蓝耘上的三个模型各做一遍同样的识别任务:

模型耗时Total Tokens
qwen3.5-omni-plus3.4 s1336
deepseek-v4.1-flash6.0 s1403
qwen3.8-max17.8 s1561

最快和最慢差了 5.2 倍,token 也省了 225 个。三个模型的识别结果倒是一致,都读出了包装上的品牌、品名、型号和净含量。在这个任务上,能力和速度并不同步:qwen3.5-omni-plus 用三分之一的 token 和五分之一的时间,做到了同样的准确度。

如果当时偷懒让 qwen3.8-max 一肩挑,光图片这一步就要多等 14 秒,而这 14 秒换不来任何额外的识别质量。多花的 14 秒,够我刷三条短视频,换回来的是零条有效信息。

6.2 换模型,一行代码的事

这三个模型是同一次对比里换着跑的,中间没动过接入配置。蓝耘是一个网关,文本模型和视觉模型共用同一个接口地址和同一个 Key,模型名只是请求里的一个参数:

for m in models:
    settings.vision_model = m      # 只换模型名,地址和 Key 全程没变
    res = analyze_images(payload)  # 复用的是生产用的那段调用逻辑

整个循环跑完三个模型,base_url 一直是 https://maas-api.lanyun.net/v1,凭证一直是 LANYUN_API_KEY 这一个变量。换模型不做任何凭证和地址上的动作——这是选型阶段最直接省下来的一笔成本。

7. 机器替我抓到了什么

7.1 25 个问题,23 个高危

体检结论直接给在最前面:高风险,不建议发布。共发现 25 个问题,高风险 23 个、中风险 2 个、低风险 0 个。

问题按性质分两类。一类是资料之间对不上:型号不一致,待发布文案写 CX-SR-50,说明书基准值是 CX-SR-30;净含量不一致,文案写 50 mL,基准值 30 mL。

另一类来自图片识别:商品名称识别出「屏障修护精华」,基准值是「澄序屏障修护精华」;品牌识别出「星pure星纯」,基准值是「澄序 CALMORA」。

7.2 人眼扫不出来的那一行

后两条是这个工具最核心的价值。品牌名和商品名肉眼看着差不多,只有把包装图里的字抠出来和文档逐字比对,才能发现它们根本不是同一个品牌。

这一步纯靠人工看,很容易划过去。我自己的眼睛就是最好的反例——人工核验的时候我扫了三遍,愣是没发现包装上印的是另一个牌子。所以说,人眼的容错率高得离谱,高到能把自己的饭碗漏掉。

每条问题下面都跟着一句处理建议。型号那条会写明「请将待发布型号修改为基准材料中的 CX-SR-30,或确认基准材料已更新」。给建议而不是只报错,是因为这类冲突有两种可能:要么文案写错了,要么基准材料该更新了。工具没法替人判断是哪种,只能把两条路都列出来,把决策权还给人——这一点,它比某些产品经理有分寸。

7.3 合规风险那一组

合规风险是 qwen3.8-max 判出来的:「3天彻底祛痘」属于绝对化疗效承诺,「医美级修复」涉嫌暗示医疗效果,「孕妇绝对安全」是高风险安全承诺,「8小时长效保湿」和「敏感期也可放心使用」缺对应的证据材料。

这一组是整轮体检里最花时间的一步:要在六份材料里逐句找绝对化用语和缺证据的功效宣称。83 秒花在这里,我觉得值。

工具还有一个设计:把「机器判定的结论」和「需要人工确认的事项」分成两块呈现。授权渠道和目标渠道对不上、授权已过期这类问题,工具只能指出来,最终要不要发布由人决定。比给一个笼统的风险分数有用,也比直接替人拍板有边界感。

8. 一分钱的账

跑完一轮想对账,蓝耘控制台里有现成的:调用统计能看到每次请求的时间和成功次数,Token 响应时间曲线里那两个波峰,对应的是几轮测试里耗时较长的文本复核。某次调用失败,可以直接对着时间点查。

这块记录不需要自己在代码里埋点,比自建一套调用日志省事。我换模型的时候主要就看它:配置改完之后有没有真的生效,看一眼调用记录就知道了。

这轮体检花掉 5401 个 token,按 qwen3.8-max 的输入 0.012 元、输出 0.036 元每百万 token 算,成本在一分钱左右。六份材料加一张图,从解析到出结论 86.2 秒。我一度以为计价器坏了。

真正省下来的不是这点时间和这点钱,是它替我守住了那条最容易失守的线:包装图上印着「星pure星纯」,文档里写着「澄序 CALMORA」,这两个名字放在一起,人眼扫一遍是发现不了的。

我的眼睛扫了三遍,都没发现。

P.S. 目前国内还是很缺AI人才的,希望更多人能真正加入到AI行业,共同促进行业进步,增强我国的AI竞争力。想要系统学习AI知识的朋友可以看看我精心打磨的教程 传送门http://blog.csdn.net/jiangjunshow,教程通俗易懂,高中生都能看懂,还有各种段子风趣幽默,从深度学习基础原理到各领域实战应用都有讲解,我22年的AI积累全在里面了。注意,教程仅限真正想入门AI的朋友,否则看看零散的博文就够了。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值