ARTICLE DETAIL

资讯详情

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

国产AI算力芯片选型指南:推理与边端场景实战解析

国产AI算力芯片选型指南:推理与边端场景实战解析 上个月帮客户选型一套工业视觉检测方案整机预算压得很紧。我们按惯性思维先列出了NVIDIA Jetson——毕竟跑YOLO系列、做模型转换、上TensorRT整套流程都熟。但一算价格、一看供货周期立刻就不淡定了。于是转头把国产AI算力芯片方案挨个看了一遍包括算能的边缘盒子、瑞芯微的开发板、昇腾的Atlas系列甚至还有海思的IPC芯片方案。这一轮调研收获挺大。坦白讲以前我对国产AI芯片的印象是“参数漂亮落地费劲”但真把模型拿过去跑了一遍之后结论有了一些调整。这篇文章就围绕一个核心问题展开国产AI算力芯片到底有哪些主流品牌各自适合什么场景以及为什么我认为推理和边端才是国产芯片当前最现实的突破口。内容主要面向正在做AI方案选型、或者想在端侧/边缘侧落地模型的工程师也欢迎对行业格局感兴趣的朋友参考。1. 国产AI算力芯片的真实版图别只盯着训练卡很多人一提起国产AI芯片第一反应就是“训练卡能不能对标A100”这个视角其实非常片面。国产AI算力芯片的产品形态远不止训练卡一种从云端训练、云端推理到边缘盒子和IPC里的轻量级NPU都有对应的玩家。真正在市场上挣到钱、挣到口碑的往往不是那个参数最漂亮的训练卡而是某个细分场景里的“小芯片”。1.1 头部阵营从训练到推理的完整覆盖华为昇腾系列应该排第一个说。目前市面上真正打过硬仗的国产AI芯片昇腾的落地案例是最多的。昇腾的产品线覆盖比较全训练侧有昇腾910系列推理侧有昇腾310系列后来还有310P做边端推理性价比不错。昇腾最值钱的东西是CANN这套工具链相当于国产的CUDA虽然开发体验上还有差距但至少在认真做而且Atlas系列服务器的出货量摆在那里市场上能找到大量现成的部署案例。昇腾310推理卡在视频分析、OCR识别这类固定模型推理场景中表现稳定CANN工具链对ONNX模型的支持也相对成熟上手路径比较清晰。寒武纪这一两年声量很大。思元系列从290、370到590覆盖训练和推理MLU架构和英伟达的思路不完全一样。寒武纪在落地上的打法偏“跟单”很多智算中心项目里都能看到思元的身影这也导致它的营收波动比较大。从开发者角度看寒武纪的Cambricon SDK上手有一定门槛但好在文档比较规范社区也在慢慢起来。如果团队有较强的C能力愿意投入做底层适配寒武纪在训练和推理侧都能给出可用的方案。昆仑芯是百度的严格说不是纯对外卖芯片的厂商更多是自家业务驱动。P系列训练卡在百度的搜索、文心大模型上大量自用也从侧面证明了稳定性。对外销售也做但占比没那么高。如果你想采买的话要看能不能进入它的客户名单。我了解到的信息是昆仑芯的优先供应对象还是百度自己的业务线外部客户能拿到的配额和售后响应都不如自家业务那么直接。1.2 第二梯队训练卡之外的差异化竞争燧原科技主攻云端训练和推理云燧系列在部分互联网公司有过规模化部署的公开案例。燧原的打法和英伟达早期有点像先做训练卡再往推理下沉和智算中心合作比较深。壁仞科技的BR100系列单卡算力指标做得非常高但生态起步晚落地案例偏少属于“指标党”喜欢的硬件实际项目中遇到的不多。天数智芯的智铠系列主要做推理之前在一些AI推理项目中见过整体中规中矩。摩尔线程比较特别它做的是通用GPU架构兼容CUDA的迁移工具做得比较激进会有一批原来写CUDA的程序员愿意试因为迁移成本低。摩尔的思路一句话概括把CUDA生态里的代码尽量少改就能跑起来。如果你团队里的代码大量用了CUDA的底层库迁移到摩尔线程上的学习成本会比其他国产芯片低不少。但要注意兼容层带来的性能损耗也是真实的不是所有算子都能跑到理论性能。1.3 边端特种兵真正挣钱的可能是这些边端芯片是另一个世界很多做AI训练的人可能压根不熟悉算能的BM1684、BM1688系列在边缘盒子市场占有率很高就是那种方方正正的AI BOX火车站、加油站、工厂流水线上一大堆。算能的核心优势是工具链和生态相对成熟TPU-MLIR把ONNX模型转成bmodel的流程比较顺社区资料也多。地平线的征程系列主攻车载从征程2到征程6智能驾驶前装量产的渗透率不错。黑芝麻智能的华山系列也做车载芯片主打L2到L3的场景。这里要提一类容易被忽略的玩家瑞芯微、晶晨、全志这些做消费级SoC的公司它们也把NPU集成进了芯片。比如瑞芯微的RK35886TOPS NPU几千块的开发板就能跑不少视觉模型做产品的性价比极高。海思的HI3516CV610这类IPC SoC也内置了轻量级AI能力很多摄像头里的目标检测就是在这类芯片上跑的。这类SoC的价格低、功耗低适合大规模出货的产品而不是实验性质的Demo。边端市场最大的特点是碎片化没有一家能用单一芯片通吃所有场景。这也恰恰是国产厂商的机会所在——愿意为具体场景做定制愿意到现场一起调这是国际大厂很少愿意干的事。2. 为什么说推理是国产芯片最现实的突破口先把我自己的立场放这儿短期三年内国产AI算力芯片想在训练市场正面挑战英伟达我持保留态度。原因不在算力峰值而在整个生态闭环。而推理市场刚好反过来规模大、容错高、价格敏感而且生态依赖度比训练小得多这才是国产芯片能撕开的口子。2.1 训练生态壁垒CUDA不是白叫的你训练一个模型用到的东西远不止一个kernel要分布式数据并行吧DDP/DeepSpeed这些框架和NCCL深度绑定。要混合精度吧AMP实现。要用FlashAttention吧工程实现就看CUDA的生态。国产芯片就算硬件浮点算力和显存带宽都对齐了把模型迁过来跑的速度可能也只有原来的三分之一因为周边库、通信算子、内存管理都在拖后腿。这个问题的本质是生态惯性。全世界几百万AI工程师绝大多数人第一个模型就是在英伟达GPU上跑通的心智和代码习惯都已经固化。训练场景一次训练要跑几周甚至几个月谁敢轻易拿一套不成熟的栈去冒险所以训练市场是硬骨头短期不是国产芯片的主战场。这不是说国产芯片永远追不上训练而是说商业上最理性的路径是先绕开正面战场。2.2 推理市场刚好反过来规模大、容错高、价格敏感推理市场的逻辑完全不一样。几个特征值得单独列出来讲规模大训练只需要训一次推理是每一次请求都在跑。无论是云端API还是本地部署推理设备的采购量远大于训练设备。同样一个模型训练只需要几十张卡跑一个月推理可能需要在几百张卡上跑三年。容错高推理任务的精度要求并没有训练那么苛刻很多场景可以接受INT8量化带来的一两个点的精度损失换来几倍的吞吐提升。这意味着芯片可以用较小的FP32算力靠INT8的专门优化来弥补。价格敏感推理客户很多是做商业服务的每一分钱都要算进成本。单卡单价、推理每token成本、每路视频成本这些都是硬指标谁便宜谁更有竞争力。英伟达在这块的价格策略往往不像国产厂商那么灵活。边界明确推理的算子集合比训练小得多一个Transformer的forward pass基本就是若干个算子不断重复。这意味着国产芯片可以把有限的优化精力集中在几个核心算子上做到极致。所以你看推理这个市场把“硬件指标”和“生态完整度”解耦了。英伟达的护城河在这里依然存在但没有训练那么深不可测。国产芯片只要把TensorRT/vLLM/SGLang这些主流推理引擎适配好把INT8量化做好是完全有机会切下一块大蛋糕的。2.3 推理场景的选型指标不要只看TOPS这里分享一个实操中很重要的经验在推理芯片选型时别只看TOPS数字。TOPS是理论指标前提是峰值频率、满算子利用率、以及是否支持稀疏化实际跑起来能到理论值的50%就不错了。我见过一款芯片标称16 TOPS实际跑一个YOLOv8s模型帧率还跑不过另外一款标称8 TOPS的芯片原因就是后者对卷积算子的利用率更高。我建议重点看三个指标实际吞吐量tokens/s或frames/s拿你真实要跑的模型量化后跑一遍看每秒能处理多少请求/帧。这个数字比任何PPT里的TOPS都真实。内存带宽GB/s很多推理计算是带宽受限而不是算力受限。比如大模型推理每个token都要把权重过一遍权重是存在显存里的带宽不够什么都白搭。每token/每路的成本把整机价格、功耗、算力综合折算成单位成本。很多国产方案在这种综合折算上反而是赢家。还有一个经常被忽略的点动态形状dynamic shape的支持程度。云端推理经常遇到长短不一的输入比如LLM的输入长度每次都不一样如果推理引擎不支持动态shape就要做padding浪费算力。不少国产芯片在这块的支持比英伟达弱适配时要特别留意。我在实际项目里吃过这个亏模型转换工具默认不支持动态shape最后只能固定输入长度导致短请求也按长序列算吞吐直接掉了一半。3. 边端场景国产芯片的主场优势如果你把视野从机房移到产线、路侧、车内、摄像头里“边端”才是国产AI芯片目前最舒服的位置。推理是突破口边端则是最具体的战场。原因不复杂云端的游戏规则还是英伟达定的但边端的游戏规则是中国厂商定的——低功耗、低成本、快速定制、贴身服务。3.1 端侧推理的刚需场景与直接需求端侧推理的爆发逻辑很朴素不是所有数据都能上云。产线上的质检图片涉及工艺机密不能随便传加油站、园区里的视频流涉及隐私合规不能上公有云无人车、机器人需要毫秒级响应网络来回的几十毫秒都等不起还有大量野外、移动、弱网场景根本连不上云。这些场景里端侧直接给你算好了只把结果同步出去成本和风险双双降低。我见过太多所谓的“智能摄像头”“AI盒子”拆开看里面其实就是一个国产AI SoC加一套跑YOLO或其他模型的板卡。这类设备没有惊艳的技术但就是能稳定出货、稳定使用这比任何炫技都重要。典型场景清单如下工业视觉缺陷检测、字符识别OCR、分拣定位对延迟要求极高经常要求在100毫秒内给出结果智慧城市/园区人脸抓拍、车牌识别、车辆属性分析、行为分析通常是7x24小时连续运行散热和稳定性要求很高智能座舱与驾驶驾驶员疲劳监测DMS、乘客监测OMS、低速泊车辅助对芯片的功耗和车规级可靠性有严格约束机器人SLAM建图、目标识别、导航避障追求的是低功耗下的实时响应新零售客流统计、动线分析、货架识别成本敏感度极高单店投入可能只有几千元。3.2 功耗与成本边端决策的第一性原理边端选芯片的逻辑和云端完全不同。云端你可以接受300W、450W的板卡用大风扇吹着边端盒子可能只有一个被动散热壳子整机功耗要控制在15W、20W以内甚至电池供电的设备要压到5W以下。功耗直接决定产品形态和成本这是边端方案的第一性原理。一台边缘AI盒子如果功耗高就得加风扇、加散热片、加大外壳成本蹭蹭往上走。而国产芯片通常是从低功耗SoC的基因里长出来的比如瑞芯微、地平线的芯片都是带NPU的SoCCPU、NPU、VPU、ISP一体的单板功耗能压到很低的水平。我在一个项目里用了RK3588整机无风扇外壳开孔散热满载功耗不到20W深夜在厂房里运行几乎没有噪音这种体验是那些动辄几十瓦的“小GPU盒子”给不了的。成本方面NVIDIA Jetson的算力/性能确实能打但单颗模组的价格和供货周期经常成为项目瓶颈。很多客户的要求是“整机控制在3000元以内交期四周后面要有持续供货保障”这种单子NVIDIA体系很难接得住反而是国产方案跟着项目走供货、定制、售后都灵活。尤其当项目做到几十上百台的小批量时国产厂商愿意响应而代理商体系下的国际大厂往往只关心你一次拿多少片。3.3 碎片化市场定制能力和贴身服务是护城河边端市场的最大特征就是碎片化前一个项目是工厂质检后一个项目是港口识别集装箱锁销需求千差万别。每家客户要求的模型、分辨率、接口协议都不一样不是一张通用卡能通吃的。这时候谁愿意改驱动、改工具链、甚至改芯片配置谁就更容易赢。国产厂商在这方面的优势很明显——很多芯片原厂有专门的技术支持团队目标就是陪着你把项目落地。遇到算子不支持、格式转换报错一个电话就能找到人。这在英伟达的体系里不太现实都是靠社区自己查。另一个优势是定制周期短海思和瑞芯微这类SoC厂商会在芯片里预留一些专用的图像处理加速单元比如缩放、滤镜、镜头校正这些单元用好了能省下不少NPU算力。另外边端场景对“数据安全”的要求越来越高。越来越多的政企项目明文要求数据不出域只能用本地推理这直接把云推理的方案挡在门外。这种趋势对国产边端芯片是结构性的利好不是某一次招标的运气。4. 从模型到芯片推理部署的实操链条前面讲了品牌格局和突破口逻辑这一节落到具体干活。不管你在云端跑LLM还是在边端跑YOLO把模型从PyTorch搬到国产芯片上都绕不开一条部署链路。我把云端和端侧的实操路径分开讲并写清楚里面最容易被卡住的地方。4.1 模型转换与量化绕不开的第一步不管是云端还是端侧把PyTorch模型跑到国产芯片上的第一步永远是把模型导成标准格式。我自己的流程一般是这样的用PyTorch训练/拿到预训练模型先导出ONNX检查算子的芯片支持情况不支持的就改写或替换比如把某些Transformer算子拆成更基础的算子组合用芯片厂商的转换工具做转换比如瑞芯微的RKNN-Toolkit、算能的TPU-MLIR、昇腾的ATC、海思的HiSVP/MPP工具链做量化校准用一批有代表性的图片/样本数据跑一遍得到量化后的模型在芯片上做精度对比确认精度掉点在可控范围内。每一次转换都相当于一次“翻译”语言系统不一样语义不完全对齐。算子支持是最常见的坑某些网络层在GPU上很常见但NPU上没有原生实现。比如一些较新的注意力机制变体或者某些激活函数别想当然以为一定有。我建议在项目启动第一天就把模型结构发给芯片原厂做一次算子预检查能省掉后面几周的返工。量化的坑主要集中在校准数据集的选择上。曾见过一个项目校准集用了公开数据集结果推理时在真实工业图片上精度崩了。原因就是校准集分布和实际场景分布差异太大。正确做法是从真实现场抽一批代表性样本甚至直接在线校准。量化后还要重点检查小目标和大目标漏检率的变化——量化往往会损失边界框的回归精度尤其在小目标上表现明显。4.2 大模型推理服务从vLLM到sglang serve聊完端侧视觉再聊聊LLM推理。大模型推理这两年也出现了大量国产芯片适配的实践。早期大家都说国产芯片跑不了LLM现在不少场景已经能跑起来了尤其是一些量化后的7B、13B、14B模型以及一些垂直行业的私有化部署。推理服务层面的选择目前主要就是vLLM和SGLang两家。SGLang的核心优势是RadixAttention技术简单理解就是自动缓存了前缀KV处理多轮对话和多请求共享前缀时效率很高。启动一个SGLang服务基本是这样sglang serve --model-path /path/to/model \ --host 0.0.0.0 --port 8000 \ --tp-size 1 --quantization int8在国产芯片的栈上很多厂商也提供了类似接口。关键点在于你是否能用OpenAI兼容的接口去访问服务如果能上层业务就不需要改动。很多国产芯片的推理栈都兼容了OpenAI API格式做方案设计时尽量选这类芯片能省大量集成工作。我建议想深入理解的人看一些开源项目比如基于vLLM的精简实现nano-vllm它把vLLM复杂代码里最关键的功能拎出来做了最小化实现。读懂了它的PagingAttention、连续批处理、投机解码再看任何推理引擎文档都能很快上手。这套知识的价值是通用的不绑定硬件平台。vLLM和SGLang的差异可以看下这张表格维度vLLMSGLang核心优化PagedAttentionRadixAttention多轮对话复用有限前缀缓存效率极高编程接口OpenAI兼容OpenAI兼容适合场景通用大模型API服务多轮对话、共享前缀密集、Agent场景我的经验是如果业务里主要是常识问答、内容生成这类单轮或短对话请求vLLM已经够用如果要做Agent、多轮工具调用、同一个系统提示词发给大量用户的场景SGLang的前缀缓存收益会非常明显。4.3 端侧部署的典型路径以YOLO系列为例端侧部署最常见的任务就是跑YOLO系列的目标检测。从YOLOv8到YOLOv11几乎每个边缘AI项目里都能碰到。下面用YOLOv8做例子走一遍典型的端侧转换流程。第一步训练好模型后先导出ONNX。注意输入分辨率先在GPU上测好你这个业务需要的最小分辨率端侧分辨率太高会很伤性能。很多项目为了精度把输入拉到1280x1280到了端侧发现帧率只有个位数最后还得降回640x640。第二步用芯片厂商工具把ONNX转成目标格式。算能是转bmodel瑞芯微是转rknn海思是转wk/om。这一步最常遇到的问题是模型的输出层比如检测头里的reshape和Transpose有些NPU不友好需要调整模型结构。我通常的做法是修改导出脚本把检测头里的动态操作在模型外部实现让NPU只跑主干网络后处理放到CPU上做。第三步做INT8量化准备好校准集。这块的教训前面提过校准集必须贴近真实场景。第四步在开发板上先跑通单张图片推理对比输出后处理前的检测框数据确认精度没有明显掉点。这个步骤别偷懒一旦量化后精度崩了后面的集成全是白费。对比的时候不要只看mAP要看具体业务指标比如漏检率、误检率、以及边界框偏移量。第五步把后处理逻辑优化掉。NMS尽早用一个轻量级实现或者放到CPU线程并行。很多端侧芯片的NPU只负责卷积计算NMS这类操作如果也塞进NPU反而慢。第六步做Pipeline优化取流解码和NPU推理并行多个线程之间用队列解耦尽量把NPU的空闲时间压到最低。推理结果的保存大家也要重视。比如YOLOv11跑完一轮视频流你要把框画回去、生成本地记录、或推送结构化数据到平台这一步经常被低估。建议直接设计成异步任务推理线程只负责把检测结果打进消息队列保存逻辑放到单独的线程里别在推理线程里做文件IO或网络请求。我在一个露天停车场项目里最初就是在推理线程里直接写JSON文件结果推理帧率被磁盘IO拉低了三成改成异步队列后立刻恢复正常。5. 我踩过的坑与国产芯片选型建议最后一部分把我这几年在国产芯片项目里踩过的坑和总结的选型经验分享出来。这些内容没有写在任何官方文档里但恰恰是决定项目成败的地方。5.1 兼容性陷阱“文档完美”和“实现骨感”第一个坑芯片厂商文档写支持的算子实际工具链一转换就报错。圈子里管这叫“paper support”。应对方法很简单选型之前拿你的真实模型做一次完整的转换测试。不要信PPT也不要信厂商给的benchmark就是拿一个你的业务场景里最典型的模型从导出到转换到板端运行完整跑一遍。这一步能筛掉七成不靠谱的方案。我印象最深的一次是某芯片官方文档明确写了支持某个注意力算子结果转换过程中直接报“Unsupported operator”联系技术支持对方说这个算子要等下一个SDK版本才真正开放。幸好我们在项目早期就做了转换验证如果等到联调阶段才发现整个项目进度都会受影响。第二个坑动态shape支持差。很多国产NPU在模型输入上要求固定shape或者有限制。比如摄像头输入是1920x1080模型输入是640x640没问题但如果业务里会出现不同分辨率而NPU不支持动态shape就得做letterbox填充这会影响小目标识别率。设计阶段先把分辨率的边界定死不要给模型留“灵活处理”的余地。第三个坑量化精度问题。刚才提到了校准集要贴近真实场景。再补一点如果对精度极敏感优先考虑FP16不要一上来就INT8。许多国产芯片的FP16算力其实不差真正爆雷的都是INT8量化。FP16的问题是模型体积翻倍、带宽压力大但至少稳定可控。5.2 算力、存储与带宽的平衡选型时我会显式地把三个数字拉出来放在一张表里对比TOPS算力内存带宽GB/s最大可用的系统内存/显存只看TOPS会吃大亏。很多边端芯片TOPS标得很高但内存带宽只有几十GB/s跑一个分辨率稍大的模型就直接带宽瓶颈。大模型推理更吃带宽权重每一层都要过一遍带宽小了吞吐很难看。一个比较朴实的经验是如果你要跑的模型是Transformer、ViT这类内存带宽的权重应该排在TOPS前面如果是纯CNN小模型TOPS更关键。下面是我在几个常见平台上做视觉模型选型时的粗略参考具体数据以你拿到的工具链版本和模型结构实测为准平台典型算力常见定位适合的模型规模瑞芯微RK35886 TOPS NPU轻量级AI盒子和开发板YOLOv8s、OCR小模型算能BM168816 TOPS INT8AI BOX、视觉分析一体机YOLOv8m、多路视频流昇腾310P8-16 TOPS云端推理卡和边缘服务器视觉模型、轻量LLM海思HI3516CV610轻量NPUIPC摄像头、智能前端单路目标检测功耗和散热也要实测不要只看标称。有些开发板标称15W实际满负载能到25W选电源和外壳之前最好用真实负载拷机测试两小时以上看表面温度和降频情况。工业场景尤其要注意环境温度夏天厂房里40度环境温度很常见散热设计不过关的板卡会明显降频。5.3 如何从英伟达生态平滑迁移最后聊聊迁移。如果你的团队现在全栈都是英伟达真要切换到国产芯片我有几个实操建议。第一先把模型和接口层抽象出来。在业务代码里不要到处直接调用CUDA接口通过ONNX Runtime或vLLM/SGLang这类通用推理框架接芯片。这样底层换了上层不用动。这是最大的一条建议。我们之前一个视频分析平台所有业务逻辑都打在ONNX Runtime的抽象层上后面换推理后端只花了两周。第二从推理项目而不是训练项目开始迁移。先选一个业务上有真实需求的推理场景搭一个最小可用的国产芯片集群跑起来测吞吐、测延迟、测稳定性让团队找到信心。不要一上来就动训练集群。训练集群的迁移牵扯太多需要一个专门的长期项目来做。第三和芯片原厂的技术团队建立直接关系。国产芯片厂商通常都有免费的技术支持服务但前提是你愿意把自己的技术栈和遇到的问题讲清楚。只要你认真做项目原厂一般也愿意给priority支持。要求他们提供私有文档、release note、内部sample代码能少走很多弯路。遇到问题提工单时把复现步骤、模型文件、日志一起打包响应速度会快很多。第四工具链的版本管理要跟上。国产工具链迭代速度很快但版本之间接口变动也比较频繁。建议把工具链的Docker镜像固定下来写清楚你用的是哪个版本的转换工具和runtime项目里统一使用避免组内不同成员跑出来结果不一致。我们项目里吃过这个亏两个人用不同版本的RKNN-Toolkit转换同一份模型精度表现差了半个点排查了半天才定位到是工具链版本差异。做了这么多国产芯片相关的项目我个人的体会是如果你期待国产芯片像英伟达那样“拿来就跑”大概率会失望但如果你把它当成一个需要认真适配的嵌入式平台愿意在模型转换、量化、算子改写上花时间它反而能给你惊喜。在推理和边端这两个场景里性价比和灵活性往往比绝对性能更重要而这恰恰是国产芯片最能打的地方。希望这篇内容对正在纠结芯片选型的同行有点帮助。
返回列表