ARTICLE DETAIL

资讯详情

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

AI Factory与AI for AI:大模型如何重构智能制造技术底座

AI Factory与AI for AI:大模型如何重构智能制造技术底座 1. 从两个“AI”说起这个标题到底在讲什么“AI for AI”和“AI Factory”这两个词第一次看到会觉得有点绕。我刚开始接触智能制造这块的时候也懵后来在几个工厂现场蹲了一段时间才慢慢理清楚。简单说AI for AI指的是用AI技术去优化AI自身的研发、训练、部署流程比如用大模型自动生成训练数据、自动调参、自动做模型压缩而AI Factory则是把这套能力工程化、流水线化变成一个可以持续产出AI能力的“工厂”让智能制造场景里的质检、排产、设备维护、工艺优化这些环节都能像流水线一样稳定地获得AI能力的供给。这个标题真正想聊的是大模型怎么把新一代智能制造的技术底座给重新搭一遍。注意是“重构底座”不是“加个功能”。底座这个东西平时看不见但一旦换了上面所有的应用逻辑都得跟着变。适合谁来读这篇如果你是做工业AI检测、数字孪生、设备预测性维护的工程师或者你正在负责企业大模型私有化部署、多模态质检系统的选型那这篇内容基本就是给你写的。如果你只是好奇大模型在工厂里到底能干嘛也能看懂我会尽量用现场的例子来讲。我自己的背景是做过几年工业视觉检测和数字孪生项目最近两年主要在做大模型在制造场景的落地。踩过的坑不少有些是技术选型的问题有些是工程化的问题还有些是“想得太美”的问题。下面我把这套东西拆开讲尽量讲透。2. 为什么智能制造需要“AI Factory”而不是零散AI2.1 传统工业AI的三大痛点先说清楚为什么原来的路子走不通。过去几年工业AI项目基本是“一场景一模型”的模式。质检要一个缺陷检测模型排产要一个调度模型设备维护要一个预测模型每个模型单独训练、单独部署、单独维护。这种模式在项目数量少的时候还能撑住一旦铺开到几十条产线、上百个工位问题就炸了。第一个痛点是数据孤岛严重。质检的数据在视觉系统里设备振动的数据在SCADA里工艺参数在MES里彼此不通。你想做一个跨工序的质量追溯得先把数据从四五个系统里抽出来对齐光数据清洗就能耗掉项目一半的时间。第二个痛点是模型迭代慢。一个缺陷检测模型从标注到上线顺利的话两三个月不顺利半年。但产线上的产品换型可能一个月就一次模型根本追不上。我见过一个做服装检测的团队客户换了面料原来的模型直接失效重新标注训练又花了六周产线停了两周等模型。第三个痛点是算力利用率低。每个模型单独占一张卡或者一台服务器白天跑推理晚上空着。几十个模型下来算力浪费非常严重。而且不同模型的峰值时间不一样有的白天忙有的夜班忙没法互相调剂。2.2 AI Factory的核心思路把AI能力变成“可调度资源”AI Factory 的思路说白了就是把AI能力从“手工作坊”变成“流水线”。这里面有几个关键转变。第一从“模型为中心”转向“数据算力模型”统一调度。不再是一个模型绑一套资源而是把数据、算力、模型都抽象成资源池按需分配。质检任务来了自动调度视觉模型和对应的算力排产任务来了自动调度调度模型。这背后需要一套统一的资源编排层。第二从“人工调参”转向“自动优化”。这就是 AI for AI 发挥作用的地方。用大模型或者强化学习来做超参搜索、数据增强策略生成、模型结构搜索把原来需要算法工程师干几周的活压缩到几小时。我实测过一个自动数据增强的方案在钢丝绳表面缺陷检测上把标注数据的需求量从8000张降到了2000张mAP还涨了3个点。第三从“单点部署”转向“端边云协同”。工厂现场的情况很复杂有的工位要求毫秒级响应必须边缘推理有的任务可以容忍秒级延迟放云端更划算。AI Factory 需要能根据任务特性自动决定部署位置。这里数字孪生就派上用场了先在孪生环境里仿真验证再决定推到边缘还是云端。2.3 大模型在其中的角色不只是“更大的模型”很多人以为大模型在智能制造里就是拿来做个问答机器人那就太小看它了。大模型在这个体系里至少扮演四个角色。角色一数据引擎。用大模型做数据合成、数据标注、数据增强。比如用多模态大模型自动给工业图像打标签或者生成稀有缺陷的合成样本。我试过用开源多模态模型做钢材表面缺陷的预标注人工复核的工作量降低了大概60%。角色二模型工厂的“调度大脑”。用大模型来理解任务描述自动生成训练脚本、选择模型架构、配置超参。这就是 AI for AI 最直接的体现。你输入“检测钢丝绳断丝精度要求99%延迟小于50ms”它自动给你出一套方案。角色三人机交互层。工厂里的老师傅不会写代码但他知道工艺。大模型可以把自然语言指令翻译成系统操作比如“把三号线的质检阈值调紧一点”直接转成配置变更。角色四知识沉淀载体。把工艺文档、维修记录、质检报告都灌进大模型形成一个可查询、可推理的知识库。新员工遇到问题直接问比翻手册快得多。3. 技术底座重构五个关键层面的拆解3.1 算力层从“独占”到“池化弹性”算力池化是AI Factory的地基。传统做法是每个模型独占GPUAI Factory要求把GPU做成资源池支持动态切分和调度。这里面有几个技术选择。容器化GPU共享是主流方案。用容器把推理服务打包通过GPU共享技术让多个容器共用一张卡。我实测下来对于中小模型参数量小于10亿一张A100可以同时跑4到6个推理服务显存和算力都够用。大模型推理可以用连续批处理continuous batching来提高吞吐把多个请求动态合并成一个批次。算力调度策略需要根据任务优先级来设计。质检这种在线任务优先级最高必须保证延迟训练任务可以排队用空闲算力跑。我一般会设三级优先级在线推理近线训练离线批量任务。调度器每隔几秒检查一次资源水位动态调整。边缘算力不能忽略。工厂现场很多工位网络不稳定或者数据敏感不能出园区必须边缘推理。边缘设备的选择要看模型大小小模型用Jetson系列够用大模型边缘部署需要做量化压缩。这里有个经验边缘部署的模型参数量最好控制在10亿以内再大延迟和功耗都扛不住。3.2 数据层从“孤岛”到“湖仓一体向量化”数据层是AI Factory的血液。没有好的数据供给再强的算力也是空转。湖仓一体是当前比较务实的方案。原始数据放对象存储比如MinIO或者S3兼容存储结构化数据放数据仓库用统一元数据管理。这样既能存原始图像、振动信号这种非结构化数据也能存工艺参数这种结构化数据。我一般会用Iceberg或者Hudi做表格式支持增量读取和时间旅行方便做数据版本管理。向量化是大模型时代的新需求。把工艺文档、维修记录、质检报告这些文本数据向量化存进向量数据库支持语义检索。这样大模型做知识问答的时候可以快速召回相关内容。向量数据库选型上Milvus和Qdrant我都用过Milvus生态更全Qdrant部署更轻看团队情况选。数据质量治理是容易被忽略的环节。工业数据噪声大、缺失多、标注不一致。我一般会在数据入湖的时候做一轮质量检查包括完整性、一致性、时效性。对于标注数据会用交叉验证的方式抽检发现标注错误率超过5%就退回重标。3.3 模型层从“单模型”到“模型矩阵Agent编排”模型层是AI Factory的核心产出。这里的关键转变是从“一个场景一个模型”变成“模型矩阵Agent编排”。模型矩阵的意思是不同任务用不同规模的模型。简单任务用小模型比如MobileNet级别的视觉模型复杂任务用大模型比如多模态大模型。我一般会分三档边缘小模型小于1亿参数、云端中模型1亿到100亿、云端大模型100亿以上。任务来了先判断复杂度再路由到对应模型。Agent编排是让多个模型协作完成复杂任务。比如一个质检Agent可能包含视觉检测模型找缺陷、分类模型判断缺陷类型、大模型生成质检报告、决策模型判断是否放行。这些模型通过Agent框架编排起来对外表现为一个统一的服务。我试过用Dify做Agent编排低代码的方式对工程团队比较友好但复杂逻辑还是得写代码。模型微调是让通用大模型适配工业场景的关键步骤。工业领域的术语、工艺逻辑、缺陷特征都和通用领域差别很大不微调直接用效果很差。微调方式上LoRA和QLoRA是性价比最高的选择用少量数据就能获得不错的适配效果。我实测过一个7B模型做工艺问答用2000条领域数据做LoRA微调效果比直接prompt好很多。3.4 数字孪生层从“可视化”到“仿真验证”数字孪生在AI Factory里的角色很多人理解成“三维可视化大屏”那就浪费了。它真正的价值是仿真验证环境。产线孪生可以在虚拟环境里模拟产线运行测试新的AI模型或者调度策略。比如你训练了一个新的质检模型先在孪生环境里跑一遍历史数据看看误检率、漏检率、吞吐量确认没问题再推到真实产线。这样风险可控不会因为模型问题导致停线。设备孪生可以模拟设备运行状态生成故障样本。工业场景里故障样本非常稀缺真实故障可能几个月才出现一次。用设备孪生可以合成各种故障模式的数据补充训练集。我做过一个钢丝绳检测的项目用孪生环境合成了断丝、磨损、锈蚀三种缺陷的样本把训练数据扩充了5倍模型召回率提升了8个点。PLC抢答器程序这类东西其实是数字孪生和真实设备联动的接口。孪生环境里的信号要能驱动真实PLC真实PLC的状态要能反馈到孪生环境。这层接口的实时性要求很高一般用OPC UA或者Modbus TCP延迟控制在10ms以内。3.5 应用层从“功能堆砌”到“场景闭环”应用层是最终用户看到的部分。AI Factory的应用层不应该是一堆孤立的功能而应该是场景闭环。质检闭环从图像采集、缺陷检测、分类定级、报告生成到质量追溯全流程打通。大模型在这里的作用是生成质检报告和做根因分析。比如检测到一批产品缺陷率偏高大模型可以结合工艺参数、设备状态、来料批次做综合分析给出可能的原因。排产闭环从订单接入、产能评估、排产优化到执行监控。大模型可以理解订单的自然语言描述自动提取关键约束辅助排产模型做决策。维护闭环从设备监测、异常预警、故障诊断到维修建议。大模型可以结合维修手册和历史工单给出维修步骤和备件建议。4. 实操落地从零搭一个最小可用的AI Factory4.1 环境准备与基础组件选型先说明这里给的是一个最小可用方案适合团队刚开始探索的阶段。大企业可以在此基础上扩展。算力至少一台带GPU的服务器推荐A100 40G或者RTX 4090。如果预算有限3090也能跑但大模型推理会比较吃力。边缘侧准备一台Jetson Orin NX做推理测试。存储MinIO做对象存储PostgreSQL做元数据Milvus做向量库。这三个都是开源的部署简单。容器编排K8s是标配但如果团队不熟可以用Docker Compose先跑起来后面再迁K8s。GPU调度用NVIDIA Device Plugin。大模型本地部署推荐Qwen2.5或者Llama3.17B或14B版本。部署工具用Ollama最简单一条命令就能跑起来。如果要更细粒度的控制用vLLM做推理服务支持连续批处理和PagedAttention吞吐量比Ollama高不少。Agent框架Dify或者LangChain。Dify适合快速搭建LangChain适合深度定制。我一般两个都用Dify做原型LangChain做生产。4.2 数据接入与预处理流水线搭建数据接入是第一步。工业现场的数据源很杂PLC、SCADA、MES、视觉相机、振动传感器协议各不相同。PLC数据用OPC UA接入这是工业标准协议大部分PLC都支持。用open62541或者asyncua库写个客户端订阅需要的数据点。采样频率根据信号特性定振动信号可能要10kHz以上温度压力1Hz就够。视觉数据用RTSP或者GigE Vision接入。RTSP适合网络相机GigE Vision适合工业相机。用OpenCV或者Halcon做取流和解码。图像分辨率根据检测精度要求定一般200万到500万像素够用。MES数据用REST API或者数据库直连。大部分MES都提供API没有的话直接读数据库也行但要注意别影响生产系统性能。数据接入后要做预处理。图像做去噪、增强、裁剪振动信号做滤波、分段、特征提取结构化数据做归一化、缺失值填充。预处理流水线用Airflow或者Prefect编排每个步骤做成独立任务方便调试和重跑。4.3 大模型微调与部署实战微调是让大模型适配工业场景的关键。这里以Qwen2.5-7B为例讲一下LoRA微调的完整流程。数据准备收集领域问答对格式是instruction-input-output。比如{ instruction: 钢丝绳检测中断丝和磨损的区别是什么, input: , output: 断丝是指钢丝绳中单根钢丝断裂表现为局部突起或毛刺磨损是指钢丝表面因摩擦导致的材料损失表现为直径减小或表面光滑。断丝通常由疲劳或过载引起磨损通常由长期摩擦引起。 }数据量至少500条2000条以上效果比较稳定。数据质量比数量重要错误标注会直接带偏模型。微调配置用LLaMA-Factory或者PEFT库。关键参数LoRA rank: 8到16太小欠拟合太大过拟合LoRA alpha: 16到32一般是rank的2倍学习率: 1e-4到5e-5太大不收敛太小收敛慢batch size: 根据显存定7B模型LoRA微调24G显存可以跑batch size 4epoch: 3到5多了过拟合训练监控看loss曲线正常应该是先降后平。如果loss震荡降低学习率如果loss不降检查数据格式如果验证集loss上升早停。部署微调后的模型用vLLM部署支持OpenAI兼容API。启动命令python -m vllm.entrypoints.openai.api_server \ --model /path/to/merged_model \ --tensor-parallel-size 1 \ --max-model-len 4096 \ --gpu-memory-utilization 0.9部署后用curl测试curl http://localhost:8000/v1/chat/completions \ -H Content-Type: application/json \ -d {model: qwen, messages: [{role: user, content: 钢丝绳断丝怎么检测}]}4.4 数字孪生环境搭建与联动测试数字孪生环境用Unity或者Unreal Engine搭建。Unity上手快资源多Unreal渲染效果好但学习曲线陡。工业场景用Unity够用。场景建模用CAD模型导入Unity做轻量化处理。产线孪生要把设备、传送带、工位都建出来。设备孪生要建关键部件的模型比如机械臂、电机、传送辊。数据驱动孪生环境要能接收真实数据驱动。用MQTT或者WebSocket做通信真实设备的状态数据实时推送到Unity驱动模型运动。反过来Unity里的操作指令也要能下发到真实PLC。仿真验证在孪生环境里跑AI模型用历史数据回放或者合成数据测试。比如测试新的质检模型把历史图像灌进去看检测结果和人工标注的差异。确认没问题再推到真实产线。联动测试孪生环境和真实设备的联动要测延迟和一致性。我一般会做一个“镜像测试”真实设备执行一个动作孪生环境同步执行测量两者的时间差。延迟超过100ms就要优化通信链路。5. 常见问题与排查技巧实录5.1 模型部署后延迟高怎么办这是最常见的问题。排查思路从下往上先看硬件GPU利用率是不是满了显存是不是爆了用nvidia-smi看。如果GPU利用率100%说明算力不够要么换卡要么做模型压缩。如果显存爆了减小batch size或者做量化。再看推理框架是不是没用连续批处理vLLM默认开启Ollama没有。如果用的是Ollama换vLLM试试。另外检查是不是每次请求都重新加载模型那肯定慢。然后看网络边缘到云端的网络延迟多少用ping和traceroute测。如果网络延迟超过50ms考虑边缘部署。最后看模型本身参数量是不是太大7B模型在A100上推理延迟大概50ms14B大概100ms70B要500ms以上。如果延迟要求高用小模型或者做量化。5.2 微调后模型效果反而变差这个问题我踩过好几次。原因一般有三个数据质量差标注错误、格式不一致、分布偏差。解决方法是人工抽检把错误数据清掉。我一般会抽10%做人工复核错误率超过5%就全部重标。过拟合训练轮次太多或者LoRA rank太大。解决方法是减少epoch降低rank加dropout。我一般会留一个验证集验证集loss上升就停。灾难性遗忘微调后模型忘了通用能力。解决方法是混入一部分通用数据一起训练比例大概10:1。或者用LoRA这种参数高效微调方法对原模型影响小。5.3 数字孪生和真实设备不同步同步问题一般出在通信链路。排查步骤检查通信协议OPC UA的订阅周期是不是太长默认可能是1秒改成100ms试试。MQTT的QoS等级是不是太低改成QoS 1或者2。检查数据时间戳真实数据的时间戳和孪生环境的时间戳是不是对齐如果不对齐做时间同步。我一般用NTP做时钟同步精度到毫秒级。检查渲染帧率Unity的帧率是不是太低低于30fps会有明显卡顿。降低模型复杂度或者用LOD技术。检查网络带宽数据量是不是太大图像数据很占带宽考虑压缩或者降采样。5.4 常见问题速查表问题现象可能原因排查方法解决方案推理延迟高GPU算力不足nvidia-smi看利用率换卡或模型量化推理延迟高未用连续批处理检查推理框架换vLLM微调效果差数据质量差人工抽检清洗数据微调效果差过拟合看验证集loss减少epoch孪生不同步通信延迟大测ping和traceroute优化协议孪生不同步时钟不同步检查时间戳NTP同步模型漂移数据分布变化监控输入分布定期重训算力浪费资源独占看GPU利用率池化调度5.5 几个独家避坑技巧技巧一模型版本管理要用起来。每次微调都存一个版本记录数据、参数、效果。我见过团队微调了十几版最后不知道哪版效果最好只能重跑。用MLflow或者DVC做版本管理省事很多。技巧二边缘部署先做压力测试。边缘设备算力有限模型跑起来容易过热降频。我一般会连续跑24小时看延迟和温度曲线。如果降频严重要么加散热要么换设备。技巧三数字孪生不要追求全量建模。一开始想把整个工厂都建出来结果做了半年还没上线。后来改成只建关键产线两周就出效果。先做最小闭环再逐步扩展。技巧四大模型输出要做后处理。大模型有时候会胡说工业场景不能容忍。我一般会加一层规则校验比如检测结果必须在合理范围内超出范围就报警人工复核。技巧五数据标注要定标准。工业缺陷标注主观性很强不同人标的结果可能不一样。我一般会先定标注规范做几轮一致性校验Kappa系数到0.8以上才开始批量标。6. 这套东西的边界在哪里说了这么多也得说说这套方案的局限。AI Factory不是万能的有些场景它搞不定。小样本场景如果某个缺陷一年才出现几次数据量根本不够训练。这时候数字孪生合成数据能帮上忙但合成数据和真实数据还是有差距。最终可能还是得靠人工检测。高精度场景有些检测要求99.99%的精度大模型目前还达不到。这种场景还是得用传统视觉算法加人工复核。强实时场景要求毫秒级响应的控制回路大模型插不进去。这种场景用传统控制算法大模型只做外围的监控和优化。成本敏感场景AI Factory的建设和运维成本不低小工厂可能扛不住。这种场景建议先用云服务按需付费等规模上来了再考虑自建。我个人在实际操作中的体会是AI Factory这套东西技术不是最大的障碍组织和文化才是。工厂里的老师傅不信任AI算法团队不懂工艺IT和OT部门各管各的这些问题比技术难解决多了。我的建议是先找一个痛点明确、数据基础好、领导支持的场景做试点做出效果再推广。别一上来就搞大平台容易烂尾。最后再分享一个小技巧大模型微调的时候数据里混一点“我不知道”的样本让模型学会说不知道。工业场景里模型瞎猜比不猜更危险。这个技巧是我踩了好几次坑才总结出来的希望对你有用。
返回列表