AMCT是CANN提供的昇腾AI处理器亲和的模型压缩工具仓。
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
feat(agents): tracked symlink 自动加载,兼容 Windows 客户端 Co-authored-by: xieyajun<xieyajun1@huawei.com> # message auto-generated for no-merge-commit merge: !190 merge feat/agent-symlink-autoload into master feat(agents): tracked symlink 自动加载,兼容 Windows 客户端 Created-by: xieyajun Commit-by: xieyajun Merged-by: cann-robot Description: ## 描述 将 Agent 配置的分发机制从「手动执行脚本生成」改为「git-tracked 符号链接自动加载」,并配套 Windows 兼容修复与文档完善。 ### 一、结构改造(tracked symlink) - 新增 7 个 mode 120000 git-tracked symlink:.claude/{skills,agents,hooks,docs} 和 .opencode/{skills,agents,docs} 指向 .agents/ 对应路径,clone 后即可直接使用,无需手动执行安装脚本 - 删除 scripts/init-agent.sh(115 行),该脚本在 symlink 机制下完全冗余 - .gitignore 移除对 /.claude/、/.opencode/、/CLAUDE.md 的忽略规则(已改为 tracked) - AGENTS.md 新增「Agent Skills」段落,说明自动加载机制并修正 gitcode skill 引用路径 ### 二、配置文件迁移与 Windows 兼容 - .agents/settings.json → .claude/settings.json(R100,真实文件 100644) - .agents/opencode.json → .opencode/opencode.json(R100,真实文件 100644) - 配置文件改为真实文件后,Windows 下 core.symlinks=false 时客户端仍可正常启动 - settings.json 完整保留 45 项权限(含 amct-ops-dev、install-default-skills 等),与 master 一致 ### 三、文档完善 - .agents/README.md:重写标题与定位描述,补充内置技能清单;新增 Windows symlink 修复指引(3 种方式:管理员终端 / 开发者模式 / mklink /J) - .agents/docs/architecture.md:§3 单一源投影机制重写,移除 init-agent.sh 和 CLAUDE.md 引用 - .agents/docs/README.md:移除 roadmap.md 引用 - 删除 .agents/docs/roadmap.md(规划已过时,内容与 architecture.md 重复) ### 四、default-skills 增强 - SKILL.md:场景化拆分(补装缺失 / 强制更新两种场景) - install-default-skills.sh:新增 --force 参数,默认跳过已存在 skill ### 五、hooks 改进 - subagent_stop.py:新增 cleanup_stale_counters(),懒清理 /tmp 下超过 48 小时的计数文件 ## 如何测试 1. Linux/macOS(symlink 正常):git clone 后直接进入项目目录,Claude Code / OpenCode 自动加载所有 skills 2. Windows: - OpenCode 无需额外操作,原生扫描 .agents/skills/ - Claude Code 需管理员终端执行 git config core.symlinks true && git checkout HEAD -- .claude 后自动加载 3. 验证 settings.json 权限完整性:确认 amct-ops-dev、install-default-skills、planning-with-files、skill-creator 均在 allow 列表中 4. 确认 scripts/init-agent.sh 已删除,CLAUDE.md 不存在 ## 文档更新 - .agents/README.md:全面重写,新增内置技能清单与 Windows 修复指引 - .agents/docs/architecture.md:§3 投影机制描述更新 - .agents/docs/README.md:移除 roadmap 引用 - .agents/docs/roadmap.md:已删除 - AGENTS.md:新增 Agent Skills 段落,修正 gitcode skill 路径 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!190 | 5 天前 | |
feat(agents): tracked symlink 自动加载,兼容 Windows 客户端 Co-authored-by: xieyajun<xieyajun1@huawei.com> # message auto-generated for no-merge-commit merge: !190 merge feat/agent-symlink-autoload into master feat(agents): tracked symlink 自动加载,兼容 Windows 客户端 Created-by: xieyajun Commit-by: xieyajun Merged-by: cann-robot Description: ## 描述 将 Agent 配置的分发机制从「手动执行脚本生成」改为「git-tracked 符号链接自动加载」,并配套 Windows 兼容修复与文档完善。 ### 一、结构改造(tracked symlink) - 新增 7 个 mode 120000 git-tracked symlink:.claude/{skills,agents,hooks,docs} 和 .opencode/{skills,agents,docs} 指向 .agents/ 对应路径,clone 后即可直接使用,无需手动执行安装脚本 - 删除 scripts/init-agent.sh(115 行),该脚本在 symlink 机制下完全冗余 - .gitignore 移除对 /.claude/、/.opencode/、/CLAUDE.md 的忽略规则(已改为 tracked) - AGENTS.md 新增「Agent Skills」段落,说明自动加载机制并修正 gitcode skill 引用路径 ### 二、配置文件迁移与 Windows 兼容 - .agents/settings.json → .claude/settings.json(R100,真实文件 100644) - .agents/opencode.json → .opencode/opencode.json(R100,真实文件 100644) - 配置文件改为真实文件后,Windows 下 core.symlinks=false 时客户端仍可正常启动 - settings.json 完整保留 45 项权限(含 amct-ops-dev、install-default-skills 等),与 master 一致 ### 三、文档完善 - .agents/README.md:重写标题与定位描述,补充内置技能清单;新增 Windows symlink 修复指引(3 种方式:管理员终端 / 开发者模式 / mklink /J) - .agents/docs/architecture.md:§3 单一源投影机制重写,移除 init-agent.sh 和 CLAUDE.md 引用 - .agents/docs/README.md:移除 roadmap.md 引用 - 删除 .agents/docs/roadmap.md(规划已过时,内容与 architecture.md 重复) ### 四、default-skills 增强 - SKILL.md:场景化拆分(补装缺失 / 强制更新两种场景) - install-default-skills.sh:新增 --force 参数,默认跳过已存在 skill ### 五、hooks 改进 - subagent_stop.py:新增 cleanup_stale_counters(),懒清理 /tmp 下超过 48 小时的计数文件 ## 如何测试 1. Linux/macOS(symlink 正常):git clone 后直接进入项目目录,Claude Code / OpenCode 自动加载所有 skills 2. Windows: - OpenCode 无需额外操作,原生扫描 .agents/skills/ - Claude Code 需管理员终端执行 git config core.symlinks true && git checkout HEAD -- .claude 后自动加载 3. 验证 settings.json 权限完整性:确认 amct-ops-dev、install-default-skills、planning-with-files、skill-creator 均在 allow 列表中 4. 确认 scripts/init-agent.sh 已删除,CLAUDE.md 不存在 ## 文档更新 - .agents/README.md:全面重写,新增内置技能清单与 Windows 修复指引 - .agents/docs/architecture.md:§3 投影机制描述更新 - .agents/docs/README.md:移除 roadmap 引用 - .agents/docs/roadmap.md:已删除 - AGENTS.md:新增 Agent Skills 段落,修正 gitcode skill 路径 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!190 | 5 天前 | |
docs: add English translation for all markdown documentation files Co-authored-by: sophia1213<sophie.chen@huawei.com> # message auto-generated for no-merge-commit merge: !143 merge master into master docs: add English translation for all markdown documentation files Created-by: sophia1213 Commit-by: sophia1213 Merged-by: cann-robot Description: ## 描述 更新英文非产品文档资料 ## 如何测试 根据最新的中文md资料进行测试 ## 文档更新 非docs目录下的所有xx_en.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!143 | 1 个月前 | |
feat(agents): tracked symlink 自动加载,兼容 Windows 客户端 Co-authored-by: xieyajun<xieyajun1@huawei.com> # message auto-generated for no-merge-commit merge: !190 merge feat/agent-symlink-autoload into master feat(agents): tracked symlink 自动加载,兼容 Windows 客户端 Created-by: xieyajun Commit-by: xieyajun Merged-by: cann-robot Description: ## 描述 将 Agent 配置的分发机制从「手动执行脚本生成」改为「git-tracked 符号链接自动加载」,并配套 Windows 兼容修复与文档完善。 ### 一、结构改造(tracked symlink) - 新增 7 个 mode 120000 git-tracked symlink:.claude/{skills,agents,hooks,docs} 和 .opencode/{skills,agents,docs} 指向 .agents/ 对应路径,clone 后即可直接使用,无需手动执行安装脚本 - 删除 scripts/init-agent.sh(115 行),该脚本在 symlink 机制下完全冗余 - .gitignore 移除对 /.claude/、/.opencode/、/CLAUDE.md 的忽略规则(已改为 tracked) - AGENTS.md 新增「Agent Skills」段落,说明自动加载机制并修正 gitcode skill 引用路径 ### 二、配置文件迁移与 Windows 兼容 - .agents/settings.json → .claude/settings.json(R100,真实文件 100644) - .agents/opencode.json → .opencode/opencode.json(R100,真实文件 100644) - 配置文件改为真实文件后,Windows 下 core.symlinks=false 时客户端仍可正常启动 - settings.json 完整保留 45 项权限(含 amct-ops-dev、install-default-skills 等),与 master 一致 ### 三、文档完善 - .agents/README.md:重写标题与定位描述,补充内置技能清单;新增 Windows symlink 修复指引(3 种方式:管理员终端 / 开发者模式 / mklink /J) - .agents/docs/architecture.md:§3 单一源投影机制重写,移除 init-agent.sh 和 CLAUDE.md 引用 - .agents/docs/README.md:移除 roadmap.md 引用 - 删除 .agents/docs/roadmap.md(规划已过时,内容与 architecture.md 重复) ### 四、default-skills 增强 - SKILL.md:场景化拆分(补装缺失 / 强制更新两种场景) - install-default-skills.sh:新增 --force 参数,默认跳过已存在 skill ### 五、hooks 改进 - subagent_stop.py:新增 cleanup_stale_counters(),懒清理 /tmp 下超过 48 小时的计数文件 ## 如何测试 1. Linux/macOS(symlink 正常):git clone 后直接进入项目目录,Claude Code / OpenCode 自动加载所有 skills 2. Windows: - OpenCode 无需额外操作,原生扫描 .agents/skills/ - Claude Code 需管理员终端执行 git config core.symlinks true && git checkout HEAD -- .claude 后自动加载 3. 验证 settings.json 权限完整性:确认 amct-ops-dev、install-default-skills、planning-with-files、skill-creator 均在 allow 列表中 4. 确认 scripts/init-agent.sh 已删除,CLAUDE.md 不存在 ## 文档更新 - .agents/README.md:全面重写,新增内置技能清单与 Windows 修复指引 - .agents/docs/architecture.md:§3 投影机制描述更新 - .agents/docs/README.md:移除 roadmap 引用 - .agents/docs/roadmap.md:已删除 - AGENTS.md:新增 Agent Skills 段落,修正 gitcode skill 路径 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!190 | 5 天前 | |
docs: add English translation for all markdown documentation files Co-authored-by: sophia1213<sophie.chen@huawei.com> # message auto-generated for no-merge-commit merge: !143 merge master into master docs: add English translation for all markdown documentation files Created-by: sophia1213 Commit-by: sophia1213 Merged-by: cann-robot Description: ## 描述 更新英文非产品文档资料 ## 如何测试 根据最新的中文md资料进行测试 ## 文档更新 非docs目录下的所有xx_en.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!143 | 1 个月前 | |
新增对DSV4 Attention部分的PTQ支持,修复DSV4 Attention中设备不一致的BUG Co-authored-by: SwaggyAlex<zhangyi601@huawei.com> # message auto-generated for no-merge-commit merge: !200 merge dsv4-ptq-attnlinear-fix into master 新增对DSV4 Attention部分的PTQ支持,修复DSV4 Attention中设备不一致的BUG Created-by: SwaggyAlex Commit-by: SwaggyAlex Merged-by: cann-robot Description: ## 描述 新增对DSV4 Attention部分的PTQ支持,修复DSV4 Attention中设备不一致的BUG ## 如何测试 <!--描述测试此改动的步骤和前提条件。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!200 | 2 天前 | |
chore: 清理 cmake/function 下未使用的构建文件 Co-authored-by: fujun19<fujun19@hisilicon.com> # message auto-generated for no-merge-commit merge: !158 merge chore/remove-unused-cmake-function into master chore: 清理 cmake/function 下未使用的构建文件 Created-by: fujun19 Commit-by: fujun19 Merged-by: cann-robot Description: ## 描述 接入 CANN 公共 cmake 仓后,本地 cmake/function/ 目录下的文件已不再被任何 CMakeLists.txt 或构建脚本引用,属于历史遗留死文件,本次予以清理: - function.cmake:定义的 protobuf_generate / install_package 在全仓无任何调用 - protobuf_sym_rename.cmake:PROTOBUF_SYM_RENAME 变量在全仓无任何引用 - protobuf_3.14_change_version.patch:无任何 patch 应用逻辑引用此文件 当前构建已统一通过 cmake/fetch_cann_cmake.cmake 接入 cann-cmake/function/prepare.cmake,不再依赖这些本地副本。 ## 如何测试 - 全仓检索确认 function.cmake / protobuf_sym_rename / protobuf_3.14_change_version / PROTOBUF_SYM_RENAME / protobuf_generate / install_package 均无源码引用 - bash build.sh --pkg 可正常生成 amct 包 ## 文档更新 无 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!158 | 30 天前 | |
update quick_install.md to support docker,ide,custom Co-authored-by: newstarzj<zhangjie230@huawei.com> # message auto-generated for no-merge-commit merge: !96 merge master_doc into master update quick_install.md to support docker,ide,custom Created-by: newstarzj Commit-by: newstarzj Merged-by: cann-robot Description: ## 描述 update quick_install.md to support docker,ide,custom ## 如何测试 NA ## 文档更新 NA ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!96 | 3 天前 | |
fix: 修复 ruff-check F841/E741/F811 违规 (#146) Co-authored-by: fujun19<fujun19@hisilicon.com> # message auto-generated for no-merge-commit merge: !195 merge fix/ruff-check-f841-e741-f811 into master fix: 修复 ruff-check F841/E741/F811 违规 (#146) Created-by: fujun19 Commit-by: fujun19 Merged-by: cann-robot Description: ## 描述 修复 pre-commit ruff-check 报告的 F841/E741/F811 共 262 处违规,使 pre-commit run --all-files 的 ruff-check 钩子通过。 关联 Issue: #146 **修复内容:** - **F841**(未使用的局部变量赋值):删除无效赋值,保留有副作用的调用 - **E741**(歧义变量名):将 l、I 等单字母变量重命名为语义清晰的名称(seq_len、log 等) - **F811**(重复定义):删除重复导入、重复函数/类定义,保留语义更完整的版本 ## 如何测试 执行 pre-commit run ruff-check --all-files,预期输出:ruff-check...........................................................Passed ## 文档更新 无 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!195 | 3 天前 | |
feat(agents): tracked symlink 自动加载,兼容 Windows 客户端 Co-authored-by: xieyajun<xieyajun1@huawei.com> # message auto-generated for no-merge-commit merge: !190 merge feat/agent-symlink-autoload into master feat(agents): tracked symlink 自动加载,兼容 Windows 客户端 Created-by: xieyajun Commit-by: xieyajun Merged-by: cann-robot Description: ## 描述 将 Agent 配置的分发机制从「手动执行脚本生成」改为「git-tracked 符号链接自动加载」,并配套 Windows 兼容修复与文档完善。 ### 一、结构改造(tracked symlink) - 新增 7 个 mode 120000 git-tracked symlink:.claude/{skills,agents,hooks,docs} 和 .opencode/{skills,agents,docs} 指向 .agents/ 对应路径,clone 后即可直接使用,无需手动执行安装脚本 - 删除 scripts/init-agent.sh(115 行),该脚本在 symlink 机制下完全冗余 - .gitignore 移除对 /.claude/、/.opencode/、/CLAUDE.md 的忽略规则(已改为 tracked) - AGENTS.md 新增「Agent Skills」段落,说明自动加载机制并修正 gitcode skill 引用路径 ### 二、配置文件迁移与 Windows 兼容 - .agents/settings.json → .claude/settings.json(R100,真实文件 100644) - .agents/opencode.json → .opencode/opencode.json(R100,真实文件 100644) - 配置文件改为真实文件后,Windows 下 core.symlinks=false 时客户端仍可正常启动 - settings.json 完整保留 45 项权限(含 amct-ops-dev、install-default-skills 等),与 master 一致 ### 三、文档完善 - .agents/README.md:重写标题与定位描述,补充内置技能清单;新增 Windows symlink 修复指引(3 种方式:管理员终端 / 开发者模式 / mklink /J) - .agents/docs/architecture.md:§3 单一源投影机制重写,移除 init-agent.sh 和 CLAUDE.md 引用 - .agents/docs/README.md:移除 roadmap.md 引用 - 删除 .agents/docs/roadmap.md(规划已过时,内容与 architecture.md 重复) ### 四、default-skills 增强 - SKILL.md:场景化拆分(补装缺失 / 强制更新两种场景) - install-default-skills.sh:新增 --force 参数,默认跳过已存在 skill ### 五、hooks 改进 - subagent_stop.py:新增 cleanup_stale_counters(),懒清理 /tmp 下超过 48 小时的计数文件 ## 如何测试 1. Linux/macOS(symlink 正常):git clone 后直接进入项目目录,Claude Code / OpenCode 自动加载所有 skills 2. Windows: - OpenCode 无需额外操作,原生扫描 .agents/skills/ - Claude Code 需管理员终端执行 git config core.symlinks true && git checkout HEAD -- .claude 后自动加载 3. 验证 settings.json 权限完整性:确认 amct-ops-dev、install-default-skills、planning-with-files、skill-creator 均在 allow 列表中 4. 确认 scripts/init-agent.sh 已删除,CLAUDE.md 不存在 ## 文档更新 - .agents/README.md:全面重写,新增内置技能清单与 Windows 修复指引 - .agents/docs/architecture.md:§3 投影机制描述更新 - .agents/docs/README.md:移除 roadmap 引用 - .agents/docs/roadmap.md:已删除 - AGENTS.md:新增 Agent Skills 段落,修正 gitcode skill 路径 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!190 | 5 天前 | |
新增对DSV4 Attention部分的PTQ支持,修复DSV4 Attention中设备不一致的BUG Co-authored-by: SwaggyAlex<zhangyi601@huawei.com> # message auto-generated for no-merge-commit merge: !200 merge dsv4-ptq-attnlinear-fix into master 新增对DSV4 Attention部分的PTQ支持,修复DSV4 Attention中设备不一致的BUG Created-by: SwaggyAlex Commit-by: SwaggyAlex Merged-by: cann-robot Description: ## 描述 新增对DSV4 Attention部分的PTQ支持,修复DSV4 Attention中设备不一致的BUG ## 如何测试 <!--描述测试此改动的步骤和前提条件。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!200 | 2 天前 | |
新增文件 .clang-format,保证格式规范统一 Co-authored-by: fujun19<fujun19@hisilicon.com> # message auto-generated for no-merge-commit merge: !61 merge amct_open-patch-2 into master 新增文件 .clang-format,保证格式规范统一 Created-by: fujun19 Commit-by: fujun19 Merged-by: cann-robot Description: ## 描述 新增文件 .clang-format,保证C++代码格式规范统一 ## 如何测试 自动规范提交代码格式 ## 文档更新 NA ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!61 | 3 个月前 | |
feat(agents): tracked symlink 自动加载,兼容 Windows 客户端 Co-authored-by: xieyajun<xieyajun1@huawei.com> # message auto-generated for no-merge-commit merge: !190 merge feat/agent-symlink-autoload into master feat(agents): tracked symlink 自动加载,兼容 Windows 客户端 Created-by: xieyajun Commit-by: xieyajun Merged-by: cann-robot Description: ## 描述 将 Agent 配置的分发机制从「手动执行脚本生成」改为「git-tracked 符号链接自动加载」,并配套 Windows 兼容修复与文档完善。 ### 一、结构改造(tracked symlink) - 新增 7 个 mode 120000 git-tracked symlink:.claude/{skills,agents,hooks,docs} 和 .opencode/{skills,agents,docs} 指向 .agents/ 对应路径,clone 后即可直接使用,无需手动执行安装脚本 - 删除 scripts/init-agent.sh(115 行),该脚本在 symlink 机制下完全冗余 - .gitignore 移除对 /.claude/、/.opencode/、/CLAUDE.md 的忽略规则(已改为 tracked) - AGENTS.md 新增「Agent Skills」段落,说明自动加载机制并修正 gitcode skill 引用路径 ### 二、配置文件迁移与 Windows 兼容 - .agents/settings.json → .claude/settings.json(R100,真实文件 100644) - .agents/opencode.json → .opencode/opencode.json(R100,真实文件 100644) - 配置文件改为真实文件后,Windows 下 core.symlinks=false 时客户端仍可正常启动 - settings.json 完整保留 45 项权限(含 amct-ops-dev、install-default-skills 等),与 master 一致 ### 三、文档完善 - .agents/README.md:重写标题与定位描述,补充内置技能清单;新增 Windows symlink 修复指引(3 种方式:管理员终端 / 开发者模式 / mklink /J) - .agents/docs/architecture.md:§3 单一源投影机制重写,移除 init-agent.sh 和 CLAUDE.md 引用 - .agents/docs/README.md:移除 roadmap.md 引用 - 删除 .agents/docs/roadmap.md(规划已过时,内容与 architecture.md 重复) ### 四、default-skills 增强 - SKILL.md:场景化拆分(补装缺失 / 强制更新两种场景) - install-default-skills.sh:新增 --force 参数,默认跳过已存在 skill ### 五、hooks 改进 - subagent_stop.py:新增 cleanup_stale_counters(),懒清理 /tmp 下超过 48 小时的计数文件 ## 如何测试 1. Linux/macOS(symlink 正常):git clone 后直接进入项目目录,Claude Code / OpenCode 自动加载所有 skills 2. Windows: - OpenCode 无需额外操作,原生扫描 .agents/skills/ - Claude Code 需管理员终端执行 git config core.symlinks true && git checkout HEAD -- .claude 后自动加载 3. 验证 settings.json 权限完整性:确认 amct-ops-dev、install-default-skills、planning-with-files、skill-creator 均在 allow 列表中 4. 确认 scripts/init-agent.sh 已删除,CLAUDE.md 不存在 ## 文档更新 - .agents/README.md:全面重写,新增内置技能清单与 Windows 修复指引 - .agents/docs/architecture.md:§3 投影机制描述更新 - .agents/docs/README.md:移除 roadmap 引用 - .agents/docs/roadmap.md:已删除 - AGENTS.md:新增 Agent Skills 段落,修正 gitcode skill 路径 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!190 | 5 天前 | |
新增pre-commit配置 Co-authored-by: annqr<qiuqianru@h-partners.com> # message auto-generated for no-merge-commit merge: !71 merge master-b into master 新增pre-commit配置 Created-by: annqr Commit-by: annqr Merged-by: cann-robot Description: ## 描述 新增pre-commit配置 ## 如何测试 <!--描述测试此改动的步骤和前提条件。--> ## 文档更新 CONTRIBUTING.md文件更新了pre-commit相关说明。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [x] 其他,请描述:配置变更 See merge request: cann/amct!71 | 1 个月前 | |
feat(agents): tracked symlink 自动加载,兼容 Windows 客户端 Co-authored-by: xieyajun<xieyajun1@huawei.com> # message auto-generated for no-merge-commit merge: !190 merge feat/agent-symlink-autoload into master feat(agents): tracked symlink 自动加载,兼容 Windows 客户端 Created-by: xieyajun Commit-by: xieyajun Merged-by: cann-robot Description: ## 描述 将 Agent 配置的分发机制从「手动执行脚本生成」改为「git-tracked 符号链接自动加载」,并配套 Windows 兼容修复与文档完善。 ### 一、结构改造(tracked symlink) - 新增 7 个 mode 120000 git-tracked symlink:.claude/{skills,agents,hooks,docs} 和 .opencode/{skills,agents,docs} 指向 .agents/ 对应路径,clone 后即可直接使用,无需手动执行安装脚本 - 删除 scripts/init-agent.sh(115 行),该脚本在 symlink 机制下完全冗余 - .gitignore 移除对 /.claude/、/.opencode/、/CLAUDE.md 的忽略规则(已改为 tracked) - AGENTS.md 新增「Agent Skills」段落,说明自动加载机制并修正 gitcode skill 引用路径 ### 二、配置文件迁移与 Windows 兼容 - .agents/settings.json → .claude/settings.json(R100,真实文件 100644) - .agents/opencode.json → .opencode/opencode.json(R100,真实文件 100644) - 配置文件改为真实文件后,Windows 下 core.symlinks=false 时客户端仍可正常启动 - settings.json 完整保留 45 项权限(含 amct-ops-dev、install-default-skills 等),与 master 一致 ### 三、文档完善 - .agents/README.md:重写标题与定位描述,补充内置技能清单;新增 Windows symlink 修复指引(3 种方式:管理员终端 / 开发者模式 / mklink /J) - .agents/docs/architecture.md:§3 单一源投影机制重写,移除 init-agent.sh 和 CLAUDE.md 引用 - .agents/docs/README.md:移除 roadmap.md 引用 - 删除 .agents/docs/roadmap.md(规划已过时,内容与 architecture.md 重复) ### 四、default-skills 增强 - SKILL.md:场景化拆分(补装缺失 / 强制更新两种场景) - install-default-skills.sh:新增 --force 参数,默认跳过已存在 skill ### 五、hooks 改进 - subagent_stop.py:新增 cleanup_stale_counters(),懒清理 /tmp 下超过 48 小时的计数文件 ## 如何测试 1. Linux/macOS(symlink 正常):git clone 后直接进入项目目录,Claude Code / OpenCode 自动加载所有 skills 2. Windows: - OpenCode 无需额外操作,原生扫描 .agents/skills/ - Claude Code 需管理员终端执行 git config core.symlinks true && git checkout HEAD -- .claude 后自动加载 3. 验证 settings.json 权限完整性:确认 amct-ops-dev、install-default-skills、planning-with-files、skill-creator 均在 allow 列表中 4. 确认 scripts/init-agent.sh 已删除,CLAUDE.md 不存在 ## 文档更新 - .agents/README.md:全面重写,新增内置技能清单与 Windows 修复指引 - .agents/docs/architecture.md:§3 投影机制描述更新 - .agents/docs/README.md:移除 roadmap 引用 - .agents/docs/roadmap.md:已删除 - AGENTS.md:新增 Agent Skills 段落,修正 gitcode skill 路径 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!190 | 5 天前 | |
build: use cann third party protobuf Co-authored-by: fujun19<fujun19@hisilicon.com> # message auto-generated for no-merge-commit merge: !124 merge fix/use-add-cann-third-party into master build: use cann third party protobuf Created-by: fujun19 Commit-by: fujun19 Merged-by: cann-robot Description: 关联 Issue:#121 ## 描述 将本仓 protobuf 三方依赖迁移到 cann-cmake 统一入口: - 使用 add_cann_third_party(protobuf) 替换本地 cmake/third_party/protobuf.cmake。 - 开启 ENABLE_OPEN_SRC,确保统一 protobuf 脚本创建 host_protoc、ascend_protobuf_static 等目标。 - 将 proto 编译路径从旧的 build/protobuf_host/bin/protoc 切换为 $<TARGET_FILE:host_protoc>。 - 删除迁移后不再需要的本地 protobuf 脚本和 patch 文件。 ## 如何测试 - git diff --check - cmake -S . -B build_add_cann_third_party_default_check -DENABLE_TEST=OFF - cmake -S . -B build_add_cann_third_party_test_check -DENABLE_TEST=ON 说明:ENABLE_TEST=ON 配置过程中当前环境会打印已有的 torch_npu 后端符号错误 traceback,但 CMake 退出码为 0 并完成配置生成。 ## 文档更新 不涉及文档更新。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 代码重构 - [x] 其他,请描述:构建依赖迁移 See merge request: cann/amct!124 | 1 个月前 | |
update CONRIBUTING.md for coding-standards Co-authored-by: fujun19<fujun19@hisilicon.com> # message auto-generated for no-merge-commit merge: !21 merge docs into master update CONRIBUTING.md for coding-standards Created-by: fujun19 Commit-by: fujun19 Merged-by: cann-robot Description: ## 描述 更新CONRIBUTING.md中关于特性代码风格及代码规范的说明链接 ## 如何测试 走读CONRIBUTING.md文档,描述无误 ## 文档更新 更新了CONRIBUTING.md文档 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!21 | 5 个月前 | |
docs: add English translation for all markdown documentation files Co-authored-by: sophia1213<sophie.chen@huawei.com> # message auto-generated for no-merge-commit merge: !143 merge master into master docs: add English translation for all markdown documentation files Created-by: sophia1213 Commit-by: sophia1213 Merged-by: cann-robot Description: ## 描述 更新英文非产品文档资料 ## 如何测试 根据最新的中文md资料进行测试 ## 文档更新 非docs目录下的所有xx_en.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!143 | 1 个月前 | |
Initial commit | 6 个月前 | |
docs: add English translation for all markdown documentation files Co-authored-by: sophia1213<sophie.chen@huawei.com> # message auto-generated for no-merge-commit merge: !143 merge master into master docs: add English translation for all markdown documentation files Created-by: sophia1213 Commit-by: sophia1213 Merged-by: cann-robot Description: ## 描述 更新英文非产品文档资料 ## 如何测试 根据最新的中文md资料进行测试 ## 文档更新 非docs目录下的所有xx_en.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!143 | 1 个月前 | |
Initial commit | 6 个月前 | |
【PR】增加oat_check license检查脚本,用于检测OAT是否正确 Co-authored-by: zhangfands<18768316492@163.com> # message auto-generated for no-merge-commit merge: !126 merge master into master 【PR】增加oat_check license检查脚本,用于检测OAT是否正确 Created-by: zhangfands Commit-by: zhangfands Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 1、oat的precommit从使用java的工具改为使用python,依赖python3.7以上版本,解决了用户需要额外下载安装jdk或者提升python版本的问题。 2、oat.xml文件支持放在/scripts/下,解决用户提出的根目录下配置文件过多的文件。同时向前兼容根目录下放配置文件的方式。 ## 如何测试 <!--描述测试此改动的步骤和前提条件。--> 无 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 无 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [x] 性能优化 - [ ] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!126 | 1 个月前 | |
fix: 修复 sdist 安装构建依赖声明(#144) Co-authored-by: fujun19<fujun19@hisilicon.com> # message auto-generated for no-merge-commit merge: !198 merge fix/issue-144-build-system into master fix: 修复 sdist 安装构建依赖声明(#144) Created-by: fujun19 Commit-by: fujun19 Merged-by: cann-robot Description: ## 描述 修复 #144:为 sdist 安装补齐 PEP 517/518 构建后端声明,并修正文档中 --no-build-isolation 安装路径的构建依赖说明。 主要改动: - 在 pyproject.toml 增加 [build-system],声明 setuptools、wheel 与 setuptools.build_meta。 - 更新 README.md、README_en.md 与 docs/zh/build.md,说明使用 --no-build-isolation 时需先执行 pip install wheel,避免 invalid command 'bdist_wheel'。 ## 如何测试 - python3 -m pip wheel . --no-deps --no-build-isolation -w /tmp/amct_issue144_wheel - python3 /home/developer/.codex/skills/codearts-check/scripts/run_codearts_check.py - git diff --check ## 文档更新 更新 README.md、README_en.md 和 docs/zh/build.md 中关于 --no-build-isolation 与 wheel 构建依赖的安装说明。 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!198 | 5 天前 | |
fix: 修复 sdist 安装构建依赖声明(#144) Co-authored-by: fujun19<fujun19@hisilicon.com> # message auto-generated for no-merge-commit merge: !198 merge fix/issue-144-build-system into master fix: 修复 sdist 安装构建依赖声明(#144) Created-by: fujun19 Commit-by: fujun19 Merged-by: cann-robot Description: ## 描述 修复 #144:为 sdist 安装补齐 PEP 517/518 构建后端声明,并修正文档中 --no-build-isolation 安装路径的构建依赖说明。 主要改动: - 在 pyproject.toml 增加 [build-system],声明 setuptools、wheel 与 setuptools.build_meta。 - 更新 README.md、README_en.md 与 docs/zh/build.md,说明使用 --no-build-isolation 时需先执行 pip install wheel,避免 invalid command 'bdist_wheel'。 ## 如何测试 - python3 -m pip wheel . --no-deps --no-build-isolation -w /tmp/amct_issue144_wheel - python3 /home/developer/.codex/skills/codearts-check/scripts/run_codearts_check.py - git diff --check ## 文档更新 更新 README.md、README_en.md 和 docs/zh/build.md 中关于 --no-build-isolation 与 wheel 构建依赖的安装说明。 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!198 | 5 天前 | |
调整docs目录区分中英文 Co-authored-by: sophia1213<sophie.chen@huawei.com> # message auto-generated for no-merge-commit merge: !142 merge master into master 调整docs目录区分中英文 Created-by: sophia1213 Commit-by: sophia1213 Merged-by: cann-robot Description: ## 描述 docs目录区分中英文 ## 如何测试 根据最新的目录进行测试 ## 文档更新 docs目录下中的中文文档,移入docs/zh目录,后续英文在docs/en目录 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x ] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!142 | 1 个月前 | |
docs: add English translation for all markdown documentation files Co-authored-by: sophia1213<sophie.chen@huawei.com> # message auto-generated for no-merge-commit merge: !143 merge master into master docs: add English translation for all markdown documentation files Created-by: sophia1213 Commit-by: sophia1213 Merged-by: cann-robot Description: ## 描述 更新英文非产品文档资料 ## 如何测试 根据最新的中文md资料进行测试 ## 文档更新 非docs目录下的所有xx_en.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!143 | 1 个月前 | |
接入cann公共cmake仓 Co-authored-by: fujun19<fujun19@hisilicon.com> # message auto-generated for no-merge-commit merge: !78 merge public into master 接入cann公共cmake仓 Created-by: fujun19 Commit-by: fujun19 Merged-by: cann-robot Description: ## 描述 删除实际未使用到的cmakefile 接入cann公共cmake仓 ## 如何测试 bash build.sh --pkg生成amct包 ## 文档更新 更新了SECURITY.md文件 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!78 | 2 个月前 | |
[feat] add DeepSeek-V3.2-Exp W8A8C8/W4A8C8 quantization support Co-authored-by: SwaggyAlex<zhangyi601@huawei.com> # message auto-generated for no-merge-commit merge: !3 merge master into master [feat] add DeepSeek-V3.2-Exp W8A8C8/W4A8C8 quantization support Created-by: SwaggyAlex Commit-by: SwaggyAlex Merged-by: cann-robot Description: # 描述 新增对DeepSeek-V3.2-Exp W8A8C8/W4A8C8的量化支持,提供逐block的calibration数据dump、模型训练、精度测验、权重转换脚本,以及使用说明文档 # 类型 [ ] Bug修复 [x] 新功能 [ ] 重构(即不是新增,也不是修改bug的代码改动) [x] 构建过程或辅助工具的变动 [x] 文档内容更新 # 使用说明 **使用前请在sh文件内设置对应模型路径、输出路径等变量** # calibration数据dump bash scripts/dump.sh # 模型训练 bash scripts/train.sh # ppl测算 bash scripts/val.sh # 量化权重输出 bash scripts/deploy.sh # CheckList: [x] 我的代码遵循这个项目的代码风格 [x] 我已经自己测试过我的代码 [x] 我已经更新了对应的文档 [x] 我已经在标题中正确使用了类型标签(例如:feat, fix, refactor, docs, test) # 其他信息 See merge request: cann/amct!3 | 6 个月前 | |
feat: build.sh 按配置变更自动决定是否清理缓存 Co-authored-by: fujun19<fujun19@hisilicon.com> # message auto-generated for no-merge-commit merge: !173 merge feat/incremental-build into master feat: build.sh 按配置变更自动决定是否清理缓存 Created-by: fujun19 Commit-by: fujun19 Merged-by: cann-robot Description: ## 描述 原来每次构建都无条件删除 build/ 目录,导致无法利用增量编译,每次均为全量构建。 改为读取 CMakeCache.txt 中的关键编译参数(CMAKE_BUILD_TYPE、ENABLE_EXPERIMENTAL、ENABLE_ASAN),仅在这些值发生变化时才清理缓存,其余情况复用已有构建产物。 用户无需感知清理时机,脚本自动判断: - 编译参数未变(包括混用 --torch/--pkg)→ 增量构建 - --build-type、--experimental、--asan 有变化 → 自动全量清理后重建 - 首次构建或 build/ 不存在 → 直接创建,正常构建 ## 如何测试 1. 执行 bash build.sh --torch,记录编译时间 2. 再次执行 bash build.sh --torch,确认复用缓存,编译时间明显缩短 3. 执行 bash build.sh --torch --build-type=Debug,确认输出 Build config changed, cleaning build cache... 并全量重建 4. 混用 bash build.sh --pkg 与 bash build.sh --torch,确认无问题 ## 文档更新 无需更新文档。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!173 | 19 天前 | |
[feat] add DeepSeek-V3.2-Exp W8A8C8/W4A8C8 quantization support Co-authored-by: SwaggyAlex<zhangyi601@huawei.com> # message auto-generated for no-merge-commit merge: !3 merge master into master [feat] add DeepSeek-V3.2-Exp W8A8C8/W4A8C8 quantization support Created-by: SwaggyAlex Commit-by: SwaggyAlex Merged-by: cann-robot Description: # 描述 新增对DeepSeek-V3.2-Exp W8A8C8/W4A8C8的量化支持,提供逐block的calibration数据dump、模型训练、精度测验、权重转换脚本,以及使用说明文档 # 类型 [ ] Bug修复 [x] 新功能 [ ] 重构(即不是新增,也不是修改bug的代码改动) [x] 构建过程或辅助工具的变动 [x] 文档内容更新 # 使用说明 **使用前请在sh文件内设置对应模型路径、输出路径等变量** # calibration数据dump bash scripts/dump.sh # 模型训练 bash scripts/train.sh # ppl测算 bash scripts/val.sh # 量化权重输出 bash scripts/deploy.sh # CheckList: [x] 我的代码遵循这个项目的代码风格 [x] 我已经自己测试过我的代码 [x] 我已经更新了对应的文档 [x] 我已经在标题中正确使用了类型标签(例如:feat, fix, refactor, docs, test) # 其他信息 See merge request: cann/amct!3 | 6 个月前 | |
chore: update amct graph package url Co-authored-by: fujun19<fujun19@hisilicon.com> # message auto-generated for no-merge-commit merge: !115 merge update_graph into master chore: update amct graph package url Created-by: fujun19 Commit-by: fujun19 Merged-by: cann-robot Description: ## 描述 更新 install_graph.sh 中 cann-amct-graph 包下载地址,从 20260131_newest 的 9.0.0 包更新为 20260520_newest 的 9.1.0 包,使打包流程获取最新 graph 兼容包。 ## 如何测试 - 清理构建缓存和生成物:build/、build_out/、amctgraph/、dist/、tmp/、amct_pytorch.egg-info、amct_pytorch/graph_based_compression/lib/、测试日志/覆盖率和 __pycache__ - 执行:bash build.sh --pkg - 解压:build_out/cann-amct_9.0.0_linux-aarch64.tar.gz - 检查生成物目录结构 验证结果:构建退出码为 0,日志包含 Build success!、package amct run success、Build finished。解压后确认 graph 包内容更新为 cann-amct_acl_9.1.0_linux-aarch64.run、amct_onnx-0.24.0-py3-none-linux_aarch64.whl,且新包不再包含 amct_mindspore/。 ## 文档更新 无。 ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 代码重构 - [x] 其他,请描述:更新构建辅助脚本中的外部 graph 包下载地址 See merge request: cann/amct!115 | 1 个月前 | |
chore: 移除 coverage omit 中对 __init__.py、cli、deepseek 的排除规则 Co-authored-by: fujun19<fujun19@hisilicon.com> # message auto-generated for no-merge-commit merge: !214 merge fix/coverage-omit-rules-154 into master chore: 移除 coverage omit 中对 __init__.py、cli、deepseek 的排除规则 Created-by: fujun19 Commit-by: fujun19 Merged-by: cann-robot Description: ## 描述 移除 pyproject.toml 中 [tool.coverage.run] 的 omit 列表里三条过于宽泛的排除规则: - */cli/* — CLI 模块已有测试用例覆盖,无需排除 - **/__init__.py — 所有 __init__.py 一并排除导致 97 个文件不可见,实际上它们已被 import 链执行 - */common/models/llm/deepseek/* — DeepSeek 模型文件不应整体排除 保留 */experimental/* 排除(试验特性不参与常规覆盖率统计)。 **效果**:覆盖率报告从收录 307 个文件扩展到 417 个(全部非 experimental 文件),之前被 omit 排除的 110 个文件中 105 个已有覆盖,仅剩 deepseek_v4 下 5 个文件仍为 0% 覆盖。 关联 issue: #154 ## 如何测试 bash # 运行单元测试并生成覆盖率报告 bash build.sh -u --cov # 检查覆盖率报告中收录的文件数(应为 417) # 检查 deepseek_v4 下 5 个文件仍为 0% 覆盖,其余文件均有覆盖 ## 文档更新 无文档更新。 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [x] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!214 | 1 天前 | |
docs: 说明 torch_npu 需配套 CPU 版 torch(#140) Co-authored-by: fujun19<fujun19@hisilicon.com> # message auto-generated for no-merge-commit merge: !199 merge fix/issue-140-torch-npu-docs into master docs: 说明 torch_npu 需配套 CPU 版 torch(#140) Created-by: fujun19 Commit-by: fujun19 Merged-by: cann-robot Description: ## 描述 修复 #140,补齐 NPU 场景下 PyTorch 与 torch_npu 的配套安装说明,避免用户按 requirements.txt 安装到非 CPU 版 torch 后与 torch_npu 冲突。 主要改动: - requirements.txt 使用 PyTorch CPU wheel 索引并固定 torch==2.7.1+cpu。 - README.md / README_en.md 明确 NPU 路径需使用 CPU 版 PyTorch,不要与非 CPU 版 PyTorch 混装。 - docs/zh/quick_install.md 增加 PyTorch + torch_npu 配套安装小节、官方配套表路径、CPU wheel 安装方式和验证命令。 ## 如何测试 - 指定关键词检查无匹配:README.md、README_en.md、docs/zh/quick_install.md、requirements.txt。 - rg -n "https://download\.pytorch\.org/whl/cpu" requirements.txt docs/zh/quick_install.md - rg -n "torch==2\.7\.1\+cpu" docs/zh/quick_install.md requirements.txt - python3 -m pip install --dry-run -r requirements.txt,确认解析到 torch-2.7.1+cpu 与 torch_npu-2.7.1.post4。 - git diff --check HEAD~1 HEAD ## 文档更新 更新 README.md、README_en.md、docs/zh/quick_install.md,并同步调整 requirements.txt 中 torch 的 CPU wheel 安装来源。 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!199 | 5 天前 | |
feat: 新增 --experimental 构建选项以打包实验特性代码 Co-authored-by: fujun19<fujun19@hisilicon.com> # message auto-generated for no-merge-commit merge: !167 merge worktree-feat+experimental-pkg-option into master feat: 新增 --experimental 构建选项以打包实验特性代码 Created-by: fujun19 Commit-by: fujun19 Merged-by: cann-robot Description: ## 描述 默认的 --pkg / --torch 构建排除 amct_pytorch/experimental/ 目录,新增 --experimental 标志,使用时将实验特性纳入分发包。 用法示例: bash bash build.sh --torch --experimental bash build.sh --pkg --experimental ## 如何测试 - bash build.sh --help 确认 --experimental 选项出现在帮助输出中 - bash build.sh --torch 产物中不含 amct_pytorch/experimental - bash build.sh --torch --experimental 产物中包含 amct_pytorch/experimental - ruff check / bash -n 语法检查通过,CodeArts Check 0 defects ## 文档更新 - AGENTS.md:补充 --experimental 构建示例 - examples/README.md / README_en.md:FlatQuant 标注实验特性,说明需要 --experimental 构建 - examples/algorithms/flatquant/README_CN.md / README_en.md:顶部加实验特性前置说明 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!167 | 25 天前 | |
add amct_pytorch pkg Co-authored-by: fujun19<fujun19@hisilicon.com> Co-authored-by: fujun19<ikX6KxGSevEwXSku7b7TnwyZ> # message auto-generated for no-merge-commit merge: !19 merge amct_pytorch into master add amct_pytorch pkg Created-by: fujun19 Commit-by: fujun19 Merged-by: cann-robot Description: ## 描述 新增amct_pytorch部分功能开源,包含数据与权重低比特量化、张量分解、模型部署优化(主要为算子融合)等功能 https://www.hiascend.com/document/detail/zh/canncommercial/850/devaids/amct/atlasamct_16_0001.html ## 如何测试 bash build.sh --pkg构建出包 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 代码重构 - [ ] 其他,请描述: See merge request: cann/amct!19 | 5 个月前 |
🔥 最新动态
- [2026/05/28] 新增当前主流 LLM 网络量化、PTQ 算法支持,并提供 DeepSeek-V4 和 Qwen3.6-MoE 的一站式样例
- [2026/04/24] 新增 DeepSeek-V4 模型 INT8 量化支持
- [2026/04/17] 新增 HiFloat8 分位量化(Quantile)算法
- [2026/03/02] 新增 HiFloat8 数据直转(Cast)算法
- [2026/02/02] 新增 HiFloat8 / MXFP8 / MXFP4 数据量化
- [2025/12/22] AMCT 项目首次上线 🎉
🚀 概述
AMCT 是昇腾 NPU 原生的模型量化压缩工具。量化后模型体积减小,在昇腾 NPU 上启用低比特运算,显著提升推理性能。部署架构如下:
亮点为:
- 🎯 硬件亲和 —— 量化结果直接对接昇腾 NPU 低比特运算单元
- 🔢 多精度全栈 —— INT8 / INT4 / MXFP8 / MXFP4 / HiFloat8 任选
- 🚀 大模型就绪 —— 原生支持 DeepSeek-V3.2 / V4 等前沿模型
✨ 核心特性
| 特性类别 | 简介 |
|---|---|
| PTQ 量化算法 | Min-Max / AWQ / GPTQ / SmoothQuant 等训练后量化算法,详见 算法介绍 |
| HiFloat8 量化 | 华为自研 8-bit 浮点格式,锥形精度 + 大动态范围,详见 HiFloat8 介绍 |
| NPU 自定义算子 | 基于NPU的自研算子,Ascend C kernel 实现,详见 amct_ops |
| 大模型量化 | DeepSeek-V3.2 / V4 量化方案,详见 DeepSeek-V4 |
📊 性能收益
量化显著降低部署成本:
| 精度格式 | 仅权重(W) | 全量化(W+A) | 收益 |
|---|---|---|---|
| INT8 | ✅ Min-Max / AWQ / GPTQ | ✅ Min-Max / SmoothQuant | 体积 ↓50% · 吞吐 ↑ |
| INT4 | ✅ AWQ / GPTQ | ✅ FlatQuant | 体积 ↓75% · 低带宽友好 |
| HiFloat8 | ✅ Cast / Quantile / OFMR | ✅ Cast / Quantile / OFMR | 体积 ↓50% · 大动态范围 |
| MXFP8 | ✅ MXQuant | ✅ MXQuant | 体积 ↓50% · 高精度 |
| MXFP4 | ✅ MXQuant | ✅ MXQuant | 体积 ↓75% · 微缩浮点 |
📦 快速开始
环境要求
| 依赖 | 版本 |
|---|---|
| Python | >=3.9 |
| PyTorch | 2.7.1 或 2.1.0(NPU 加速后端需使用 CPU 版 PyTorch,并配套 torch_npu) |
| GCC / CMake / patch | ≥ 7.3 / ≥ 3.16(推荐 3.20) / ≥ 2.7 |
| CANN(Toolkit & Ops) | ≥ 8.5.0(需提前安装 NPU 驱动 / 固件) |
⚠️ 使用 NPU 加速后端时,请安装 CPU 版 PyTorch 后再安装配套
torch_npu,不要在同一环境中混用非 CPU 版 PyTorch 与torch_npu。
完整环境部署请参见 快速安装。
安装&验证
# 1. 拉取源码并安装依赖
git clone https://gitcode.com/cann/amct.git
cd amct
pip3 install -r requirements.txt
# 2. 源码构建打包
bash build.sh --torch
# 3. 安装(产物位于 build_out/)
# ${version} 从 build_out/ 目录中的文件名获取,如 amct_pytorch-1.1.0-py3-none-linux_aarch64.tar.gz
# ${arch} 为 CPU 架构,如 x86_64、aarch64
pip3 install build_out/amct_pytorch-${version}-py3-none-linux_${arch}.tar.gz --user
⚠️ 注意:若使用
--no-build-isolation安装,pip 不会自动安装构建依赖; 请先执行pip install wheel,再追加--no-build-isolation安装产物包,否则可能出现error: invalid command 'bdist_wheel'。
# 验证 AMCT 安装
python3 -c "import torch; assert '+cpu' in torch.__version__, 'must use CPU torch for NPU path'"
python3 -c "import amct_pytorch as amct; print(f'successfully installed AMCT ')"
更多构建选项与本地验证请参见 构建指南。
🏃 一站式平台快速体验
「一站式平台」是为开发者提供的 NPU 环境,内部已集成完整的 CANN 环境,可以直接使用。AMCT 针对该平台在相应样例 README 中提供了简化的「快速启动」路径,帮助用户最小步骤完成 NPU 推理体验。当前支持的模型正在持续扩展中,敬请关注:
| 实践 | 简介 |
|---|---|
| Qwen3.6-MoE | 在 Atlas A3 环境中完成 Qwen3.6-MoE 模型的量化、数据提取以及 PTQ,针对一站式平台场景提供标准启动流程和相关配置,帮助用户快速上手完成一次端到端 NPU 推理体验。 |
| DeepSeek-V4 | 在 Atlas A3 环境中完成 DeepSeek-V4 Flash 模型的单卡推理,针对一站式平台场景提供标准启动流程和相关配置,帮助用户快速上手完成一次端到端 NPU 推理体验。 |
📖 文档样例
| 主题 | 内容 |
|---|---|
| 压缩概念 | 量化、稀疏、蒸馏等基础概念 |
| LLM量化 | 面向大语言模型(LLM)的量化特性 |
| 压缩特性 | AMCT 支持的基础压缩特性 |
| API 文档 | 接口使用说明 |
| 算法介绍 | AWQ、GPTQ、SmoothQuant等算法原理 |
🔍 目录结构
amct/
├── amct_pytorch/ # PyTorch 量化压缩核心源码
│ ├── algorithms/ # 量化算法实现
│ ├── cli/ # 命令行入口
│ ├── common/ # 通用工具、模型和数据处理
│ ├── configs/ # 量化配置模板
│ ├── experimental/ # 实验特性(HiFloat8、DeepSeek 等)
│ ├── quantization/ # 量化数据类型与基础模块
│ └── workflows/ # LLM 量化、评估和部署流程
├── amct_ops/ # AMCT 自定义 NPU 算子
├── examples/ # 端到端样例与调用示例
├── tests/ # 单元测试
├── docs/ # 工具文档(概念、API、算法等)
├── cmake/ # CMake 构建配置
├── build.sh # 工程编译脚本
├── setup.py # Python 包打包入口
└── requirements.txt # Python 第三方依赖
❓ 常见问题
算法选择:何时使用 AWQ / GPTQ / SmoothQuant?
| 算法 | 适用场景 | 核心思路 |
|---|---|---|
| AWQ | 大模型 PTQ,追求低量化误差 | 感知激活的权重量化,保护 ~1% 显著权重 |
| GPTQ | 大模型 PTQ,强调逐层优化 | 基于海森矩阵的权重微调,最小化量化误差 |
| SmoothQuant | 激活分布困难场景 | 将激活量化难度迁移至权重,平滑激活异常值 |
| Min-Max | 入门场景,简单快速 | 直接取最大最小值计算量化因子 |
建议:大模型权重量化首选 AWQ 或 GPTQ;W8A8 全量化场景推荐 SmoothQuant;入门学习推荐 Min-Max。
量化后精度下降如何处理?
处理路径(按优先级):
- 调整校准数据量:增大
batch_num(推荐 batch_num × batch_size = 16 或 32) - 回退敏感层:识别量化敏感层(首层、尾层、参数量少的层),在配置中设置
quant_enable: false - 调整量化算法:分析模型数据分布特点,使用合适的量化算法
- 尝试量化感知训练(QAT):若 PTQ 无法满足精度,使用 QAT 重训练
安装时报 "ModuleNotFoundError: No module named 'torch'"?
原因:pip 版本 > 25.2,构建隔离导致 torch 未被识别。
解决方案:
# 方案 1:降低 pip 版本
pip install pip==25.2
# 方案 2:先安装 wheel,再添加 --no-build-isolation
pip install wheel
pip3 install build_out/amct_pytorch-${version}-py3-none-linux_${arch}.tar.gz --user --no-build-isolation
💬 社区讨论
欢迎加入 AMCT 社区,参与讨论与交流:
| 平台 | 用途 |
|---|---|
| GitCode Issue | 问题反馈、功能建议、技术讨论 |
| GitCode Discussions | 经验分享、最佳实践、社区互动 |
| SIG Discussions | 技术决策、问题处理、项目落地 |
🤝 参与贡献
欢迎贡献代码、算法与文档,详见 贡献指南:
- 简单 bug 修复:直接提交 PR
- 新特性 / 接口变更:先在 Issue 中讨论方案,达成共识后再提交 PR
- 代码风格:C/C++ 遵循 Google 规范(基于
.clang-format),Python 遵循 PEP8;提交前启用pre-commit
🙏 致谢
感谢所有为 AMCT 做出贡献的开发者!
本项目受启发于以下开源项目:
- AWQ - 激活感知权重量化
- GPTQ - GPTQ 实现参考
- SmoothQuant - 平滑激活量化
- FlatQuant - 矩阵平坦量化
📝 许可证
本项目基于 Apache 2.0 协议开源。使用前请阅读 安全声明 与 免责声明。