CANNBot PyPTO 算子编程智能体的使用,从一段 Prompt 开始

写过融合算子的开发者大概都遇到过这样的时刻:一个 shape 刚跑通,换成其他规格,精度验证又失败了;减少一次数据搬运,实测性能反而下降;单融合 kernel 性能验证结果符合预期,但接入整模型后,融合算子性能收益被调度及同步开销抵消。

融合算子的开发需要同时处理数学语义、内存布局、低精度误差、多核同步与硬件资源约束。分块大小调整后,片上空间可能不足;计算顺序改变后,误差可能累积。开发者还需要维护 Golden、测试用例与性能基线,反复确认每次修改解决了什么问题、又影响了哪些规格。

融合算子的数学语义、内存布局、低精度、多核同步、资源与真实调用性能相互影响

CANNBot 的 PyPTO Tensor Agent 与 PyPTO Pro Agent 把这些工作组织成可持续推进、检查与复验的开发流程。

开发者可以从同一段需求开始:

请编写并优化 softmax 算子,输入 float16,shape=4, 2048,沿最后一维计算。准备独立的 Golden,在目标 NPU 上验证精度;基线与性能目标,完成调优与回归;保存源码、测试报告、生成耗时与 Token消耗。开始前先明确输入范围与验收标准。

选择 Tensor 或 Pro 后,进入对应 Agent 并说明开发路径即可。下图将 Agent 的开发流程概括为四个阶段,实际执行仍由各 Agent 的状态机驱动。

从同一段 Prompt 经两个 Agent 入口进入开发、验证和优化流程,产物保存到 custom/op

第一步是理解需求。Agent 梳理公式、接口、Shape、Dtype 以及精度与性能目标,并检查 API 可行性。 Tiling、广播规则与缓存写入等语义必须先对齐,否则即使代码编译通过,计算结果也可能与需求不符。

第二步是准备 Golden 与测试环境。参考实现要独立编写并通过自检,测试需覆盖边界输入,设备与依赖也需确认可用。设计与接口检查通过后,再进入编码。先确定验证标准与运行环境,后续结果才有可靠依据。

第三步是编写代码并测试。代码需要经过编译、上机运行与独立的精度对照,发现问题就定位、修复并重新验证。Agent 把设计审查、实现与验证内循环、最终验收分为不同职责;最终交付的结果必须符合预期的精度标准。

第四步是性能优化。Agent 根据实测结果定位瓶颈,尝试分块、并行、复用与流水调整,并在固定条件下比较候选方案。有效改动予以采纳,出现负收益则回退。Agent 还能在初始需求中指定使能基于 LLM 的自动优化算法 PANKO,由其联合搜索程序结构与分块参数,进一步优化性能。

在使用 CANNBot PyPTO Pro Agent 开发的实战中,grouped_matmul_activation_quant 通过了所有用例的精度验证。Profiling的性能测试结果,五个用例加速比为 1.82--2.38 倍。

分组矩阵乘、激活与量化融合算子的精度结果及五个用例性能加速比

任务结束后,开发者可以从 custom/op 取得源码、Golden、测试报告、规格设计与优化点,并核对实际交付入口。生成耗时与 Token 消耗也随任务一起落盘记录,并注明等待、并行、缓存读取等统计范围,以便评估投入、规划下一轮优化。

仓库地址:pypto-gym:基于 PyPTO 框架的昇腾AI处理器算子开发样例项目 - AtomGit。

准备好匹配的昇腾 NPU、CANN、PyPTO 或 PyPTO Pro 环境并安装 OpenCode 后,先获取仓库:

复制代码
git clone https://atomgit.com/cann/pypto-gym.git

根据开发路线选择其中一个入口。两组命令都在克隆仓库的父目录下执行。

PyPTO Tensor Agent 入口:cannbot-skills/plugins-official/pypto-op-orchestrator。

复制代码
cd pypto-gym/cannbot-skills/plugins-official/pypto-op-orchestrator
bash init.sh project opencode
opencode

启动后输入"使用 PyPTO Tensor 开发并优化 softmax",再补上前文的输入规格、精度与性能要求。

PyPTO Pro Agent 入口:cannbot-skills/plugins-official/pypto-pro-op-orchestrator。

复制代码
cd pypto-gym/cannbot-skills/plugins-official/pypto-pro-op-orchestrator
bash init.sh project opencode
opencode

启动后输入"使用 PyPTO Pro 开发并优化 softmax",并附上算子规格。

两个入口都提供 quickstart.md。先核对环境与启动要求,再从一个熟悉的小规格开始,依次完成生成、验证、调优与结果归档。

总结

融合算子的难点不在单个环节,而在数学语义、内存布局、低精度误差、多核同步与性能开销彼此牵制,改一处往往牵动另一处。CANNBot 的 PyPTO Tensor Agent 与 PyPTO Pro Agent 把这些环节收进同一条可推进、可检查、可复验的流程:先对齐需求与验收判据,再准备独立的 Golden 与测试环境,之后才进入编码、测试与调优。无论从哪个入口进入,最终交付都按同一套标准验收,源码、Golden、测试与优化点可以逐项核查。

若想了解更多 CANNBot PyPTO 算子编程智能体硬核技术及复杂融合算子开发实操,欢迎报名活动

主题:CANN 开发者 Meetup PyPTO 算子编程专场

时间:2026年10月24日(周六) 14:00-18:00

地点:上海市杨浦区创智天地广场7号楼一楼会议室

报名链接:报名开启|CANN 开发者 Meetup PyPTO 算子编程专场,解锁复杂算子开发新范式

相关推荐
张彦峰ZYF32 分钟前
浏览器调试接口的官方化:从 chrome-devtools-mcp 看 Agent 原生工具层的形成
人工智能·chrome·agent·mcp·apache-2.0许可·devtools-mcp·调试闭环
Dawson Zhu1 小时前
Queen Planner深度解析:Agent竞争从模型时代进入系统时代
人工智能·语言模型·架构·aigc·agi
甲维斯1 小时前
GPT6.2Astra也很强啊,国模...!
人工智能
孟健1 小时前
我用 REA 逆向自己的 Electron 桌面端,扒出 178 个 IPC 通道后我反而放心了
架构·开源·ai编程
承渊政道2 小时前
Fooocus本地AI绘图教程:Windows部署、低门槛生图与远程访问
人工智能·windows·cpolar·fooocus·生图
熊猫钓鱼>_>2 小时前
普通用户视角的端侧智能体验手记【鸿蒙心迹】
开发语言·人工智能·华为·智能手机·性能优化·ai编程·harmonyos
分布式存储与RustFS2 小时前
群晖 NAS 被 C3RB3R 锁了:本地备份一起被加密,RustFS 对象锁为什么删不掉
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
AI算力2 小时前
私有云时代来临:AI NAS如何重塑你的数字生活?
人工智能·科技·ai·生活·nas·ai算力·ainas
程序员cxuan2 小时前
讲真,智能路由这事儿,还得看基元律动
人工智能·后端·程序员
zixu_star2 小时前
定时任务是什么?从日常自动化到 AI 应用,软件如何自动执行任务?
运维·人工智能·自动化