贡献指南【免费下载链接】amctAMCT是CANN提供的昇腾AI处理器亲和的模型压缩工具仓。项目地址: https://gitcode.com/cann/amct本项目欢迎广大开发者体验并参与贡献在参与社区贡献之前。请参见cann-community了解行为准则进行CLA协议签署了解源码仓的贡献流程。开发者准备本地代码与提交PR时需要重点关注如下几点提交PR时请按照PR模板仔细填写本次PR的业务背景、目的、方案等信息。若您的修改不是简单的bug修复而是涉及到新增特性、新增接口、新增配置参数或者修改代码流程等请务必先通过Issue进行方案讨论以避免您的代码被拒绝合入。若您不确定本次修改是否可被归为“简单的bug修复”亦可通过提交Issue进行方案讨论。请使用pre-commit工具确保代码满足基本要求安装后会在git commit时自动检查当前提交的代码规范问题。pip install pre-commit pre-commit install开发者贡献场景主要包括Bug修复如果您在本项目中发现了某些Bug希望对其进行修复欢迎您新建Issue进行反馈和跟踪处理。您可以按照提交Issue/处理Issue任务指引新建Bug-Report|缺陷反馈类Issue对Bug进行描述然后在评论框中输入“/assign”或“/assign yourself”将该Issue分配给您进行处理。贡献新特性感谢您参与AMCT建设为cann-amct注入更多价值为了让您的贡献过程更顺畅、方案能更好地契合社区需求以下是详细的操作指引供您参考提交RFC达成方案共识在正式开发前建议您先提交一份RFC请求评议文档通过创建ISSUE的方式提交方便与其他开发者充分交流方案细节、达成共识。RFC中辛苦您至少包含以下内容特性的背景和动机比如该特性解决了什么场景的需求。核心设计方案简要说明该特性实现的技术思路、关键模块的设计方案。预期达成的功能性能目标例如该特性需实现的核心功能、预期的精度指标或性能表现。预计完成时间方便社区了解开发进度也便于后续协同支持。提交PR完善交付内容当方案共识达成后您可以提交对应的PR并记得关联到之前的RFC。为确保样例质量和可复用性PR中辛苦您至少包含以下内容特性代码请确保代码风格符合社区基本要求且能通过流水线的code check让后续开发者更容易理解和使用。优化文档麻烦您详细说明该特性在功能适配、性能优化过程中的重点内容比如“为什么要做这个优化点”、“用了什么方法实现”、“优化后带来了哪些具体收益如性能提升X%”。README文档这是帮助其他开发者快速上手的关键需要包含两部分简述当前特性的核心内容比如用到的模型、支持的执行设备、已验证的精度/性能信息等。操作步骤请尽量详细地描述从环境准备到特性执行的全流程确保其他开发者能顺利复现结果。一些小提醒让贡献更顺利为了避免后续合入时的小波折还有几个小细节想跟您同步除了README或文档中需要的配图合入的代码里请不要包含二进制文件。如果特性验证涉及第三方数据集的使用只需在文档中说明数据集的下载方式、使用方法即可无需直接提供数据集。如果您的修改涉及公共代码非该特性内部代码需要确保能通过CI的验证。如果特性开发过程中涉及算子的新增或修改麻烦先将对应的算子变更合入到算子仓再推进压缩特性合入。请检查您所使用的LICENSE是否合规建议使用Apache 2.0等协议并按照实际情况标注版权信息。目录结构参考如果您贡献的特性尚未经过较强的泛化性测试建议您将特性代码合入到experimental目录下如amct_pytorch/experimental您可以参考以下结构组织您的代码和文档├── experimental # 实验特性 | ├── sample1 # 特性名称如custom_defined_quantize_alg | | ├── doc # doc目录存放优化文档、配图等 | | ├── src # src目录存放代码 | | ├── README.md # 上述提到的README文档 | | └── ... # 其他必要文件如环境配置文件等 | ├── sample2 │ └── ...如果在贡献过程中有任何疑问随时欢迎在社区中交流再次感谢您的支持期待您的精彩贡献文档纠错如果您在本项目中发现某些文档描述错误欢迎您新建Issue进行反馈和修复。您可以按照提交Issue/处理Issue任务指引新建Documentation|文档反馈类Issue指出对应文档的问题然后在评论框中输入“/assign”或“/assign yourself”将该Issue分配给您纠正对应文档描述。帮助解决他人Issue如果社区中他人遇到的问题您有合适的解决方法欢迎您在Issue中发表评论交流帮助他人解决问题和痛点共同优化易用性。如果对应Issue需要进行代码修改您可以在Issue评论框中输入“/assign”或“/assign yourself”将该Issue分配给您跟踪协助解决问题。【免费下载链接】amctAMCT是CANN提供的昇腾AI处理器亲和的模型压缩工具仓。项目地址: https://gitcode.com/cann/amct创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考