| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[Feature] 增加云原生部署器 Co-authored-by: sceneryback<afterbreeze@hotmail.com> # message auto-generated for no-merge-commit merge: !67 merge feature/add-deployer into master [Feature] 增加云原生部署器 Created-by: gcw_gxG14I7x Commit-by: sceneryback Merged-by: zhoujing101 Description: ## **1. 合入背景** 本次改动提供一套面向 examples/deployer/deploy.py 的云原生部署方式。它的目标是让部署过程不再依赖人工登录宿主机,也不依赖宿主机上的本地配置文件,而是能够被云平台直接触发。来自真实的云厂商部署需求,在内部平台已验证。 项目原始部署方式默认由运维人员登录某个 Kubernetes 节点,手工执行 examples/deployer/deploy.py,并从本地目录读取配置文件。 这种方式适合开发调试和人工验证,但在云平台场景下会遇到明显问题: * 集群通常是多租户的,同一集群内会并行部署多个推理服务,并通过 namespace 做隔离。 * 云平台用户不应被要求拥有节点登录权限。 * 部署请求通常来自平台控制面或 API,而不是人工在宿主机执行脚本。 * 交付物应该是容器镜像和 Kubernetes 清单,而不是依赖宿主机本地状态。 * 扩缩容、清理等动作也应该被表达为 Kubernetes Job,便于平台统一审计、重试和观测。 因此,这里把现有的部署逻辑封装成了适合容器执行的形式。对云平台而言,只需要两步: 1. 准备一个包含 user_config.json 和 env.json 的 ConfigMap。 2. 创建对应的 deploy / scale / cleanup Job。 底层真正执行部署的仍然是现有的 examples/deployer/deploy.py,这样可以保持与当前人工部署行为一致,同时把入口改造成云原生形态。示意如图:  Fixes https://gitcode.com/Ascend/MindIE-PyMotor/issues/345 ## **2. 修改内容** 本次仅涉及 deployer 部分。 1. 新增 examples/cloud_native_deploy 云原生部署目录,补齐 deployer 镜像 Dockerfile、deploy/scale/cleanup 入口脚本,以及对应的 Kubernetes Job、RBAC 和配置清单;同时将 user_config.json 与 env.json 统一封装进同一个 ConfigMap,并在 Job 中映射为容器内配置文件,使云平台可以通过 “ConfigMap + Job” 方式直接触发部署、扩缩容和清理,而不再依赖人工登录宿主机。 2. 在 user_config.json 中新增 scheduling_queue、coordinator_service_name、prefill_node_selector 和 decode_node_selector 等配置 3. 调整云原生 cleanup 逻辑,使用独立 cleanup.sh 按 namespace 清理集群资源,而不是依赖宿主机上的 output_yamls 4. 修正多服务并存时的 RBAC 冲突问题:保留共享的 ClusterRole,将生成出来的 ClusterRoleBinding 改为按 namespace 唯一化,并让 cleanup 只删除当前 namespace 对应的 binding,不再删除共享的 ClusterRole 5. 新增根目录 Makefile,统一提供 wheel 构建、云原生 deployer 镜像本地构建和 buildx 多架构推送入口,默认镜像仓库为 Docker Hub(在另一个 PR 提交)。 6. 新增 helm 部署,通过 helm install 一键部署,更符合云原生组件的部署规范 ## **3. 资料变更** 涉及部署方式变更,已描述 ## **4. 接口变更** 涉及 user_config.json 变更 ## **5. 测试结果** > 需体现<ins>**测试场景,测试方法以及测试结果**</ins>。\ > 测试用例设计时需考虑硬件、部署方式、功能、性能、精度、显存等维度。 ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-PyMotor!67 | 13 天前 | |
【docs】修改pymotor名称&新增目录结构&新增通信矩阵 Co-authored-by: xiao-qing123<xiaoqing14@h-partners.com> # message auto-generated for no-merge-commit merge: !504 merge master into master 【docs】修改pymotor名称&新增目录结构&新增通信矩阵 Created-by: xiao-qing123 Commit-by: xiao-qing123 Merged-by: towncharlie Description: Fixes [#301](https://gitcode.com/Ascend/MindIE-PyMotor/issues/301) 1、修改MindIE Pymotor名称为:MindIE Motor 2、新增menu文件 3、新增MindIE Motor通信矩阵 See merge request: Ascend/MindIE-PyMotor!504 | 21 天前 | |
【docs】修改AIDD报错,优化文档格式问题 Co-authored-by: xiao-qing123<xiaoqing14@h-partners.com> # message auto-generated for no-merge-commit merge: !578 merge master into master 【docs】修改AIDD报错,优化文档格式问题 Created-by: xiao-qing123 Commit-by: xiao-qing123 Merged-by: towncharlie Description: Fixes [#343](https://gitcode.com/Ascend/MindIE-PyMotor/issues/343) 1、修改AIDD报错 2、优化文档格式问题 See merge request: Ascend/MindIE-PyMotor!578 | 14 天前 | |
[feature]增加告警清除逻辑 Co-authored-by: hxy<huxinyi9@huawei.com> # message auto-generated for no-merge-commit merge: !598 merge feat/hybrid-precision-detection into master [feature]增加告警清除逻辑 Created-by: hu-xinyi_555 Commit-by: hxy Merged-by: towncharlie Description: ## **1. 合入背景** 可见https://gitcode.com/Ascend/MindIE-Motor/issues/359 精度检测特性(前序合入 61b0475 [feature]支持混布场景的精度异常检测)已具备 **告警产生** 与 **auto-recovery 实例终止** 能力,但缺少完整的 **告警清除(CLEAR)闭环**: - auto-recovery 终止 P/D 实例后,OM 侧精度告警仍可能残留; - CCAE 手动下发 precision control 终止实例后,未同步清除对应 PD Group 告警; - 未开启 auto-recovery 时,实例恢复后无法通过连续正常检测自动清除活动告警; - Coordinator Scheduler 侧 alarm_active 状态无统一清理入口,影响后续同 PD Group 重复告警。 ## **2. 修改内容** 详细设计见:[docs/zh/design/fault_tolerance/precision_detection.md](../../pymotor/MindIE-PyMotor_8989/docs/zh/design/fault_tolerance/precision_detection.md)(告警清除章节) ### 2.1 三条清除路径 | 路径 | 触发方 | 行为 | |------|--------|------| | **auto-recovery 清除** | Controller | 精度 ALARM 触发终止 P/D 全部成功后,上报 CLEAR 至 OM,并通知 Coordinator 清理 Scheduler 活动状态 | | **CCAE 手动清除** | CCAE Reporter → Controller | 终止 P/D 时携带 precision_alarm_clear=true,复用统一恢复入口清除 OM 告警 + 通知 Coordinator | | **连续正常清除** | Coordinator | 活动告警下连续 precision_clear_threshold(默认 10)次有效正常检测后,上报 CLEAR | ### 2.2 组件交互(实现要点) 1. **Controller recovery_service.py(新增统一入口)** - complete_precision_pd_group_recovery():可选终止 P/D → 从 AlarmStore 查找活动精度告警 → 深拷贝原 Alarm 并 clear() 上报 OM → 调用 CoordinatorApiClient.notify_precision_alarm_cleared() 清理 Scheduler 状态 - terminate_pd_group() / is_precision_raise_alarm() 等辅助函数供 API 层复用 2. **Controller alarm_store.py** - 新增 _active_precision_alarms 索引与 find_active_precision_alarm(p_id, d_id),按 PD Group 追踪活动精度告警及其 moi 3. **Controller controller_api.py** - 精度 auto-recovery 成功后走 complete_precision_pd_group_recovery,响应携带 precision_alarm_cleared / precision_alarm_cleared_by_auto_recovery - POST /controller/terminate_instance 支持 precision_alarm_clear=true,CCAE 手动清除走同一恢复入口 4. **Coordinator Scheduler(scheduler.py + runtime)** - 新增 alarm_active、clear_probing、clear_tokens 等 per-PD-Group 状态 - record_precision_result() 在活动告警下累计连续正常样本,达 clear_threshold 触发 clear action - finish_precision_action(action_type=clear|raise) 提交 action 结果;auto-recovery 已清除时直接删除整组状态 - 新增 ZMQ 协议与 client/server 透传 finish_precision_action / record_precision_result(clear_threshold=...) 5. **Coordinator PrecisionReporter + PrecisionAlarm** - Reporter 支持 raise / clear 双 action 编排,clear_threshold_hit 时异步触发 CLEAR 上报 - PrecisionAlarm.execute(action=clear) 构造 build_precision_issue_clear_alarm() 并上报 Controller;CLEAR 必须使用与产生告警相同的 moi 6. **Coordinator Management API(新增)** - POST /precision/alarm_cleared:Controller 通知 Coordinator 删除 Scheduler 活动告警状态(Mgmt 进程 → Scheduler) 7. **CCAE Reporter + MotorBackend** - precision control 终止成功后调用带 precision_alarm_clear=true 的 group terminate - 新增 precision task 上报窗口与 controlCode 抑制逻辑 8. **公共层** - 新增 motor/common/alarm/deserialize.py:告警反序列化 - precision_issue_alarm.py:新增 build_precision_issue_clear_alarm() - coordinator.py:新增 precision_clear_threshold 配置项 ### 2.3 时序(auto-recovery 清除) mermaid sequenceDiagram participant CR as Coordinator PrecisionAlarm participant CT as Controller participant OM as OM/CCAE participant SCH as Coordinator Scheduler CR->>CT: POST report_alarms (ALARM) CT->>CT: terminate P/D instances CT->>OM: report ALARM + CLEAR (same moi) CT->>SCH: POST /precision/alarm_cleared SCH->>SCH: clear alarm_active state CT-->>CR: precision_alarm_cleared_by_auto_recovery=true --- ## **3. 资料变更** **涉及**,修改如下: | 文件 | 变更说明 | |------|----------| | docs/zh/design/fault_tolerance/precision_detection.md | 补充告警清除设计:三条清除路径、moi 一致性约束、Scheduler 状态清理、CCAE 手动清除时序 | | docs/zh/user_guide/features/precision_detection.md | 补充 precision_clear_threshold 配置说明 | | docs/zh/user_guide/api/observability_interface.md | 补充 CCAE precision control 调用 /controller/terminate_instance 时 precision_alarm_clear 字段说明 | --- ## **4. 接口变更** **涉及**,均为客户面/跨组件可见接口: | 接口 | 变更类型 | 说明 | |------|----------|------| | POST /controller/terminate_instance | **请求体扩展** | 新增可选字段 precision_alarm_clear: bool(默认 false)。为 true 时按 PD Group 终止 P/D 并清除精度告警;响应 data 新增 precision_alarm_cleared、scheduler_state_cleared、moi | | POST /controller/report_alarms(精度 ALARM 响应) | **响应扩展** | auto-recovery 成功后 data 新增 precision_alarm_cleared、precision_alarm_cleared_by_auto_recovery、scheduler_state_cleared | | POST /precision/alarm_cleared(Coordinator Mgmt) | **新增** | Controller → Coordinator,请求体 {p_instance_id, d_instance_id},清除 Scheduler 侧活动精度告警状态 | | Coordinator 配置 | **新增字段** | precision_detection_config.precision_clear_threshold(默认 10) | | CCAE precision control → MotorBackend | **行为变更** | 终止实例时携带 precision_alarm_clear=true | --- ## **5. 测试结果**  --- ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [x] 代码注释完备 [x] 正确记录维测日志 [x] 是否有UT用例 [x] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-Motor!598 | 8 天前 | |
fix: 修复pod权限问题 Co-authored-by: yujunyu2<yujunyu3@huawei.com> # message auto-generated for no-merge-commit merge: !10 merge master into master fix: 修复pod权限问题 Created-by: yjy_ac Commit-by: yujunyu2 Merged-by: towncharlie Description: ## **1. 合入背景** 修复pod内无法创建线程的权限问题 ## **2. 修改内容** 默认权限更改,同时补充说明文档 ## **3. 资料变更** 增加说明文档 ## **4. 接口变更** 不涉及 ## **5. 测试结果** 不在出现如下情况  同时通过aisbench压测  ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-PyMotor!10 | 4 个月前 | |
vllm-ascend H2D加解密特性 Co-authored-by: songchanglin<songchanglin1@huawei.com> # message auto-generated for no-merge-commit merge: !336 merge master into master vllm-ascend H2D加解密特性 Created-by: LLg15448645 Commit-by: songchanglin Merged-by: towncharlie Description: ## **1. 合入背景** 针对移动需求开发的vllm-ascend推理过程中数据H2D加解密特性,通过对模型侧进行补丁,结合CANN加解密算子实现保护推理过程中H2D通信的输入输出信息(token、模型权重)的能力。 ## **2. 修改内容** 针对vllm-ascend 0.23.0 中token信息和模型权重信息的传输API,进行patch修改。接口名称不变,功能变为:host侧加密后走原始路径传输到device后解密。 ## **3. 资料变更** 不涉及 ## **4. 接口变更** 不涉及 ## **5. 测试结果** 性能对比:开启加解密功能后和明文推理端到端性能村损耗在5%以内(TPOT、token吞吐率) ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [x] 代码注释完备 [x] 正确记录维测日志 [ ] 是否有UT用例 [x] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-PyMotor!336 | 27 天前 | |
[fix] 补齐D2D权重加载中的 peers 发现与路由能力 Co-authored-by: yilunh<hanyilun1@huawei.com> # message auto-generated for no-merge-commit merge: !275 merge D2D into master [fix] 补齐D2D权重加载中的 peers 发现与路由能力 Created-by: yilunh Commit-by: yilunh Merged-by: towncharlie Description: ## **1. 合入背景** 为 vLLM-ascend 的 D2D权重启动加速补齐 peers 发现与路由能力: 1、Controller 收集 peers 时包含 headless endpoint,修复跨机 PCP 下 slave 节点拿不到 peer 的问题 2、Controller 按 ep_id:ip 编码下发 peer 列表,NM 按 endpoint.id路由到对应 engine ## **2. 修改内容** 1、Controller (instance_assembler.py) _collect_d2d_peer_ips 改为按 pod 传入 endpoint_list,返回 [ep_id:ip, ...] 同角色 ACTIVE 实例按 ep.id 匹配 peer,排除自身 调用 get_all_endpoints(include_headless=True),跨机 CP slave 可发现 headless peer 2、NodeManager (daemon.py) 解析 d2d_peer_ips中的 encoded_ep_id:ip,仅向匹配的 engine 传递 --d2d-peer-ips 3、Instance (instance.py) get_all_endpoints(include_headless=False)新增参数;include_headless=True 时跳过 cache,防止污染headless的cache内容,返回含 headless 的完整 endpoint 列表 ## **3. 资料变更** 不涉及 新增readme文档examples/features/startup_acceleration/README.md:D2D 配置、已测模型说明等 ## **4. 接口变更** 不涉及 ## **5. 测试结果**  ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-PyMotor!275 | 1 个月前 | |
[bugfix]cpu/disk命中根据parent_hash + token_hash查找 Co-authored-by: ganglv<lvgang1@huawei.com> # message auto-generated for no-merge-commit merge: !601 merge conductor into master [bugfix]cpu/disk命中根据parent_hash + token_hash查找 Created-by: ganglv Commit-by: ganglv Merged-by: towncharlie Description: ## **1. 合入背景** > 请描述为什么要做这个PR内的改动。\ > 如涉及,请关联前序PR或同特性/需求下的其他PR。\ > 如果是修复之前PR引入的问题,请关联引入问题的PR。\ > 请通过#ISSUE ID关联issue。\ > 注意: Fixes #ISSUE ID会自动关闭issue,如问题部分解决请不要使用Fixes,可以用Fix part of #ISSUE ID替代. 完善 KV Conductor 多级缓存亲和性匹配,支持 HBM、CPU、Disk 间连续前缀查询,提升匹配准确性。 [#386](https://gitcode.com/Ascend/MindIE-Motor/issues/386) [#387](https://gitcode.com/Ascend/MindIE-Motor/issues/387) ## **2. 修改内容** > 请<ins>**描述修改内容的具体实现**</ins>,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列。 > 如果是需求或者重构类的PR,需要<ins>**补充详细设计文档**</ins>(说明上下游组件关系、时序图、类图、DFX能力等内容)。 - 重构多级缓存索引及跨介质断点续查逻辑。 - bugfix for dsv4 flash - 支持disk查询 - 按实例和 DP 聚合各介质命中块数,移除加权评分。 - 完善事件兼容、测试、设计文档及第三方许可证声明。 - 修复log monitor收集日志有重复的问题 - 修改rust precommit失败问题 & rust commit执行慢问题 ## **3. 资料变更** > 请确认<ins>**是否涉及资料变更**</ins>。\ > 如涉及,需要在PR中体现,并简要说明修改内容。\ > 如不涉及,需填写“不涉及”。 不涉及 ## **4. 接口变更** > 请确认<ins>**是否涉及跨代码仓或者客户面可见的接口变更**</ins>。\ > 如涉及,需详细说明接口以及对应的变更内容,同时需要在资料中体现。\ > 如不涉及,需填写“不涉及”。 - 配置项 xpu_endpoint 更名为 gpu_endpoint。 - 注册接口介质名称由 xpu 调整为 gpu,仍兼容旧名称。 - 查询结果由 XPU/CPU/DISK/total 加权分数调整为 gpu_blocks/cpu_blocks/disk_blocks/matched_tokens。 ## **5. 测试结果** > 需体现<ins>**测试场景,测试方法以及测试结果**</ins>。\ > 测试用例设计时需考虑硬件、部署方式、功能、性能、精度、显存等维度。 dsv4_flash  qwen  disk  rename to npu  ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-Motor!601 | 1 天前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 13 天前 | ||
| 21 天前 | ||
| 14 天前 | ||
| 8 天前 | ||
| 4 个月前 | ||
| 27 天前 | ||
| 1 个月前 | ||
| 1 天前 |