| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
use nodePort in template as default coordinator infer nodePort Co-authored-by: jingyp<jingyp@chinatelecom.cn> # message auto-generated for no-merge-commit merge: !638 merge bugfix/refine-infer-port into master use nodePort in template as default coordinator infer nodePort Created-by: gcw_gxG14I7x Commit-by: jingyp Merged-by: ascend-robot Description: ## **1. 合入背景** Fixes https://gitcode.com/Ascend/MindIE-Motor/issues/376 ## **2. 修改内容** 修改 user_config 中 coordinator_infer_node_port 设置逻辑: 1. 如果未配置、配置不合法、为空,使用 examples/deployer/yaml_template 中定义的默认值 2. 如果配置为 -,则端口为随机值 3. 如果配置为合法端口,则按指定的配置 ## **3. 资料变更** 不涉及 ## **4. 接口变更** 不涉及 ## **5. 测试结果**  ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [x] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-Motor!638 | 4 天前 | |
【feature】mindie-motor实现跨服务池化功能 Co-authored-by: gitcode-bot<noreply@gitcode.com> Co-authored-by: zhang980530<zhanghao680@h-partners.com> # message auto-generated for no-merge-commit merge: !641 merge master into master 【feature】mindie-motor实现跨服务池化功能 Created-by: zhang980530 Commit-by: zhang980530;gitcode-bot Merged-by: towncharlie Description: ## **1. 合入背景** 此 PR 主要引入了 KV 缓存存储(KV Cache Store)跨部署复用的能力。通过新增 kv_cache_store.py 模块,系统可以在部署时检查指定 target_job_id 的命名空间中是否已有可用的 KV Store 服务和运行中的 Pod,若有则复用而非重新部署,从而节省资源。同时引入了全局标志 g_kv_store_deploy_pod 来控制是否部署本地 KV Store Pod,并在多处调用链路中传递 user_config 以支持该复用逻辑。 Fixes [#392](https://gitcode.com/Ascend/MindIE-PyMotor/issues/392) ## **2. 修改内容** 新增 kv_cache_store.py 模块:实现了 KV Store 复用的核心逻辑,包括 resolve_kv_store_target_job_id(解析目标 job_id)、kv_store_reusable(检查集群中是否存在可复用服务)、apply_kv_store_service_domain(统一配置 KV Store 服务 FQDN 并决定是否部署新 Pod)等函数。 新增全局标志 g_kv_store_deploy_pod:在 k8s_utils.py 中新增该标志(默认 True),由 update_kv_store_enabled_flag 和 apply_kv_store_service_domain 共同控制;当复用已有 KV Store 时设为 False,_configure_kv_store_role 据此将副本数设为 0 以跳过 Pod 部署。 新增配置项 TARGET_JOB_ID 和标签 KV_STORE_APP_LABEL:在 constant.py 中新增 TARGET_JOB_ID = "target_job_id" 和 KV_STORE_APP_LABEL = "mindie-motor-kv-store",分别用于指定复用目标任务和作为 Pod 选择器标签。 重构 init_service_domain_name 与 init_infer_service_domain_name 签名:两函数均新增 user_config 参数,并将 KV Store 服务域名配置逻辑统一委托给 apply_kv_store_service_domain;支持 skip_kv_store 参数以在特定场景跳过 KV Store 域名初始化。 调整 deploy.py 调用链:所有调用 init_service_domain_name 和 init_infer_service_domain_name 的位置均传入 user_config;handle_update_instance_num 中调用时传入 skip_kv_store=True,KV Store 部署增加 g_kv_store_deploy_pod 条件判断。 ## **3. 资料变更** “不涉及”。 ## **4. 接口变更** “不涉及”。 ## **5. 测试结果**   ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [x] 代码注释完备 [x] 正确记录维测日志 [x] 是否有UT用例 [x] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-Motor!641 | 3 小时前 | |
[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 | 6 天前 | |
【docs】版本说明说内容及文件名修改 Co-authored-by: xiao-qing123<xiaoqing14@h-partners.com> # message auto-generated for no-merge-commit merge: !637 merge master into master 【docs】版本说明说内容及文件名修改 Created-by: xiao-qing123 Commit-by: xiao-qing123 Merged-by: towncharlie Description: Fixes [#375](https://gitcode.com/Ascend/MindIE-Motor/issues/375) 1、修改更新说明为:原 MindIE PyMotor 代码仓自 3.1.0 版本起更名为 MindIE Motor,后续版本将沿用该命名。其软件定位与基本功能保持不变,但仅兼容 vLLM-Ascend 推理引擎(3.1.0及以上版本)。 2、为适配社区发布页面,各仓的版本说明书文件名不能一样,修改版本说明书文件名为:release_note_motor.md See merge request: Ascend/MindIE-Motor!637 | 4 天前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 4 天前 | ||
| 3 小时前 | ||
| 6 天前 | ||
| 4 天前 |