年初,苏州一家电子线束厂的品管负责人老张找到我们,说了一个让他头疼了大半年的问题:

"每天十几个供应商送货,每批货都带着厚厚一摞质保书。我们IQC(来料检验)的人手就那么3个人,一张一张核对参数、翻历史记录、手写检验报告……一天蹲在收货区根本出不来。"

更要命的是,去年有一批端子送错了规格——图纸上标的是0.5mm厚的铜片,供应商发了0.3mm的。IQC当时没仔细看质保书上的规格参数,直接签了字。等产线上料发现压接不紧的时候,已经做进去了一批半成品。那次报废直接赔了8万多。

这篇文章就记录我们是怎么帮他们解决的——不是简单买个扫描枪或者上套MES,而是用AI Agent把来料检验的流程串起来,让机器做重复劳动,让人做判断。

一、现场情况摸底

去现场蹲了两天,把来料检验的全流程走了一遍:

这其实不是简单的"上套系统"就能解决的问题。来料检验涉及:文档OCR识别、视觉比对、历史数据分析、决策判断、ERP数据同步——五个环节串在一起,每个环节都有不同的处理逻辑和规则。用传统的软件开发方式,每个环节写一个独立模块再集成,周期长、改起来也麻烦。

我的想法是:用AI Agent做编排层,把OCR、视觉检测、规则引擎、ERP对接这些能力串成一个自动工作流。

二、方案设计

整体架构

最终方案分四层:

┌─────────────────────────────────────────────────┐
│                   用户交互层                       │
│   IQC平板APP(扫码+确认) + 看板(实时状态)        │
├─────────────────────────────────────────────────┤
│                AI Agent 编排层                    │
│   来料接收Agent → 质保书解析Agent → 检验决策Agent  │
│   → 结果输出Agent(推送ERP+生成报告)              │
├───────────────────┬─────────────────────────────┤
│    感知层(边缘AI网关)    │    数据层              │
│  • 高拍仪OCR(质保书)    │  • 供应商数据库         │
│  • USB工业相机(外观检)  │  • 检验标准库           │
│  • 扫码枪(物料批次)     │  • 历史检验记录库        │
└───────────────────┴─────────────────────────────┘

边缘AI网关的角色

在IQC工位部署了一台边缘AI网关,跑了三个服务:

选择把AI Agent跑在边缘网关而不是云端,主要是考虑延迟——每次扫描质保书希望在2-3秒内出结果,云端OCR+Agent编排的网络往返可能到5-8秒。而且工厂网络偶尔会断,本地运行保证断网也能继续工作,断网期间的结果缓存在本地,网络恢复后自动同步。

AI Agent的工作流

AI Agent采用了多Agent协作模式,每个Agent负责一个环节:

Agent 1: 来料接收Agent
  输入: 扫码枪扫描送货单条形码
  动作: 查ERP获取采购订单信息 → 匹配供应商+物料编码
  输出: {供应商, 物料编码, 订单数量, 批次号}

Agent 2: 质保书解析Agent  
  输入: 高拍仪拍摄的质保书图片
  动作: PaddleOCR提取关键字段 → 与检验标准库做参数比对
  输出: {规格参数是否匹配, 关键检测值, 异常标记}

Agent 3: 检验决策Agent
  输入: Agent1+Agent2的输出 + 供应商历史质量评分
  动作: 
    - 如果规格参数不匹配 → 标记"退换"
    - 如果参数匹配但供应商历史评分较低 → 建议"加严检验"
    - 如果参数匹配且供应商历史表现好 → 建议"免检/减量抽检"
  输出: {检验结论, 检验等级, 建议抽样数}

Agent 4: 结果输出Agent
  输入: 检验结论 + IQC确认
  动作: 生成检验报告PDF → 推送ERP更新库存状态 → 发送企业微信通知
  输出: 闭环

三、实施过程

第一阶段:质保书OCR调优(2周)

本以为OCR是最简单的环节——扫描文档提取文字而已。结果27家供应商的质保书,格式五花八门:有的大厂有自己的模板,有的小厂直接在A4纸上手写一张表格,还有的是一式三份的复写纸,字迹模糊得连人都要辨认半天。

PaddleOCR对印刷体识别效果不错,但遇到了几个具体问题:

教训:OCR不是"一拍就认"的,至少在来料检验这个场景里,不同来源的文档质量差异巨大。花时间给每个供应商配模板是绕不开的苦活。

第二阶段:AI Agent流程搭建(3周)

多Agent的编排我们用了LangGraph,每个Agent是一个节点,节点间通过状态图传递上下文。

核心的决策逻辑在检验决策Agent里。我们设计了一个简单的评分模型:

供应商质量评分 = 
  近3个月批次合格率 × 0.4
+ 近3个月交货准时率 × 0.2  
+ 同类物料历史问题数扣分 × -0.2
+ 质保书数据完整性 × 0.2

根据评分和当前物料类别决定检验等级:
- 评分 ≥ 90 且 物料为C类(辅助材料)→ 免检(直接入库)
- 评分 ≥ 80 或 物料为B类(重要零件)→ 减量抽检(正常AQL的50%)
- 评分 < 80 或 物料为A类(关键零件)→ 正常/加严检验
- 上一批有问题 → 强制加严检验

这个评分模型是初版,实际跑了一个月后发现几个问题:

第三阶段:视觉粗检上线(1周)

在IQC工位上放了一台USB工业相机,固定俯拍角度,装了一个可调节亮度的环形LED灯。操作流程:IQC把来料样品(一般3-5个端子/连接器)放在相机下的定位板上,系统自动拍照并运行YOLOv8n模型做外观缺陷检测。

视觉检测的目标不是代替卡尺和投影仪做精密测量——对于需要精确到0.01mm的尺寸,还是靠传统量具。视觉模块解决的是"一眼能看出来的问题":端子有没有明显变形、连接器针脚有没有弯曲、有没有氧化变色、有没有毛刺。

训练模型的数据来自过去一年IQC退回的不良品照片+网上收集的端子/连接器外观样例。约800张图片,做了数据增强后到3000张。模型用YOLOv8n-seg做缺陷分割,对变形和弯针的检出率约90%,误报率初期约12%(主要把反光误判为刮痕),经过调整光源角度和增加训练样本后,误报率降到约7%。

第四阶段:ERP对接和试运行(2周)

这一步花的时间比预期的长。金蝶ERP的接口文档比较老,有些接口没有提供批处理能力——一次只能提交一个检验结果。如果一批来料有10种物料,就要提交10次。在AI Agent里加了批处理队列,用事务性提交保证要么全部成功要么全部回滚。

另一个麻烦是:金蝶里的"物料编码"和IQC手里的"供应商物料号"不是一一对应的。同一个物料,采购部用金蝶编码,供应商用自己的编号,IQC又按供应商编号来管理。我们建了一张映射表,让AI Agent在收到送货单时自动做匹配——匹配不上的标黄由人工指定。

四、实际效果

系统上线跑了3个月后,我们统计了一些数据:

来料检验时间:从每批约40分钟缩到约5分钟
其中OCR解析约10秒,AI Agent决策约3秒,视觉检测约8秒,剩下的主要是IQC确认、放样、签字等不可压缩的人工操作。
3个月内拦截了4次批量不良
2次是规格参数与采购订单不匹配(质保书参数OCR比对发现的),1次是端子外观氧化(视觉检测发现的),1次是批次号与质保书不符(AI Agent交叉校验发现的)。
免检比例从0%提升到约18%
评分高的稳定供应商,部分C类物料走免检通道,节省了IQC约30%的工作量,让他们可以把精力集中在关键物料和可疑批次上。
月末报告生成:从半天缩到10分钟
AI Agent自动汇总当月的检验数据,生成供应商质量排名、不合格项分布、月度趋势等报告。

五、遇到的问题和解决办法

坑1:质保书批次号和实物批次号对不上

有次AI Agent发现质保书上的批次号"B20251201"和供应商送货单上的批次号"B20251201-1"不一致,但人工一看其实是同一批货,只是供应商打单时多加了后缀。解决方案:在AI Agent的匹配逻辑里加了模糊匹配(去掉连字符和空格后再比较),如果模糊匹配上了就标记"需人工确认"而不是直接"不匹配"。

坑2:IQC一开始很抵触

"以前我一单检40分钟是认真负责,现在5分钟就完了,老板会不会觉得我工作量不饱和?"——这是个真实的心态问题。我们专门和品管主管商量,把IQC的考核指标从"检验批次数量"改为"拦截不良品数量+异常检出率",让大家看到系统帮他们做的是重复劳动,不是替代他们。同时保留了人工复核环节,所有AI Agent的结论都可以被IQC否决——这是信任建立的关键。

坑3:高拍仪光线不均匀导致OCR识别率波动

第一天用的普通高拍仪,发现质保书边缘的文字识别率比中间低。原因是高拍仪的LED补光集中在中心区域。换了带均匀面光源的高拍仪解决。另外操作台上方有顶灯,质保书表面会反光——后来在IQC工位拉了个遮光帘。

坑4:视觉检测的"同一个端子放歪了"误报

YOLO模型训练时大部分样本都是正位摆放的。实际操作中IQC放样位置偏差较大,角度一偏就误判为变形。加了定位槽板固定摆放位置,同时在预处理阶段加了仿射变换校正。

坑5:断电断网场景没考虑够

有次仓库断电,边缘AI网关靠UPS撑住了,但高拍仪和工业相机用的USB hub没有独立供电,断电重启后相机设备号变了(从/dev/video0变成/dev/video1),OCR和视觉服务启动失败。解决方案:在网关启动脚本里加了udev规则固定USB设备号,同时给相机接独立供电USB hub。

坑6:ERP接口限流

金蝶API有每分钟200次调用的限制。平时够用,但月末集中入库的时候(一天入库几十批)会触发限流。AI Agent的队列里加了指数退避重试,并且在每天高峰期(上午10-11点集中到货)提前把检验结果缓存起来,错峰提交。

六、个人的思考

这个项目做完,有几个让我印象深刻的体会:

AI Agent在工厂落地,最合适的角色是"流程编排"而不是"替代人"。传统的自动化做不了灵活判断——规格参数匹配不上,是直接退货还是让步接收?这需要有上下文理解。AI Agent的优势就在这里:它能把OCR、视觉、规则引擎、ERP这些各司其职的工具串起来,根据上下文做不同的决策分支。

数字化最难的地方,往往不在技术,在"把模糊的规则变成确定的数据"。来料检验做了这么多年,很多规则是在IQC脑子里或者写在墙上歪歪扭扭的作业指导书里。比如"这个供应商的端子公差要严一点",在系统里就得把它量化成具体的阈值和校验规则。梳理这些规则花的时间比写代码多一倍。

"先跑起来再优化"在工厂场景里行不通。在互联网产品可以灰度发布、边跑边修,但在工厂里,IQC环节出错直接影响产线投料。系统上线前,我们把AI Agent的每个决策分支都"模拟跑"了一周——用历史数据回放的模式,每批来料同时走人工和AI两套流程,对比差异,有分歧的拉上品管一起讨论。等差异率降到约5%以下才切到正式模式。

数据积累是持续优化的燃料。前3个月积累的供应商质量数据,已经开始反哺到采购决策了——采购部在评新供应商时,会参考AI Agent生成的质量评分历史。这不是我们当初设计的功能,但数据多了自然就有这种衍生价值。

七、给你的建议

如果你的工厂也在考虑来料检验数字化,几点实际建议:

  1. 先梳理供应商质保书的格式多样性——如果大部分供应商的质保书是标准印刷模板,做OCR门槛很低;如果以小厂手写为主,OCR投入产出比要谨慎评估
  2. 别上来就想全自动化——把"决策辅助"作为第一步:AI Agent给出结论建议,IQC确认后才执行。等大家建立了信任,再逐步开放自动执行权限
  3. 供应商质量评分模型要持续调——我们的初版评分只看合格率,后来发现单一指标会"骗人"。把权重、缺陷等级、时间衰减等因素加进去后结果才合理
  4. QC工位的物理环境别忽视——光线、空间、操作台高度、设备走线……这些细节决定了系统能用 vs 好用的区别
  5. 把IQC当合作伙伴——他们是来料检验最懂的人,系统的规则定义、阈值设定、异常判断都需要他们的经验输入。系统让他们少做重复劳动、多关注真正有风险的问题,这才是双赢