已合并
[bugfix]accelerator-type自动获取bugfix & docker only文档优化 #481
[bugfix]accelerator-type自动获取bugfix & docker only文档优化 #481
已合并
ganglv创建于 7月11日
ganglv成员
7月11日

1. 合入背景

当前 docker-only 部署指导和基于 vllm-ascend/sglang 基础镜像安装 Motor 的文档步骤不够清晰,离线依赖准备、容器启动脚本、configmap 目录组织等信息需要补充完善。

同时,deployer 在生成节点选择器时从集群节点获取 accelerator-type 的逻辑未结合用户配置的 hardware_type,在集群同时存在 A2/A3/A5 等不同硬件标签时,可能选取到不匹配的 accelerator-type,影响部署 YAML 中节点调度标签的准确性。

暂无关联 issue。

2. 修改内容

  1. 优化 docs/zh/developer_guide/build_motor_image_from_vllm_ascend.md,补充基于 vllm-ascend/sglang 镜像安装 Motor 的在线/离线依赖下载、Motor whl 构建、pciutils 安装、镜像保存和导入流程。
  2. 优化 docs/zh/user_guide/deployment/docker/single_container.md,补充 docker-only 部署目录结构、examples 准备方式、configmap 生成流程、start_motor.shstart_docker.sh 示例,并明确 mooncake 池化相关环境变量说明。
  3. 调整 deployer 获取 accelerator-type 的实现:
    • get_accelerator_type_from_cluster 新增 hardware_type 入参;
    • A2/A3 场景按 accelerator=huawei-Ascend910 过滤节点,并根据 hardware_type 匹配对应代际的 accelerator-type
    • A5 场景按 accelerator=huawei-AscendA5,accelerator-type=<hardware_type> 精确过滤;
    • 缓存 key 从通用 accelerator-type 调整为 hardware_type,避免不同硬件类型复用错误结果;
    • 当无匹配节点、缺少标签、存在多个无法确定的匹配值时抛出明确异常。
  4. 更新 config_validator.pyengine.py 中的调用链,生成硬件节点标签和 engine pod nodeSelector 时均传入 hardware_type,并补充 A2/A3 的 accelerator=huawei-Ascend910 标签设置。
  5. 补充和调整 UT,覆盖 A2/A3/A5 的 accelerator-type 解析、缓存命中、标签缺失、硬件代际不匹配等场景,并同步更新相关 mock 签名。

3. 资料变更

涉及。

本 PR 修改了以下资料:

  • docs/zh/developer_guide/build_motor_image_from_vllm_ascend.md
  • docs/zh/user_guide/deployment/docker/single_container.md

主要补充 docker-only 部署、基础镜像安装 Motor、在线/离线依赖准备、启动脚本和环境变量说明。

4. 接口变更

不涉及跨代码仓或者客户面可见的接口变更。

本 PR 仅调整 deployer 内部函数 get_accelerator_type_from_cluster 的调用方式和实现逻辑,不新增或修改对外 API。

5. 测试结果

需体现测试场景,测试方法以及测试结果
测试用例设计时需考虑硬件、部署方式、功能、性能、精度、显存等维度。

image.png

6. CheckList

PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x]

[ ] 代码注释完备

[ ] 正确记录维测日志

[ ] 是否有UT用例

[ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题

likedislike
Pull Request已成功合入, 合并人@wangyang
(感谢 ganglv 的贡献)
atomgit-bot
atomgit-bot
7月11日 评论:

变更摘要

本次 PR 是一个纯文档优化变更,主要针对 docker only 部署场景的相关文档进行梳理和修订。变更涉及 2 个文件,新增 149 行、删除 88 行,整体属于文档层面的调整,不涉及代码逻辑、接口或配置的改动。

主要改动

  • 文档内容精简与重组: 对 docker only 相关文档进行了大幅度的内容优化,删除冗余或过时的描述(净增约 61 行),使文档结构更清晰、表述更准确。
  • 文档格式规范化: 调整了文档的排版、层级结构或标记语法,提升文档的可读性和一致性。
likedislike
atomgit-bot
atomgit-bot
7月11日 评论:

代码审查

审查总结

已完成对全部 2 个变更文件的审查:

文件 审查结果
docs/zh/developer_guide/build_motor_image_from_vllm_ascend.md 发现 1 个问题 (P3: --force-reinstall 重复)
docs/zh/user_guide/deployment/docker/single_container.md 发现 3 个问题 (P1×2: 缺失 NPU 设备挂载 + 缺失端口映射; P2×1: kv_pool 默认行为变更)

按优先级统计

  • P1:2 个 — start_docker.sh 删除 ASCEND_VISIBLE_DEVICES 循环导致 NPU 计算设备未挂载;docker run 删除端口映射导致服务不可达
  • P2:1 个 — start_motor.sh 默认开启 kv_pool 与旧版行为不一致
  • P3:1 个 — pip install 命令中 --force-reinstall 重复

整体风险评估:⚠️ 中高风险single_container.md 的变更移除了关键的 NPU 计算设备挂载逻辑和端口映射,按此文档操作将导致容器内推理服务无法正常启动或不可达,建议在合入前修复这两个 P1 问题。

类型 数量
🔴 阻塞 2
🟡 建议 1

⛔ 需要修改

likedislike
ascend-robotascend-robot成员
7月11日 添加了label:ascend-cla/yes
ascend-robot
ascend-robot成员
7月11日 评论:

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


PR Approval Progress

Congratulations! All modules have met the lgtm and approve requirements.

Module Approval Details

module lgtm status approve status
repo-Ascend/MindIE-PyMotor zhoujing101, tobking (2/2) tobking (1/1)

💡 Tip:

  • Committer can comment /approve or /lgtm
  • Commenting /approve implies both code review (lgtm) and intent to merge (approve)

CLA Signature Pass

ganglv, thanks for your pull request. All authors of the commits have signed the CLA. 👍

likedislike
ascend-robotascend-robot成员
7月11日 添加了label:ci-pipeline-running
此处折叠了107条消息 查看更多
Gganglv成员
7月13日 解决了最后一个问题
wangyangwangyang成员
7月13日 合入了pull request
Gganglv成员
7月13日 修改标题为 “[doc]acceletordocker only文档优化”,原标题为“[doc]docker only文档优化”
Gganglv成员
7月13日 修改标题为 “[doc]accelerator-type自动获取bugfix & docker only文档优化”,原标题为“[doc]acceletordocker only文档优化”
Gganglv成员
7月13日 修改标题为 “[bugfix]accelerator-type自动获取bugfix & docker only文档优化”,原标题为“[doc]accelerator-type自动获取bugfix & docker only文档优化”