合并受阻
Hi @Ethan_Zou, welcome to submitting your first PR to cannbot-dsl!
PR Merge Steps
1. CLA Signing
If the current PR label includes cann-cla/yes, it means you have signed the CLA and can proceed to the next step. If the label includes cann-cla/no, please sign the CLA first. If you have any questions, please refer to the FAQ.
2. CI Check
Please comment /compile to trigger the CI pipeline check. If the CI run is successful, the PR will be tagged with ci-pipeline-passed and you can proceed to the next step. If the CI run fails, the PR will be tagged with ci-pipeline-failed, please check the CI logs to fix the issues in the PR. If you have any questions, please refer to the FAQ.
3. Code Review
After CI passes, please refer to the PR Approval Progress and proactively @ the committers in the table to review the code. After approval, committers will comment /lgtm and /approve. Once the lgtm and approved labels are successfully added, the PR will be merged automatically.


Thanks for your pull-request.
The full list of commands accepted by me can be found at here.
You can get sig-info at here.
You can self-configure the PR merge rules for this repository. For more details, please refer to Here.
For more, you also can visit HICANN.
PR Approval Progress
⚠️ This PR does not yet meet the following requirements:lgtm (requires ≥ 2 person(s) per module)、approve (requires ≥ 1 person(s) per module)
Module Approval Details
| module | lgtm status | approve status |
|---|---|---|
| repo-cann/cannbot-dsl | ❌ (0/2)(You can also ask: 金炯, 沈敏, 陈振宇, 刘佳玮, liujun2025) | ❌ (0/1)(You can also ask: liujun2025, yang-jiwei, 陈振宇, 陆玲辉, 金炯) |
💡 Tip:
- Committer can comment
/approveor/lgtm- Commenting
/approveimplies both code review (lgtm) and intent to merge (approve)
CLA Signature Pass
Ethan_Zou, thanks for your pull request. All authors of the commits have signed the CLA. 👍


| 🚀 CI 流水线已启动 |
|---|
| 📋 执行详情: 点击查看流水线 |


| 🚀 CI 流水线已启动 |
|---|
| 📋 执行详情: 点击查看流水线 |


流水线分析报告 — cannbot-dsl run#432
流水线: https://gitcode.com/CANN/cannbot-dsl/actions/runs/7529200ebb204b69a6bf53dc17c8a1bf | PR#132 | 2026-10-09 19:41:08 ~ 2026-10-09 19:47:12 | 失败 Job 2 个
定界结论: 工程问题 / 配置错误 — wheel 安装被 PEP 668 拦截
- 失败类型: 工程问题(CI 环境配置,非 PR 代码问题)
- 根因: 两个 Test Job 在安装测试依赖时, runner 上 conda 环境
cannbot不存在, 脚本回退到系统默认 Python 3.12; 系统 Python 受 PEP 668 保护(externally-managed-environment),pip install被拦截, 导致cannbotdslwheel 安装失败退出 - 处置建议: 转 CI 维护者处理 — ① 在 CI 镜像中预置 conda 环境
cannbot(消除回退系统 Python 的路径); 或 ② 测试脚本改用 venv / pipx, 或 pip 安装加--break-system-packages - 排除项: 非 PR 代码问题(失败发生在依赖安装阶段, 未编译/未运行任何 PR 变更代码); 非平台内部错误(退出码 1 来自真实 pip 报错)
失败根因分析
根因 #1: 工程问题 / 配置错误 — pip 安装 cannbotdsl wheel 被 PEP 668 externally-managed 拦截
- 判据: wheel 包安装失败: cannbotdsl(pip 被 PEP 668 externally-managed 拦截, CI 环境需 venv 或 --break-system-packages)
- 定位步骤:
3_run_tests.log(两个 Job 日志完全同型) - 影响 Job: Test × 2(同因聚合, 无独立失败)
- 根因证据(日志原文):
[WARN] conda env 'cannbot' not found, using default python
=== [1/3] env check ===
[INFO] installing local cannbotdsl wheel: /opt/cannbot-dsl/whl/20260817_141417/cannbotdsl-0.3.dev126+gfd7852302-cp312-cp312-linux_x86_64.whl
error: externally-managed-environment
× This environment is externally managed
...
note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.
[ERROR] failed to install cannbotdsl wheel: /opt/cannbot-dsl/whl/20260817_141417/cannbotdsl-0.3.dev126+gfd7852302-cp312-cp312-linux_x86_64.whl
::error::Process exited with code 1
- 证据链: conda env
cannbot缺失(前置警告) → 回退系统 Python 3.12 → PEP 668 拦截 pip → wheel 安装失败 exit 1。失败与 PR 变更内容无关, 属 CI 运行环境配置问题
由门禁失败定界分析自动生成 | repo: cannbot-dsl | run: 7529200ebb204b69a6bf53dc17c8a1bf | PR#132


| 🚀 CI 流水线已启动 |
|---|
| 📋 执行详情: 点击查看流水线 |


修改
补齐
docs/examples/index.md的当前样例导航,使链接目标覆盖全部跟踪的样例 README。最新上游已补齐原 PR 所列入口,并提供接口列。目前唯一缺口是新增的
samples/attn_epilogue/README.md。本提交保留上游表格的全部原文字节,增加一行 attn_epilogue 导航及经实际样例 README 核实的接口/说明。验证
samples/**/README.md。修复前导航有 27 个唯一目标,缺少 attn_epilogue;修复后 28 个唯一目标,缺失和多余均为0。attn_epilogue()、inverse RoPE、两次 OCP MXFP8 激活量化和 WoA/WoB 两级矩阵乘描述来自当前样例 README 和根 README。基于最新 master
81ba8619759fe1f32a633a34313e58261883e13f,源SHA199264a97536cda82ce019925f27f3a3112bfce8;远端分支和 PR/commits API 已回读核实一个源提交、当前无冲突。旧失败标签不是新SHA的 CI 结论;本轮单次/compile后等待两套 CI 核实。Fixes #25
AI 参与
使用 OpenAI Codex 的本机模型检查冲突、准备文档修复并分析验证证据;源码、检查和 Git 操作均在 DevEnvC_mmdv8 执行。提交者账号为 Ethan_Zou。