已合并
[Feature] msAgent Skills迁移msModelSlim仓 #907
[Feature] msAgent Skills迁移msModelSlim仓 #907
已合并
joejoezhou创建于 18 天前
joejoezhou成员
18 天前

PR 提交说明

提交前请阅读 贡献指南,开发者文档:模型接入指南

PR 标题前缀:[Feature]、[Bugfix]、[Doc]、[Test](与 CONTRIBUTING 一致)

1. 影响面评估

接口变更(按需):

输出件变更(按需):

非兼容变更(按需):

SIG 评审结论(按需):

2. 修改描述

修改背景(可选): msAgent skills迁移到msModelSlim,便于用户下载msModelSlim即可快速量化调优

修改目的: msAgent skills迁移到msModelSlim

修改内容:

  • skills:新增安装、适配、敏感层分析、调优策略、量化、评测、调优编排skills

3. 功能验证

冒烟由 CI 门禁检查,无需填写「冒烟是否通过」。

4. 自检(请逐项确认,不适用标 N/A)

典型安全编码问题

DT

likedislike
Pull Request已成功合入, 合并人@ascend-robot
(感谢 joejoezhou 的贡献)
atomgit-bot
atomgit-bot
18 天前 评论:

变更摘要

本 PR 将 msAgent 的 skills 体系迁移到 msModelSlim,新增安装、适配、敏感层分析、调优策略、量化、评测、调优编排等 skills(全部为新增文件,共 103 个文件、新增约 9273 行),核心是把 agent skills 中依赖 MCP 的调优/评测流程替换为可直接运行的脚本与示例,并引入「减层结构覆盖」的量化验证流程。改动集中在 skills/ 目录下的 calibration 适配示例、verify 减层验证脚本、evaluation 评测脚本、tuning 调优编排脚本及其共享库 tuning-loop-lib/scripts

主要改动

  • 新增模型适配与校准素材(skills/adaptation/calibration:提供 LLM 与 VLM 适配器模板(model_adapter_template.pyMyModelAdaptervlm_model_adapter_template.pyMyVLMModelAdapter,实现 ModelInfoInterface/ModelSlimPipelineInterfaceV1),MoE 融合权重解包示例(moe_unpacked_adapter_example.pyunpack_packed_moe_weightsmoe_unpacked_module_example.pySparseMoeBlockWithLinearExperts),safetensors 权重结构检查脚本 inspect_safetensors.py,逐层加载适配示例 layerwise_adapter_example.py,以及 LLM/VLM 的三类量化配置(fallback_config.yaml 全回退、w8a8_dynamic_full_model.yamlw8a8_static_full_model.yaml)。

  • 新增 verify 减层结构覆盖验证流程(skills/adaptation/calibration/verify/scripts:四步脚本实现「结构覆盖而非全量」的减层验证语义——step1_generate_test_model.py 依据每层结构标签(注意力类型 × FFN dense/MoE 类型)计算覆盖完备的最小前缀层数并生成随机权重模型(plan_structure_cover 可输出覆盖计划、检测截断漏盖),step2_run_quantization.py 以全回退配置执行 msmodelslim quantstep3_verify_weights.py 对比量化前后权重(对 tie-embedding 等价克隆做数值豁免),step4_verify_quant_description.py 按规则校验 quant_model_description.json 的量化类型。

  • 新增评测 skill(skills/evaluationevaluate/scripts/run_evaluation.py 将评测封装为从 Evaluation YAML 驱动的 run_evaluation(替代 MCP evaluation_run),内置长度配置门禁 _length_config_violation(强制 max_out_len < max-model-len)与 accuracy=0.0 诊断 _diagnose_zero_accuracy(区分 vLLM 全拒、真实 0 分与无法确认上报 EVALUATION_INVALID);新增可复用模板 evaluation_config.example.yaml 及 GPQA 数据集切换全量/子集路径的示例脚本 run_gpqa_fullset.shrun_gpqa_subset.sh

  • 新增调优编排与策略校验脚本(skills/tuningskills/strategyskills/tuning-loop-lib:将原 MCP 能力改写为独立 CLI 脚本,包括精度缓存与历史记录的读写清理(accuracy_append.py/accuracy_lookup.py/accuracy_cleanup.pyhistory_append.py/history_clear.py,经 YamlTuningAccuracyManager/YamlTuningHistoryManager 落盘 history/accuracy.yaml)、最终 Practice 归档 finalize_practice_repo.py(门禁失败显式返回 PRACTICE_SAVE_SKIPPED 而非静默成功)、validate_practice_yaml.py 校验 Practice YAML,并抽取共享库 tuning-loop-lib/scriptsscript_utils.py 的结果序列化/超时重试、shared.py 的设备与量化类型解析、lab_paths.pylab_practice/lab_calib 路径解析、yaml_validation_helpers.py);其中 accuracy 读写脚本通过预热导入 msmodelslim.processor 规避插件 5s 冷启动超时(Code 303/203)导致的半截 registry 问题。

likedislike
不准确?
atomgit-bot
atomgit-bot
18 天前 评论:

代码审查

✅ 未发现问题

likedislike
不准确?
ascend-robotascend-robot成员
18 天前 添加了label:stat/needs-squash
ascend-robotascend-robot成员
18 天前 添加了label:ascend-cla/yes
此处折叠了115条消息 查看更多
ascend-robotascend-robot成员
18 天前 添加了label:approvedlgtm
AtlasAccountAtlasAccount成员
18 天前 删除了label:ci-pipeline-running
AtlasAccountAtlasAccount成员
18 天前 添加了label:ci-pipeline-passed
AtlasAccount
AtlasAccount成员
18 天前 评论:
流水线 PR-pipeline_msmodelslim#2461 已完成
⚠️ 获取流水线运行commitId不存在,请确认流水线运行与最新提交一致
>>>代码风格自动修复执行成功(无修复内容)
阶段 任务名 状态 详情
编译构建 Build_msmodelslim ✅ COMPLETED >>>
恶意代码检查 Antipoison_MindStudio-ModelSlim ✅ COMPLETED >>>
编码安全与规范检查 codecheck_pre-commit ✅ COMPLETED >>>
md_check md_check ✅ COMPLETED >>>
pre-commit ✅ COMPLETED >>>
开源片段检查 SCA_MindStudio-ModelSlim ✅ COMPLETED >>>
开发者测试 UT_msmodelslim ✅ COMPLETED >>>
PreSmoke_msmodelslim ✅ COMPLETED >>>
流水线 PR-pipeline_msmodelslim ✅ COMPLETED >>>
此流水线已支持下列评论快捷指令,仅PR创建者和白名单成员[A1streomeria, xyxin_006, libarry, joejoezhou, xiaoheng181, rookie_hongchuan]评论有效
  • compile : 运行流水线
  • retry : 重试流水线所有失败子任务
  • retry <任务名> : 仅重试指定失败子任务
  • stop : 停止流水线
likedislike
ascend-robotascend-robot成员
18 天前 合入了pull request