当前位置: 首页 > article >正文

CANN/ops-transformer贡献指南

贡献指南【免费下载链接】ops-transformer本项目是CANN提供的transformer类大模型算子库实现网络在NPU上加速计算。项目地址: https://gitcode.com/cann/ops-transformer本项目欢迎广大开发者体验并参与贡献在参与社区贡献之前。请参见cann-community了解行为准则进行CLA协议签署了解源码仓的贡献流程。开发者准备本地代码与提交PR时需要重点关注如下几点提交PR时请按照PR模板仔细填写本次PR的业务背景、目的、方案等信息。若您的修改不是简单的bug修复而是涉及到新增特性、新增接口、新增配置参数或者修改代码流程等请务必先通过Issue进行方案讨论以避免您的代码被拒绝合入。若您不确定本次修改是否可被归为“简单的bug修复”亦可通过提交Issue进行方案讨论。开发者贡献场景主要包括一、贡献新算子算子开发贡献流程如下![算子开发贡献流程](https://raw.gitcode.com/cann/ops-transformer/raw/2eb163183e40079a1fbff2efaf4de53bc0b1373b/docs/zh/figures/算子开发贡献流程.png 算子开发贡献流程图?utm_sourcegitcode_repo_files)如果您有全新的算子希望基于NPU进行设计与实现欢迎在Issue中提出您的想法与设计方案。完整的贡献过程如下1. 创建Issue需求新建Requirement|需求建议类 Issue并阐明新增算子的设计方案。Issue一般需包含以下内容背景信息价值/作用设计方案请在提交的Issue中评论/assign yourself认领该任务。2. 需求评审Sig组将指派Committer对您提交的Issue进行评审并反馈修改意见。请在完成修改后于Issue中对应Committer。若需求被接纳sig成员将为您分配合适的算子分类路径如experimental/attention请将贡献的算子提交至experimental对应算子分类目录。3. PR提交生态最简算子交付件如下${op_class} # 算子分类 ├── ${op_name} # 算子名 │ ├── ${op_name}.cpp # 算子Kernel实现文件 │ └── tests │ │ ├── test_${op_name}.py # 算子测试文件 │ ├── CMakeLists.txt # 算子编译配置文件 │ ├── README.md # 算子README文档PR上库要求代码交付件需提供算子Kernel实现、算子测试文件开发过程参考fast_kernel_launch_example。文档交付件算子README文档为必选其余文档可视情况提供。文档写作模板和规范参考文档贡献指南。精度要求新贡献算子需满足精度标准具体请参见生态算子开源精度标准。合规检查代码是否符合《C 编程规范》代码是否编译通过Markdown文档语法是否符合规范使用git进行代码提交前可以参考pre-commit工具使用说明来使您的代码提交更合规高效。贡献目录按sig成员意见提交至指定目录下experimental/${op_class}可参考已有算子文件放置规则。PR提交通过git命令提交目标分支PR检查PR标题是否清晰、PR描述是否规范指明更改内容和原因、是否关联对应Issue、是否签署CLA。如果您希望贡献项目标准算子其交付件比生态算子更丰富包括Kernel、Tiling实现等贡献指导可参考附录。4. CI门禁通过评论compile指令触发开源仓门禁并依据CI检测结果进行修改目前CI门禁包含以下检查项代码编译静态检查如涉及codecheck误报请提交给sig成员屏蔽UT测试冒烟测试门禁通过后请在关联的Issue中指派的Committer。5. Committer检视Committer检视后将反馈检视意见请根据意见修改完成后指派的Committer。6. Maintainer合入Committer检视通过后标注/lgtm标签。Maintainer将在1天内进行最终审核确认无问题后将标注/approve标签合入PR。二、算子Bug修复如果您在本项目中发现了某些算子Bug希望对其进行修复欢迎您新建Issue进行反馈和跟踪处理。您可以按照提交Issue/处理Issue任务指引新建Bug-Report|缺陷反馈类Issue对Bug进行描述然后在评论框中输入“/assign”或“/assign yourself”将该Issue分配给您进行处理。三、算子优化如果您对本项目中某些算子实现有泛化性增强/性能优化思路希望着手实现这些优化点欢迎您对算子进行优化贡献。您可以按照提交Issue/处理Issue任务指引新建Requirement|需求建议类Issue对优化点进行说明并提供您的设计方案然后在评论框中输入“/assign”或“/assign yourself”将该Issue分配给您进行跟踪优化。四、文档纠错如果您在本项目中发现某些算子文档描述错误欢迎您新建Issue进行反馈和修复文档规范参考文档贡献指南。您可以按照提交Issue/处理Issue任务指引新建Documentation|文档反馈类Issue指出对应文档的问题然后在评论框中输入“/assign”或“/assign yourself”将该Issue分配给您纠正对应文档描述。五、帮助解决他人Issue如果社区中他人遇到的问题您有合适的解决方法欢迎您在Issue中发表评论交流帮助他人解决问题和痛点共同优化易用性。如果对应Issue需要进行代码修改您可以在Issue评论框中输入“/assign”或“/assign yourself”将该Issue分配给您跟踪协助解决问题。附录项目标准算子交付件如下${op_class} # 算子分类 ├── ${op_name} # 算子名 │ ├── op_host # 算子定义、Tiling相关实现 │ │ ├── ${op_name}_def.cpp # 算子定义文件 │ │ ├── ${op_name}_tiling.cpp # 算子Tiling实现文件 │ │ └── CMakeLists.txt │ ├── op_kernel # 算子Kernel目录 │ │ ├── ${op_name}.cpp # Kernel入口文件包含主函数和调度逻辑 │ │ ├── ${op_name}.h # Kernel实现文件定义Kernel头文件包含函数说明、结构定义、逻辑实现 │ │ ├── ${op_name}_tiling_data.h # TilingData文件存储Tiling策略相关配置信息 │ │ └── ${op_name}_tiling_key.h # TilingKey文件定义Tiling策略的key标识不同划分方式 │ ├── CMakeLists.txt # 算子编译配置文件保留原文件即可 │ └── README.md # 算子说明文档 │ └── tests # 算子测试文件 │ │ ├── ut # 算子UT测试文件PR上库要求代码交付件需提供op_host算子Tiling实现、op_kernel算子Kernel实现、算子UT测试文件开发过程请参考算子开发指南。文档交付件算子README文档为必选其余文档可视情况提供。文档写作模板和规范请参见文档贡献指南。合规检查代码是否符合《C 编程规范》、是否符合标准算子基础编程规范代码是否编译通过Markdown文档语法是否符合规范贡献目录按sig成员意见提交至指定目录下experimental/${op_class}可参考已有算子文件放置规则。PR提交通过git命令提交目标分支PR检查PR标题是否清晰、PR描述是否规范指明更改内容和原因、是否关联对应Issue、是否签署CLA。【免费下载链接】ops-transformer本项目是CANN提供的transformer类大模型算子库实现网络在NPU上加速计算。项目地址: https://gitcode.com/cann/ops-transformer创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关文章:

CANN/ops-transformer贡献指南

贡献指南 【免费下载链接】ops-transformer 本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。 项目地址: https://gitcode.com/cann/ops-transformer 本项目欢迎广大开发者体验并参与贡献,在参与社区贡献之前。请参见cann…...

CANN/asc-devkit Arange索引生成函数

Arange 【免费下载链接】asc-devkit 本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。 项目地址: https://gitcode.com/can…...

从引文指标到AI评估:构建科研影响力量化评估的完整方法论

1. 项目概述:当“影响力”变得可计算在学术圈和科研管理领域,我们每天都在谈论“影响力”。一篇论文的影响力有多大?一个学者的贡献如何衡量?一个研究机构的实力怎么评估?过去,这更多是一种基于同行声誉的模…...

CANN/atvoss Sqrt开平方运算API文档

Sqrt 【免费下载链接】atvoss ATVOSS(Ascend C Templates for Vector Operator Subroutines)是一套基于Ascend C开发的Vector算子库,致力于为昇腾硬件上的Vector类融合算子提供极简、高效、高性能、高拓展的编程方式。 项目地址: https://g…...

CANN/pyasc矩阵乘法迭代方法

asc.language.adv.Matmul.iterate 【免费下载链接】pyasc 本项目为Python用户提供算子编程接口,支持在昇腾AI处理器上加速计算,接口与Ascend C一一对应并遵守Python原生语法。 项目地址: https://gitcode.com/cann/pyasc Matmul.iterate(en_parti…...

CANN/pypto concat操作

pypto.concat 【免费下载链接】pypto PyPTO(发音: pai p-t-o):Parallel Tensor/Tile Operation编程范式。 项目地址: https://gitcode.com/cann/pypto 产品支持情况 产品是否支持Ascend 950PR/Ascend 950DT√Atlas A3 训练系列产品/A…...

Phi-4-mini-flash-reasoning一文详解:轻量级开源模型在教育SaaS中的降本提效实践

Phi-4-mini-flash-reasoning一文详解:轻量级开源模型在教育SaaS中的降本提效实践 1. 模型概述与教育场景价值 Phi-4-mini-flash-reasoning是一款专为复杂推理任务优化的轻量级语言模型,在教育科技领域展现出独特的应用价值。相比传统大模型&#xff0c…...

人工智能的社会技术定义:从理性主义到人文主义的融合

1. 人工智能定义的迷思:为什么我们总在“盲人摸象”? 干了这么多年技术,也写了不少关于人工智能的科普和行业分析,我发现一个挺有意思的现象:无论是技术圈内的开发者,还是圈外的普通用户,甚至是…...

CANN/catlass aclnn接口算子接入示例

basic_matmul_aclnn example 【免费下载链接】catlass 本项目是CANN的算子模板库,提供NPU上高性能矩阵乘及其相关融合类算子模板样例。 项目地址: https://gitcode.com/cann/catlass aclnn接口是CANN软件栈一直沿用的接口,msOpGen工具是CANN提供可…...

CANN驱动获取算力组aicore利用率

dcmi_get_capability_group_aicore_usage 【免费下载链接】driver 本项目是CANN提供的驱动模块,实现基础驱动和资源管理及调度等功能,使能昇腾芯片。 项目地址: https://gitcode.com/cann/driver 函数原型 int dcmi_get_capability_group_aicore…...

CANN驱动风扇转速查询API

dcmi_get_device_fan_speed 【免费下载链接】driver 本项目是CANN提供的驱动模块,实现基础驱动和资源管理及调度等功能,使能昇腾芯片。 项目地址: https://gitcode.com/cann/driver 函数原型 int dcmi_get_device_fan_speed(int card_id, int de…...

竟然还在手动转写录音逐字稿?2026年这4款把录音转文字的app帮你月省25小时加班时间

很多人选录音转文字工具,第一个坑就是只看表面订阅价,觉得越便宜甚至免费越好,其实根本不算算你改稿子花的时间值多少钱。我自己做了3年效率工具测评,亲测过十几款转写工具,今天直接给结论:听脑AI是目前同类…...

老照片修复神器:AI超清画质增强实测,一键让模糊照片变高清

老照片修复神器:AI超清画质增强实测,一键让模糊照片变高清 1. 引言:老照片修复的AI解决方案 1.1 老照片修复的普遍需求 翻开相册,那些泛黄的老照片承载着珍贵的记忆,却常常因为年代久远而变得模糊不清。无论是家庭相…...

CANN/pypto按位异或操作API文档

# pypto.bitwise_xor 【免费下载链接】pypto PyPTO(发音: pai p-t-o):Parallel Tensor/Tile Operation编程范式。 项目地址: https://gitcode.com/cann/pypto 产品支持情况 产品是否支持Ascend 950PR/Ascend 950DT√Atla…...

用了半年只留下这1个!2026会议纪要录音转文字工具我真心安利给所有打工人

上周开了3小时季度总结会,散会leader甩了一句“下班前把纪要发我”,换做半年前我得抱着录音逐句听,熬到九点还错漏一堆;上个月跑广州见客户,对方全程粤语,之前用的工具识别出来一半都是乱码;做博…...

CANN/pyasc数据拷贝API文档

asc.language.basic.data_copy 【免费下载链接】pyasc 本项目为Python用户提供算子编程接口,支持在昇腾AI处理器上加速计算,接口与Ascend C一一对应并遵守Python原生语法。 项目地址: https://gitcode.com/cann/pyasc asc.language.basic.data_co…...

CANN/sip BLAS Ssyr2算子文档

Ssyr2 【免费下载链接】sip 本项目是CANN提供的一款高效、可靠的高性能信号处理算子加速库,基于华为Ascend AI处理器,专门为信号处理领域而设计。 项目地址: https://gitcode.com/cann/sip 产品支持情况 产品是否支持Atlas 200I/500 A2 推理产品…...

别再只会 pip install 了!Win11上管理Python包的5个高效技巧(含更新/降级/换源)

Win11上Python包管理的5个高阶技巧:从基础安装到专业配置 每次看到同事在终端里反复输入pip install时,我都忍不住想分享几个改变我工作效率的习惯。作为在Windows 11上管理过数十个Python项目的开发者,我深刻体会到:包管理不是安…...

阴阳师百鬼夜行AI自动化脚本:5分钟轻松收集式神碎片终极指南

阴阳师百鬼夜行AI自动化脚本:5分钟轻松收集式神碎片终极指南 【免费下载链接】OnmyojiAutoScript Onmyoji Auto Script | 阴阳师脚本 项目地址: https://gitcode.com/gh_mirrors/on/OnmyojiAutoScript 还在为阴阳师百鬼夜行中繁琐的撒豆操作而烦恼吗&#xf…...

CANN/AMCT量化感知训练配置创建

create_quant_retrain_config 【免费下载链接】amct AMCT是CANN提供的昇腾AI处理器亲和的模型压缩工具仓。 项目地址: https://gitcode.com/cann/amct 产品支持情况 产品 是否支持 Ascend 950PR/Ascend 950DT √ Atlas A3 训练系列产品 / Atlas A3 推理系列产品 √ At…...

第12章 后土化轮回:安装垃圾回收机制?六道是六个分类对象池,亡魂不再内存泄漏

第12章 后土化轮回:安装垃圾回收机制?六道是六个分类对象池,亡魂不再内存泄漏 系列导读:这是《洪荒操作系统》第12章。巫妖大战后,天地间飘满了亡魂,造成严重的内存泄漏。后土以身化轮回,建立了…...

AI驱动优化算法选择与设计:从元学习到自动化求解

1. 项目概述:当优化遇见智能在工业排产、物流调度、金融风控这些硬核领域里,我们每天都在和“优化”打交道。简单说,就是在一堆限制条件下,找到一个最好的方案。过去十几年,我的工具箱里塞满了各种算法:梯度…...

从预测到响应:构建基于状态识别的量化交易系统

1. 项目概述与核心价值最近在GitHub上看到一个挺有意思的项目,叫“Ctrl-Alt-DefeatTheMarket”。光看这个名字,一股浓浓的极客风和挑战精神就扑面而来了。这显然不是一个传统的量化交易策略库,它更像是一个技术宣言,或者说&#x…...

ClawZ:桌面AI助手革命,零门槛部署OpenClaw智能体

1. 项目概述:从命令行到桌面的AI助手革命如果你和我一样,对AI Agent(智能体)的潜力感到兴奋,但又对在终端里敲命令、配置环境、调试YAML文件感到头疼,那么ClawZ的出现,绝对是一个值得你停下手中…...

Hyperf 默认使用 Nikic/FastRoute 作为路由器。

它的本质是:FastRoute 是一个基于 正则表达式编译 和 前缀树/分派树 (Dispatch Tree) 的轻量级 HTTP 路由器。它不依赖传统的线性遍历或简单的字符串匹配,而是在启动阶段将所有路由规则编译成一个高效的 数据结构(通常是嵌套数组或状态机&…...

基于MCP协议构建AI助手与Google Drive的安全连接方案

1. 项目概述:一个连接Google生态与AI的桥梁 如果你正在尝试让AI助手(比如Claude、Cursor等)直接操作你的Google Drive、Gmail或者Google Calendar,而不是仅仅通过网页搜索获取信息,那么你很可能已经遇到了“MCP”&…...

CANN算子测试赛Add报告

【免费下载链接】cann-competitions 本仓库用于 CANN 开源社区各类竞赛、开源课题、社区任务等课题发布、开发者作品提交和展示。 项目地址: https://gitcode.com/cann/cann-competitions 元信息(请如实填写,此区块将由组委会脚本自动解析&#xf…...

别人写的代码看不懂,到底是谁的水平有问题

你突然看到某段代码用了工厂模式,第一反应可能是:有必要吗?直接new一个对象不行吗?干嘛「故意」增加阅读难度?其实不是这样的,当你接触过的高手多了后,你会自然而然的认为:高手的代码…...

AI光学硬件加速:1.2Tb/s高光谱视频实时理解平台架构与实践

1. 项目概述:当AI遇见光,一场关于“看见”的革命最近和几个做自动驾驶和工业质检的朋友聊天,大家不约而同地提到了一个痛点:传统的RGB摄像头,甚至多光谱设备,在面对一些复杂场景时,总感觉“力不…...

从代码生成到自主学习:构建AI编程智能体的核心架构与实践

1. 项目概述:一个学习编码的智能体最近在GitHub上看到一个挺有意思的项目,叫sanbuphy/learn-coding-agent。光看名字,你可能会觉得这又是一个“教你编程”的AI工具,市面上这类产品已经多如牛毛了。但当我深入探究其代码和设计理念…...