首页/新闻资讯/正文详情

Atlas 300V 24G部署YOLO实战:从环境配置到推理加速全攻略

发布时间:2026/9/25 12:09:07 来源:云帆数科 栏目:资讯中心
Atlas 300V 24G部署YOLO实战:从环境配置到推理加速全攻略
这段时间被问得最多的问题就是Atlas 300V 24G这块卡到底能不能跑YOLO、部署起来麻不麻烦。问的人多了我觉得有必要把自己这一轮从拆卡、装环境到把YOLOv5真正跑起来的全过程整理一下。整篇东西适合手里正好有这块卡、想拿来做目标检测部署但还没彻底摸清昇腾工具链的人看就算你手里是Atlas 300I Pro或者其他昇腾推理卡这套思路也基本通用。先说结论Atlas 300V 24G是一块推理加速卡不是通用GPU更不是拿来当训练卡用的。它的算力优势集中在INT8/FP16推理上大显存是它最亮眼的卖点24G足够塞下不少中等规模的模型或者大批量输入。但代价是它不认PyTorch的pth、不认TensorFlow的pb之外的那套CUDA生态你想跑YOLO就得按昇腾的工具链走一遍。这条路我已经踩完了下面把关键节点和坑位一个个说清楚。1. 先搞清楚Atlas 300V 24G到底是张什么卡1.1 它是推理加速卡不是通用GPU更不是训练卡这个问题是很多刚接触昇腾的人的第一道坎。Atlas 300V 24G从名字看像是某款显卡其实它的定位非常明确数据中心或边缘场景下的AI推理卡板载24GB显存走PCIe接口靠PCIe供电典型功耗不高不需要像GPU那样外接8pin电源。它内部用的是昇腾310P系列处理器这个处理器本身就不是为通用计算设计的。你可以把它理解成一个专才图像缩放、矩阵乘、卷积这些AI推理里的高频操作它做得非常快但你要拿它跑科学计算、图形渲染、或者那种需要CUDA通用计算能力的任务它完全使不上劲。网上有人问300V 24G是运算加速卡吗准确回答是它是AI推理加速卡不是通用运算加速卡。它的技能树点在了把训练好的模型高效跑起来这件事上。这个定位决定了你拿到卡之后的第一件事不是去装CUDA而是装昇腾自己的CANN工具链。不要想着把GPU那套代码直接搬过来不可能的路线完全不同。1.2 24G显存解决了什么问题很多人不理解为什么一个推理卡要给24G显存。推理任务模型不大显存为什么需要这么大关键在推理场景的吞吐量而不是单张图延迟。真实业务里你很少只跑一张图通常是几路、十几路、甚至几十路摄像头画面同时过来。如果每张图都独立推理调用开销会被放大更好的做法是把多路画面拼成一个batch一次推理同时处理8路或者16路输入这样算力利用率高得多。24G显存存在的意义就是让你可以放心地把batch开大不用像在部分显卡上那样先算显存够不够用。实测下来YOLOv5s这种轻量检测模型在Atlas 300V 24G上跑batch开到8甚至16都还有余量这对多路视频流分析来说非常实用。它的推理吞吐能力才是这张卡真正的价值所在。1.3 和手头常见GPU的选型对比我这里放一张简单的对比表方便你判断为什么在某些场景下要选Atlas而不是GPU维度Atlas 300V 24G常规推理GPU如几款常见显卡核心定位AI推理加速通用计算推理编程生态CANN / ACLCUDA / TensorRT模型来源需转换为OM格式可直接加载ONNX等格式显存配置24GB因型号而异功耗供电低功耗PCIe供电通常需要外接供电适配难度上手门槛较高生态成熟资料多我的建议是如果你只是做算法验证、不想折腾工具链那GPU仍然是最省事的选择但如果你做产品化部署对功耗、成本、批量推理吞吐有要求Atlas 300V这种卡的优势就很明显了。2. 部署YOLO的技术链路为什么绕不开PyTorch - ONNX - OM2.1 昇腾不认识PyTorch的pth只有OM才是它能加载的可执行程序在GPU世界里你训练完YOLO得到一个pth或者pt文件直接用PyTorch加载就能推理。Stable这种路径非常顺因为GPU的驱动和PyTorch帮你把底层都封装好了。昇腾没有这条路。Atlas 300V 24G能直接加载的模型格式只有OMOffline Model这是昇腾特有的离线模型格式相当于把算子的计算逻辑、内存布局、甚至算子的融合方式全部提前编排好的一个包。你可以简单理解成pth是源代码而OM是编译好的可执行程序。Atlas只认后者。所以任何模型要上Atlas都必须经过模型转换这一步。对YOLO来说最通用、最不容易出问题的链路是PyTorch - ONNX - OM。ONNX是一个中间表示格式几乎所有深度学习框架都支持导出昇腾的ATC工具也把它作为主要输入来源之一。2.2 ATC ACL 是当前最高性价比的路线昇腾生态里能跑YOLO的方案其实不止一种但互相之间有明显的取舍。我按实际体验排个序ATC模型转换 ACL推理手动把ONNX转成OM再调用ACLAscend CL的Python或C接口自己写推理代码。灵活度最高可控性最好也是社区里最常见的做法。缺点是你得自己处理后处理逻辑比如YOLO的置信度过滤、NMS这些都要手写。MindX SDK昇腾官方封装好的推理平台把很多常见推理流程组件化了理论上可以少写代码。但我个人体验是封装度高意味着灵活性低关键是出了报错很难定位出问题时排查成本比写好ACL代码高得多。MindSpore框架如果你用MindSpore训练链路会顺一些但大多数人模型是在PyTorch下训练的迁移到MindSpore重建模型结构反而是额外负担。综合下来ATC ACL是投入产出比最高的路线。虽然代码要手写一部分但整个推理链路完全由自己掌控排错和优化都有方向。2.3 选YOLOv5还是YOLOv8作为起点从我实际部署经验来看如果是第一次在Atlas上跑YOLO我更推荐用YOLOv5作为起点。原因不是YOLOv5比v8强而是它的ONNX导出结构相对简单后处理也好做社区里针对YOLOv5转昇腾OM的踩坑资料更多。等你把v5这条路彻底跑通再换v8只差在输出头结构上理解了原理也就是一两天的事。另外建议优先用官方YOLOv5仓库的export.py来导出ONNX不要自己魔改网络结构。模型结构越标准ATC转换时遇到的算子兼容问题越少。如果你原本的模型加了自定义模块比如特殊注意力机制或者自定义NMS层转到ONNX之后ATC大概率会报算子不支持处理起来比较折磨。3. 环境准备驱动、固件、CANN的安装顺序与版本陷阱3.1 安装顺序驱动、固件、CANN一步乱步步乱我在这块卡上第一次翻车就在环境安装阶段。当时想当然先装了CANN结果后面怎么配都不对。昇腾环境的安装顺序是固定的先装NPU驱动再装固件最后装CANN开发套件。驱动和固件一般会随卡提供或者在昇腾官网硬件驱动页面下载里面有专门的Ascend HDK包里面包含了npu-driver和firmware两个部分。我当时的安装步骤大概是这样的# 进入HDK包目录 # 先安装NPU驱动 ./Ascend-hdk-310P-npu-driver_xxx_linux-aarch64.run --full --install # 安装完驱动后再安装固件 ./Ascend-hdk-310P-npu-firmware_xxx_linux-aarch64.run --full --install驱动固件装完之后安装CANN工具包。CANN的安装包一般叫Ascend-cann-toolkit_x.x.x_linux-aarch64.run也有的版本区分了开发套件和推理运行时NNRT但基本安装动作一致# 安装CANN开发套件会包含ATC转换工具等 ./Ascend-cann-toolkit_xxx_linux-aarch64.run --install装完之后默认路径一般在/usr/local/Ascend下。有一点必须注意服务器环境装完驱动固件后通常需要重启或者至少确认npu-smi能完整列出卡信息再往下走。如果卡没有正常识别后面所有验证都会失败而且报错信息会让你误以为模型转换有问题浪费时间。3.2 用npu-smi info和atc命令双保险验证环境环境装好之后第一件事不是急着转模型而是验证。我的验证习惯是先跑npu-smi info看卡是否被正确识别芯片型号是什么。npu-smi info正常情况下能看到卡的温度、功率、显存使用等信息还能看到Chip Version一栏比如Ascend 310P3。这个信息非常有用后面ATC转换时需要--soc_version参数如果这里查出来是Ascend310P3那模型转换时就要对应写Ascend310P3填错了转换出来的OM模型很可能加载不了。第二步验证CANN是否可用。先source环境变量脚本source /usr/local/Ascend/ascend-toolkit/set_env.sh然后直接执行atc命令帮助信息看工具是否正常输出atc --help如果atc命令找不到大概率是环境变量没有source或者CANN装得不完整如果执行时报动态库错误通常是驱动和CANN版本不匹配这也是一开始必须安装完整hdK包的原因之一。3.3 环境变量与常见版本匹配问题每次打开新终端都需要重新source环境变量。省事的话可以把它写进~/.bashrcsource /usr/local/Ascend/ascend-toolkit/set_env.sh版本匹配是另一大坑。CANN的版本和NPU驱动固件的版本有对应关系华为官方文档里列出了CANN版本与固件驱动版本的配套表。我在安装时就遇到过CANN 7.0和某版固件驱动不兼容导致ATC转换时总是报一个莫名其妙的内部错误。解决办法就是按照配套表把版本对齐。不要盲目下载最新版CANN优先选和你的HDK固件驱动版本配套的CANN版本稳定压倒一切。4. ATC模型转换实操把YOLO变成Atlas认识的样子4.1 从PyTorch导出ONNX时的预处理对齐模型转换之前有一个很容易被忽略的关键步骤导出ONNX时网络输入层的预处理必须和最终推理时你喂给模型的数据保持一致。YOLOv5官方训练时输入的是RGB三通道图像像素范围0~1尺寸640x640。这意味着你在ONNX里看到的输入Tensor应该被设计成吃归一化之后的RGB数据而不是原始的0~255像素。实际工程里有两种处理方式方式A导出ONNX时模型里已经包含归一化层那推理时喂原始像素即可但自定义网络改起来麻烦。方式B导出时使用不带归一化处理的干净输入层之后在推理代码或者AIPP配置里做归一化。我推荐用方式B配合ATC的AIPP配置文件来搞定像素格式转换和归一化。这样有一个非常大的好处YOLO输入Tensor不再需要float32的数据可以直接喂uint8的原始图像数据省去了一轮host侧的像素处理和大量内存拷贝让整个推理流程变快。4.2 atc命令参数逐行拆解环境就绪、ONNX文件也导出了下面是用ATC把YOLOv5 ONNX转成OM的核心命令。我以固定输入shape为例这是最稳的转法atc --modelyolov5s.onnx \ --framework5 \ --outputyolov5s_310p3 \ --input_shapeimages:1,3,640,640 \ --soc_versionAscend310P3 \ --insert_op_confaipp.cfg \ --output_typeFP16这里每个参数我都解释下理解这些参数之后你就不怕参数报错了--framework5指定输入模型框架5表示ONNX。这个数字是ATC约定好的不是随便写的。--output输出OM文件的路径和名称。--input_shape定义输入Tensor的shape格式是输入名:batch,channels,height,width。这里images要和ONNX模型里的输入节点名称完全一致用Netron打开模型看一眼就能确认。--soc_version根据npu-smi info查到的芯片版本填比如Ascend310P3。--insert_op_conf插入AIPP预处理算子的配置文件路径。--output_typeFP16指定模型输出数据类型。YOLO后处理里哪些地方需要转float32后面代码里再处理。这个参数既影响权重精度也影响输出类型一定程度上可以减少显存占用。转换过程中终端会输出大量日志看到success之类字样时说明转换成功。如果报了某个算子不支持优先回到ONNX导出环节把opset版本调到11~13之间重新导出绝大部分YOLO的算子兼容问题都能解决。4.3 aipp配置文件到底在做什么AIPP配置文件是昇腾离线模型转换里最实用的设计之一。它允许你在模型转换阶段就固定好输入图像的前处理规则让输入数据直接以原始像素的形式进入模型。我的aipp.cfg文件是这样写的aipp_op { related_input_rank: 0 input_format: RGB src_image_size_h: 640 src_image_size_w: 640 crop: false csc_switch: true rbuv_swap_switch: false min_chn_0: 0 min_chn_1: 0 min_chn_2: 0 var_reci_chn_0: 0.003921569 var_reci_chn_1: 0.003921569 var_reci_chn_2: 0.003921569 }这段配置的意思是输入图像是RGB格式宽高都是640是否做中心裁剪选falsecsc_switch打开表示做颜色空间转换var_reci_chn_0/1/2填的是1/255也就是把0~255像素值归一化到0~1。min_chn_0/1/2是减均值YOLO不需要减均值就填0。配置好之后推理时我只需要准备一张640x640的RGB图像按uint8格式排布好复制进输入内存就能直接跑模型。所有减均值、除以255的操作直接在推理卡内部完成。这比在host端用OpenCV逐像素归一化再拷贝要高效非常多。4.4 转换后的验证OM转换完之后别急着写代码用一个小工具快速验证模型能不能正常推理。CANN自带一个ais_infer推理工具可以直接拿一张图片跑已经转好的OM模型。以前经常有人转完OM之后信心满满结果代码里加载模型时才发现模型文件本身就有问题早验证早安心。ais_infer --modelyolov5s_310p3.om --input./test.jpg --output./out如果工具能正常输出推理结果说明模型转换环境、工具链、模型本身都没问题了之后专心写应用代码就行。这一步能帮你把模型转换问题和应用代码问题隔离开排错时少一半烦恼。5. 用Python ACL推理代码跑通YOLO5.1 ACL初始化与模型加载ACL是昇腾的推理接口Python版本做原型验证很方便。代码整体流程分几步初始化、设设备、加载模型、准备输入输出内存、执行推理、后处理。初始化部分大概长这样import acl # 初始化ACL ret acl.init() assert ret 0 # 指定使用那张卡这里用0号卡 ret acl.rt.set_device(0) assert ret 0 # 创建上下文 context, ret acl.rt.create_context(0) assert ret 0 # 加载OM模型 model_id, ret acl.mdl.load_from_file(yolov5s_310p3.om) assert ret 0 # 根据模型描述获取输入输出信息 model_desc acl.mdl.create_desc() ret acl.mdl.get_desc(model_desc, model_id)模型加载完成后需要给输入输出Tensor分配设备内存。有一种做法是直接用acl.mdl.get_input_size_by_index和acl.mdl.get_output_size_by_index拿到每个输入输出的大小然后用acl.rt.malloc分配内存。这里的核心思路是host端准备的输入数据要先拷贝到设备内存模型执行时从设备内存取数据推理结果也是放在设备内存里最后再拷贝回host。这一步的逻辑理解透了整个ACL推理流程就通了host内存 设备内存 的搬运加上模型的执行调用。5.2 前处理letterbox与像素排布YOLOv5推理时有一个很关键的预处理叫letterbox它保证输入图像在不改变宽高比的情况下被缩放到640x640多余部分用灰色填充。这和直接resize成640x640不一样直接缩放会破坏目标的长宽比检测框会偏因此必须做letterbox并且在后处理时记录缩放比和padding大小方便把检测框坐标映射回原图。对Atlas场景来说我建议推理代码的前处理先用OpenCV在host侧做letterbox得到640x640的RGB图转成HWC排布的连续内存然后按uint8拷贝到设备输入内存。AIPP配置已经帮我们做了颜色空间转换和归一化所以在host侧不需要再做RGB转float、除以255这些操作。有人会问为什么不直接用板载的DVPP做缩放DVPP确实是昇腾专门做图像处理的硬件模块但它对输入图片的宽高有严格的对齐要求很多情况下还需要把图像先拷贝成特定格式对新手来说调试成本有点高。我的建议是第一步先跑通OpenCV前处理把整个链路跑起来之后再考虑要不要把图像缩放下沉到DVPP来节省CPU。5.3 执行推理与输出shape解析输入内存准备完毕后执行推理的代码很简单核心是构造好输入输出的Dataset结构# 这里dataset的创建、内存绑定省略核心执行调用是这样 ret acl.mdl.execute(model_id, input_dataset, output_dataset)执行完成后从输出设备内存拷贝回host端得到一个numpy数组。这里有个非常重要的点如果你在ATC转换时设置了--output_typeFP16那拿到手的输出数组是float16类型。后处理前必须转成float32否则NMS计算置信度时精度会出问题。YOLOv5的ONNX输出结构通常是三类特征图比如1x3x80x80x85、1x3x40x40x85、1x3x20x20x85如果你想更省事也可以修改模型导出逻辑把三个输出头拼成一个1x25200x85的Tensor。不管哪种结构85这个数字含义都一样前4个值是目标框的cx、cy、w、h第5个值是目标置信度后面80个值是COCO类别置信度。5.4 后处理置信度过滤、NMS、坐标还原后处理是整个推理链路的最后一道工序也是新手最容易写错的地方。我的处理顺序是这样的把模型输出按1x25200x85视作二维数组遍历每一行。取出第5个值作为类别置信度先判断是否大于阈值比如0.25小于的直接丢弃。在类别置信度里找到最大类别得分和对应类别ID如果最高分小于阈值也丢弃。用类别置信度乘以目标置信度score保留最终得分大于阈值的框。把cx、cy、w、h转换成x1、y1、x2、y2格式。按类别分别做NMS去除重复框。最后把坐标除以缩放比并减去padding偏移映射回原图坐标。NMS可以直接用OpenCV的NMSBoxes或者自己写一个简单的numpy实现。目录结构允许的情况下我更喜欢自己写因为可以针对类别分别处理避免不同类别的重叠框被误删。很多YOLO后处理代码跑出来的结果框不准问题往往不在模型而在坐标还原这一步letterbox的缩放比和padding记录错了。这里务必注意scale min(640 / src_w, 640 / src_h)padding_x (640 - src_w * scale) / 2padding_y (640 - src_h * scale) / 2三个参数一个都不能错。6. 多路视频流优化与高频踩坑记录6.1 batch化推理从单张到多路视频流把单张推理跑通只是第一步。实际项目里你不太可能只检测一张图片更多是视频流实时分析。Atlas 300V 24G这样的大显存卡如果不做batch化推理简直是在浪费硬件。batch化的思路很简单模型转换时把输入shape设成比如images:4,3,640,640然后攒够4帧画面预处理成4张640x640的图按batch维拼成一个numpy数组一次性拷贝进设备内存执行推理。推理完成后输出也是4份结果按索引逐份做后处理。这样做的好处不言而喻。4路视频流独立推理4次和拼接成batch推理一次后者的吞吐量要高出不少。我在实际项目里一般做法是如果是4路视频流就让模型batch4如果是8路就batch8。Atlas 300V 24G跑YOLOv5sbatch8完全吃得下显存余量还很充足。6.2 profiling定位性能瓶颈如果你觉得推理速度不理想不要凭感觉瞎猜用CANN自带的profiling工具去量。一般情况下性能瓶颈可以分成三类输入数据host到设备的拷贝时间过长这种情况需要检查AIPP配置是否生效如果输入还是float32数据拷贝耗时往往会翻倍。模型内部算子执行慢通过profiling的算子耗时统计找到耗时最高的算子看是不是因为某些算子没被高效实现比如ATC日志中如果出现recurrent等信息说明该算子走的是通用fallback实现性能打折很严重。后处理代码反而成了瓶颈这个很讽刺但很常见。Python写的NMS在大批量检测框时可能比模型推理还慢。解决办法是后处理尽量用numpy向量化操作或者将NMS用C封装。我用下来的体感是很多Atlas跑YOLO慢的问题根源不在卡而在数据搬运和后处理上。把这两个优化好性能往往会有质的提升。6.3 高频报错与对应的排查思路最后把这几天部署过程中遇到的高频报错整理一下这些报错信息比较典型几乎每个人都有机会碰到报错现象根因解决办法atc命令找不到环境变量未加载source set_env.sh或写入~/.bashrc加载OM报model file invalidsoc_version填错或模型转换不完整重新确认npu-smi info中的芯片型号重新转模型推理时报model stream execute failedAIPP配置与实际输入数据格式不符检查输入图像宽度高度、RGB通道顺序、是否带了归一化输出结果全是0或很差输入Tensor数据是float32但AIPP期望uint8统一输入为uint8数组交给AIPP处理归一化内存分配不足推理前未确认输入输出尺寸或batch过大通过get_input_size_by_index确认size合理设置batch一个通用的排查思路是先用ais_infer验证OM模型本身没问题之后代码里再报错就可以放心去查自己的代码逻辑。环境问题、模型问题、代码问题三段隔离能把排错范围缩小非常多。这段时间折腾下来我最深的体会是Atlas 300V 24G并不是一块难用的卡它只是和GPU的思维方式不一样。它的生态没有CUDA那么傻瓜但只要你理解了OM转换、AIPP配置、内存搬运这几件事YOLO部署就是一条非常清晰的流水线。如果你也正准备在Atlas上部署YOLO我建议按这个顺序走先确认环境版本匹配再生成标准ONNX然后ATC转OM并用ais_infer验证最后才写ACL推理代码。每步稳扎稳打你会发现这块24G显存的推理卡带来的吞吐量惊喜远大于折腾的代价。

相关推荐

北京空调维修师傅上门服务的正规商家推荐
北京空调维修师傅上门服务的正规商家推荐

扎根北京本土,做贴近日常需求的空调运维服务 说到空调出故障,不少北京的住户和商户都有过糟心的经历。 要么报修后等大半天师傅才上门,要么拆装操作不规范留下隐患,要么收费模糊不清,修完没多久同类故障又找上门。 对于… · 2026/9/25 12:09:07

边缘AI如何赋能电机控制:PWM、PID与STM32工程实战
边缘AI如何赋能电机控制:PWM、PID与STM32工程实战

最近几个月我一直在调试一套电机控制方案,板子上STM32跑着PWM输出,旁边挂了一个小算力的边缘AI模块做振动和电流特征分析。刚开始我觉得这组合有点"杀鸡用牛刀",但几轮实验下来,发现边缘AI真正解决了传统控制链路里三个… · 2026/9/25 12:09:07

Openclaw 本地部署 + 个人微信:ClawBot 插件原理解析与 TaoToken 配置骨架
Openclaw 本地部署 + 个人微信:ClawBot 插件原理解析与 TaoToken 配置骨架

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 12:08:48

TCP三次握手与四次挥手的工程本质解析
TCP三次握手与四次挥手的工程本质解析

1. 为什么三次握手不是两次,也不是四次?——从现实通信场景倒推协议设计逻辑你有没有试过给一个老朋友打电话,电话接通后第一句总是“喂?听得到吗?”——对方回一句“听得见!”——你再确认“那咱们开始聊吧… · 2026/9/25 12:46:50

【2026 英语四六级全套资料】免费且全!
【2026 英语四六级全套资料】免费且全!

https://pan.quark.cn/s/ddd967706a3f ✅适合人群 ✅ 英语基础差,高中英语薄弱 ✅ 备考 2026 年英语四六级,想要系统学习 ✅ 不知道选哪个老师,想对比不同老师讲课风格 ✅ 想一次性集齐词汇 / 听力 / 阅读 / 翻译 / 作文全套资料 · 2026/9/25 12:46:50

Atlas 300V 24G NPU加速卡上部署YOLO:从硬件选型到推理调优全指南
Atlas 300V 24G NPU加速卡上部署YOLO:从硬件选型到推理调优全指南

1. Atlas到底是什么:先回答那个被反复问到的加速卡问题最近两三个月,我收到过好几条类似的消息,上来就问一句:“atlas 300v 24g 是运算加速卡吗?”刚开始我以为是装机圈的朋友发错了消息,后来仔细一问&… · 2026/9/25 12:46:50

AutoCAD精简版安装配置与高效出图实战指南
AutoCAD精简版安装配置与高效出图实战指南

1. 为什么我最终选择了珊瑚海精简版1.1 从一次崩溃说起:原版安装的痛点去年年底赶一个厂房改造的施工图,甲方临时要求把整套图纸的图层标准全部换掉。我一边开着原版 AutoCAD 一边批量改图层,结果软件在切换布局的时候直接卡死,任… · 2026/9/25 12:46:50

Atlas 300V 24G AI推理卡部署YOLO全流程解析
Atlas 300V 24G AI推理卡部署YOLO全流程解析

最近后台被问得最多的一个卡就是Atlas 300V 24G,问题基本集中在两句话上:“这卡到底是不是运算加速卡?”、“能不能拿来部署YOLO?”我可以直接回答:是,它是用来做AI推理的加速卡,不是显卡&#… · 2026/9/25 12:46:38

AI Agent 布局实战:从大模型到智能体,核心架构与避坑指南
AI Agent 布局实战:从大模型到智能体,核心架构与避坑指南

1. 先把"AI Agent"这个词拆开看:它到底和普通大模型差在哪很多人第一次接触 AI Agent,脑子里第一反应是"不就是给大模型加个壳吗"。我一开始也这么想,直到真正动手搭了一个能自己查文件、自己调工具、自己判断下一步该干… · 2026/9/25 12:46:32

数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)
数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码