Skip to content
cccskills
FreePublished on GitHub

gen-evaluation-cfg

Generate msmodelslim evaluation YAML configuration (service_oriented + aisbench + vllm-ascend). Use when user asks for evaluation config generation.

The English summary is being prepared. Showing the original description.

See how to install

Files included (3)

  • SKILL.md9.0 KB
  • assets/evaluation_config.example.yaml2.3 KB
  • references/how_to_find_aisbench_config_name.md4.2 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

生成评测配置 YAML

Overview

本 Skill 负责生成 quant-tuning-evaluate / run_evaluation.py 所需的单文件评测 YAML 配置。本 Skill 仅生成 Evaluation YAML。不要据此推断 Practice YAML 的 spec.save 应使用 compressed_tensors;Practice 的 save 以 tune-practice-cfg 为准,默认情况下使用 ascendv1_saver。

核心功能:

  • 生成包含 demand(目标精度)、evaluation(AISBench)、inference_engine(vLLM-Ascend)三个模块的完整 YAML
  • 确保三个模块之间的字段保持一致(模型名、服务地址、端口)

不适用:

  • 生成其他类型的配置(如量化策略配置)
  • 执行评测或分析评测结果等配置生成以外的任务

模板参考:evaluation_config.example.yaml

输入

执行时从上下文中提取以下信息:

参数说明缺省时默认值
模型名称量化后的模型标识符从上下文获取
服务地址推理服务 hostlocalhost
服务端口推理服务 port8000
设备类型推理后端设备ascend
设备索引用户选择的物理设备索引列表,如 [7]必须从上下文获取
目标数据集要评测的数据集列表从上下文获取
精度目标每个数据集的目标精度百分比从上下文获取
精度容差允许的精度波动范围从上下文获取
allowed_local_media_pathVLM 路径任务的显式覆盖目录null;优先从数据集 README 自动推导

文件生成规则

文件生成步骤

  1. 在工作目录生成一个 YAML 文件,包含以下结构:
type: service_oriented

demand:
  expectations:
    - dataset: <数据集名称>
      target: <目标精度>
      tolerance: <容差>

evaluation:
  type: aisbench
  precheck: [...]  # 可选
  aisbench: { ... }
  datasets:
    <数据集名称>:
      config_name: <ais_bench 注册名>
      # ...
  host: <服务地址>
  port: <服务端口>
  served_model_name: <模型名称>

inference_engine:
  type: vllm-ascend
  env_vars:
    ASCEND_RT_VISIBLE_DEVICES: <设备索引以逗号连接后的字符串>
  served_model_name: <模型名称>
  host: <服务地址>
  port: <服务端口>
  args: { ... }
  1. 文件生成后,执行文件检查。如果未通过检查,需要修正后重新生成,直到生成的文件满足所有要求。
  2. 如果用户提供了参考的测评配置,则尽可能地按照用户的配置。如果进行了修改,则需要向用户回显该修改,给出简要的原因解释,但不必中断流程向用户确认
  3. 文件生成并验证通过后,返回文件路径。

关键必填字段填写要求:

路径类型说明
typestring必须为 service_oriented
demand.expectationslist至少包含一项
demand.expectations[].datasetstring必须存在于 evaluation.datasets
demand.expectations[].targetfloat必须 > 0
demand.expectations[].tolerancefloat必须 ≥ 0
evaluation.typestring必须为 aisbench
evaluation.aisbench.request_ratefloat每秒发送的请求数,必须大于 0;< 0.001 为不限速发送,默认设为 0.0001
evaluation.datasetsdict必须非空
evaluation.datasets.*.config_namestringAISBench 注册名;输入未指定时按注册名查找与任务选择确定
evaluation.hoststring与 inference_engine.host 保持一致
evaluation.portint与 inference_engine.port 保持一致
evaluation.served_model_namestring与 inference_engine.served_model_name 保持一致
inference_engine.typestring必须为 vllm-ascend
inference_engine.env_vars.ASCEND_RT_VISIBLE_DEVICESstring用户选择的物理设备索引,以逗号连接;如 device_indices=[7] 时填写 "7"
inference_engine.args.served-model-namestring与 served_model_name 保持一致
inference_engine.args.tensor-parallel-sizeint等于 device_indices 的元素数量

VLM 字段填写参考:

VLM 测评仍然生成同一类 service_oriented + aisbench + vllm-ascend YAML,不新增顶层结构。与 LLM 配置相比,需要考虑以下字段:

路径类型说明
evaluation.aisbench.max_out_lenint优先采用模型卡、数据集官方配置或用户明确给出的建议;没有明确依据时使用 32768
evaluation.aisbench.batch_sizeint请求最大并发数;无通用默认值,信息不足时使用 16
inference_engine.args.max-model-lenintVLM 默认 65536;模型、数据集或用户明确指定时使用指定值,且不能超过模型上限
inference_engine.args.max-num-batched-tokensint默认取 min(max-model-len, 33792);显存充足但吞吐不足时再提高
inference_engine.args.allowed-local-media-pathstring仅图片路径任务填写;必须是经过校验的可信绝对目录

VLM 图片输入处理

  1. 按注册名查找与任务选择确定或校验 config_name,取得 media_input_type 和可选的 candidate_local_media_path。
  2. media_input_type 为 text 或 base64 时,不生成 allowed-local-media-path。
  3. media_input_type 为 local_path 时,优先使用显式传入的 allowed_local_media_path,否则使用 candidate_local_media_path。
  4. 将选定目录规范化为绝对路径,并确认它已存在、是目录、可被本次 vLLM 服务访问,且任务运行时发送的媒体文件位于该目录下。禁止使用 / 等过宽目录;多个路径任务必须共享一个安全的可信根目录。
  5. 校验通过后写入 inference_engine.args.allowed-local-media-path。没有候选目录或校验失败时不得生成 YAML;返回 VALIDATION_ERROR,说明数据集、selected_config_name、候选路径和失败原因,请主 Agent 向用户确认后通过 allowed_local_media_path 重试。

文件检查步骤(直接检查即可,无需写检查脚本)

  1. 确保所有必填字段存在且符合格式要求
  2. 确保生成的 YAML 文件语法正确,可以被 YAML 解析器成功解析
  3. 如果你在测浮点模型精度基线,则 demand.expectations[].target 和 demand.expectations[].tolerance 必须都设置为 100 进行占位。
  4. 确保测评配置一致性,你应确保测评浮点权重和量化权重的配置的通用参数一致,尤其是 evaluation.aisbench、inference_engine.args.max-model-len必须保持一致。在不一致的情况下,你应该修改当前生成的配置文件。例如先前生成了浮点的测评配置且已经测评过了,则你应该修改当前生成的量化测评配置。
  5. 检查 inference_engine.env_vars.ASCEND_RT_VISIBLE_DEVICES 与用户选择的 device_indices 完全一致,且 tensor-parallel-size 等于设备数量。
  6. 对 VLM 配置,按“VLM 图片输入处理”完成任务选择和媒体路径校验。

执行约束

绝对禁止:

  • 不得阅读任何源码文件
  • 不得使用 SemanticSearch 进行检索

允许:

  • 使用 assets/evaluation_config.example.yaml 作为模板
  • 读取本 Skill 直接引用的 references/ 文件
  • 读取 AISBench 数据集 README、模型官方 README/模型卡,以及模型目录中的 config.json、generation_config.json
  • 读取用户提供的已有 Evaluation YAML、AISBench 生成配置、summary、prediction 和服务日志,用于确认推理模式、长度截断与资源参数;只读分析,不修改这些评测产物

常见错误

错误类型描述修复方法
数据集未统一expectations 中的 dataset 不在 datasets 中同步添加或删除
服务地址不一致evaluation 与 inference_engine 的 host/port 不统一统一设置
模型名不一致served_model_name 在三处不统一统一设置
命名规则错误args 内使用了 snake_case 而非 kebab-case转换为 kebab-case(如 served_model_name → served-model-name)
配置名错误config_name 与 ais_bench 注册名不匹配查询正确的注册名
VLM 图片输入方式错误任务输入方式与服务能力不匹配,或路径任务缺少可信媒体根目录按 VLM 图片输入处理流程选择任务或返回主 Agent 确认路径

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

当用户直接要求进行数据集压缩测评,或在量化调优过程中需要使用 AISBench 评测工具输出数据集精度等场景时使用。 本 Skill 负责:使用 AISBench 数据集压缩代码、用 RBF Kernel Herding 算法生成压缩后的数据子集(coreset),并按用户目标交付两种产物之一: ① 接入量化调优主流程:产出独立的 coreset 数据集配置(不覆盖原始数据),回传「全集 config_name + coreset config_name」给编排层,供 evaluation.yaml 切换; ② 仅数据集压缩测评(不做量化调优):基于 example 模板生成「全集测试脚本」和「子集测试脚本」两份 shell 脚本。 暂时支持 AIME 2025 和 GPQA,其他数据集需要再结合 aisbench tools目录下 herding_coreset_selector 源码进行分析。

The English summary is being prepared. Showing the original description.

kali20gakki/msAgent32Updated Oct 21, 2026

Ascend cluster comparison tool. Invoke when user asks to compare two cluster datasets (DB or TEXT), or to generate cluster_analysis_output from raw profiling data via msprof-analyze and then compare.

The English summary is being prepared. Showing the original description.

kali20gakki/msAgent32Updated Oct 21, 2026

专门用于 Ascend 集群 Profiling 性能数据的“快慢卡”诊断专家技能。当用户提供【集群性能数据目录/路径】并要求分析【快慢卡】、【慢节点】、【负载不均衡】或【集群瓶颈】时,必须触发此技能。该技能会自动接收集群路径,调度相关工具输出快慢卡的宏观定性与微观根因(如 Host 下发瓶颈、算子计算劣化)。

The English summary is being prepared. Showing the original description.

kali20gakki/msAgent32Updated Oct 21, 2026

Analyze Ascend NPU collective communication profiling data with a DB-first workflow. Use when the user provides `cluster_analysis_output/cluster_analysis.db`, rank-level `analysis.db`, rank-level `ascend_pytorch_profiler_{rank_id}.db`, together with `profiler_info.json`, and asks about HCCL or hcom communication cost, collective communication TOP ops, wait time, slow rank/straggler, Notify Wait, bandwidth, retry, relay, SDMA/RDMA/HCCS links, communication matrix, or Ascend communication fault patterns.

The English summary is being prepared. Showing the original description.

kali20gakki/msAgent32Updated Oct 21, 2026

Analyze Ascend NPU computation-side profiling data for single-card runs or a selected rank from multi-card runs. Use this skill when the user asks to diagnose computation bottlenecks, AI Core / AI Vector / AICPU hotspots, dynamic shape overhead, block dim issues, redundant TransData/Transpose/Cast, cross-stream waits, frequency/runtime-state issues, or fusion opportunities.

The English summary is being prepared. Showing the original description.

kali20gakki/msAgent32Updated Oct 21, 2026

针对昇腾 NPU 上的 PyTorch 模型,识别可做融合算子替换的代码段、替换为 torch_npu 融合算子并做性能/精度验证。当用户提到融合算子、NPU 算子替换、RMSNorm/SwiGLU/RoPE/Attention 融合、torch_npu 亲和算子等关键词是,使用本 Skill。

The English summary is being prepared. Showing the original description.

kali20gakki/msAgent32Updated Oct 21, 2026

See all skills by kali20gakki

Report a problem with this skill