CANNBot Triton 算子生成快速入门指南【免费下载链接】cannbot-skillsCANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体本仓库为其提供可复用的 Skills 模块。项目地址: https://gitcode.com/cann/cannbot-skills概述CANNBot Triton-Ascend 算子生成模式适用于通过 Triton DSL 开发高性能 Ascend NPU 算子。采用 6 阶段工作流驱动覆盖从任务构建到性能优化的完整生成流程支持迭代修复与自动优化。Claude Code安装方式一install.sh 脚本推荐一键完成含 CLAUDE.md 自动配置git clone https://gitcode.com/cann/cannbot-skills.git cd cannbot-skills/plugins-official/triton-op-generator bash install.sh project claude # 项目级 bash install.sh global claude # 全局级方式二Plugin Marketplace技能自动管理# 1. 注册 marketplace首次GitCode 仓库需完整 URL claude plugin marketplace add https://gitcode.com/cann/cannbot-skills.git # 2. 安装插件安装 skills 依赖 claude plugin install triton-op-generatorcannbot # 3. 手动链接 AGENTS.md → CLAUDE.md插件安装后必需步骤 PLUGIN_DIR$(ls -d ~/.claude/plugins/cache/cannbot/triton-op-generator/*/ 2/dev/null | sort -V | tail -1) ln -sf ${PLUGIN_DIR%/}/AGENTS.md ~/.claude/CLAUDE.md验证# 查看已安装插件 claude plugin list # 应看到 triton-op-generatorcannbot ✔ enabled # 验证 CLAUDE.md 已正确链接 ls -la ~/.claude/CLAUDE.md # 应显示为符号链接指向插件缓存目录下的 AGENTS.md启动claude更新# install.sh 方式 cd cannbot-skills/plugins-official/triton-op-generator bash install.sh # Plugin Marketplace 方式 claude plugin update triton-op-generatorcannbot # 更新后需重新链接 CLAUDE.md缓存目录可能变化 PLUGIN_DIR$(ls -d ~/.claude/plugins/cache/cannbot/triton-op-generator/*/ 2/dev/null | sort -V | tail -1) ln -sf ${PLUGIN_DIR%/}/AGENTS.md ~/.claude/CLAUDE.mdOpenCode安装# 1. 克隆仓库 git clone https://gitcode.com/cann/cannbot-skills.git cd cannbot-skills/plugins-official/triton-op-generator # 2. 运行安装脚本 bash install.sh project opencode # 项目级默认 bash install.sh global opencode # 全局级验证opencode agent list # 应看到 triton-op-generator启动opencode更新cd cannbot-skills/plugins-official/triton-op-generator bash install.shTrae安装# 1. 克隆仓库 git clone https://gitcode.com/cann/cannbot-skills.git cd cannbot-skills/plugins-official/triton-op-generator # 2. 运行安装脚本Trae 仅支持项目级安装 bash install.sh project trae验证检查项目目录下是否生成.trae/skills/目录包含 6 个 skill 符号链接CLAUDE.md符号链接启动通过 Trae CLI 或 IDE 启动。更新cd cannbot-skills/plugins-official/triton-op-generator bash install.sh project trae安装路径说明工具安装方式安装路径说明ClaudePlugin Marketplace~/.claude/skills/ 手动~/.claude/CLAUDE.md技能自动安装需手动链接 AGENTS.mdClaudeinstall.sh.claude/skills/CLAUDE.md一键完成skills 和 CLAUDE.md 自动配置OpenCodeinstall.sh.opencode/skills/AGENTS.mdSkills 通过 symlink 安装AGENTS.md 自动配置Traeinstall.sh.trae/skills/CLAUDE.md仅支持项目级安装注意claude plugin install仅安装技能skills不会自动创建CLAUDE.md。因为 Claude Code 插件系统当前不支持安装后钩子post-install hook所以需要手动执行ln -s命令链接AGENTS.md。快速上手生成算子示例在交互界面中直接输入算子生成需求CANNBot 会在当前会话中逐步执行 6 阶段工作流所有中间过程实时可见。下面三个示例分别对应后文「输入模式说明」中的模式 A / B / C示例 1直接描述生成对应模式 A 生成一个 Triton-Ascend 框架的 softmax 算子实现ASCEND_RT_VISIBLE_DEVICES1请将结果输出到 /path/output/示例 2标准 torch 文件对应模式 B生成 Triton-Ascend 框架的算子算子描述文件为 /path/NMS.pyASCEND_RT_VISIBLE_DEVICES1请将结果输出到 /path/output/示例 3GPU Kernel 输入对应模式 C基于 /path/gpu_softmax_kernel.py 中的 GPU Triton kernel 生成等价的 Triton-Ascend 实现ASCEND_RT_VISIBLE_DEVICES1请将结果输出到 /path/output/核心工作流采用 6 阶段流水线确保算子生成质量。所有阶段在当前会话中实时显示Phase 0: 参数确认 → Phase 1: 任务构建 → Phase 2: 算法设计 → Phase 3: 代码生成与验证迭代→ Phase 4: 性能优化与验证迭代 → Phase 5: 输出报告 → Phase 6: 会话导出各阶段通过门禁校验后才能进入下一阶段。支持迭代修复和自动优化详见工作流指令文档Claude 为CLAUDE.mdOpenCode 为AGENTS.md。产出物示例Triton-Ascend 算子生成模式下CANNBot 会在工作目录下生成以下文件op_{op_name}_{timestamp}_{rid}/ ├── {op_name}.py # Phase 1: 算子任务描述 ├── {op_name}.json # Phase 1: 多 case 模式专属 ├── sketch.txt # Phase 2: 算法草图 ├── output/ │ ├── generated_code.py # Phase 3 最终通过验证的代码 │ ├── perf_result.json # Phase 3 最终性能报告 │ ├── optimized_code.py # Phase 4 最终优化代码成功时 │ ├── iter_0/ # Phase 3 迭代记录 │ │ ├── generated_code.py │ │ ├── verify/ │ │ │ ├── verify_result.json │ │ └── perf_result.json │ └── opt_iter_0/ # Phase 4 优化记录 │ ├── optimized_code.py │ └── ... ├── {op_name}_generated.py # Phase 5: 最终代码 ├── summary.json # 执行摘要 └── report.md # 最终报告可用技能Skill用途触发阶段triton-task-extractor从用户代码中提取算子构建算子任务格式任务文件Phase 1triton-op-designer设计高质量算法草图sketch指导代码生成Phase 2triton-op-coding根据任务描述生成 Triton Ascend 内核代码Phase 3triton-op-verifier验证代码正确性精度比对和性能测试Phase 3 / Phase 4triton-latency-optimizer逐步优化 Triton 代码性能Phase 4npu-archNPU 硬件架构参考被 designer/coding 引用区分 arch22/arch35 等规格Phase 2 / Phase 3输入模式说明模式 A直接描述生成用户直接描述算子需求如生成 softmax 算子系统在当前会话中自动构建任务描述文件{op_name}.py设计算法草图生成并验证代码模式 B标准 torch文件单 case / 多 case用户提供算子描述文件系统调用triton-task-extractorskill单 case.py文件可包含get_inputs()返回单组输入多 case.py文件可包含get_input_groups()同目录有同名.json模式 CGPU Kernel 输入模式用户提供 GPU Triton kernel 源码含triton.jit系统自动检测并构建Model类返回预存 GPU 输出或手写 PyTorch 参考实现提取输入数据生成 NPU Triton Kernel 等价实现断点续跑与恢复场景使用方式查看历史结果查看工作目录下的summary.json和report.md重新生成再次输入相同需求系统会创建新的工作目录查看迭代记录查看output/iter_{N}/和output/opt_iter_{N}/目录常见问题Q: 如何查看帮助信息bash install.sh --helpQ: 项目级和全局安装如何选择项目级适合多项目开发每个项目可以有不同配置全局适合单一项目全局生效Q: 如何指定输出目录在需求描述中明确指定生成 softmax 算子输出到 /home/user/output/Q: 如何指定目标设备系统会自动检测 NPU 设备通过npu-smi info。如需指定特定设备export ASCEND_RT_VISIBLE_DEVICES1Q: 验证失败怎么办系统会自动进入迭代修复循环最多 5 轮所有修复过程实时显示分析错误类型A 类-代码逻辑 / B 类-环境 / C 类-重复失败根据错误信息针对性修复重新验证若达到最大迭代次数仍失败会输出失败报告。Q: 性能优化做了什么Phase 4 会自动尝试以下优化按严格顺序每次只试一个所有尝试实时显示向量化加载tl.arange 替代标量访问Grid 并行度优化匹配物理核数内存访问模式优化连续轴向量化Pass 合并减少数据遍历次数循环消除小数据量场景【免费下载链接】cannbot-skillsCANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体本仓库为其提供可复用的 Skills 模块。项目地址: https://gitcode.com/cann/cannbot-skills创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考