MindStudio-Modeling(msmodeling)是MindStudio建模寻优工具,评估模型及服务化等场景下的理论性能,并在此基础上寻找性能较优的部署策略等参数。
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
统一由compilation-config接口暴露enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine Co-authored-by: wangshen001<wangshen34@h-partners.com> # message auto-generated for no-merge-commit merge: !573 merge edit-compile-config into master 统一由compilation-config接口暴露enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine Created-by: wangshen001 Commit-by: wangshen001 Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [ ] Feature(功能新增) - [ ] Bugfix(Bug 修复) - [ ] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [ ] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** ------ ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** 1.将以下参数:enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine 统一由compilation-config入口进行控制 2.统一text_generate.py和throughput_optimizer.py的参数 3.更新对应的文档以及测试用例 4.webui同步适配 ### ⚠️ Breaking Change:编译特性默认值变更 本 PR 将以下编译配置项的默认值从 True 改为 False: | 配置项 | 原默认值 | 新默认值 | 变更原因 | |--------|----------|----------|----------| | config.compilation.multistream.enable | True | False | 统一由 --compilation-config 显式控制 | | config.compilation.fusion_patterns.enable_matmul_allreduce | True | False | 统一由 --compilation-config 显式控制 | | config.compilation.fusion_patterns.enable_dispatch_ffn_combine | True | False | 统一由 --compilation-config 显式控制 | **变更原因**:统一由 --compilation-config 接口控制后,所有编译特性默认关闭,仅当用户显式指定时才启用,避免隐式行为对仿真结果产生不可预期的影响。 **对历史仿真基线的影响**:此前未显式指定上述参数的仿真命令,其结果依赖于这些默认值为 True。变更后,同样的命令将不再自动启用这些编译特性,仿真结果可能发生变化。 **迁移方式**:如需恢复历史行为,请在命令中显式添加: ``bash --compilation-config enable_multistream enable_matmul_allreduce enable_dispatch_ffn_combine ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。** 没有compilation-config参数: 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json 仿真结果: 有compilation-config参数,但为空 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json --compilation-config 仿真结果: 有compilation-config参数,且参数值不为空 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json --compilation-config 仿真结果: ------ ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** ------ ## ✅ Checklist / 检查列表 **Before PR**: - [ ] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。 - [ ] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。 - [ ] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [ ] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。 ------ See merge request: Ascend/msmodeling!573 | 20 小时前 | |
【同步】【非开发代码】代码从 develop 同步到 master Co-authored-by: yydyzr<liuyuncong1@huawei.com> Co-authored-by: gcw_61YBRfIt<chuzhenxing@huawei.com> Co-authored-by: 孔炳翔<1120200577@qq.com> Co-authored-by: zhengxinqian<qianzhengxin@huawei.com> Co-authored-by: hw_whx<wanghexiang7@huawei.com> Co-authored-by: jgong5<steven.gong@gmail.com> Co-authored-by: hw_whx<2952154980@qq.com> # message auto-generated for no-merge-commit merge: !330 merge master into master 【同步】【非开发代码】代码从 develop 同步到 master Created-by: AvadaKedavrua Commit-by: liujiawang;ascend-robot;AvadaKedavrua;lutean;Horacehxw;eveyin1;minghang_c;zwt__;tt0cool;elrond-g;jia_ya_nan;zhenyu_zhang;ChenHuiwen;wangshen001;Hudingyi;wendellX;Secluded_Ocean;jhon-117;yaohan404;jiangruitao;zhenghaojie;stormchasingg;panyj1993;cmh1056291129;yuyinkai1;sunguozhong;genius52;liu_jiaxu;HongMaoShuiGuai;zhengxinqian;weixin_43368449;jsez-li-bin;jgong5;wqh17101;w00609794;yydyzr;JieZhang679;sppedforcy;gcw_61YBRfIt;Jiong Gong;hw_whx;gongjiong;孔炳翔 Merged-by: ascend-robot Description: 代码从 develop 同步到 master,后续基于 master 演进,并支持打包 See merge request: Ascend/msmodeling!330 | 1 个月前 | |
docs(spec): 引入 AI 治理规范与跨会话经验池框架 Co-authored-by: jhon-117<fangkai15@huawei.com> # message auto-generated for no-merge-commit merge: !586 merge feat/ai-governance-spec into master docs(spec): 引入 AI 治理规范与跨会话经验池框架 Created-by: jhon-117 Commit-by: jhon-117 Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [ ] Feature(功能新增) - [ ] Bugfix(Bug 修复) - [x] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [ ] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** msmodeling 已有 sig-review AI 检视、AGENTS.md 规范、test_map 测试自动化等 AI 提效实践,但缺少两个治理层: 1. **文档优先级治理**:AGENTS.md、CONTRIBUTING.md、各 skill SKILL.md 对同一事项描述不一致时无裁决依据,AI agent 与人类贡献者容易基于过期文档操作。 2. **跨会话经验积累**:AI agent 踩到的坑无法跨会话复用,相同问题反复出现。 本 PR 补齐这两层治理,不改动任何现有代码与 skill 逻辑。 ------ ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** 新增 2 份规范文档,修改 1 份入口文件(3 files changed, +264/-4): - **新增 spec/governance/source-of-truth-matrix.md**:单一事实来源矩阵,定义文档优先级 spec/ > docs/RFC/ > docs/design/ > CONTRIBUTING.md > AGENTS.md > .agents/skills/ > README.md,明确入口文件与规范源的区分、冲突解决规则、何时写 spec/RFC/design/skill。 - **新增 .loop/memory/lessons.md**:跨会话经验教训库,含 11 条 msmodeling 真实教训: - 代码架构 4 条(DeviceProfile name 唯一、CommGrid 约束、不直接改上游依赖、hot path 禁用 tensor.item()) - 新模型适配 1 条(遵循 model-adaptation 标准流程) - 文档与北向接口 1 条(接口变更同步更新文档) - Skill 治理 2 条(结构树易过期、frontmatter 统一格式) - Agent 可靠性 1 条(防止基于不存在的 issue/PR 编造内容) - 测试与 CI 2 条(pytest 前启动虚拟环境、PR 推送前本地门禁) - **修改 AGENTS.md 项目结构树**:补齐 spec/、.loop/、sig-review/、docs/design/、optix/、web_ui/,删除不存在的 skill_eval/ 声明。 ------ ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。** 本 PR 为纯文档变更,不涉及代码逻辑,无需运行 UT/ST。 pre-commit 检查通过(trim trailing whitespace / codespell / typos / detect private key / check for merge conflicts 均 Passed;ruff / pylint / bandit 因无 Python 文件 Skipped)。 ------ ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** SIG会议评审通过,增加AI自动化与AI约束。 - AI agent 执行任务时遇文档描述冲突,按 source-of-truth-matrix.md 优先级裁决,以 spec/ 为准。 - AI agent 会话启动时读 .loop/memory/lessons.md,复用历史教训(如 DeviceProfile name 冲突、hot path 性能陷阱),避免重复踩坑。 - 新贡献者通过 AGENTS.md 项目结构树快速定位 spec/(规范)、.loop/(经验池)、docs/design/(实现设计)等目录。 ------ ## ✅ Checklist / 检查列表 **Before PR**: - [ ] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。(N/A:非 bugfix) - [ ] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。(N/A:纯文档变更,无代码逻辑) - [x] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [ ] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。(N/A:本 PR 无代码文件) ------ See merge request: Ascend/msmodeling!586 | 4 天前 | |
统一由compilation-config接口暴露enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine Co-authored-by: wangshen001<wangshen34@h-partners.com> # message auto-generated for no-merge-commit merge: !573 merge edit-compile-config into master 统一由compilation-config接口暴露enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine Created-by: wangshen001 Commit-by: wangshen001 Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [ ] Feature(功能新增) - [ ] Bugfix(Bug 修复) - [ ] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [ ] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** ------ ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** 1.将以下参数:enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine 统一由compilation-config入口进行控制 2.统一text_generate.py和throughput_optimizer.py的参数 3.更新对应的文档以及测试用例 4.webui同步适配 ### ⚠️ Breaking Change:编译特性默认值变更 本 PR 将以下编译配置项的默认值从 True 改为 False: | 配置项 | 原默认值 | 新默认值 | 变更原因 | |--------|----------|----------|----------| | config.compilation.multistream.enable | True | False | 统一由 --compilation-config 显式控制 | | config.compilation.fusion_patterns.enable_matmul_allreduce | True | False | 统一由 --compilation-config 显式控制 | | config.compilation.fusion_patterns.enable_dispatch_ffn_combine | True | False | 统一由 --compilation-config 显式控制 | **变更原因**:统一由 --compilation-config 接口控制后,所有编译特性默认关闭,仅当用户显式指定时才启用,避免隐式行为对仿真结果产生不可预期的影响。 **对历史仿真基线的影响**:此前未显式指定上述参数的仿真命令,其结果依赖于这些默认值为 True。变更后,同样的命令将不再自动启用这些编译特性,仿真结果可能发生变化。 **迁移方式**:如需恢复历史行为,请在命令中显式添加: ``bash --compilation-config enable_multistream enable_matmul_allreduce enable_dispatch_ffn_combine ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。** 没有compilation-config参数: 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json 仿真结果: 有compilation-config参数,但为空 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json --compilation-config 仿真结果: 有compilation-config参数,且参数值不为空 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json --compilation-config 仿真结果: ------ ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** ------ ## ✅ Checklist / 检查列表 **Before PR**: - [ ] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。 - [ ] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。 - [ ] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [ ] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。 ------ See merge request: Ascend/msmodeling!573 | 20 小时前 | |
运行日志自动关联迭代、种子测试,方便定位 Co-authored-by: liu977803265<liushuai165@huawei.com> Co-authored-by: gitcode-bot<noreply@gitcode.com> # message auto-generated for no-merge-commit merge: !580 merge d0715_2 into master 运行日志自动关联迭代、种子测试,方便定位 Created-by: liu977803265 Commit-by: liu977803265;gitcode-bot Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [x] Feature(功能新增) - [ ] Bugfix(Bug 修复) - [ ] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [ ] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** 运行日志没有关联迭代、种子测试,出现问题不好定位 ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** 运行日志自动关联迭代、种子测试 ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。**   ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** ------ ## ✅ Checklist / 检查列表 **Before PR**: - [ ] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。 - [ ] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。 - [ ] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [ ] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。 ------ See merge request: Ascend/msmodeling!580 | 4 天前 | |
统一由compilation-config接口暴露enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine Co-authored-by: wangshen001<wangshen34@h-partners.com> # message auto-generated for no-merge-commit merge: !573 merge edit-compile-config into master 统一由compilation-config接口暴露enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine Created-by: wangshen001 Commit-by: wangshen001 Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [ ] Feature(功能新增) - [ ] Bugfix(Bug 修复) - [ ] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [ ] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** ------ ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** 1.将以下参数:enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine 统一由compilation-config入口进行控制 2.统一text_generate.py和throughput_optimizer.py的参数 3.更新对应的文档以及测试用例 4.webui同步适配 ### ⚠️ Breaking Change:编译特性默认值变更 本 PR 将以下编译配置项的默认值从 True 改为 False: | 配置项 | 原默认值 | 新默认值 | 变更原因 | |--------|----------|----------|----------| | config.compilation.multistream.enable | True | False | 统一由 --compilation-config 显式控制 | | config.compilation.fusion_patterns.enable_matmul_allreduce | True | False | 统一由 --compilation-config 显式控制 | | config.compilation.fusion_patterns.enable_dispatch_ffn_combine | True | False | 统一由 --compilation-config 显式控制 | **变更原因**:统一由 --compilation-config 接口控制后,所有编译特性默认关闭,仅当用户显式指定时才启用,避免隐式行为对仿真结果产生不可预期的影响。 **对历史仿真基线的影响**:此前未显式指定上述参数的仿真命令,其结果依赖于这些默认值为 True。变更后,同样的命令将不再自动启用这些编译特性,仿真结果可能发生变化。 **迁移方式**:如需恢复历史行为,请在命令中显式添加: ``bash --compilation-config enable_multistream enable_matmul_allreduce enable_dispatch_ffn_combine ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。** 没有compilation-config参数: 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json 仿真结果: 有compilation-config参数,但为空 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json --compilation-config 仿真结果: 有compilation-config参数,且参数值不为空 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json --compilation-config 仿真结果: ------ ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** ------ ## ✅ Checklist / 检查列表 **Before PR**: - [ ] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。 - [ ] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。 - [ ] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [ ] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。 ------ See merge request: Ascend/msmodeling!573 | 20 小时前 | |
性能复现脚本自动记录/生成,方便固化成果 Co-authored-by: liu977803265<liushuai165@huawei.com> # message auto-generated for no-merge-commit merge: !554 merge d0713_2 into master 性能复现脚本自动记录/生成,方便固化成果 Created-by: liu977803265 Commit-by: liu977803265 Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [x] Feature(功能新增) - [ ] Bugfix(Bug 修复) - [ ] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [ ] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** 缺少性能复现脚本自动记录/生成,用户很难复现出性能数据 ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** 性能复现脚本自动记录/生成,方便固化成果 ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。** 生成的复现脚本文件按不同测试种子分别存在bak目录下:  生成的csv文件结果为:  分别执行python simulator.py,启动vllm  执行python benchmark.py  对比csv文件和执行脚本输出的结果近乎一致 ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** ------ ## ✅ Checklist / 检查列表 **Before PR**: - [ ] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。 - [ ] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。 - [ ] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [ ] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。 ------ See merge request: Ascend/msmodeling!554 | 2 天前 | |
feat(pre-commit): 集成 Gitleaks 本地离线密钥扫描功能 Co-authored-by: eveyin1<qianyin2022@hotmail.com> # message auto-generated for no-merge-commit merge: !541 merge update into master feat(pre-commit): 集成 Gitleaks 本地离线密钥扫描功能 Created-by: eveyin1 Commit-by: eveyin1 Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [x] Feature(功能新增) - [ ] Bugfix(Bug 修复) - [ ] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [x] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** 密钥泄露是常见的安全风险,开发者可能在代码中硬编码 AK/SK、Token 等敏感信息 通过 pre-commit hook 在提交前拦截,从源头防止凭证进入 Git 历史 使用本地离线二进制扫描,无需网络连接,不依赖外部服务 ------ ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** .pre-commit-config.yaml:新增 gitleaks-offline-scan local hook,使用本地 gitleaks 二进制执行 protect 命令,在 pre-commit 阶段对暂存文件进行密钥扫描 pre-commit/.gitleaks.toml:新增 Gitleaks 配置文件,继承官方内置全套检测规则(useDefault = true),并提供自定义规则、全局白名单、行内屏蔽等扩展配置示例 ------ ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。** ------ ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** ------ ## ✅ Checklist / 检查列表 **Before PR**: - [ ] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。 - [ ] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。 - [ ] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [ ] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。 ------ See merge request: Ascend/msmodeling!541 | 16 天前 | |
【FIX】ci_gate coverage 兜底对齐多行语句起始行,修复续行误报 Co-authored-by: AvadaKedavrua<anonymousdev@163.com> # message auto-generated for no-merge-commit merge: !582 merge fix-scripts into master 【FIX】ci_gate coverage 兜底对齐多行语句起始行,修复续行误报 Created-by: AvadaKedavrua Commit-by: AvadaKedavrua Merged-by: ascend-robot Description: Related to #253 ## 修改原因 ci_gate coverage 兜底按 diff 物理行查询 Coverage context,而 Coverage.py 对多行语句只在语句起始行(AST lineno)记账。PR 仅改括号 import / 多行 list/dict/tuple 等续行时,会误报 path::% / path::Class::%(或函数符号)映射缺失(#253)。 ## 修改内容 - scripts/helpers/common/ast_utils.py:新增 coverage_measurable_lines / _iter_coverage_spans,将续行映射为最内层 stmt(含 decorator 表达式)的起始行。 - scripts/helpers/ci_gate/rules.py:_coverage_fallback_passes 查询前使用「原行 ∪ remap 行」。 - tests/regression/scripts/helpers/common/test_ast_utils.py、tests/regression/scripts/helpers/ci_gate/test_rules.py:补充正常/异常/边缘用例。 - tests/README.md、scripts/README.md:同步 Coverage fallback 语义说明。 ## 自验证 ### 回归:ast_utils + ci_gate rules 目的:验证多行语句续行 remap 与 gate 兜底命中/未命中路径 步骤: 1. 运行相关回归测试 bash uv run --group ci pytest tests/regression/scripts/helpers/common/test_ast_utils.py tests/regression/scripts/helpers/ci_gate/test_rules.py -q --tb=line 结果: text ........................................................................ [ 69%] ................................ [100%] 104 passed in 0.50s ### remap 行为抽检 目的:确认括号 import 与多行 list 续行映射到语句起始行 步骤: 1. 本地抽检 coverage_measurable_lines bash uv run --group ci python - <<'PY' from pathlib import Path from scripts.helpers.common.ast_utils import coverage_measurable_lines p = Path('/tmp/demo_paren.py') p.write_text('from packaging.version import (\n InvalidVersion,\n Version,\n)\nITEMS = [\n "a",\n "b",\n "c",\n]\n') print('import cont ->', sorted(coverage_measurable_lines(p, {2, 3}))) print('list mid ->', sorted(coverage_measurable_lines(p, {7}))) PY 结果: text import cont -> [1] list mid -> [5] See merge request: Ascend/msmodeling!582 | 3 天前 | |
统一由compilation-config接口暴露enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine Co-authored-by: wangshen001<wangshen34@h-partners.com> # message auto-generated for no-merge-commit merge: !573 merge edit-compile-config into master 统一由compilation-config接口暴露enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine Created-by: wangshen001 Commit-by: wangshen001 Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [ ] Feature(功能新增) - [ ] Bugfix(Bug 修复) - [ ] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [ ] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** ------ ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** 1.将以下参数:enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine 统一由compilation-config入口进行控制 2.统一text_generate.py和throughput_optimizer.py的参数 3.更新对应的文档以及测试用例 4.webui同步适配 ### ⚠️ Breaking Change:编译特性默认值变更 本 PR 将以下编译配置项的默认值从 True 改为 False: | 配置项 | 原默认值 | 新默认值 | 变更原因 | |--------|----------|----------|----------| | config.compilation.multistream.enable | True | False | 统一由 --compilation-config 显式控制 | | config.compilation.fusion_patterns.enable_matmul_allreduce | True | False | 统一由 --compilation-config 显式控制 | | config.compilation.fusion_patterns.enable_dispatch_ffn_combine | True | False | 统一由 --compilation-config 显式控制 | **变更原因**:统一由 --compilation-config 接口控制后,所有编译特性默认关闭,仅当用户显式指定时才启用,避免隐式行为对仿真结果产生不可预期的影响。 **对历史仿真基线的影响**:此前未显式指定上述参数的仿真命令,其结果依赖于这些默认值为 True。变更后,同样的命令将不再自动启用这些编译特性,仿真结果可能发生变化。 **迁移方式**:如需恢复历史行为,请在命令中显式添加: ``bash --compilation-config enable_multistream enable_matmul_allreduce enable_dispatch_ffn_combine ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。** 没有compilation-config参数: 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json 仿真结果: 有compilation-config参数,但为空 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json --compilation-config 仿真结果: 有compilation-config参数,且参数值不为空 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json --compilation-config 仿真结果: ------ ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** ------ ## ✅ Checklist / 检查列表 **Before PR**: - [ ] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。 - [ ] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。 - [ ] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [ ] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。 ------ See merge request: Ascend/msmodeling!573 | 20 小时前 | |
docs(spec): 引入 AI 治理规范与跨会话经验池框架 Co-authored-by: jhon-117<fangkai15@huawei.com> # message auto-generated for no-merge-commit merge: !586 merge feat/ai-governance-spec into master docs(spec): 引入 AI 治理规范与跨会话经验池框架 Created-by: jhon-117 Commit-by: jhon-117 Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [ ] Feature(功能新增) - [ ] Bugfix(Bug 修复) - [x] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [ ] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** msmodeling 已有 sig-review AI 检视、AGENTS.md 规范、test_map 测试自动化等 AI 提效实践,但缺少两个治理层: 1. **文档优先级治理**:AGENTS.md、CONTRIBUTING.md、各 skill SKILL.md 对同一事项描述不一致时无裁决依据,AI agent 与人类贡献者容易基于过期文档操作。 2. **跨会话经验积累**:AI agent 踩到的坑无法跨会话复用,相同问题反复出现。 本 PR 补齐这两层治理,不改动任何现有代码与 skill 逻辑。 ------ ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** 新增 2 份规范文档,修改 1 份入口文件(3 files changed, +264/-4): - **新增 spec/governance/source-of-truth-matrix.md**:单一事实来源矩阵,定义文档优先级 spec/ > docs/RFC/ > docs/design/ > CONTRIBUTING.md > AGENTS.md > .agents/skills/ > README.md,明确入口文件与规范源的区分、冲突解决规则、何时写 spec/RFC/design/skill。 - **新增 .loop/memory/lessons.md**:跨会话经验教训库,含 11 条 msmodeling 真实教训: - 代码架构 4 条(DeviceProfile name 唯一、CommGrid 约束、不直接改上游依赖、hot path 禁用 tensor.item()) - 新模型适配 1 条(遵循 model-adaptation 标准流程) - 文档与北向接口 1 条(接口变更同步更新文档) - Skill 治理 2 条(结构树易过期、frontmatter 统一格式) - Agent 可靠性 1 条(防止基于不存在的 issue/PR 编造内容) - 测试与 CI 2 条(pytest 前启动虚拟环境、PR 推送前本地门禁) - **修改 AGENTS.md 项目结构树**:补齐 spec/、.loop/、sig-review/、docs/design/、optix/、web_ui/,删除不存在的 skill_eval/ 声明。 ------ ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。** 本 PR 为纯文档变更,不涉及代码逻辑,无需运行 UT/ST。 pre-commit 检查通过(trim trailing whitespace / codespell / typos / detect private key / check for merge conflicts 均 Passed;ruff / pylint / bandit 因无 Python 文件 Skipped)。 ------ ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** SIG会议评审通过,增加AI自动化与AI约束。 - AI agent 执行任务时遇文档描述冲突,按 source-of-truth-matrix.md 优先级裁决,以 spec/ 为准。 - AI agent 会话启动时读 .loop/memory/lessons.md,复用历史教训(如 DeviceProfile name 冲突、hot path 性能陷阱),避免重复踩坑。 - 新贡献者通过 AGENTS.md 项目结构树快速定位 spec/(规范)、.loop/(经验池)、docs/design/(实现设计)等目录。 ------ ## ✅ Checklist / 检查列表 **Before PR**: - [ ] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。(N/A:非 bugfix) - [ ] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。(N/A:纯文档变更,无代码逻辑) - [x] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [ ] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。(N/A:本 PR 无代码文件) ------ See merge request: Ascend/msmodeling!586 | 4 天前 | |
统一由compilation-config接口暴露enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine Co-authored-by: wangshen001<wangshen34@h-partners.com> # message auto-generated for no-merge-commit merge: !573 merge edit-compile-config into master 统一由compilation-config接口暴露enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine Created-by: wangshen001 Commit-by: wangshen001 Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [ ] Feature(功能新增) - [ ] Bugfix(Bug 修复) - [ ] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [ ] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** ------ ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** 1.将以下参数:enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine 统一由compilation-config入口进行控制 2.统一text_generate.py和throughput_optimizer.py的参数 3.更新对应的文档以及测试用例 4.webui同步适配 ### ⚠️ Breaking Change:编译特性默认值变更 本 PR 将以下编译配置项的默认值从 True 改为 False: | 配置项 | 原默认值 | 新默认值 | 变更原因 | |--------|----------|----------|----------| | config.compilation.multistream.enable | True | False | 统一由 --compilation-config 显式控制 | | config.compilation.fusion_patterns.enable_matmul_allreduce | True | False | 统一由 --compilation-config 显式控制 | | config.compilation.fusion_patterns.enable_dispatch_ffn_combine | True | False | 统一由 --compilation-config 显式控制 | **变更原因**:统一由 --compilation-config 接口控制后,所有编译特性默认关闭,仅当用户显式指定时才启用,避免隐式行为对仿真结果产生不可预期的影响。 **对历史仿真基线的影响**:此前未显式指定上述参数的仿真命令,其结果依赖于这些默认值为 True。变更后,同样的命令将不再自动启用这些编译特性,仿真结果可能发生变化。 **迁移方式**:如需恢复历史行为,请在命令中显式添加: ``bash --compilation-config enable_multistream enable_matmul_allreduce enable_dispatch_ffn_combine ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。** 没有compilation-config参数: 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json 仿真结果: 有compilation-config参数,但为空 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json --compilation-config 仿真结果: 有compilation-config参数,且参数值不为空 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json --compilation-config 仿真结果: ------ ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** ------ ## ✅ Checklist / 检查列表 **Before PR**: - [ ] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。 - [ ] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。 - [ ] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [ ] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。 ------ See merge request: Ascend/msmodeling!573 | 20 小时前 | |
统一由compilation-config接口暴露enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine Co-authored-by: wangshen001<wangshen34@h-partners.com> # message auto-generated for no-merge-commit merge: !573 merge edit-compile-config into master 统一由compilation-config接口暴露enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine Created-by: wangshen001 Commit-by: wangshen001 Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [ ] Feature(功能新增) - [ ] Bugfix(Bug 修复) - [ ] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [ ] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** ------ ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** 1.将以下参数:enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine 统一由compilation-config入口进行控制 2.统一text_generate.py和throughput_optimizer.py的参数 3.更新对应的文档以及测试用例 4.webui同步适配 ### ⚠️ Breaking Change:编译特性默认值变更 本 PR 将以下编译配置项的默认值从 True 改为 False: | 配置项 | 原默认值 | 新默认值 | 变更原因 | |--------|----------|----------|----------| | config.compilation.multistream.enable | True | False | 统一由 --compilation-config 显式控制 | | config.compilation.fusion_patterns.enable_matmul_allreduce | True | False | 统一由 --compilation-config 显式控制 | | config.compilation.fusion_patterns.enable_dispatch_ffn_combine | True | False | 统一由 --compilation-config 显式控制 | **变更原因**:统一由 --compilation-config 接口控制后,所有编译特性默认关闭,仅当用户显式指定时才启用,避免隐式行为对仿真结果产生不可预期的影响。 **对历史仿真基线的影响**:此前未显式指定上述参数的仿真命令,其结果依赖于这些默认值为 True。变更后,同样的命令将不再自动启用这些编译特性,仿真结果可能发生变化。 **迁移方式**:如需恢复历史行为,请在命令中显式添加: ``bash --compilation-config enable_multistream enable_matmul_allreduce enable_dispatch_ffn_combine ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。** 没有compilation-config参数: 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json 仿真结果: 有compilation-config参数,但为空 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json --compilation-config 仿真结果: 有compilation-config参数,且参数值不为空 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json --compilation-config 仿真结果: ------ ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** ------ ## ✅ Checklist / 检查列表 **Before PR**: - [ ] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。 - [ ] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。 - [ ] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [ ] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。 ------ See merge request: Ascend/msmodeling!573 | 20 小时前 | |
修复实测算子相关bug 1、实测算子接入throughput_optimizer功能,配置寻优结果无法直接对比,修改--performance-model参数说明及输入用法,使其仅支持指定一个性能模型 2、--vllm-version实际指的是vllm-ascend版本,需要修正相关资料与注释 Co-authored-by: zhenghaojie<zhenghaojie2@huawei.com> # message auto-generated for no-merge-commit merge: !570 merge master_0715 into master fix:修复实测算子相关bug Created-by: zhenghaojie Commit-by: zhenghaojie Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [ ] Feature(功能新增) - [x] Bugfix(Bug 修复) - [x] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [ ] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** 修复实测算子相关bug 1、实测算子接入throughput_optimizer功能,配置寻优结果无法直接对比,修改--performance-model参数说明及输入用法,使其仅支持指定一个性能模型 2、--vllm-version实际指的是vllm-ascend版本,需要修正相关资料与注释 ------ ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** 修复实测算子相关bug 1、实测算子接入throughput_optimizer功能,配置寻优结果无法直接对比,修改--performance-model参数说明及输入用法,使其仅支持指定一个性能模型 2、--vllm-version实际指的是vllm-ascend版本,需要修正相关资料与注释 ------ ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。** 1、python -m cli.inference.throughput_optimizer命令,--performance-model参数说明,删除其支持多个性能说明的描述  2、以下UT均顺利执行 tests.regression.cli.test_throughput_optimizer.TestThroughputOptimizer.test_arg_parse_performance_model_defaults_to_analytic tests.regression.cli.test_throughput_optimizer.TestThroughputOptimizer.test_arg_parse_performance_model_is_string_not_list tests.regression.cli.test_throughput_optimizer.TestThroughputOptimizer.test_arg_parse_performance_model_last_wins_when_repeated tests.regression.cli.test_throughput_optimizer.TestThroughputOptimizer.test_arg_parse_performance_model_rejects_invalid_choice 3、有关--vllm-version相关资料与帮助说明均更正为vllm-ascend的版本    ------ ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** ------ ## ✅ Checklist / 检查列表 **Before PR**: - [x] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。 - [x] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。 - [x] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [x] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。 ------ See merge request: Ascend/msmodeling!570 | 1 天前 | |
统一由compilation-config接口暴露enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine Co-authored-by: wangshen001<wangshen34@h-partners.com> # message auto-generated for no-merge-commit merge: !573 merge edit-compile-config into master 统一由compilation-config接口暴露enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine Created-by: wangshen001 Commit-by: wangshen001 Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [ ] Feature(功能新增) - [ ] Bugfix(Bug 修复) - [ ] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [ ] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** ------ ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** 1.将以下参数:enable_multistream、enable_sequence_parallel、enable_matmul_allreduce、enable_dispatch_ffn_combine 统一由compilation-config入口进行控制 2.统一text_generate.py和throughput_optimizer.py的参数 3.更新对应的文档以及测试用例 4.webui同步适配 ### ⚠️ Breaking Change:编译特性默认值变更 本 PR 将以下编译配置项的默认值从 True 改为 False: | 配置项 | 原默认值 | 新默认值 | 变更原因 | |--------|----------|----------|----------| | config.compilation.multistream.enable | True | False | 统一由 --compilation-config 显式控制 | | config.compilation.fusion_patterns.enable_matmul_allreduce | True | False | 统一由 --compilation-config 显式控制 | | config.compilation.fusion_patterns.enable_dispatch_ffn_combine | True | False | 统一由 --compilation-config 显式控制 | **变更原因**:统一由 --compilation-config 接口控制后,所有编译特性默认关闭,仅当用户显式指定时才启用,避免隐式行为对仿真结果产生不可预期的影响。 **对历史仿真基线的影响**:此前未显式指定上述参数的仿真命令,其结果依赖于这些默认值为 True。变更后,同样的命令将不再自动启用这些编译特性,仿真结果可能发生变化。 **迁移方式**:如需恢复历史行为,请在命令中显式添加: ``bash --compilation-config enable_multistream enable_matmul_allreduce enable_dispatch_ffn_combine ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。** 没有compilation-config参数: 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json 仿真结果: 有compilation-config参数,但为空 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json --compilation-config 仿真结果: 有compilation-config参数,且参数值不为空 仿真命令:python -m cli.inference.text_generate moonshotai/Kimi-K2.5 --device ATLAS_800_A3_560T_128G_DIE --num-devices 16 --num-queries 4 --query-length 3500 --compile --context-length 0 --quantize-linear-action W4A8_DYNAMIC --dp-size 4 --tp-size 4 --ep-size 16 --dump-input-shapes --chrome-trace E:\文档\Kimi-K2.5\ATLAS_800_A3_560T_128G_DIE_ep16_3500_1500_prefill_chrome.json --compilation-config 仿真结果: ------ ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** ------ ## ✅ Checklist / 检查列表 **Before PR**: - [ ] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。 - [ ] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。 - [ ] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [ ] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。 ------ See merge request: Ascend/msmodeling!573 | 20 小时前 | |
【同步】【非开发代码】代码从 develop 同步到 master Co-authored-by: yydyzr<liuyuncong1@huawei.com> Co-authored-by: gcw_61YBRfIt<chuzhenxing@huawei.com> Co-authored-by: 孔炳翔<1120200577@qq.com> Co-authored-by: zhengxinqian<qianzhengxin@huawei.com> Co-authored-by: hw_whx<wanghexiang7@huawei.com> Co-authored-by: jgong5<steven.gong@gmail.com> Co-authored-by: hw_whx<2952154980@qq.com> # message auto-generated for no-merge-commit merge: !330 merge master into master 【同步】【非开发代码】代码从 develop 同步到 master Created-by: AvadaKedavrua Commit-by: liujiawang;ascend-robot;AvadaKedavrua;lutean;Horacehxw;eveyin1;minghang_c;zwt__;tt0cool;elrond-g;jia_ya_nan;zhenyu_zhang;ChenHuiwen;wangshen001;Hudingyi;wendellX;Secluded_Ocean;jhon-117;yaohan404;jiangruitao;zhenghaojie;stormchasingg;panyj1993;cmh1056291129;yuyinkai1;sunguozhong;genius52;liu_jiaxu;HongMaoShuiGuai;zhengxinqian;weixin_43368449;jsez-li-bin;jgong5;wqh17101;w00609794;yydyzr;JieZhang679;sppedforcy;gcw_61YBRfIt;Jiong Gong;hw_whx;gongjiong;孔炳翔 Merged-by: ascend-robot Description: 代码从 develop 同步到 master,后续基于 master 演进,并支持打包 See merge request: Ascend/msmodeling!330 | 1 个月前 | |
【FEAT】新增根目录 build.py 作为部门统一构建/测试入口 Co-authored-by: liujiawang<anonymousdev@163.com> # message auto-generated for no-merge-commit merge: !485 merge build_all_in_one into master 【FEAT】新增根目录 build.py 作为部门统一构建/测试入口 Created-by: AvadaKedavrua Commit-by: liujiawang Merged-by: ascend-robot Description: ## 修改原因 部门工具仓规范要求仓库根目录提供统一 build.py 入口。msmodeling 需在本地与 CI 中以稳定 CLI 委托现有 scripts/build.sh(构建 wheel)与 scripts/run_ci_gate.sh(增量门禁测试),并支持 -v 指定制品版本且与 uv build 日志一致。 ## 修改内容 - 新增根目录 [build.py](build.py) 及 [scripts/helpers/build/](scripts/helpers/build/)(argv.py 参数解析、main.py 流程编排) - 默认构建:委托 bash scripts/build.sh,wheel 输出到 artifacts/wheels/,写入 artifacts/build-manifest.json - python build.py test:委托 bash scripts/run_ci_gate.sh,日志/摘要写入 artifacts/test-reports/ - -v/--version:构建前 uv version <ver> --frozen 临时写入 pyproject.toml,finally 恢复原版本;不再仅重命名 whl - fail-fast:uv 不在 PATH、test_map_path 非文件时提前退出;version staging / restore 失败有明确退出码 - local token 解析但无行为分支(纯 Python 仓规范兼容) - 新增 tests/regression/scripts/helpers/build/ 回归(41 用例);gate_policy.yaml 增加 build.py 配置触发项;.gitignore 忽略 artifacts/ - 更新 [scripts/README.md](scripts/README.md) 说明入口与 uv run python build.py -v 用法 ## 自验证 ### 回归测试 目的:验证 build 模块参数解析、版本 staging/restore、fail-fast 与委托逻辑。 步骤: 1. 运行 build 回归套件 bash uv run pytest tests/regression/scripts/helpers/build/ -q --tb=short 结果: text ......................................... [100%] 41 passed in 0.26s ### 指定版本构建 wheel 目的:验证 -v 时 uv build 日志与 whl 文件名均为指定版本,且 pyproject.toml 构建后恢复。 步骤: 1. 清理并构建 bash rm -rf artifacts/wheels/* uv run python build.py -v 26.1.2 2. 检查 pyproject 版本 bash grep '^version' pyproject.toml 结果: text INFO 06-30 10:05:56.446 [main.py:66] setting project version to 26.1.2 msmodeling 0.2.0 => 26.1.2 INFO 06-30 10:05:56.463 [main.py:84] running: bash /root/workspace/gitcode/msmodeling-test/scripts/build.sh Building wheel... Successfully built artifacts/wheels/msmodeling-26.1.2-py3-none-any.whl Built wheel: /root/workspace/gitcode/msmodeling-test/artifacts/wheels/msmodeling-26.1.2-py3-none-any.whl INFO 06-30 10:05:57.534 [main.py:182] restoring project version to 0.2.0 INFO 06-30 10:05:57.534 [main.py:66] setting project version to 0.2.0 msmodeling 26.1.2 => 0.2.0 version = "0.2.0" ### test 模式 fail-fast 目的:未提供 test_map 时应在启动 ci_gate 前失败。 步骤: 1. 无 test_map 运行 test bash uv run python build.py test 结果: text ERROR 06-30 10:06:04.247 [main.py:222] test requires test_map_path via --extra test_map_path=... or MSMODELING_TEST_MAP_PATH exit=1 See merge request: Ascend/msmodeling!485 | 25 天前 | |
feat(pre-commit): 集成 Gitleaks 本地离线密钥扫描功能 Co-authored-by: eveyin1<qianyin2022@hotmail.com> # message auto-generated for no-merge-commit merge: !541 merge update into master feat(pre-commit): 集成 Gitleaks 本地离线密钥扫描功能 Created-by: eveyin1 Commit-by: eveyin1 Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [x] Feature(功能新增) - [ ] Bugfix(Bug 修复) - [ ] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [x] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** 密钥泄露是常见的安全风险,开发者可能在代码中硬编码 AK/SK、Token 等敏感信息 通过 pre-commit hook 在提交前拦截,从源头防止凭证进入 Git 历史 使用本地离线二进制扫描,无需网络连接,不依赖外部服务 ------ ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** .pre-commit-config.yaml:新增 gitleaks-offline-scan local hook,使用本地 gitleaks 二进制执行 protect 命令,在 pre-commit 阶段对暂存文件进行密钥扫描 pre-commit/.gitleaks.toml:新增 Gitleaks 配置文件,继承官方内置全套检测规则(useDefault = true),并提供自定义规则、全局白名单、行内屏蔽等扩展配置示例 ------ ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。** ------ ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** ------ ## ✅ Checklist / 检查列表 **Before PR**: - [ ] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。 - [ ] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。 - [ ] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [ ] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。 ------ See merge request: Ascend/msmodeling!541 | 16 天前 | |
[FEAT] OptiX 子进程环境与 msmodeling 虚拟环境隔离 Co-authored-by: hqx<1343153389@qq.com> Co-authored-by: AvadaKedavrua<anonymousdev@163.com> # message auto-generated for no-merge-commit merge: !577 merge optix_install into master [FEAT] OptiX 子进程环境与 msmodeling 虚拟环境隔离 Created-by: h7star Commit-by: hqx;AvadaKedavrua Merged-by: ascend-robot Description: ## 背景 PR #490 原先合入 26.1.0 分支,本 PR 将 OptiX 子进程环境与 msmodeling 虚拟环境隔离能力回迁并适配到 master。 原始 PR:https://gitcode.com/Ascend/msmodeling/pull/490 原始 squash commit:a8818f386a31535267a77accb41ebc13db31a34f ## 主要改动 - 新增 optix/deploy_env.py,构建剥离 msmodeling venv 的部署子进程环境 - 从子进程 PATH、PYTHONPATH、LD_LIBRARY_PATH 中移除 msmodeling 虚拟环境路径 - 支持 OPTIX_DEPLOY_PATH 和 [deploy].path_prefix - 统一 vLLM、MindIE、AISBench 命令解析与启动前 fail-fast 校验 - benchmark、simulate、CustomProcess 统一使用隔离后的环境 - 适配 master 当前配置、日志、错误处理及测试结构 - 更新安装说明、OptiX 用户指南和相关 skills ## 验证 - 环境隔离相关测试:58 passed - 进程、benchmark、simulator 相关测试:132 passed - OptiX 适用全量回归:767 passed, 3 skipped - 推送时远端 Git Hooks 检查通过 - 安装流程冒烟 cd msmodeling && rm -rf .venv && uv sync uv run msmodeling --help uv run msmodeling optix --help uv run python -m cli.inference.text_generate --help 结果:CLI 入口均可用,无需 pip install -e . - build_deploy_env 冒烟 uv run python -c " import os from optix.deploy_env import build_deploy_env, detect_runtime_context ctx = detect_runtime_context() env = build_deploy_env(os.environ, deploy_path_prefix=None) print('in_venv:', ctx.in_virtualenv) print('VIRTUAL_ENV stripped:', 'VIRTUAL_ENV' not in env) " 结果:in_venv: True,VIRTUAL_ENV stripped: True  ## Pre-commit 说明 本次改动相关的 trailing-whitespace、end-of-file-fixer、ruff-check、ruff-format 均通过。全仓 pre-commit --all-files 仍受 master 既有的 contrib/optix Ruff/Bandit 问题、Windows POSIX API Pylint 检查以及本地缺少 gitleaks 可执行文件影响。 See merge request: Ascend/msmodeling!577 | 2 天前 | |
【同步】【非开发代码】代码从 develop 同步到 master Co-authored-by: yydyzr<liuyuncong1@huawei.com> Co-authored-by: gcw_61YBRfIt<chuzhenxing@huawei.com> Co-authored-by: 孔炳翔<1120200577@qq.com> Co-authored-by: zhengxinqian<qianzhengxin@huawei.com> Co-authored-by: hw_whx<wanghexiang7@huawei.com> Co-authored-by: jgong5<steven.gong@gmail.com> Co-authored-by: hw_whx<2952154980@qq.com> # message auto-generated for no-merge-commit merge: !330 merge master into master 【同步】【非开发代码】代码从 develop 同步到 master Created-by: AvadaKedavrua Commit-by: liujiawang;ascend-robot;AvadaKedavrua;lutean;Horacehxw;eveyin1;minghang_c;zwt__;tt0cool;elrond-g;jia_ya_nan;zhenyu_zhang;ChenHuiwen;wangshen001;Hudingyi;wendellX;Secluded_Ocean;jhon-117;yaohan404;jiangruitao;zhenghaojie;stormchasingg;panyj1993;cmh1056291129;yuyinkai1;sunguozhong;genius52;liu_jiaxu;HongMaoShuiGuai;zhengxinqian;weixin_43368449;jsez-li-bin;jgong5;wqh17101;w00609794;yydyzr;JieZhang679;sppedforcy;gcw_61YBRfIt;Jiong Gong;hw_whx;gongjiong;孔炳翔 Merged-by: ascend-robot Description: 代码从 develop 同步到 master,后续基于 master 演进,并支持打包 See merge request: Ascend/msmodeling!330 | 1 个月前 | |
[FEAT] OptiX 子进程环境与 msmodeling 虚拟环境隔离 Co-authored-by: hqx<1343153389@qq.com> Co-authored-by: AvadaKedavrua<anonymousdev@163.com> # message auto-generated for no-merge-commit merge: !577 merge optix_install into master [FEAT] OptiX 子进程环境与 msmodeling 虚拟环境隔离 Created-by: h7star Commit-by: hqx;AvadaKedavrua Merged-by: ascend-robot Description: ## 背景 PR #490 原先合入 26.1.0 分支,本 PR 将 OptiX 子进程环境与 msmodeling 虚拟环境隔离能力回迁并适配到 master。 原始 PR:https://gitcode.com/Ascend/msmodeling/pull/490 原始 squash commit:a8818f386a31535267a77accb41ebc13db31a34f ## 主要改动 - 新增 optix/deploy_env.py,构建剥离 msmodeling venv 的部署子进程环境 - 从子进程 PATH、PYTHONPATH、LD_LIBRARY_PATH 中移除 msmodeling 虚拟环境路径 - 支持 OPTIX_DEPLOY_PATH 和 [deploy].path_prefix - 统一 vLLM、MindIE、AISBench 命令解析与启动前 fail-fast 校验 - benchmark、simulate、CustomProcess 统一使用隔离后的环境 - 适配 master 当前配置、日志、错误处理及测试结构 - 更新安装说明、OptiX 用户指南和相关 skills ## 验证 - 环境隔离相关测试:58 passed - 进程、benchmark、simulator 相关测试:132 passed - OptiX 适用全量回归:767 passed, 3 skipped - 推送时远端 Git Hooks 检查通过 - 安装流程冒烟 cd msmodeling && rm -rf .venv && uv sync uv run msmodeling --help uv run msmodeling optix --help uv run python -m cli.inference.text_generate --help 结果:CLI 入口均可用,无需 pip install -e . - build_deploy_env 冒烟 uv run python -c " import os from optix.deploy_env import build_deploy_env, detect_runtime_context ctx = detect_runtime_context() env = build_deploy_env(os.environ, deploy_path_prefix=None) print('in_venv:', ctx.in_virtualenv) print('VIRTUAL_ENV stripped:', 'VIRTUAL_ENV' not in env) " 结果:in_venv: True,VIRTUAL_ENV stripped: True  ## Pre-commit 说明 本次改动相关的 trailing-whitespace、end-of-file-fixer、ruff-check、ruff-format 均通过。全仓 pre-commit --all-files 仍受 master 既有的 contrib/optix Ruff/Bandit 问题、Windows POSIX API Pylint 检查以及本地缺少 gitleaks 可执行文件影响。 See merge request: Ascend/msmodeling!577 | 2 天前 | |
【doc】优化 msModeling 安装指南与快速入门文档 Co-authored-by: eveyin1<qianyin2022@hotmail.com> # message auto-generated for no-merge-commit merge: !604 merge master into master 【doc】优化 msModeling 安装指南与快速入门文档 Created-by: eveyin1 Commit-by: eveyin1 Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [ ] Feature(功能新增) - [ ] Bugfix(Bug 修复) - [x] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [ ] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** ------ ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** 主要变更包括: 标题改为 msModeling Quick Start 体验地图术语更新 2.2 / 2.3 章节标题调整 补充 2.3.2 优化结果示例输出表 ------ ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。** ------ ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** ------ ## ✅ Checklist / 检查列表 **Before PR**: - [ ] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。 - [ ] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。 - [ ] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [ ] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。 ------ See merge request: Ascend/msmodeling!604 | 1 天前 | |
【FEAT】build.py test 无 test_map 时默认跑全量 pytest Co-authored-by: AvadaKedavrua<anonymousdev@163.com> # message auto-generated for no-merge-commit merge: !557 merge test into master 【FEAT】build.py test 无 test_map 时默认跑全量 pytest Created-by: AvadaKedavrua Commit-by: AvadaKedavrua Merged-by: ascend-robot Description: ## 修改原因 本地执行 python3 build.py test 时强制要求 MSMODELING_TEST_MAP_PATH,对日常全量回归不友好;希望未传该变量时默认跑全量 pytest tests(markers 沿用 pyproject.toml),传入后再走 CI Gate。 ## 修改内容 - scripts/helpers/build/:拆分为 main.py(分发)、run_build.py、run_test.py;run_test 按是否解析到 test_map_path 分流——无 map 执行 python -m pytest tests(markers 沿用 pyproject.toml,不覆盖 addopts);有 map 走 CI Gate(先校验 map 文件与 run_ci_gate.sh) - tests/regression/scripts/helpers/build/:覆盖正常/空白 env/全量失败码/CI Gate 路径等 - scripts/README.md、build.py:同步文档与入口说明 - uv.lock:一并纳入 ## 自验证 ### 无 test_map 走全量 pytest(markers 来自 pyproject) 目的:确认未设置 MSMODELING_TEST_MAP_PATH 时启动 pytest tests,并读取 pyproject.toml addopts(deselected 对应 npu/nightly/network) 步骤: 1. 使用仓库 venv Python 启动 test(限时截取启动屏显) bash unset MSMODELING_TEST_MAP_PATH timeout 60 .venv/bin/python build.py test 结果: text Checked 108 packages in 1ms INFO 07-14 14:18:29.753 [main.py:140] running: /root/workspace/gitcode/msmodeling/.venv/bin/python -m pytest tests ============================= test session starts ============================== platform linux -- Python 3.12.13, pytest-9.0.3, pluggy-1.6.0 rootdir: /root/workspace/gitcode/msmodeling configfile: pyproject.toml plugins: xdist-3.8.0, cov-7.1.0, anyio-4.13.0 collected 5055 items / 136 deselected / 4919 selected ### build helper 回归单测 目的:守护全量/CI Gate 双路径及边缘场景 步骤: 1. 运行 build.main 回归 bash uv run --group ci pytest tests/regression/scripts/helpers/build/test_main.py -q --tb=line 结果: text .......................................... [100%] 42 passed in 1.22s ### CI Gate 路径:map 文件缺失 fail-fast 目的:传入不存在的 test_map 时在 bootstrap 前失败 步骤: 1. 指定缺失 map bash unset MSMODELING_TEST_MAP_PATH python3 build.py test -e test_map_path=/tmp/does-not-exist-map.json 结果: text ERROR 07-14 14:16:31.039 [main.py:300] test_map_path is not a file: /tmp/does-not-exist-map.json ### test_map 解析:unset / blank / set / extra 目的:空白环境变量视为未设置,优先 -e test_map_path 步骤: 1. 解析函数冒烟 bash python3 - <<'PY' import os from scripts.helpers.build.argv import BuildOptions from scripts.helpers.build.main import _resolve_test_map_path os.environ.pop("MSMODELING_TEST_MAP_PATH", None) opts = BuildOptions(is_test=True, is_local=False, version=None, version_explicit=False, extras={}) print("unset ->", repr(_resolve_test_map_path(opts))) os.environ["MSMODELING_TEST_MAP_PATH"] = " " print("blank ->", repr(_resolve_test_map_path(opts))) os.environ["MSMODELING_TEST_MAP_PATH"] = "/tmp/map.json" print("set ->", repr(_resolve_test_map_path(opts))) print("extra ->", repr(_resolve_test_map_path(BuildOptions(is_test=True, is_local=False, version=None, version_explicit=False, extras={"test_map_path": "/data/x.json"})))) PY 结果: text unset -> None blank -> None set -> '/tmp/map.json' extra -> '/data/x.json'   See merge request: Ascend/msmodeling!557 | 10 天前 | |
fix(deps): upgrade Pillow to 12.3.0 Co-authored-by: jia_ya_nan<jiayanan3@h-partners.com> # message auto-generated for no-merge-commit merge: !595 merge branch_for_debug into master fix(deps): upgrade Pillow to 12.3.0 Created-by: jia_ya_nan Commit-by: jia_ya_nan Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [ ] Feature(功能新增) - [ ] Bugfix(Bug 修复) - [ ] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [x] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** 升级 Pillow 依赖,修复 Issue 257-269 中涉及的多个安全漏洞,降低恶意图像、字体及 PDF 文件触发内存耗尽、越界读写、信息泄露和命令注入等安全风险。 ------ ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** 将 pyproject.toml 和 requirements.txt 中的 Pillow 最低版本升级至 12.3.0。 更新 uv.lock,锁定 Pillow 12.3.0 及对应校验哈希。 ------ ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。**  ------ ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** ------ ## ✅ Checklist / 检查列表 **Before PR**: - [x] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。 - [x] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。 - [x] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [x] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。 ------ See merge request: Ascend/msmodeling!595 | 2 天前 | |
fix(deps): upgrade Pillow to 12.3.0 Co-authored-by: jia_ya_nan<jiayanan3@h-partners.com> # message auto-generated for no-merge-commit merge: !595 merge branch_for_debug into master fix(deps): upgrade Pillow to 12.3.0 Created-by: jia_ya_nan Commit-by: jia_ya_nan Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [ ] Feature(功能新增) - [ ] Bugfix(Bug 修复) - [ ] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [x] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** 升级 Pillow 依赖,修复 Issue 257-269 中涉及的多个安全漏洞,降低恶意图像、字体及 PDF 文件触发内存耗尽、越界读写、信息泄露和命令注入等安全风险。 ------ ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** 将 pyproject.toml 和 requirements.txt 中的 Pillow 最低版本升级至 12.3.0。 更新 uv.lock,锁定 Pillow 12.3.0 及对应校验哈希。 ------ ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。**  ------ ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** ------ ## ✅ Checklist / 检查列表 **Before PR**: - [x] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。 - [x] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。 - [x] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [x] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。 ------ See merge request: Ascend/msmodeling!595 | 2 天前 | |
fix(deps): upgrade Pillow to 12.3.0 Co-authored-by: jia_ya_nan<jiayanan3@h-partners.com> # message auto-generated for no-merge-commit merge: !595 merge branch_for_debug into master fix(deps): upgrade Pillow to 12.3.0 Created-by: jia_ya_nan Commit-by: jia_ya_nan Merged-by: ascend-robot Description: # PR Template Thanks for your contribution; we appreciate it a lot. The following instructions will make your pull request healthier and help you get feedback more easily. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers. 感谢您的贡献,我们非常重视。以下说明将使您的拉取请求更健康,更易于获得反馈。如果您不理解某些项目,请不要担心,只需提交拉取请求并从维护人员那里寻求帮助即可。 **PR Type / PR类型** - [ ] Feature(功能新增) - [ ] Bugfix(Bug 修复) - [ ] Docs(文档更新) - [ ] CI/CD(持续集成/持续部署) - [ ] Refactor(代码重构) - [ ] Perf(性能优化) - [ ] Test-Cases(测试用例更新) - [x] Other(其他) ## 🔍 Motivation / 变更动机 **Please describe the motivation of this PR and the goal you want to achieve through this PR.** **请描述您的拉取请求的动机和您希望通过此拉取请求实现的目标。** 升级 Pillow 依赖,修复 Issue 257-269 中涉及的多个安全漏洞,降低恶意图像、字体及 PDF 文件触发内存耗尽、越界读写、信息泄露和命令注入等安全风险。 ------ ## 📝 Modification / 修改内容 **Please briefly describe what modification is made in this PR.** **请简要描述此拉取请求中进行的修改。** 将 pyproject.toml 和 requirements.txt 中的 Pillow 最低版本升级至 12.3.0。 更新 uv.lock,锁定 Pillow 12.3.0 及对应校验哈希。 ------ ## 📐 Associated Test Results / 关联测试结果 **Please provide the related test results, such as test reports, etc.** **请提供相关测试结果,例如测试报告等。**  ------ ## 🌟 Use cases (Optional) / 使用案例(可选) **If this PR introduces a new feature, it is better to list some use cases here and update the documentation.** **如果此拉取请求引入了新功能,最好在此处列出一些用例并更新文档。** ------ ## ✅ Checklist / 检查列表 **Before PR**: - [x] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests. / 修复的 Bug 已完全由单元测试覆盖,导致 Bug 的情况应在单元测试中添加。 - [x] The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness. / 此拉取请求中的修改已完全由单元测试覆盖。如果不是,请添加更多单元测试以确保正确性。 - [x] All relevant documentation (API docs, docstrings, example tutorials) has been updated to reflect these changes. / 所有相关文档(API 文档、文档字符串、示例教程)已更新以反映这些更改。 - [x] Please ensure code files contain no Chinese comments. / 请保证代码文件中不含中文注释。 ------ See merge request: Ascend/msmodeling!595 | 2 天前 |
MindStudio Modeling
✨ 最新消息
持续支持 DeepSeek、Kimi、Qwen、GLM、MiniMax 等国内主流大模型,点击系列名称展开查看新增支持记录。
DeepSeek 系列
🔹 [2026.06.04] msModeling 新增 DeepSeek-V4 模型支持 🔹 [2026.04.20] msModeling 新增 DeepSeek V3.2 模型支持 🔹 [2025.09.06] msModeling 新增 DeepSeek V3 模型支持
Kimi 系列
🔹 [2026.06.11] msModeling 新增 Kimi-K2.6 模型支持 🔹 [2026.05.27] msModeling 新增 Kimi-K2.5 模型支持 🔹 [2025.09.06] msModeling 新增 Kimi-K2 模型支持
Qwen 系列
🔹 [2026.07.14] msModeling 新增 Qwen3.6 图片输入支持 🔹 [2026.07.14] msModeling 新增 Qwen3.6 Dense / MoE 文本输入支持 🔹 [2026.04.20] msModeling 新增 Qwen3.5 图片输入支持 🔹 [2026.03.31] msModeling 新增 Qwen3.5 Dense / MoE 文本输入支持 🔹 [2025.12.25] msModeling 新增 Qwen3 MoE 模型支持 🔹 [2025.09.18] msModeling 新增 Qwen3-Next 模型支持 🔹 [2025.08.18] msModeling 新增 Qwen3 Dense 模型支持
GLM 系列
🔹 [2026.07.07] msModeling 新增 GLM5.2 模型支持 🔹 [2026.06.04] msModeling 新增 GLM5.1 模型支持 🔹 [2026.04.30] msModeling 新增 GLM5 模型支持 🔹 [2026.03.31] msModeling 新增 GLM-4 MoE 模型支持
MiniMax 系列
🔹 [2026.06.25] msModeling 新增 MiniMax M2.7 模型支持 🔹 [2026.05.29] msModeling 新增 MiniMax M2.5 模型支持
点击模块名称展开查看已支持特性。
模型推理性能仿真
🔹 多硬件仿真(Atlas 800 A2/A3、Atlas 350 等昇腾设备),支持自定义设备画像 🔹 LLM Prefill / Decode 分阶段仿真 🔹 Prefix Cache 仿真 🔹 MTP 投机解码仿真 🔹 编译与图优化、多流通算掩盖 🔹 量化仿真(W8A8 / W4A8 / FP8 / MXFP4 等) 🔹 并行与 MoE 扩展(TP / DP / EP,及 Embedding TP、Vision TP 等细粒度并行) 🔹 性能模型切换(Roofline / Profiling) 🔹 Chrome Trace / Debug 🔹 视频生成 DiT 仿真(Ulysses、CFG、DiT Cache)
服务化性能仿真
🔹 LLM / VLM 约束下吞吐优化(TTFT / TPOT / 服务成本) 🔹 PD 模式(混部 / 分离 / 配比) 🔹 并行策略搜索(TP / EP / MOE-DP) 🔹 MTP 配置搜索 🔹 Chunked Prefill 仿真 🔹 Prefix Cache 仿真 🔹 变长负载仿真 🔹 多流通算掩盖 🔹 跨硬件对比
Web UI
🔹 LLM / VL 前向仿真与视频生成仿真 🔹 吞吐寻优实验(PD 混部 / 分离 / 配比) 🔹 命令预览与任务缓存 🔹 结果展示与导出(曲线、表格、显存/算子明细、Excel)
服务化实测寻优
🔹 服务框架实测寻优(PSO + Early Rejection) 🔹 多引擎支持(vLLM、MindIE)与评测策略 🔹 自定义寻优配置与断点续跑
ℹ️ 简介
MindStudio Modeling(msModeling)是专为昇腾 AI 处理器打造的神经网络推理性能仿真与分析框架,提供单模型性能仿真、服务级吞吐优化、服务化参数自动寻优与可视化分析能力,帮助开发者在无物理硬件或部署前期预测模型性能、识别瓶颈并优化配置。
⚙️ 功能介绍
msModeling 提供模型推理性能仿真、服务化性能仿真和服务化实测寻优等功能模块,覆盖相应性能仿真与寻优场景。模型与特性覆盖范围请参见《模型支持与特性支持矩阵》。
| 功能名称 | 功能描述 |
|---|---|
| 模型推理性能仿真 | 模型仿真模块,拦截 PyTorch 计算图,在指定设备画像上模拟推理过程,输出算子级性能分解、内存占用、算子 shape 及 Chrome Trace。 |
| 服务化性能仿真 | 吞吐优化仿真模块,在 SLO 约束下自动搜索最优并行策略与 batch 配置,支持 PD 混部、PD 分离、PD 配比三种模式。 |
| 服务化实测寻优 | 服务化实测寻优,基于 PSO 粒子寻优算法在 vLLM、MindIE 等真实服务框架上自动搜索满足时延约束的最优部署参数。msmodeling / OptiX 应安装在 uv 虚拟环境中,vLLM、MindIE 和测评工具默认使用系统部署环境。 |
🚀 快速入门
以模型推理性能仿真与服务化性能仿真为例,快速跑通核心流程,请参见《msModeling快速入门》;也可通过《Web UI 使用指南》进行可视化交互配置与结果查看。
📦 安装指南
介绍工具的环境依赖与安装方法,请参见《msModeling 安装指南》。
📘 使用指南
各工具的详细使用说明请参阅其源码仓库中的 README 文件,也可通过上方功能介绍表格中的链接直接跳转。
💡 典型案例
通过典型问题场景帮助用户理解并掌握工具使用,请参见《模型推理性能仿真》与《服务化性能仿真》中的示例。
❓ FAQ
常见问题及解决方案,请提交 Issues 或参见各模块使用指南。
🌌 智能检索
为提升文档查阅效率,我们提供多种高效检索方式:
🔹 AI 问答(DeepWiki):自然语言问答,快速把握项目架构与模块关系。
🔹 AI 问答(ZRead):中文问答体验更优,精准定位功能用法与细节。
🔹 精确搜索(ReadTheDocs):关键词全文检索,直达接口、参数与报错等信息。
🛠️ 贡献指南
欢迎参与项目贡献!详细的贡献流程、代码规范、Commit 规范、测试要求等,请参见《CONTRIBUTING.md》。如有疑问,请提交 Issues。
⚖️ 相关说明
🔹 《版本说明》
🔹 《许可证声明》
🔹 《安全声明》
🔹 免责声明:本工具仿真与优化结果仅供性能评估参考,最终性能表现请以真实环境实测为准
🤝 建议与交流
欢迎大家为社区做贡献。如果有任何疑问或建议,请提交 Issues,我们会尽快回复。感谢您的支持。
SIG 例会:MindStudio Modeling Weekly Meeting 每周三 10:00-12:00(UTC+8)举行,会议纪要与议题请参见 sig-msit-modeling,也可使用 时区转换 查看本地时间。
| 即时互动(微信群) | 官方资讯(公众号) | 深度支持(助手/论坛) |
|---|---|---|
![]() 扫码加入技术交流群 |
![]() 扫码关注官方公众号 |
扫码入群并关注公众号,直达 MindStudio 用户与开发者最快捷的交流平台: 快速提问: 与社区小伙伴即时探讨技术问题 掌握动态: 第一时间获取版本发布与功能更新通知 经验共享: 与广大开发者交流最佳实践与实战心得 更多支持渠道:👉 昇腾助手: |
🙏 致谢
本工具由以下公司/部门联合贡献,以下排名不分先后:
🔹 华为
昇腾计算产品部
湛卢、AI Workload
2012 网络技术实验室、2012 马尔科夫实验室
小巧灵突击队、OTT 系统部
🔹 蚂蚁集团
🔹 电信研究院
感谢来自社区的每一个 PR,欢迎贡献!

