Repository navigation
Description
Current state 用户已将交付范围调整为 GPT-6.1 Sol/high 的两组检索对照。两组均完成 8 轮探索和一次独立 final,18 次评测的原始证据审计全部 PASS,实际模型与 effort 遥测、token 边界、候选哈希及资源清理已核对。
Decision needed 请求者复核本次观察与局限,仓库级验收由维护者另行记录。
Next action GPT-6.1 本次对照结果已交付,保留资料、候选和独立评测证据供复核。GPT-5.6 执行已按用户要求停止并归档。
范围与执行
两组均使用 gpt-6.1-sol / high、同一份知识库和相同原始 MoE baseline,独立新会话串行执行。变量为生产 Skill Indexer 与 Agent 使用 rg/列目录/文件读取自行选择资料。关联 #255 的检索对照设计与 #337 的实际消费验证。
| 项目 | 固定设置 |
|---|---|
| 知识 | 4715f95795718cda461500f61fd418d8ed72ff9b,75 个 common/ascend 注册 owner 及包内依赖 |
| RSI runtime | 8f3aebd2e1359d11d8bcdd034f5dacedf9a1f12d,external.execute_trial |
| Indexer | KnowledgeReader.collect,weighted-lexical-v1,backend ascend,limit 3,context 262144 UTF-8 字节,Agent 自选 query |
| 另一组 | 同库 rg、列目录和文件读取 |
| 预算 | 每组 8 个候选,失败占轮次,随后从本组有效历史候选中选择一个做独立 final |
| 设备 | 两张 Ascend910B1,npu run 自动分配,预约 18 分钟、队列等待最多 30 分钟 |
| 测量 | 完整 MoE forward,baseline/candidate 配对交错,探索两对、final 四对,三 case 比值几何平均 |
| 验收 | 独立 CPU FP32 oracle,两 rank 全输出、只读、变化输入、权重更新与空 rank 检查 |
| 环境 | PyTorch 2.10.0+cpu,torch_npu 2.10.0.post4,CANN 9.1.0,Python 3.12.13,HF32 关闭 |
| 客户端 | 已安装桌面版自带 CLI 0.166.0-alpha.5.1,显式关闭额外模型、子 Agent、全局 skills、插件、记忆与外部检索 |
独立 final 与完整会话代价
| 条件 | Final 加速比 | 正确候选 | 输入 token | 其中缓存输入 | 输出 token | 总 token | 非缓存输入加输出 |
|---|---|---|---|---|---|---|---|
| indexer | 2.176× | 6/8 | 7,963,520 | 7,821,952 | 52,121 | 8,015,641 | 193,689 |
| rg | 2.374× | 7/8 | 14,542,491 | 14,381,952 | 55,208 | 14,597,699 | 215,747 |
这次轨迹中,rg 最终加速比比 Indexer 高 9.1%,Indexer 完整会话总 token 少 45.1%。缓存输入占比很高,非缓存输入加输出的降幅约 10.2%。
总 token 为 input + output,缓存输入包含在 input 中,reasoning 包含在 output 中。完整会话包含检索、等待交互、候选分析和最终报告。货币账单未知,分别保留各类 token。
| 条件 | Final case | Baseline ms | Candidate ms | 加速比 |
|---|---|---|---|---|
| indexer | balanced-small | 4.329 | 1.977 | 2.190× |
| indexer | skewed-medium | 4.859 | 2.289 | 2.123× |
| indexer | balanced-large | 5.407 | 2.439 | 2.217× |
indexer final candidate SHA256 为 9f931d6dc04ead30519365abc7413d08bce0d28fecd4a685cf1a06a5463c9bee。
| rg | balanced-small | 4.652 | 1.861 | 2.500× |
| rg | skewed-medium | 4.864 | 2.001 | 2.431× |
| rg | balanced-large | 6.032 | 2.740 | 2.202× |
rg final candidate SHA256 为 4638f65e3dc3d59fa747b06779bc9fefa1463b591e37a70359b98d688a5c5b53。
逐轮轨迹
| 条件 | 轮次 | 正确性 | 当轮加速比 | 截止评测返回的累计 token |
|---|---|---|---|---|
| indexer | 1 | PASS | 1.580× | 1,193,493 |
| indexer | 2 | PASS | 1.868× | 2,299,136 |
| indexer | 3 | FAIL | — | 2,734,062 |
| indexer | 4 | FAIL | — | 3,193,841 |
| indexer | 5 | PASS | 2.055× | 3,942,811 |
| indexer | 6 | PASS | 2.077× | 4,488,343 |
| indexer | 7 | PASS | 2.183× | 5,380,557 |
| indexer | 8 | PASS | 1.853× | 6,247,743 |
| indexer | final | PASS | 2.176× | 7,519,333 |
| rg | 1 | PASS | 1.637× | 1,141,833 |
| rg | 2 | FAIL | — | 1,647,596 |
| rg | 3 | PASS | 1.697× | 2,708,925 |
| rg | 4 | PASS | 2.098× | 4,144,218 |
| rg | 5 | PASS | 2.338× | 5,612,000 |
| rg | 6 | PASS | 2.256× | 7,429,776 |
| rg | 7 | PASS | 2.124× | 9,257,264 |
| rg | 8 | PASS | 2.202× | 11,052,768 |
| rg | final | PASS | 2.374× | 14,314,904 |
Indexer 第二轮已采用 grouped matmul,之后经历原生 finalize 参数不兼容和数值失败,最终采用原生 dispatch、grouped matmul、共享专家与 ReduceScatter 重叠,以及 BF16 槽位通信后 FP32 合并。rg 第一轮采用 grouped matmul,随后转向固定长度排序和原生 token permute/unpermute,保留前缀屏蔽和 FP32 合并,final 选择第 5 轮。
验证边界与历史
每条件只有一条轨迹,本次观察适用于这道 MoE 完整 forward 和这次运行。优化路径、接口试错、等待交互及设备波动都保留在结果中。知识范围通过指令和命令审计核对,独立评测器的正确性、计时及清理另外验证。完整的优化曲线、累计 token 曲线和性能随 token 变化图已随本次本地交付提供,每轮优化说明放在图外。
准备阶段三次设备预检失败和一次旧 npm CLI 启动失败单独归档。请求者授权已有容器采用 privileged 模式、个人 SSH 账号进入、容器内 root 执行后,完整双卡预检通过。诊断中新增过锁定的普通账户,普通 UID 的设备访问问题保留为环境记录。原容器及本地镜像快照保留。首个 Indexer 查询在完整 JSON 保存后遇到 Windows GBK 控制台输出错误,Agent 通过 UTF-8 设置恢复,该代价计入本组。
最初计划为四组。用户随后明确“停止吧,就管6.1就行”,GPT-5.6 任务已停止,原始记录保留归档,最新调度状态和进程快照确认本次无残留预约与工作进程。原冻结四组协议保留为历史,当前汇总只含上述 GPT-6.1 两组。
Final 耗时进一步拆解
两组 final 在同型号、相同物理设备上分时执行。此前报告给出的 9.1% 是各自相对 baseline 的加速比分数差。拆开原始耗时后,还能观察到 baseline 在两个时段的波动。
| Case | Indexer 候选 ms | rg 候选 ms | rg 候选耗时相对变化 | Indexer baseline ms | rg baseline ms |
|---|---|---|---|---|---|
| balanced-small | 1.977 | 1.861 | -5.8% | 4.329 | 4.652 |
| skewed-medium | 2.289 | 2.001 | -12.6% | 4.859 | 4.864 |
| balanced-large | 2.439 | 2.740 | +12.3% | 5.407 | 6.032 |
各 case 的 rg baseline / Indexer baseline 耗时比的几何平均为 1.0627。Indexer candidate / rg candidate 耗时比的几何平均为 1.0265,对应 rg 候选几何平均耗时低 2.58%。二者相乘为 1.0908,得到约 9.1% 的加速比分数差。候选跨时段耗时比较同样受到环境波动影响。
源码与搜索记录给出以下差异。
- rg 从第 1 轮采用 grouped matmul,在第 2 轮数值失败后转向固定长度排序,再于第 5 轮采用成对 token permute/unpermute。其 final 为第 5 轮。
- Indexer 第 2 轮采用 grouped matmul,第 3 轮接口失败、第 4 轮数值失败,最终采用原生 init routing 加显式 where/index_add 重建输出。其 final 为第 7 轮。
- rg final 将共享专家计算与 AllGather 重叠,Indexer final 将共享专家计算与 ReduceScatter 重叠。源码能确认调度差异,各阶段对端到端耗时的贡献尚未单独测量。
- 三个计分 case 都是 top-k=2。Indexer 通信的是 BF16 的每个专家槽位,rg 通信的是 FP32 的按 token 合并结果。前者槽位数为后者的两倍,每个元素字节数为后者的一半,二者 ReduceScatter 的张量字节数相同。
因此,本次记录显示 rg 搜索轨迹产生了在小、中 case 更快的最终候选,大 case 则由 Indexer 更快。两组都读到了 grouped matmul 和 HCCL 资料,路径差异还包含 Agent 的实现判断、接口试错及有限轮次内的候选选择。当前只有每组一条轨迹,检索方式本身对收益的稳定影响仍待验证。
Activity
amy-why-3459 commentedon Nov 9, 2026
实验设计整体清楚,变量(是否通过 Skill Indexer 取用知识)和固定条件都写得比较完整。正式开跑前有几点建议确认,主要是为了让两组结果可比、可复核:
KnowledgeReader.collect的命中后,是否还允许用 rg 或直接读文件(例如顺着 skill 去读 references)?建议在固定输入里写清楚。否则 Indexer 组实际是“Indexer + 文件读取”,对照变量会变宽。4715f957那 75 个 eligible owner 及其包内依赖,不要包括docs/下的 matrix、knowledge/生成卡片或其他仓库内容。否则两组“同一知识内容”的前提不成立。命令审计里也建议记录每次访问的路径。8f3aebd2e1359d11d8bcdd034f5dacedf9a1f12d,而 feat: share RSI optimization management across project and benchmark tasks #338 目前还没合入 main。建议在结果里注明这一点,并记录实际运行时使用的完整 commit 和评测程序的哈希,避免之后 feat: share RSI optimization management across project and benchmark tasks #338 改动后无法对应。另外想确认一下:final 是每组各自从本组历史候选或 baseline 里选一个、各做 4 对独立复测,对吗?如果是,建议两组的 final 尽量在相近的时间窗口和同一设备分配下跑,减少环境差异。
Bounty-hunter commentedon Nov 9, 2026
本次协议、共同 MoE 任务、75 个 eligible skill owner 的固定语料、两个独立会话目录和提示词已准备。静态语法检查与实际 collect 接口检查完成。
设备预检当前为 INCONCLUSIVE。调度器成功分配两张卡,基线在候选执行前的设备初始化失败。独立诊断确认
drvGetDevNum=87、torch.npu.device_count()=0、aclInit=507899 / Resource_Busy,npu-smi返回-8020。驱动文件版本与设备节点权限已核对,具体容器隔离原因待确认。预检预约已释放。两个正式 GPT-6.1 Sol/high 会话尚未启动,当前无下游优化效果或 token 曲线。请求者已收到环境问题与可用环境信息请求,恢复预检后继续按原冻结协议完成对照。准备诊断与正式实验分开记账。
[-]experiment: compare Skill Indexer and rg on dual-NPU MoE with GPT-6.1 Sol high[/-][+]experiment: compare Skill Indexer and rg on MoE with GPT-6.1 Sol high and GPT-5.6 Sol xhigh[/+]Bounty-hunter commentedon Nov 9, 2026
按请求者追加要求,本次协议已扩为四个独立条件。
四组使用同一知识库、原始 MoE baseline、裁判和设备预算,每组 8 轮探索加一次独立 final,共 32 轮探索与 4 次 final,串行执行。模型及 effort 已写入各自提示词和启动配置。
最终合并四组的性能优化曲线、逐轮累计 token 曲线、性能随累计 token 的变化,以及正确性、baseline/candidate latency、最终收益和完整会话代价表。曲线点的优化说明放在图外。组内比较检索方式,跨组比较所指定的模型与推理强度组合。
此前评论中的工具与语料边界已补入协议和提示词,Indexer 发现 owner 后可跟随其包内依赖读取资料,rg 使用同一 75 个 owner 与依赖范围,生成卡片、matrix 和其他仓库资料排除。每组 final 选本组候选,独立做 4 对,记录自动分配的实际卡号及 paired baseline。
本次在正式会话启动前修订为 v2,v1 原始协议字节保留。当前仍是设备预检失败,四个正式会话均待运行,尚无下游性能或 token 结果。
Bounty-hunter commentedon Nov 10, 2026
2026-11-10 收到环境恢复通知后已实际复测。SSH 连接已恢复,dyy 正在运行,冻结输入校验通过。
第二次基线预检中,调度器自动分配两张卡,仍在候选执行前的初始化失败。另一个独立双卡诊断确认
drvGetDevNum=87、torch.npu.device_count()=0、aclInit=507899 / Resource_Busy,npu-smi返回-8020。本次以个人非 root 用户在已有容器内执行。基线和探针的预约均已释放,失败记录保留为第二个 preflight attempt。四个正式 Agent 会话仍为 0/4 启动,等待可实际访问 NPU 的运行环境。
Bounty-hunter commentedon Nov 10, 2026
请求者已明确授权本次在容器内使用 root。随后已通过 npu run 执行两项 root 诊断,包括一个独立的最小 PyTorch 张量程序。
两项均成功分配双卡,但实际设备初始化仍失败。独立 PyTorch 程序记录 UID/GID 0/0、device_count=0,并在 torch.ones 的 NPU 初始化返回 Resource_Busy / aclInit 507899。驱动头文件确认返回码 87 为 DRV_ERROR_RESOURCE_OCCUPIED。
当前证据说明切换到 root 仍未恢复实际 NPU 计算。全部诊断预约已结束,四个正式会话仍为 0/4 启动。已准备复用本地镜像的临时 privileged 容器检查,语法检查完成,等待请求者对这一额外执行范围的决定。
Bounty-hunter commentedon Nov 10, 2026
环境诊断有了更具体的证据。只读核对当前运行中的容器,发现 dyy 为非特权模式,映射全部 8 张 NPU,另一个运行中的非特权容器也显式映射相同的 8 张卡。宿主与 dyy 的 libascend_hal.so 字节摘要相同,节点号和 devices cgroup 规则也已核对。
昇腾官方文档明确描述,多个非特权容器挂载相同 NPU 会形成设备独占挂载冲突,并报 npu-smi -8020。这与当前错误和映射条件吻合,待消除重叠后复测确认。固定版本官方说明
npu run 的运行时可见卡设置与容器创建时的设备挂载归属分别生效,容器内 root 仍受后者约束。当前重叠容器的启动晚于更早的一次预检,因此本条只记录当前的冲突条件。
请求者继续负责修复 dyy,之后按原计划重新做设备预检。四组正式实验仍待启动。
Bounty-hunter commentedon Nov 10, 2026
完整双 NPU MoE 预检现已通过。两个 rank 的全部输出检查 PASS,调度预约和进程清理通过,baseline 自比约 1.009×。请求者已授权个人 SSH 账号进入已有 privileged 容器,在容器内使用 root 执行。原容器与本地镜像快照均保留。
已固定 Ascend910B1、PyTorch 2.10.0+cpu、torch_npu 2.10.0.post4、CANN 9.1.0、Python 3.12.13 与关闭 HF32。普通 UID 的设备访问问题保留为环境诊断。旧 npm CLI 0.130 在优化开始前的模型请求失败,改用已安装桌面版自带 CLI 0.166.0-alpha.5.1 后,指定模型的独立 READY 检查成功。启动失败记录单独保留。
现按 GPT-6.1 Sol/high Indexer、同配置 rg、GPT-5.6 Sol/xhigh Indexer、同配置 rg 的顺序串行执行。每组从相同原始 baseline、同一知识库起步,8 轮探索加一次独立 final。任务、oracle、容差和计时协议保持原冻结字节。前三次失败预检、客户端启动与准备代价单独留存。优化效果与 token 结论在完整实际结果后汇总。
[-]experiment: compare Skill Indexer and rg on MoE with GPT-6.1 Sol high and GPT-5.6 Sol xhigh[/-][+]experiment: compare Skill Indexer and rg on MoE with GPT-6.1 Sol high[/+]Bounty-hunter commentedon Nov 10, 2026
按请求者最新要求,已停止 GPT-5.6 任务,只交付 GPT-6.1 Sol/high 的 Indexer 与 rg 两组对照。本次预约和工作进程清理已核对通过。
两组均完成 8 轮探索与一次独立 final。Indexer final 为 2.176×,rg 为 2.374×,均通过正确性验收。完整会话累计 token 分别为 8,015,641 和 14,597,699。Indexer 总 token 少约 45.1%,缓存输入占比较高,非缓存输入加输出少约 10.2%。
18 次正式评测的原始证据审计均 PASS,模型与 effort、逐轮 token 边界、候选哈希及清理记录已复核。已生成两组同图的优化、累计 token 和性能随 token 变化曲线,逐轮优化说明列在图外。Issue 正文更新为当前两组范围、逐轮轨迹、final 分 case 耗时、候选哈希与观察局限。每条件仅一条轨迹。