Merged
[Doc] 修复 issue 528 part.1(cli 和 config 文档问题及相关引用更新) #1021
[Doc] 修复 issue 528 part.1(cli 和 config 文档问题及相关引用更新) #1021
Merged
jiamingxuAdd on Sep 24
Total: 85 files changed+926-1003
@@ -0,0 +1,67 @@
1+# msmodelslim 命令行 API 总览
2+ 
3+`msmodelslim` 是 MindStudio msModelSlim 的命令行入口,提供量化、敏感层分析、伪量化精度评估与自动调优四类子命令。本页汇总全局参数、子命令清单与各子命令文档入口;各子命令的参数细节、参数关系与使用示例见对应文档。
4+ 
5+## 1. 命令格式
6+ 
7+```text
8+msmodelslim <command> [<args>]
9+```
10+ 
11+符号说明:
12+ 
13+- `<command>` 为子命令名(位置参数),省略时或传入未知子命令时打印顶层帮助。
14+- 尖括号内为需替换的值,方括号内为可选参数。
15+- `-h`/`--help`、`-V`/`--version` 可在顶层使用,也可放在任意子命令后使用(如 `msmodelslim quant --version`)。
16+ 
17+## 2. 子命令清单
18+ 
19+| 子命令 | 功能 | 文档 |
20+|--------|------|------|
21+| `quant` | 一键量化或权重转换,并保存量化权重与描述文件 | 《[msmodelslim quant 命令行 API 文档](msmodelslim_quant.md)》 |
22+| `analyze` | 量化前敏感层分析,输出敏感度最高的层名列表 | 《[msmodelslim analyze 命令行 API 文档](msmodelslim_analyze.md)》 |
23+| `eval` | 基于 AscendV1 导出做伪量化模型精度评估 | 《[msmodelslim eval 命令行 API 文档](msmodelslim_eval.md)》 |
24+| `tune` | 自动调优量化配置以达成目标精度 | 《[msmodelslim tune 命令行 API 文档](msmodelslim_tune.md)》 |
25+ 
26+## 3. 全局参数
27+ 
28+全局参数在顶层解析,适用于全部子命令:
29+ 
30+| 参数 | 别名 | 类型 | 传入形式 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 |
31+|------|------|------|----------|-----------|--------|----------------|------|
32+| `--help` | `-h` | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 显示帮助信息后退出。顶层显示子命令清单,子命令后显示该子命令的参数说明。 |
33+| `--version` | `-V` | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 显示版本信息(版本号、构建信息、仓库地址)后退出。该参数在解析子命令前处理,因此在任意位置传入均生效。 |
34+ 
35+## 4. 公共参数
36+ 
37+以下参数由各子命令分别注册(`quant`、`analyze`、`eval`、`tune` 均已提供),写在子命令之后:
38+ 
39+| 参数 | 别名 | 类型 | 传入形式 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 |
40+|------|------|------|----------|-----------|--------|----------------|------|
41+| `--log_level` | 无 | `string` | 单值 | 可选 | `info` | `debug`、`info`、`warning`、`error` | 日志级别。显式传入时优先于 `-v`/`-q`。 |
42+| `--verbose` | `-v` | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 提高输出详细程度(等价 `--log_level debug`)。 |
43+| `--quiet` | `-q` | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 抑制非错误输出(等价 `--log_level error`)。 |
44+ 
45+## 5. 使用示例
46+ 
47+### 5.1 查看版本与顶层帮助
48+ 
49+```bash
50+msmodelslim --version
51+msmodelslim -h
52+```
53+ 
54+`-V`/`--version` 输出 `msmodelslim <版本> (<git hash>)` 与构建信息;`-h`/`--help` 输出子命令清单。两者均不依赖 model 与权重路径。
55+ 
56+### 5.2 查看某个子命令的帮助
57+ 
58+```bash
59+msmodelslim quant -h
60+msmodelslim analyze linear -h
61+```
62+ 
63+顶层帮助只列出子命令;子命令的参数说明须在子命令后加 `-h`/`--help` 查看。
64+ 
65+## 6. 退出码与异常处理
66+ 
67+正常运行则无异常。失败时抛出异常,具体原因见错误日志。`-V`/`--version` 与 `-h`/`--help` 正常结束,不抛出异常。
@@ -4,7 +4,7 @@
4 4 
5`msmodelslim analyze` 在量化前对模型做敏感层分析,输出建议回退或重点关注的层名列表,供后续写入量化配置的 `exclude` 等字段。按分析粒度分为四个 scope:`linear`(逐个线性层)、`layer`(按层/块分组)、`attn`(Attention 模块)、`attn_head`(Attention Head / `ra_compress`)。分析在目标设备上计算敏感度指标,并按 `--top_k` 输出敏感度最高的层名(`disable_names`;`attn_head` 输出 `head.pt`)。默认只把结果打印到日志;指定 `--save_path` 后结果落盘为文件(`linear`/`layer`/`attn` 为 YAML,`attn_head` 为 `head.pt`)。其中 `linear`/`layer`/`attn` 使用 `--calibration_dataset` 指定的校准数据集;`attn_head`(`ra_compress`)不读取外部校准集,其校准输入由算法在运行时自行构造(首 token + 随机重复段)。5`msmodelslim analyze` 在量化前对模型做敏感层分析,输出建议回退或重点关注的层名列表,供后续写入量化配置的 `exclude` 等字段。按分析粒度分为四个 scope:`linear`(逐个线性层)、`layer`(按层/块分组)、`attn`(Attention 模块)、`attn_head`(Attention Head / `ra_compress`)。分析在目标设备上计算敏感度指标,并按 `--top_k` 输出敏感度最高的层名(`disable_names`;`attn_head` 输出 `head.pt`)。默认只把结果打印到日志;指定 `--save_path` 后结果落盘为文件(`linear`/`layer`/`attn` 为 YAML,`attn_head` 为 `head.pt`)。其中 `linear`/`layer`/`attn` 使用 `--calibration_dataset` 指定的校准数据集;`attn_head`(`ra_compress`)不读取外部校准集,其校准输入由算法在运行时自行构造(首 token + 随机重复段)。
6 6 
7-命令边界:本命令只做分析与结果输出,不执行量化,且需要模型适配器实现分析接口。支持单卡与多卡(DP)分析:多卡时使用 `--device npu --device_id 0 1 ...`(或兼容写法 `--device npu:0,1,...`),由 `DPLayerWiseRunner` 执行。操作步骤见《[线性层敏感层分析使用指南](../../user_guide/usage_sensitive_linear_analysis.md)》、《[层级敏感层分析使用指南](../../user_guide/usage_sensitive_layer_analysis.md)》、《[Attention 敏感层分析使用指南](../../user_guide/usage_sensitive_attn_analysis.md)》、《[Attention Head 筛选分析使用指南](../../user_guide/usage_sensitive_attn_head_analysis.md)》。7+命令边界:本命令只做分析与结果输出,不执行量化,且需要模型适配器实现分析接口。支持单卡与多卡(DP)分析,多卡时使用 `--device npu --device_id 0 1 ...`(或兼容写法 `--device npu:0,1,...`),由 `DPLayerWiseRunner` 执行。操作步骤见《[线性层敏感层分析使用指南](../../user_guide/usage_sensitive_linear_analysis.md)》、《[层级敏感层分析使用指南](../../user_guide/usage_sensitive_layer_analysis.md)》、《[Attention 敏感层分析使用指南](../../user_guide/usage_sensitive_attn_analysis.md)》、《[Attention Head 筛选分析使用指南](../../user_guide/usage_sensitive_attn_head_analysis.md)》。
8 8 
9## 2. 命令格式9## 2. 命令格式
10 10 
@@ -34,7 +34,7 @@ msmodelslim analyze attn_head --model_type <model_type> --model_path <model_path
34 34 
35| 参数 | 别名 | 类型 | 传入形式 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 |35| 参数 | 别名 | 类型 | 传入形式 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 |
36|------|------|------|----------|-----------|--------|----------------|------|36|------|------|------|----------|-----------|--------|----------------|------|
37-| `--model_type` | 无 | `string` | 单值 | 必选 | 无 | 模型类型名称,如 `Qwen2.5-7B-Instruct`、`Qwen-QwQ-32B` | 待分析模型类型,须与支持矩阵中的名称一致。 |37+| `--model_type` | 无 | `string` | 单值 | 必选 | 无 | 模型类型名称,如 `Qwen2.5-7B-Instruct`、`Qwen3-32B` | 待分析模型类型,须与《[大模型支持矩阵](../../knowledge_base/model/README.md)》中的名称一致;未传值或传入的名称不存在时回退到默认适配器 `default` 执行。 |
38| `--model_path` | 无 | `string` | 单值 | 必选 | 无 | 原始模型权重目录(需存在且可读) | 待分析模型的权重目录。 |38| `--model_path` | 无 | `string` | 单值 | 必选 | 无 | 原始模型权重目录(需存在且可读) | 待分析模型的权重目录。 |
39| `--device` | 无 | `string` | 单值 | 可选 | `npu` | `npu`、`cpu`;兼容遗留写法 `npu:0,1,...` | 运行设备类型。推荐写法为 `--device npu` 再配合 `--device_id`;遗留 `npu:0,1` 会自动拆分为 `--device npu --device_id 0 1`。 |39| `--device` | 无 | `string` | 单值 | 可选 | `npu` | `npu`、`cpu`;兼容遗留写法 `npu:0,1,...` | 运行设备类型。推荐写法为 `--device npu` 再配合 `--device_id`;遗留 `npu:0,1` 会自动拆分为 `--device npu --device_id 0 1`。 |
40| `--device_id` | 无 | `list[int]` | 一次接收多个值,空格分隔 | 可选 | 无 | 非负整数索引,如 `0 1 2 3` | 分析所用 NPU 索引;长度 > 1 时启用多卡 DP(`DPLayerWiseRunner`)。CPU 场景不可指定多个索引。 |40| `--device_id` | 无 | `list[int]` | 一次接收多个值,空格分隔 | 可选 | 无 | 非负整数索引,如 `0 1 2 3` | 分析所用 NPU 索引;长度 > 1 时启用多卡 DP(`DPLayerWiseRunner`)。CPU 场景不可指定多个索引。 |
@@ -45,6 +45,7 @@ msmodelslim analyze attn_head --model_type <model_type> --model_path <model_path
45| `--log_level` | 无 | `string` | 单值 | 可选 | `info` | `debug`、`info`、`warning`、`error` | 日志级别。 |45| `--log_level` | 无 | `string` | 单值 | 可选 | `info` | `debug`、`info`、`warning`、`error` | 日志级别。 |
46| `-v` / `--verbose` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 提高输出详细程度(等价 `--log_level debug`)。 |46| `-v` / `--verbose` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 提高输出详细程度(等价 `--log_level debug`)。 |
47| `-q` / `--quiet` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 抑制非错误输出(等价 `--log_level error`)。 |47| `-q` / `--quiet` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 抑制非错误输出(等价 `--log_level error`)。 |
48+| `-h` / `--help` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 显示帮助信息后退出。在 `analyze` 后使用显示 scope 列表,在 `<scope>` 后使用显示该 scope 的参数说明。 |
48| `-V` / `--version` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 显示版本信息后退出(顶层全局参数,可在任意子命令后使用,如 `msmodelslim analyze --version`)。 |49| `-V` / `--version` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 显示版本信息后退出(顶层全局参数,可在任意子命令后使用,如 `msmodelslim analyze --version`)。 |
49 50 
50位置参数:51位置参数:
@@ -57,15 +58,15 @@ msmodelslim analyze attn_head --model_type <model_type> --model_path <model_path
57 58 
58| 参数 | 别名 | 类型 | 传入形式 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 |59| 参数 | 别名 | 类型 | 传入形式 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 |
59|------|------|------|----------|-----------|--------|----------------|------|60|------|------|------|----------|-----------|--------|----------------|------|
60-| `--metrics` | 无 | `string` | 单值 | 可选 | `kurtosis` | `std`、`quantile`、`kurtosis` | 线性层敏感度指标:标准差、分位数、峰度。 |61+| `--metrics` | 无 | `string` | 单值 | 可选 | `kurtosis` | `std`、`quantile`、`kurtosis` | 线性层敏感度指标:`std`(标准差)、`quantile`(分位数)、`kurtosis`(峰度)。 |
61-| `--patterns` | `--pattern`(遗留别名) | `list` | 一次接收多个值,空格分隔 | 可选 | `['*']` | 通配符模式列表 | 过滤要展示的线性层;`*` 表示全部。 |62+| `--patterns` | `--pattern`(遗留别名) | `list` | 可接收单个或多个值,空格分隔 | 可选 | `['*']` | 模块名称列表,支持通配符;`*` 表示全部 | 过滤要展示的线性层;`*` 表示全部。 |
62 63 
63`layer` 专有参数:64`layer` 专有参数:
64 65 
65| 参数 | 别名 | 类型 | 传入形式 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 |66| 参数 | 别名 | 类型 | 传入形式 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 |
66|------|------|------|----------|-----------|--------|----------------|------|67|------|------|------|----------|-----------|--------|----------------|------|
67| `--metrics` | 无 | `string` | 单值 | 可选 | `mse_layer_wise` | `mse_model_wise`、`mse_layer_wise` | 层级敏感度指标:按层计算误差或按模型整体计算误差。 |68| `--metrics` | 无 | `string` | 单值 | 可选 | `mse_layer_wise` | `mse_model_wise`、`mse_layer_wise` | 层级敏感度指标:按层计算误差或按模型整体计算误差。 |
68-| `--quant_modules` | 无 | `list` | 一次接收多个值,空格分隔 | 可选 | `['*']` | 通配符模块列表 | 映射到 pipeline 量化范围的模块通配符;`*` 表示全部。 |69+| `--quant_modules` | 无 | `list` | 可接收单个或多个值,空格分隔 | 可选 | `['*']` | 模块名称列表,支持通配符;`*` 表示全部 | 层级分析中纳入量化流水线(pipeline)量化范围的模块;`*` 表示全部。 |
69 70 
70`attn` 专有参数:71`attn` 专有参数:
71 72 
@@ -83,7 +84,9 @@ msmodelslim analyze attn_head --model_type <model_type> --model_path <model_path
83 84 
84- `scope` 决定可用的 `--metrics` 取值与专有参数;跨 scope 混用(如 `analyze attn --patterns`)会导致参数解析失败,提示不支持的参数或取值。85- `scope` 决定可用的 `--metrics` 取值与专有参数;跨 scope 混用(如 `analyze attn --patterns`)会导致参数解析失败,提示不支持的参数或取值。
85- 省略 `scope` 时默认按 `linear` 执行;`msmodelslim analyze -h`/`--help` 时不注入 scope,展示 scope 帮助。86- 省略 `scope` 时默认按 `linear` 执行;`msmodelslim analyze -h`/`--help` 时不注入 scope,展示 scope 帮助。
87+- `--model_type` 传入的名称不存在时回退到默认适配器 `default` 执行。
86- `--device` 接受 `npu`/`cpu`;多卡分析使用 `--device npu --device_id 0 1 ...`(长度 > 1 启用 `DPLayerWiseRunner`)。兼容遗留写法 `--device npu:0,1`,会自动转换为上述推荐形式。88- `--device` 接受 `npu`/`cpu`;多卡分析使用 `--device npu --device_id 0 1 ...`(长度 > 1 启用 `DPLayerWiseRunner`)。兼容遗留写法 `--device npu:0,1`,会自动转换为上述推荐形式。
89+- `--save_path` 为全部 scope 通用的公共参数:`linear`/`layer`/`attn` 输出分析结果 YAML,传入目录时在该目录下生成 `<模型类型>-<指标>.yaml`;`attn_head` 输出 `head.pt`,传入目录时生成 `head.pt`。未指定时结果仅输出到控制台。
87- 历史用法 `--metrics attention_mse`(省略 scope 时)会转换为 `analyze attn --metrics mse` 并丢弃 `--patterns`;该行为仅为向后兼容,命令会给出废弃提示,不推荐作为正式用法。90- 历史用法 `--metrics attention_mse`(省略 scope 时)会转换为 `analyze attn --metrics mse` 并丢弃 `--patterns`;该行为仅为向后兼容,命令会给出废弃提示,不推荐作为正式用法。
88- `--top_k` 必须为大于0的整数;`--calibration_dataset`:LLM 为 `.json`/`.jsonl`,VLM 可为图文目录名(如 `calibImages`);对 `attn_head` 不生效。91- `--top_k` 必须为大于0的整数;`--calibration_dataset`:LLM 为 `.json`/`.jsonl`,VLM 可为图文目录名(如 `calibImages`);对 `attn_head` 不生效。
89- `--save_path` 对四个 scope 均可用,落盘内容随 scope 不同:`linear`/`layer`/`attn` 输出量化 YAML(`top <n>:` 加 `disable_names` 列表,`layer` scope 的整块回退名为 `<block>.*`),指定目录时文件名为 `<model_type>-<metrics>.yaml`;`attn_head` 输出 `head.pt`(含 `prefix_matching`/`copying` 两个字典),交付给后续 MindIE 推理框架的长序列 KV Cache 压缩能力使用,不写入量化配置。目录不存在时会自动创建;不指定该参数时结果只打印到日志。92- `--save_path` 对四个 scope 均可用,落盘内容随 scope 不同:`linear`/`layer`/`attn` 输出量化 YAML(`top <n>:` 加 `disable_names` 列表,`layer` scope 的整块回退名为 `<block>.*`),指定目录时文件名为 `<model_type>-<metrics>.yaml`;`attn_head` 输出 `head.pt`(含 `prefix_matching`/`copying` 两个字典),交付给后续 MindIE 推理框架的长序列 KV Cache 压缩能力使用,不写入量化配置。目录不存在时会自动创建;不指定该参数时结果只打印到日志。
@@ -97,53 +100,53 @@ msmodelslim analyze attn_head --model_type <model_type> --model_path <model_path
97 100 
98```bash101```bash
99msmodelslim analyze \102msmodelslim analyze \
100- --model_type "${MODEL_TYPE}" \103+ --model_type ${MODEL_TYPE} \
101- --model_path "${MODEL_PATH}"104+ --model_path ${MODEL_PATH}
102```105```
103 106 
104-`${MODEL_TYPE}` 为模型类型名称,`${MODEL_PATH}` 为权重目录。省略 `scope` 时默认按 `linear` 分析,使用默认指标 `kurtosis`、默认 `--top_k 15` 与默认校准集 `mix_calib.jsonl`,输出敏感度最高的15个层名(`disable_names`),可写入量化 YAML 的 `exclude`。107+`${MODEL_TYPE}` 为模型类型名称,`${MODEL_PATH}` 为权重目录。省略 `scope` 时默认按 `linear` 分析,使用默认指标 `kurtosis`、默认 `--top_k 15` 与默认校准集 `mix_calib.jsonl`,输出敏感度最高的15个层名,可写入量化 YAML 中 `linear_quant` 的 `exclude`。
105 108 
106-### 5.2 指定 linear 指标与 top_k109+### 5.2 指定 scope、指标与 topk
107 110 
108```bash111```bash
109msmodelslim analyze linear \112msmodelslim analyze linear \
110- --model_type "${MODEL_TYPE}" \113+ --model_type ${MODEL_TYPE} \
111- --model_path "${MODEL_PATH}" \114+ --model_path ${MODEL_PATH} \
112 --metrics kurtosis \115 --metrics kurtosis \
113 --top_k 15116 --top_k 15
114```117```
115 118 
116-显式指定 `linear` scope,使用峰度指标,并按 `--top_k 15` 输出高敏感层名。119+显式指定 `linear` scope,使用峰度指标,并按 `--top_k 15` 输出敏感度最高的15个层名。
117 120 
118### 5.3 Attention MSE 分析121### 5.3 Attention MSE 分析
119 122 
120```bash123```bash
121msmodelslim analyze attn \124msmodelslim analyze attn \
122- --model_type "${MODEL_TYPE}" \125+ --model_type ${MODEL_TYPE} \
123- --model_path "${MODEL_PATH}" \126+ --model_path ${MODEL_PATH} \
124 --metrics mse127 --metrics mse
125```128```
126 129 
127对全部 Attention 模块计算 MSE 敏感度。130对全部 Attention 模块计算 MSE 敏感度。
128 131 
129-### 5.4 层级分析与量化模块132+### 5.4 指定限定模块进行敏感层分析
130 133 
131```bash134```bash
132msmodelslim analyze layer \135msmodelslim analyze layer \
133- --model_type "${MODEL_TYPE}" \136+ --model_type ${MODEL_TYPE} \
134- --model_path "${MODEL_PATH}" \137+ --model_path ${MODEL_PATH} \
135 --metrics mse_layer_wise \138 --metrics mse_layer_wise \
136- --quant_modules "${MODULE_1}" "${MODULE_2}"139+ --quant_modules ${MODULE_1} ${MODULE_2}
137```140```
138 141 
139-`${MODULE_1}`、`${MODULE_2}` 为要映射到 pipeline 量化范围的模块通配符(空格分隔多个值)。142+`${MODULE_1}`、`${MODULE_2}` 为纳入量化流水线量化范围的模块名称(支持通配符,空格分隔多个值)。
140 143 
141### 5.5 多卡 DP 敏感层分析144### 5.5 多卡 DP 敏感层分析
142 145 
143```bash146```bash
144msmodelslim analyze layer \147msmodelslim analyze layer \
145- --model_type "${MODEL_TYPE}" \148+ --model_type ${MODEL_TYPE} \
146- --model_path "${MODEL_PATH}" \149+ --model_path ${MODEL_PATH} \
147 --metrics mse_layer_wise \150 --metrics mse_layer_wise \
148 --device npu \151 --device npu \
149 --device_id 0 1 2 3 \152 --device_id 0 1 2 3 \
@@ -156,8 +159,8 @@ msmodelslim analyze layer \
156 159 
157```bash160```bash
158msmodelslim analyze attn_head \161msmodelslim analyze attn_head \
159- --model_type "${MODEL_TYPE}" \162+ --model_type ${MODEL_TYPE} \
160- --model_path "${MODEL_PATH}" \163+ --model_path ${MODEL_PATH} \
161 --metrics ra_compress \164 --metrics ra_compress \
162 --device npu \165 --device npu \
163 --save_path ./head_result166 --save_path ./head_result
@@ -167,10 +170,7 @@ msmodelslim analyze attn_head \
167 170 
168## 6. 退出码与异常处理171## 6. 退出码与异常处理
169 172 
170-| 退出码或异常 | 含义 | 处理建议 |173+正常运行则无异常,按输出的层名更新量化配置(如写入 `exclude`);`attn_head` 场景检查 `head.pt`。失败时抛出异常。常见原因:scope 与 `--metrics` 取值不匹配、`--device`/`--device_id` 取值非法、校准集格式不符、`--top_k` 非大于0的整数、模型适配器未实现分析接口、多模态生成模型被拦截、`ra_compress` 用于非 LLM。
171-|--------------|------|----------|
172-| `0` | 分析成功 | 按输出的层名更新量化配置(如写入 `exclude`);指定 `--save_path` 时确认结果文件已生成(`linear`/`layer`/`attn` 为 YAML,`attn_head` 为 `head.pt`)。`attn_head` 场景将 `head.pt` 交付给 MindIE 推理框架用于长序列 KV Cache 压缩,用户可据此完成长序列压缩,压缩后的模型可用于后续推理部署;具体已适配的量化模型列表,请参见《[MindIE 是什么](https://www.hiascend.com/document/detail/zh/mindie/10RC3/whatismindie/mindie_what_0001.html)》的“MindIE 支持模型列表”章节。 |
173-| 非 `0` | 失败 | 查看错误日志。常见原因:scope 与 `--metrics` 取值不匹配、`--device`/`--device_id` 取值非法、校准集格式不符、`--top_k` 非大于0的整数、模型适配器未实现分析接口、多模态生成模型被拦截、`ra_compress` 用于非 LLM。 |
174 174 
175## 7. 安全说明175## 7. 安全说明
176 176 
@@ -31,6 +31,7 @@ msmodelslim eval --model_type <model_type> --model_path <model_path> --prompt_fi
31| `-v` / `--verbose` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 提高输出详细程度(等价 `--log_level debug`)。 |31| `-v` / `--verbose` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 提高输出详细程度(等价 `--log_level debug`)。 |
32| `-q` / `--quiet` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 抑制非错误输出(等价 `--log_level error`)。 |32| `-q` / `--quiet` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 抑制非错误输出(等价 `--log_level error`)。 |
33| `-V` / `--version` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 显示版本信息后退出(顶层全局参数,可在任意子命令后使用,如 `msmodelslim eval --version`)。 |33| `-V` / `--version` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 显示版本信息后退出(顶层全局参数,可在任意子命令后使用,如 `msmodelslim eval --version`)。 |
34+| `-h` / `--help` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 显示本命令帮助信息后退出(如 `msmodelslim eval -h` 或 `msmodelslim eval --help`)。 |
34 35 
35## 4. 参数关系36## 4. 参数关系
36 37 
@@ -67,10 +68,7 @@ msmodelslim eval \
67 68 
68## 6. 退出码与异常处理69## 6. 退出码与异常处理
69 70 
70-| 退出码或异常 | 含义 | 处理建议 |71+正常运行则无异常,可在日志中查看 `token_ids` 与 `generated_text`。失败时抛出异常。常见原因:`--model_type`/`--model_path`/`--prompt_file` 缺失或路径不可读、样本文件为空或格式不符合对应模型的约定、`--device_id` 索引非法或超出可用设备。
71-|--------------|------|----------|
72-| `0` | 推理成功 | 检查日志中的 `token_ids` 与 `generated_text` 是否符合预期。 |
73-| 非 `0` | 失败 | 查看错误日志。常见原因:`--model_type`/`--model_path`/`--prompt_file` 缺失或路径不可读、样本文件为空或格式不符合对应模型的约定、`--device_id` 索引非法或超出可用设备。 |
74 72 
75## 7. 安全说明73## 7. 安全说明
76 74 
@@ -2,9 +2,9 @@
2 2 
3## 1. 功能说明3## 1. 功能说明
4 4 
5-`msmodelslim quant` 是一键量化命令,加载原始模型权重并执行权重/激活量化,导出可部署的量化权重与描述文件。配置来源有两种:通过 `--quant_type` 按模型与量化类型自动匹配 `lab_practice` 中的最佳实践 YAML;或通过 `--config` 直接指定用户 YAML(支持 `modelslim_v1`、多模态以及 `modelslim_convert` 纯权重转换等协议;权重转换不需要 `--model_type`)。两者都不传时按默认量化类型 `w8a8` 匹配最佳实践。5+`msmodelslim quant` 是一键量化命令,加载原始模型权重并执行权重/激活量化,导出可部署的量化权重与描述文件。配置来源有两种:通过 `--quant_type` 按模型与量化类型自动匹配 `lab_practice` 中的最佳实践 YAML;或通过 `--config` 直接指定用户 YAML(支持 `modelslim_v1`、多模态以及 `modelslim_convert` 纯权重转换等协议。
6 6 
7-命令边界:设备支持 `npu`、`cpu`,多卡通过 `--device_id` 指定索引列表;还支持场景标签匹配与 `--debug` 调试上下文落盘。校准数据准备与部署等操作步骤见《[一键量化完整指南](../../user_guide/usage_quick_quantization.md)》,YAML 字段说明见《[modelslim_v1 配置说明](../config/task/modelslim_v1.md)》等引用的配置文档。7+命令边界:设备支持 `npu`、`cpu`,多卡通过 `--device_id` 指定索引列表;还支持场景标签匹配与 `--debug` 调试上下文落盘。校准数据准备与部署等操作步骤见《[一键量化完整指南](../../user_guide/usage_quick_quantization.md)》;量化任务 YAML 字段见《[量化任务配置说明导航](../config/quant/README.md)》,自动调优配置见《[自动调优配置说明导航](../config/tuning/README.md)》。更多关联项见[引用的配置](#5-引用的配置)。
8 8 
9## 2. 命令格式9## 2. 命令格式
10 10 
@@ -16,48 +16,52 @@ msmodelslim quant [--model_type <model_type>] --model_path <model_path> --save_p
16 16 
17- 尖括号内为需替换的值,方括号内为可选参数。17- 尖括号内为需替换的值,方括号内为可选参数。
18- `--config` 与 `--quant_type` 属于互斥组,用 `|` 表示,二者不能同时传入。18- `--config` 与 `--quant_type` 属于互斥组,用 `|` 表示,二者不能同时传入。
19-- `--trust_remote_code` 是可选值布尔参数:不带值传入即开启(等价 `true`),或跟 `true`/`false`(大小写不敏感,兼容遗留 `True`/`False`、`yes`/`no`、`on`/`off`)。19+- `--trust_remote_code` 是布尔参数:不带值传入即开启(等价 `true`),也可显式传入 `true`/`false`(大小写不敏感,兼容遗留写法 `True`/`False`)。
20- `--debug` 是不带值的布尔开关。20- `--debug` 是不带值的布尔开关。
21-- `--tags` 一次接收多个值,`...` 表示可跟多个以空格分隔的值。21+- `--tags` 可接收单个或多个值,`...` 表示可跟多个以空格分隔的值。
22-- 本命令无位置参数,全部参数通过选项传入。本语法摘要用于说明参数结构,不作为可复制命令;可复制命令见「使用示例」。22+- 本命令无位置参数,全部参数通过选项传入。本语法摘要用于说明参数结构,不作为可复制命令;可复制命令见[使用示例](#7-使用示例)。
23 23 
24## 3. 参数列表24## 3. 参数列表
25 25 
26| 参数 | 别名 | 类型 | 传入形式 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 |26| 参数 | 别名 | 类型 | 传入形式 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 |
27|------|------|------|----------|-----------|--------|----------------|------|27|------|------|------|----------|-----------|--------|----------------|------|
28-| `--model_type` | 无 | `string` | 单值 | 条件必选(量化路径必选;权重转换不需要) | 无 | 模型类型名称,如 `Qwen2.5-7B-Instruct`、`transformers` | 指定待量化模型类型,用于加载对应模型适配器并匹配最佳实践;`transformers`支持加载基于 transformers 的通用基础模型适配器,当前仅适用于大语言模型量化。权重转换不需要此参数。 |28+| `--model_type` | 无 | `string` | 单值 | 条件必选(普通量化路径必选;`--config` 指向 `apiversion: modelslim_convert` 的配置时可省略) | 无 | 模型类型名称,如 `Qwen2.5-7B-Instruct`、`Qwen3-32B`、`transformers` | 指定待量化模型类型,用于加载对应模型适配器并匹配最佳实践;传入的名称不存在时回退到默认适配器 `default` 执行。`transformers` 用于加载基于 transformers 的通用基础模型适配器;仅当 `--config` 指向 `apiversion: modelslim_convert` 的配置时可省略。 |
29-| `--model_path` | 无 | `string` | 单值 | 必选 | 无 | 原始模型权重目录(需存在且可读) | 待量化模型的权重目录。 |29+| `--model_path` | 无 | `string` | 单值 | 必选 | 无 | 原始模型权重目录(需存在且可读) | 待量化模型的权重目录。权重转换场景仅需 `--model_path` 与 `--save_path`。 |
30-| `--save_path` | 无 | `string` | 单值 | 必选 | 无 | 输出目录(需可写) | 量化权重与描述文件的保存目录。 |30+| `--save_path` | 无 | `string` | 单值 | 必选 | 无 | 输出目录(需可写) | 量化权重与描述文件的保存目录。权重转换场景仅需 `--model_path` 与 `--save_path`。 |
31| `--device` | 无 | `string` | 单值 | 可选 | `npu` | `npu`、`cpu` | 运行设备类型;多卡索引请用 `--device_id` 指定。 |31| `--device` | 无 | `string` | 单值 | 可选 | `npu` | `npu`、`cpu` | 运行设备类型;多卡索引请用 `--device_id` 指定。 |
32-| `--device_id` | 无 | `list` | 一次接收多个值,空格分隔 | 可选 | 无 | 非负整数列表,如 `0` 或 `0 1 2 3` | 设备索引;用于指定多个 NPU 设备。 |32+| `--device_id` | 无 | `list` | 可接收单个或多个值,空格分隔 | 可选 | 无 | 非负整数列表,如 `0` 或 `0 1 2 3` | 设备索引;用于指定多个 NPU 设备。 |
33-| `--config` | `--config_path`(遗留别名) | `string` | 单值 | 可选 | 无 | 可读 YAML 文件路径 | 显式指定的量化配置 YAML;加载后直接采用,并忽略 `--quant_type` 与 `--tags` 的最佳实践匹配。与 `--quant_type` 互斥。 |33+| `--config` | `-c`、`--config_path`(遗留别名) | `string` | 单值 | 可选 | 无 | 可读 YAML 文件路径 | 显式指定的量化配置 YAML;加载后直接采用,并忽略 `--quant_type` 与 `--tags` 的最佳实践匹配。与 `--quant_type` 互斥,`--config` 与 `--quant_type` 两者都不传时按默认量化类型 `w8a8` 匹配最佳实践。 |
34-| `--quant_type` | 无 | `string` | 单值 | 可选 | 无(与 `--config` 均未提供时按 `w8a8` 匹配) | `w4a4`、`w4a8`、`w4a4c8`、`w4a4f8`、`w4a8c8`、`w8a16`、`w8a8`、`w8a8s`、`w8a8c8`、`w8a8f8`、`w4a4f4`、`w16a16s` | 量化类型,用于按模型与量化类型匹配最佳实践 YAML。与 `--config` 互斥。 |34+| `--quant_type` | 无 | `string` | 单值 | 可选 | 无(与 `--config` 均未提供时按 `w8a8` 匹配) | `w4a4`、`w4a8`、`w4a4c8`、`w4a4f8`、`w4a8c8`、`w8a16`、`w8a8`、`w8a8s`、`w8a8c8`、`w8a8f8`、`w4a4f4`、`w16a16s` | 量化类型,用于按模型与量化类型匹配最佳实践 YAML。与 `--config` 互斥,`--config` 与 `--quant_type` 两者都不传时按默认量化类型 `w8a8` 匹配最佳实践。 |
35-| `--trust_remote_code` | 无 | `bool` | 可选值(不带值传入即开启,或跟 `true`/`false`) | 可选 | `false` | `true`/`false`(大小写不敏感;兼容 `True`/`False`、`yes`/`no`、`on`/`off`) | 是否信任并执行模型目录中的自定义 Python 代码;仅在确认代码来源可信时开启。 |35+| `--trust_remote_code` | 无 | `bool` | 不带值传入即开启,也可显式传值 `true`/`false` | 可选 | `false` | `true`/`false`(大小写不敏感;兼容遗留写法 `True`/`False`) | 是否信任并执行模型目录中的自定义 Python 代码;仅在确认代码来源可信时开启。 |
36| `--debug` | 无 | `bool` | 不带值开关 | 可选 | `False` | 传入即启用 | 启用调试模式,将量化中间上下文写入 `${SAVE_PATH}/debug_info/`(`debug_info.json` 与 `debug_info.safetensors`)。 |36| `--debug` | 无 | `bool` | 不带值开关 | 可选 | `False` | 传入即启用 | 启用调试模式,将量化中间上下文写入 `${SAVE_PATH}/debug_info/`(`debug_info.json` 与 `debug_info.safetensors`)。 |
37-| `--tags` | `--tag`(遗留别名) | `list` | 一次接收多个值,空格分隔 | 可选 | 无 | 场景标签,如 `mindie`、`Atlas_A2_Inference`、`vllm` | 匹配带已验证场景标签的最佳实践;多个标签须同时出现在同一场景中,未提供硬件类型标签时自动匹配当前设备类型。 |37+| `--tags` | `--tag`(遗留别名) | `list` | 可接收单个或多个值,空格分隔 | 可选 | 无 | 场景标签,须与最佳实践 `verified_tags` 中的标签名一致(大小写不敏感),如 `vLLM-Ascend`、`Atlas_A2_Inference`、`MindIE` | 匹配带已验证场景标签的最佳实践;多个标签须同时出现在同一场景中,未提供硬件类型标签时自动匹配当前设备类型。 |
38| `--log_level` | 无 | `string` | 单值 | 可选 | `info` | `debug`、`info`、`warning`、`error` | 日志级别。 |38| `--log_level` | 无 | `string` | 单值 | 可选 | `info` | `debug`、`info`、`warning`、`error` | 日志级别。 |
39| `-v` / `--verbose` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 提高输出详细程度(等价 `--log_level debug`)。 |39| `-v` / `--verbose` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 提高输出详细程度(等价 `--log_level debug`)。 |
40| `-q` / `--quiet` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 抑制非错误输出(等价 `--log_level error`)。 |40| `-q` / `--quiet` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 抑制非错误输出(等价 `--log_level error`)。 |
41+| `-h` / `--help` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 显示帮助信息后退出(如 `msmodelslim quant -h`)。 |
41| `-V` / `--version` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 显示版本信息后退出(顶层全局参数,可在任意子命令后使用,如 `msmodelslim quant --version`)。 |42| `-V` / `--version` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 显示版本信息后退出(顶层全局参数,可在任意子命令后使用,如 `msmodelslim quant --version`)。 |
42 43 
43## 4. 参数关系44## 4. 参数关系
44 45 
45- `--config` 与 `--quant_type` 互斥,同时传入会报错。46- `--config` 与 `--quant_type` 互斥,同时传入会报错。
46-- 两者都不传时,按默认量化类型 `w8a8` 匹配最佳实践;未匹配到最佳实践时会给出提示并等待确认(输入 `y` 继续,否则退出)。47+- 两者都不传是受支持的用法:按默认量化类型 `w8a8` 匹配最佳实践;未匹配到最佳实践时会给出提示并等待确认(输入 `Y`/`y` 继续,输入其他内容则退出)。该提示为交互式输入,在无标准输入的非交互环境下会一直等待,建议改用 `--config` 或显式指定 `--quant_type`。
47- 指定 `--config` 后直接采用该配置,`--quant_type` 与 `--tags` 的最佳实践匹配均被忽略。48- 指定 `--config` 后直接采用该配置,`--quant_type` 与 `--tags` 的最佳实践匹配均被忽略。
48-- `--model_type`:量化路径必须提供;权重转换不需要。49+- `--model_type` 在普通量化路径下必须提供;仅当 `--config` 指向 `apiversion: modelslim_convert` 的配置时可省略,此时为纯权重转换,无需加载模型代码,`--model_type` 及量化相关参数均不生效。
49-- `--model_type` 指定 `transformers` 时,若使用 `--quant_type`, 仅支持 `w8a16`/`w8a8`;若使用 `--config`,当前仅支持大语言模型量化配置(`apiversion: modelslim_v1`)。50+- `--model_type` 传入的名称不存在时回退到默认适配器 `default` 执行。
51+- `--model_type` 指定 `transformers` 时,若使用 `--quant_type`,仅支持 `w8a16`/`w8a8`;若使用 `--config`,当前仅支持大语言模型量化配置(`apiversion: modelslim_v1`),多模态理解(`multimodal_vlm_modelslim_v1`)与多模态生成(`multimodal_sd_modelslim_v1`)配置会被拒绝。
50- `--tags` 指定多个值时须同时出现在同一已验证场景;未提供硬件类型标签时自动匹配当前设备类型。52- `--tags` 指定多个值时须同时出现在同一已验证场景;未提供硬件类型标签时自动匹配当前设备类型。
51- `--debug` 启用后量化上下文写入 `${SAVE_PATH}/debug_info/`。53- `--debug` 启用后量化上下文写入 `${SAVE_PATH}/debug_info/`。
52 54 
53## 5. 引用的配置55## 5. 引用的配置
54 56 
57+协议总览见《[量化任务配置说明导航](../config/quant/README.md)》;若配置用于自动调优模板,另见《[自动调优配置说明导航](../config/tuning/README.md)》。
58+ 
55| 关联参数 | 配置名称 | 引用关系 | 配置文档 |59| 关联参数 | 配置名称 | 引用关系 | 配置文档 |
56|----------|----------|----------|----------|60|----------|----------|----------|----------|
57-| `--config` | `modelslim_v1` | 加载整份量化 YAML | 《[modelslim_v1 配置说明](../config/task/modelslim_v1.md)》 |61+| `--config` | `modelslim_v1` | 加载整份量化 YAML | 《[modelslim_v1 配置说明](../config/quant/modelslim_v1.md)》 |
58-| `--config` | `multimodal_vlm_modelslim_v1` | 多模态理解模型量化 YAML | 《[multimodal_vlm_modelslim_v1 配置说明](../config/task/multimodal_vlm_modelslim_v1.md)》 |62+| `--config` | `multimodal_vlm_modelslim_v1` | 多模态理解模型量化 YAML | 《[multimodal_vlm_modelslim_v1 配置说明](../config/quant/multimodal_vlm_modelslim_v1.md)》 |
59-| `--config` | `multimodal_sd_modelslim_v1` | 多模态生成模型量化 YAML | 《[multimodal_sd_modelslim_v1 配置说明](../config/task/multimodal_sd_modelslim_v1.md)》 |63+| `--config` | `multimodal_sd_modelslim_v1` | 多模态生成模型量化 YAML | 《[multimodal_sd_modelslim_v1 配置说明](../config/quant/multimodal_sd_modelslim_v1.md)》 |
60-| `--config` | `modelslim_convert` | 权重转换 YAML;不需要 `--model_type` | 《[modelslim_convert 配置说明](../config/task/modelslim_convert.md)》 |64+| `--config` | `modelslim_convert` | 权重转换 YAML;不需要 `--model_type` | 《[modelslim_convert 配置说明](../config/quant/modelslim_convert.md)》 |
61| `--quant_type` | `lab_practice` 最佳实践 YAML | 按模型与量化类型匹配 | 《[一键量化完整指南](../../user_guide/usage_quick_quantization.md)》 |65| `--quant_type` | `lab_practice` 最佳实践 YAML | 按模型与量化类型匹配 | 《[一键量化完整指南](../../user_guide/usage_quick_quantization.md)》 |
62 66 
63## 6. 环境变量67## 6. 环境变量
@@ -75,9 +79,9 @@ msmodelslim quant [--model_type <model_type>] --model_path <model_path> --save_p
75 79 
76```bash80```bash
77msmodelslim quant \81msmodelslim quant \
78- --model_type "${MODEL_TYPE}" \82+ --model_type ${MODEL_TYPE} \
79- --model_path "${MODEL_PATH}" \83+ --model_path ${MODEL_PATH} \
80- --save_path "${SAVE_PATH}"84+ --save_path ${SAVE_PATH}
81```85```
82 86 
83`${MODEL_TYPE}` 为模型类型名称(如 `Qwen2.5-7B-Instruct`),`${MODEL_PATH}` 为浮点权重目录,`${SAVE_PATH}` 为量化输出目录。未指定 `--quant_type` 与 `--config` 时,默认按量化类型 `w8a8` 匹配最佳实践并执行量化;若模型加载需要模型目录内的自定义代码,再补充 `--trust_remote_code true`。87`${MODEL_TYPE}` 为模型类型名称(如 `Qwen2.5-7B-Instruct`),`${MODEL_PATH}` 为浮点权重目录,`${SAVE_PATH}` 为量化输出目录。未指定 `--quant_type` 与 `--config` 时,默认按量化类型 `w8a8` 匹配最佳实践并执行量化;若模型加载需要模型目录内的自定义代码,再补充 `--trust_remote_code true`。
@@ -87,8 +91,8 @@ msmodelslim quant \
87```bash91```bash
88msmodelslim quant \92msmodelslim quant \
89 --model_type transformers \93 --model_type transformers \
90- --model_path "${MODEL_PATH}" \94+ --model_path ${MODEL_PATH} \
91- --save_path "${SAVE_PATH}" \95+ --save_path ${SAVE_PATH} \
92 --quant_type w8a1696 --quant_type w8a16
93```97```
94 98 
@@ -96,73 +100,70 @@ msmodelslim quant \
96 100 
97```bash101```bash
98msmodelslim quant \102msmodelslim quant \
99- --model_type "${MODEL_TYPE}" \103+ --model_type ${MODEL_TYPE} \
100- --model_path "${MODEL_PATH}" \104+ --model_path ${MODEL_PATH} \
101- --save_path "${SAVE_PATH}" \105+ --save_path ${SAVE_PATH} \
102 --quant_type w8a8c8 \106 --quant_type w8a8c8 \
103 --device npu \107 --device npu \
104 --device_id 0 1 2 3108 --device_id 0 1 2 3
105```109```
106 110 
107-`--quant_type w8a8c8` 表示权重8bit、激活8bit、KVCache 8bit 量化;`--device_id 0 1 2 3` 使用 4 个 NPU 设备。权重转换的命令见 [7.6](#76-权重转换不需要-model_type)。111+`--quant_type w8a8c8` 表示权重8bit、激活8bit、KVCache 8bit 量化;`--device_id 0 1 2 3` 使用 4 个 NPU 设备。权重转换的命令见 [7.7](#77-显示指定设备进行权重转换)。
108 112 
109### 7.4 使用自定义配置文件113### 7.4 使用自定义配置文件
110 114 
111```bash115```bash
112msmodelslim quant \116msmodelslim quant \
113- --model_type "${MODEL_TYPE}" \117+ --model_type ${MODEL_TYPE} \
114- --model_path "${MODEL_PATH}" \118+ --model_path ${MODEL_PATH} \
115- --save_path "${SAVE_PATH}" \119+ --save_path ${SAVE_PATH} \
116- --config "${CONFIG_PATH}"120+ --config ${CONFIG_PATH}
117```121```
118 122 
119-`${CONFIG_PATH}` 指向符合 V1 等协议的量化 YAML;指定后直接采用该配置,不再做最佳实践匹配。字段说明见引用的配置文档。权重转换示例见 [7.6](#76-权重转换不需要-model_type)。123+`${CONFIG_PATH}` 指向符合 V1 协议的量化 YAML;指定后直接采用该配置,不再做最佳实践匹配。字段说明见引用的配置文档。权重转换示例见 [7.7](#77-显示指定设备进行权重转换)。
120 124 
121### 7.5 使用场景标签匹配最佳实践125### 7.5 使用场景标签匹配最佳实践
122 126 
123```bash127```bash
124msmodelslim quant \128msmodelslim quant \
125- --model_type "${MODEL_TYPE}" \129+ --model_type ${MODEL_TYPE} \
126- --model_path "${MODEL_PATH}" \130+ --model_path ${MODEL_PATH} \
127- --save_path "${SAVE_PATH}" \131+ --save_path ${SAVE_PATH} \
128 --quant_type w8a8 \132 --quant_type w8a8 \
129- --tags mindie Atlas_A2_Inference133+ --tags MindIE Atlas_A2_Inference
130```134```
131 135 
132-`--tags` 后的多个标签须同时出现在同一已验证场景中;未精确匹配时命令会给出提示并等待确认(输入 `y` 继续,否则退出);命中备用(standby)配置时提示改用备用配置,仍需用户确认。136+`--tags` 后的多个标签须同时出现在同一已验证场景中;未精确匹配时命令会给出提示并等待确认(输入 `Y`/`y` 继续,输入其他内容则退出);命中备用(standby)配置时提示改用备用配置,仍需用户确认。
133 137 
134-<a id="76-权重转换不需要-model_type"></a>138+### 7.6 纯权重转换(不执行量化)
135 139 
136-### 7.6 权重转换(不需要 `--model_type`)140+`--config` 指向 `apiversion: modelslim_convert` 的配置时,仅做权重格式转换,无需 `--model_type` 和 `--quant_type`:
137- 
138-`--config` 使用 `apiversion: modelslim_convert` 的 YAML。不需要 `--model_type` 和 `--quant_type`:
139 141 
140```bash142```bash
141msmodelslim quant \143msmodelslim quant \
142- --model_path "${MODEL_PATH}" \144+ --model_path ${MODEL_PATH} \
143- --save_path "${SAVE_PATH}" \145+ --save_path ${SAVE_PATH} \
144- --config "${CONFIG_PATH}"146+ --config ${CONFIG_PATH}
145```147```
146 148 
147-`${MODEL_PATH}` 为源权重目录,`${SAVE_PATH}` 为转换输出目录,`${CONFIG_PATH}` 为转换 YAML。配置协议与字段见《[modelslim_convert 配置说明](../config/task/modelslim_convert.md)》,操作步骤与示例 YAML 见《[权重转换使用指南](../../knowledge_base/ptq/convert/usage_weight_conversion.md)》。149+`${MODEL_PATH}` 为源权重目录,`${SAVE_PATH}` 为转换输出目录,`${CONFIG_PATH}` 为转换 YAML。配置协议与字段见《[modelslim_convert 配置说明](../config/quant/modelslim_convert.md)》,操作步骤与示例 YAML 见《[权重转换使用指南](../../knowledge_base/ptq/convert/usage_weight_conversion.md)》。
150+ 
151+### 7.7 显示指定设备进行权重转换
148 152 
149NPU 多卡时加上 `--device npu` 和 `--device_id`:153NPU 多卡时加上 `--device npu` 和 `--device_id`:
150 154 
151```bash155```bash
152msmodelslim quant \156msmodelslim quant \
153- --model_path "${MODEL_PATH}" \157+ --model_path ${MODEL_PATH} \
154- --save_path "${SAVE_PATH}" \158+ --save_path ${SAVE_PATH} \
155- --config "${CONFIG_PATH}" \159+ --config ${CONFIG_PATH} \
156 --device npu \160 --device npu \
157 --device_id 0 1 2 3161 --device_id 0 1 2 3
158```162```
159 163 
160## 8. 退出码与异常处理164## 8. 退出码与异常处理
161 165 
162-| 退出码或异常 | 含义 | 处理建议 |166+正常运行则无异常,`${SAVE_PATH}` 下生成量化权重与描述文件。失败时抛出异常。常见原因:`--config` 与 `--quant_type` 同时传入、普通量化路径缺少 `--model_type`、YAML 校验失败、`--device_id` 索引非法或超出可用设备。
163-|--------------|------|----------|
164-| `0` | 量化成功 | 检查 `${SAVE_PATH}` 是否生成量化权重与描述文件。 |
165-| 非 `0` | 失败 | 查看错误日志。常见原因:`--config` 与 `--quant_type` 同时传入、普通量化路径缺少 `--model_type`、YAML 校验失败、`--device_id` 索引非法或超出可用设备。 |
166 167 
167## 9. 安全说明168## 9. 安全说明
168 169 
@@ -2,9 +2,9 @@
2 2 
3## 1. 功能说明3## 1. 功能说明
4 4 
5-`msmodelslim tune` 是自动调优命令,读取包含 `strategy` 与 `evaluation` 的调优 YAML,循环执行「生成量化配置 → 量化 → 精度评估」,根据评估结果迭代搜索满足精度期望的量化配置,直至策略生成器耗尽、达到 `--timeout` 超时或达到最大迭代次数。量化模型与评估历史等结果写入 `--save_path`;调优结束后,最终最佳实践可保存到自定义最佳实践仓库。5+`msmodelslim tune` 是自动调优命令,读取包含 `strategy` 与 `evaluation` 的调优 YAML,循环执行"生成量化配置 → 量化 → 精度评估"流程,根据评估结果迭代搜索满足精度期望的量化配置,直至策略生成器耗尽、达到 `--timeout` 超时或达到最大迭代次数。量化模型与评估历史等结果写入 `--save_path`;调优结束后,最终最佳实践可保存到自定义最佳实践仓库。
6 6 
7-命令边界:本命令不展开具体调优策略与评估配置的编写;字段说明见《[自动调优配置协议说明](../config/auto_precision_tuning.md)》,操作步骤见《[自动调优使用说明](../../user_guide/usage_auto_precision_tuning.md)》。7+命令边界:本命令不展开具体调优策略与评估配置的编写;字段说明见《[自动调优配置说明导航](../config/tuning/README.md)》,其中策略模板引用的量化任务协议见《[量化任务配置说明导航](../config/quant/README.md)》;操作步骤见《[自动调优使用说明](../../user_guide/usage_auto_precision_tuning.md)》。
8 8 
9## 2. 命令格式9## 2. 命令格式
10 10 
@@ -17,30 +17,31 @@ msmodelslim tune --model_path <model_path> --save_path <save_path> --config <con
17- 尖括号内为需替换的值,方括号内为可选参数。17- 尖括号内为需替换的值,方括号内为可选参数。
18- `--model_path`、`--save_path`、`--config` 为必选参数。18- `--model_path`、`--save_path`、`--config` 为必选参数。
19- `--config` 是必选的调优 YAML 路径;与一键量化命令的 `--config` 同名,但语义不同(一键量化的 `--config` 可选)。19- `--config` 是必选的调优 YAML 路径;与一键量化命令的 `--config` 同名,但语义不同(一键量化的 `--config` 可选)。
20-- `--timeout` 为整数秒(如 `7200` 表示 2 小时);兼容遗留时长字符串如 `2H`、`3D4H`。20+- `--timeout` 以整数秒传入(如 `7200` 表示 2小时);旧的时长字符串写法(如 `2H`、`3D4H`)仅为向后兼容保留,新用法请统一使用秒。
21-- `--trust_remote_code` 是可选值布尔参数:不带值传入即开启(等价 `true`),或跟 `true`/`false`(大小写不敏感,兼容遗留 `True`/`False`、`yes`/`no`、`on`/`off`)。21+- `--trust_remote_code` 是布尔参数:不带值传入即开启(等价 `true`),也可显式传入 `true`/`false`(大小写不敏感,兼容遗留写法 `True`/`False`)。
22-- 本命令无位置参数。本语法摘要用于说明参数结构,不作为可复制命令;可复制命令见「使用示例」。22+- 本命令无位置参数。本语法摘要用于说明参数结构,不作为可复制命令;可复制命令见[使用示例](#7-使用示例)。
23 23 
24## 3. 参数列表24## 3. 参数列表
25 25 
26| 参数 | 别名 | 类型 | 传入形式 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 |26| 参数 | 别名 | 类型 | 传入形式 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 |
27|------|------|------|----------|-----------|--------|----------------|------|27|------|------|------|----------|-----------|--------|----------------|------|
28-| `--model_type` | 无 | `string` | 单值 | 可选 | `default` | 模型类型名称,如 `Qwen2.5-7B-Instruct`、`Qwen-QwQ-32B` | 待调优模型类型;不传时使用默认适配器 `default`。 |28+| `--model_type` | 无 | `string` | 单值 | 可选 | `default` | 模型类型名称,如 `Qwen2.5-7B-Instruct`、`Qwen3-32B` | 待调优模型类型,须与《[大模型支持矩阵](../../knowledge_base/model/README.md)》中的名称一致;不传时使用默认适配器 `default`。 |
29| `--model_path` | 无 | `string` | 单值 | 必选 | 无 | 原始模型权重目录(需存在且可读) | 待调优模型的权重目录。 |29| `--model_path` | 无 | `string` | 单值 | 必选 | 无 | 原始模型权重目录(需存在且可读) | 待调优模型的权重目录。 |
30| `--save_path` | 无 | `string` | 单值 | 必选 | 无 | 输出目录(需可写) | 调优结果、量化模型与历史记录的保存目录。 |30| `--save_path` | 无 | `string` | 单值 | 必选 | 无 | 输出目录(需可写) | 调优结果、量化模型与历史记录的保存目录。 |
31-| `--config` | 无 | `string` | 单值 | 必选 | 无 | 可读 YAML 文件路径 | 调优配置 YAML,含 `strategy` 与 `evaluation` 字段。 |31+| `--config` | `-c` | `string` | 单值 | 必选 | 无 | 可读 YAML 文件路径 | 调优配置 YAML,含 `strategy` 与 `evaluation` 字段。 |
32| `--device` | 无 | `string` | 单值 | 可选 | `npu` | `npu`、`cpu` | 运行设备类型;多卡索引请用 `--device_id` 指定。 |32| `--device` | 无 | `string` | 单值 | 可选 | `npu` | `npu`、`cpu` | 运行设备类型;多卡索引请用 `--device_id` 指定。 |
33-| `--device_id` | 无 | `list` | 一次接收多个值,空格分隔 | 可选 | 无 | 非负整数列表,如 `0` 或 `0 1 2 3` | 设备索引,用于指定多个 NPU 设备。 |33+| `--device_id` | 无 | `list` | 可接收单个或多个值,空格分隔 | 可选 | 无 | 非负整数列表,如 `0` 或 `0 1 2 3` | 设备索引,用于指定多个 NPU 设备。 |
34-| `--timeout` | 无 | `int`(秒) | 单值 | 可选 | 无(不限时) | 整数秒,如 `7200`(2 小时)、`3600`(1 小时);兼容遗留时长字符串(如 `1D2H30M15S`,单位固定顺序 D/H/M/S) | 调优墙钟超时;到达超时时间后停止本次调优。 |34+| `--timeout` | 无 | `int`(秒) | 单值 | 可选 | 无(不限时) | 整数秒,如 `7200`(2小时)、`3600`(1小时);仅向后兼容保留旧时长字符串写法(如 `1D2H30M15S`,单位固定顺序 D/H/M/S) | 调优墙钟超时;到达超时时间后停止本次调优。 |
35-| `--trust_remote_code` | 无 | `bool` | 可选值(不带值传入即开启,或跟 `true`/`false`) | 可选 | `false` | `true`/`false`(大小写不敏感;兼容 `True`/`False`、`yes`/`no`、`on`/`off`) | 是否信任并执行模型目录中的自定义 Python 代码;仅在确认代码来源可信时开启。 |35+| `--trust_remote_code` | 无 | `bool` | 不带值传入即开启,也可显式传值 `true`/`false` | 可选 | `false` | `true`/`false`(大小写不敏感;兼容遗留写法 `True`/`False`) | 是否信任并执行模型目录中的自定义 Python 代码;仅在确认代码来源可信时开启。 |
36| `--log_level` | 无 | `string` | 单值 | 可选 | `info` | `debug`、`info`、`warning`、`error` | 日志级别。 |36| `--log_level` | 无 | `string` | 单值 | 可选 | `info` | `debug`、`info`、`warning`、`error` | 日志级别。 |
37| `-v` / `--verbose` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 提高输出详细程度(等价 `--log_level debug`)。 |37| `-v` / `--verbose` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 提高输出详细程度(等价 `--log_level debug`)。 |
38| `-q` / `--quiet` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 抑制非错误输出(等价 `--log_level error`)。 |38| `-q` / `--quiet` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 抑制非错误输出(等价 `--log_level error`)。 |
39+| `-h` / `--help` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 显示帮助信息后退出(如 `msmodelslim tune -h`)。 |
39| `-V` / `--version` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 显示版本信息后退出(顶层全局参数,可在任意子命令后使用,如 `msmodelslim tune --version`)。 |40| `-V` / `--version` | 无 | `bool` | 不带值开关 | 可选 | 关闭 | 传入即启用 | 显示版本信息后退出(顶层全局参数,可在任意子命令后使用,如 `msmodelslim tune --version`)。 |
40 41 
41## 4. 参数关系42## 4. 参数关系
42 43 
43-- 本命令通过必选的 `--config` 加载调优 YAML;与一键量化命令的 `--config` 同名但语义不同,本命令不接收 `--config_path`。44+- 本命令通过必选的 `--config` 加载调优 YAML。
44- `--timeout` 未设置时不限制调优墙钟时间;设置后超时即停止当前调优。45- `--timeout` 未设置时不限制调优墙钟时间;设置后超时即停止当前调优。
45- `--device` 仅接受 `npu`/`cpu`,多卡索引通过 `--device_id` 指定。46- `--device` 仅接受 `npu`/`cpu`,多卡索引通过 `--device_id` 指定。
46- `--model_type` 不传时使用默认值 `default`。47- `--model_type` 不传时使用默认值 `default`。
@@ -49,13 +50,13 @@ msmodelslim tune --model_path <model_path> --save_path <save_path> --config <con
49 50 
50| 关联参数 | 配置名称 | 引用关系 | 配置文档 |51| 关联参数 | 配置名称 | 引用关系 | 配置文档 |
51|----------|----------|----------|----------|52|----------|----------|----------|----------|
52-| `--config` | 自动调优配置 | 加载 `strategy` 与 `evaluation` | 《[自动调优配置协议说明](../config/auto_precision_tuning.md)》 |53+| `--config` | 自动调优配置 | 加载 `strategy` 与 `evaluation` | 《[自动调优配置说明导航](../config/tuning/README.md)》 |
53 54 
54## 6. 环境变量55## 6. 环境变量
55 56 
56| 环境变量 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 |57| 环境变量 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 |
57|----------|------|-----------|--------|----------------|------|58|----------|------|-----------|--------|----------------|------|
58-| `MSMODELSLIM_CUSTOM_PRACTICE_REPO` | `string` | 可选 | 无(未设置) | 目录路径 | 调优结束后将最终最佳实践保存到该自定义最佳实践仓库;未设置时命令仅记录「不支持保存」的提示。 |59+| `MSMODELSLIM_CUSTOM_PRACTICE_REPO` | `string` | 可选 | 无(未设置) | 目录路径 | 调优结束后将最终最佳实践保存到该自定义最佳实践仓库;未设置时命令仅记录"不支持保存"的提示。 |
59| `MSMODELSLIM_LOG_LEVEL` | `string` | 可选 | `INFO` | `INFO`、`DEBUG` | 设置日志级别;设置后打印同级及以上日志。 |60| `MSMODELSLIM_LOG_LEVEL` | `string` | 可选 | `INFO` | `INFO`、`DEBUG` | 设置日志级别;设置后打印同级及以上日志。 |
60 61 
61## 7. 使用示例62## 7. 使用示例
@@ -66,34 +67,31 @@ msmodelslim tune --model_path <model_path> --save_path <save_path> --config <con
66 67 
67```bash68```bash
68msmodelslim tune \69msmodelslim tune \
69- --model_path "${MODEL_PATH}" \70+ --model_path ${MODEL_PATH} \
70- --save_path "${SAVE_PATH}" \71+ --save_path ${SAVE_PATH} \
71- --config "${CONFIG_PATH}"72+ --config ${CONFIG_PATH}
72```73```
73 74 
74`${MODEL_PATH}` 为权重目录,`${SAVE_PATH}` 为调优结果目录,`${CONFIG_PATH}` 为调优 YAML(含 `strategy` 与 `evaluation`)。未指定 `--model_type` 时使用默认适配器 `default`,推荐显式指定。75`${MODEL_PATH}` 为权重目录,`${SAVE_PATH}` 为调优结果目录,`${CONFIG_PATH}` 为调优 YAML(含 `strategy` 与 `evaluation`)。未指定 `--model_type` 时使用默认适配器 `default`,推荐显式指定。
75 76 
76-### 7.2 指定模型类型与超时77+### 7.2 显示指定模型类型、设备与超时时长
77 78 
78```bash79```bash
79msmodelslim tune \80msmodelslim tune \
80- --model_type "${MODEL_TYPE}" \81+ --model_type ${MODEL_TYPE} \
81- --model_path "${MODEL_PATH}" \82+ --model_path ${MODEL_PATH} \
82- --save_path "${SAVE_PATH}" \83+ --save_path ${SAVE_PATH} \
83- --config "${CONFIG_PATH}" \84+ --config ${CONFIG_PATH} \
84 --timeout 7200 \85 --timeout 7200 \
85 --device npu \86 --device npu \
86 --device_id 0 1 2 387 --device_id 0 1 2 3
87```88```
88 89 
89-`--timeout 7200` 表示最多运行2H;`--device_id 0 1 2 3` 使用4个 NPU 设备。90+`--timeout` 设为 `7200` 表示最多运行 7200 秒(2小时);`--device_id` 设为 `0 1 2 3` 表示使用4个 NPU 设备。
90 91 
91## 8. 退出码与异常处理92## 8. 退出码与异常处理
92 93 
93-| 退出码或异常 | 含义 | 处理建议 |94+正常运行则无异常(含策略迭代完成、超时或达到最大迭代次数),结果见 `${SAVE_PATH}` 下的量化模型、结果与历史记录。失败时抛出异常。常见原因:`--config` YAML 校验失败、`--timeout` 格式非法、模型适配器加载失败。
94-|--------------|------|----------|
95-| `0` | 调优流程正常结束(含策略迭代完成、超时或达到最大迭代次数) | 查看 `${SAVE_PATH}` 下的量化模型、结果与历史记录。 |
96-| 非 `0` | 失败 | 查看错误日志。常见原因:`--config` YAML 校验失败、`--timeout` 格式非法、模型适配器加载失败。 |
97 95 
98## 9. 安全说明96## 9. 安全说明
99 97 
@@ -0,0 +1,74 @@
1+# 配置说明导航
2+ 
3+本目录是 msModelSlim 配置(YAML)的字段级参考文档,按先选协议、再查 `type`的方式组织。使用流程与端到端操作步骤见《[一键量化完整指南](../../user_guide/usage_quick_quantization.md)》;任务协议总览见《[量化任务配置说明导航](quant/README.md)》;自动调优的协议总览见《[自动调优配置说明导航](tuning/README.md)》。
4+ 
5+## 1. 怎么用这套文档
6+ 
7+1. **确定协议**:YAML 根节点的 `apiversion` 决定 `spec` 的结构,按任务场景选择协议页(总览见《[量化任务配置说明导航](quant/README.md)》)。各协议的字段取值与可用的 `process` / `save` 子类型并不相同,以对应任务页为准。
8+2. **查处理器**:`spec.process[]` 的每一项由 `type` 分派,按 `type` 到下方[处理器](#3-处理器specprocess-按-type-分派)表查对应页面;`spec.prior[].process` 同样引用这些处理器。
9+3. **查保存格式**:`spec.save[]` 的每一项由 `type` 分派,按下方[保存格式](#4-保存格式specsave-按-type-分派)表查对应页面;VLM / 多模态生成协议只接受其中的 AscendV1 与 MindIE 两类。
10+4. **查调优**:自动调优的顶层结构见《[自动调优配置说明导航](tuning/README.md)》,`strategy` 与 `evaluation` 的字段见下方[自动调优](#5-自动调优)表。
11+ 
12+> 本页、《[量化任务配置说明导航](quant/README.md)》与《[自动调优配置说明导航](tuning/README.md)》为手写导航;其余配置页由 `skills/docs-management/scripts/gen_config_api_docs.py` 从源码 Pydantic 注解生成。修改字段说明请改源码 `Field(description=)` 等注解后重新生成,不要直接编辑带 `generated-by` 标记的页面。
13+ 
14+## 2. 任务配置(按 `apiversion` 选择)
15+ 
16+按协议查阅字段见《[量化任务配置说明导航](quant/README.md)》,下表为快速入口:
17+ 
18+| 配置 | `apiversion` | 说明 |
19+|------|--------------|------|
20+| [modelslim_v1](quant/modelslim_v1.md) | `modelslim_v1` | 大语言模型量化与权重转换的默认协议,含 `runner`/`process`/`save`/`dataset`。 |
21+| [multimodal_vlm_modelslim_v1](quant/multimodal_vlm_modelslim_v1.md) | `multimodal_vlm_modelslim_v1` | 多模态理解(VLM)模型量化协议。 |
22+| [multimodal_sd_modelslim_v1](quant/multimodal_sd_modelslim_v1.md) | `multimodal_sd_modelslim_v1` | 多模态生成(DiT/SD)模型量化协议,含 dump 与推理参数。 |
23+| [modelslim_convert](quant/modelslim_convert.md) | `modelslim_convert` | 纯权重转换协议,用于权重重命名、结构替换与格式转换。 |
24+| [practice_config](quant/practice_config.md) | `modelslim_v1`(在 `task` 内) | 最佳实践配置:`metadata` + `task`,被自动调优策略引用。 |
25+ 
26+## 3. 处理器(`spec.process[]` 按 `type` 分派)
27+ 
28+| `type` | 配置 | 作用 |
29+|--------|------|------|
30+| `adapt_rotation` | [adapt_rotation](processor/adapt_rotation.md) | 自适应旋转,抑制离群值。 |
31+| `autoround_quant` | [autoround_quant](processor/autoround_quant.md) | AutoRound 量化训练。 |
32+| `awq` | [awq](processor/awq.md) | AWQ 激活感知权重量化。 |
33+| `binary_analysis` | [binary_analysis](processor/binary_analysis.md) | 二值(有/无量化)敏感度分析。 |
34+| `binary_operator_layer_wise` | [binary_operator_layer_wise](processor/binary_operator_layer_wise.md) | 逐层敏感度分析。 |
35+| `binary_operator_model_wise` | [binary_operator_model_wise](processor/binary_operator_model_wise.md) | 模型级敏感度分析。 |
36+| `dynamic_cache` | [dynamic_cache](processor/dynamic_cache.md) | KV cache 动态量化。 |
37+| `fa3_quant` | [fa3_quant](processor/fa3_quant.md) | FA3 注意力量化。 |
38+| `flatquant` | [flatquant](processor/flatquant.md) | FlatQuant 量化训练。 |
39+| `flex_awq_ssz` | [flex_awq_ssz](processor/flex_awq_ssz.md) | FlexAWQSSZ 平滑量化。 |
40+| `flex_smooth_quant` | [flex_smooth_quant](processor/flex_smooth_quant.md) | FlexSmoothQuant 平滑量化。 |
41+| `float_sparse` | [float_sparse](processor/float_sparse.md) | 浮点稀疏。 |
42+| `group` | [group](processor/group.md) | 组合处理器,共享推理过程。 |
43+| `iter_smooth` | [iter_smooth](processor/iter_smooth.md) | 迭代平滑。 |
44+| `kv_smooth` | [kv_smooth](processor/kv_smooth.md) | KV cache 平滑。 |
45+| `linear_quant` | [linear_quant](processor/linear_quant.md) | 线性层量化,含 `qconfig`(激活/权重)。 |
46+| `load` | [load](processor/load.md) | 模块加载/卸载。 |
47+| `oasq` | [oasq](processor/oasq.md) | OASQ 离群值感知平滑量化。 |
48+| `online_quarot` | [online_quarot](processor/online_quarot.md) | 在线 QuaRot 旋转。 |
49+| `quarot` | [quarot](processor/quarot.md) | 离线 QuaRot 旋转。 |
50+| `saver` | [saver](processor/saver.md) | 统一保存处理器。 |
51+| `smooth_quant` | [smooth_quant](processor/smooth_quant.md) | SmoothQuant 平滑量化。 |
52+| `svd_res` | [svd_res](processor/svd_res.md) | SVD 低秩残差补偿。 |
53+| `trainable_linear_quant` | [trainable_linear_quant](processor/trainable_linear_quant.md) | 可训练线性量化(TLQ)。 |
54+| `unary_analysis` | [unary_analysis](processor/unary_analysis.md) | 一元(无量化)敏感度分析。 |
55+ 
56+## 4. 保存格式(`spec.save[]` 按 `type` 分派)
57+ 
58+| `type` | 配置 | 适用协议 |
59+|--------|------|----------|
60+| `ascendv1_saver` | [ascendv1_saver](format/ascendv1_saver.md) | 全部协议(`modelslim_v1`、`multimodal_*`、`modelslim_convert`)。 |
61+| `compressed_tensors` | [compressed_tensors](format/compressed_tensors.md) | 仅 `modelslim_v1` 与 `modelslim_convert`;VLM / 多模态生成协议不接受。 |
62+| `mindie_format_saver` | [mindie_format_saver](format/mindie_format_saver.md) | 全部协议。 |
63+ 
64+## 5. 自动调优
65+ 
66+顶层协议与字段总览见《[自动调优配置说明导航](tuning/README.md)》,以下为各策略与评估服务的字段参考:
67+ 
68+| 配置 | 说明 |
69+|------|------|
70+| [tuning_plan](tuning/tuning_plan.md) | 调优计划根配置(`strategy` + `evaluation`)。 |
71+| [strategy_standing_high](tuning/strategy_standing_high.md) | `standing_high` 策略。 |
72+| [strategy_standing_high_with_experience](tuning/strategy_standing_high_with_experience.md) | `standing_high_with_experience` 策略。 |
73+| [strategy_binary_fallback](tuning/strategy_binary_fallback.md) | `binary_fallback` 策略。 |
74+| [evaluation_service_oriented](tuning/evaluation_service_oriented.md) | AISBench 评测服务与预检查配置。 |
@@ -1,379 +0,0 @@
1-# 自动调优配置协议说明
2- 
3-## 1. 概述
4- 
5-### 1.1 配置协议简介
6- 
7-自动调优配置协议采用分层结构设计,顶层包含两个核心字段。
8- 
9-- **strategy**: 调优策略配置,定义量化配置生成策略和量化基础配置。
10-- **evaluation**: 评估服务配置,定义模型精度评估的方式和量化模型服务化拉起相关参数。
11- 
12-### 1.2 配置文件位置
13- 
14-用户需要自定义调优配置文件,可以参考各策略目录下的 YAML 示例(如 [standing_high.yaml](../../knowledge_base/tuning_strategies/standing_high/standing_high.yaml))进行自定义。
15- 
16-### 1.3 基础配置结构
17- 
18-```yaml
19-strategy:
20- type: <strategy_type> # 调优策略类型,如 standing_high、standing_high_with_experience、binary_fallback
21- # 不同策略有不同的配置字段与语义,详见各策略文档
22- 
23-evaluation:
24- type: service_oriented
25- demand:
26- expectations:
27- # 精度期望列表:用于描述“需要在哪些数据集上达到什么精度要求”
28- evaluation:
29- type: aisbench
30- # 具体字段详见下文 evaluation.evaluation 小节
31- inference_engine:
32- # 推理引擎配置
33-```
34- 
35-## 2. 配置字段详解
36- 
37-### <span id="21-strategy---调优策略配置">2.1 strategy - 调优策略配置</span>
38- 
39-**作用**: 定义调优策略的类型、参数和量化基础配置。
40- 
41-**type - 策略类型**
42- 
43-**作用**: 指定调优算法的类型,不同的策略类型对应不同的调优算法。
44- 
45-**类型**: `string`
46- 
47-**可选值**: 根据已实现的调优策略而定,例如 `standing_high`、`standing_high_with_experience`、`binary_fallback`。
48- 
49-**模型适配(按策略)**
50- 
51-若调优策略需**自动运行敏感层分析**(生成回退候选),模型适配器须实现 **`ModelSlimPipelineInterfaceV1`**(即 `core/runner/pipeline_interface.py` 中的 `PipelineInterface`,与 CLI `msmodelslim analyze` 要求一致)。策略内由领域层 `PipelineAnalysisService` 调用 `init_model`、`handle_dataset` 及 visit/forward pipeline;**不会在策略侧预先 `load_model`**。
52- 
53-各策略在自动敏感层分析之上的**额外**要求如下:
54- 
55-| 策略 | 模型适配器要求 |
56-|------|----------------|
57-| `standing_high` | **`ModelSlimPipelineInterfaceV1`**(始终自动敏感层分析) |
58-| `standing_high_with_experience` | **`ModelSlimPipelineInterfaceV1`** + **`StandingHighWithExperienceInterface`**(`load_model`,离群值抑制能力探测) |
59-| `binary_fallback` | **`ModelSlimPipelineInterfaceV1`** (实现V1架构) |
60- 
61-详见各策略文档「适用要求 / 模型适配」章节及 《[LLM 大模型接入指南](../../knowledge_base/ptq/llm/integration_guide_large_language_model_quantization.md)》。
62- 
63-**策略特有配置字段**
64- 
65-不同调优策略的配置字段差异较大,详细的配置项请参考相应算法文档的「YAML 配置字段详解」章节。策略总览见《[自动调优策略总览](../../knowledge_base/tuning_strategies/README.md)》。目前已支持的算法如下:
66- 
67-- 《[Standing High 调优算法](../../knowledge_base/tuning_strategies/standing_high/standing_high.md)》
68-- 《[Standing High With Experience 调优算法](../../knowledge_base/tuning_strategies/standing_high_with_experience/standing_high_with_experience.md)》
69-- 《[Binary Fallback 调优算法](../../knowledge_base/tuning_strategies/binary_fallback/binary_fallback.md)》
70- 
71-### 2.2 evaluation - 评估服务配置
72- 
73-**作用**: 定义模型精度评估的配置,包括评估服务类型、测评工具配置和推理引擎配置。
74- 
75-**核心字段**:
76- 
77-| 字段名 | 作用 | 类型 | 必选/可选 | 说明 |
78-|--------|------|------|----------|------|
79-| type | 评估服务类型 | string | 必选 | 当前支持 `service_oriented`(面向服务的评估,通过服务化方式启动模型进行评估)。 |
80-| demand | 精度需求配置 | object | 必选 | 定义模型精度评估的精度需求,包括数据集、目标精度和容差 |
81-| evaluation | 测评工具配置 | object | 必选 | 定义测评工具的配置参数 |
82-| inference_engine | 推理引擎配置 | object | 必选 | 定义推理引擎的配置参数,用于将量化后的模型以服务化方式启动 |
83- 
84-#### 2.2.1 type - 评估服务类型
85- 
86-**作用**: 指定评估服务的类型。
87- 
88-**类型**: `string`
89- 
90-**可选值**: `service_oriented`(面向服务的评估,通过服务化方式启动模型进行评估)
91- 
92-#### 2.2.2 demand - 精度需求配置
93- 
94-**作用**: 定义模型精度评估的精度需求,包括数据集、目标精度和容差。
95- 
96-**字段说明**:
97- 
98-| 字段名 | 作用 | 类型 | 必选/可选 | 说明 |
99-|--------|------|------|----------|------|
100-| expectations | 精度期望列表 | list | 必选 | 精度需求的列表,每个元素包含数据集、目标精度和容差,至少包含一个元素 |
101- 
102-**expectations 字段说明**:
103- 
104-| 字段名 | 作用 | 类型 | 必选/可选 | 说明 |
105-|--------|------|------|----------|------|
106-| dataset | 指定要评估的数据集 | string | 必选 | 数据集名称,必须是在 evaluation.evaluation.datasets 中配置的数据集名称 |
107-| target | 设置精度目标值 | number | 必选 | 期望达到的精度目标值,必须大于 0;可写数字(如 `0.95`)或字符串(如 `"0.95"`) |
108-| tolerance | 设置精度容差 | number | 必选 | 精度允许的误差范围,必须大于等于 0;可写数字(如 `0.95`)或字符串(如 `"0.95"`) |
109- 
110-**配置示例**:
111- 
112-```yaml
113-# 单个数据集的精度需求
114-demand:
115- expectations:
116- - dataset: gsm8k
117- target: 83 # 目标精度 83%
118- tolerance: 2 # 容差 ±2%
119- 
120-# 多个数据集的精度需求
121-demand:
122- expectations:
123- - dataset: gsm8k
124- target: 83 # 目标精度 83%
125- tolerance: 2 # 容差 ±2%
126- - dataset: aime25
127- target: 85 # 目标精度 85%
128- tolerance: 1 # 容差 ±1%
129- - dataset: bfcl-simple
130- target: 80 # 目标精度 80%
131- tolerance: 2 # 容差 ±2%
132-```
133- 
134-**注意**:
135- 
136-- **精度单位说明**:不同数据集返回的精度格式可能不同,有些数据集返回小数形式(0.0-1.0,如 0.83 表示 83%),有些数据集返回百分制(0-100,如 83 表示 83%)。`target` 和 `tolerance` 的单位必须与对应数据集返回的精度格式保持一致。请根据测评工具实际数据集返回的精度格式来配置 `target` 和 `tolerance`。
137-- **精度数值设置说明**:`target` 和 `tolerance` 在系统内部按 Decimal 进行计算。YAML 中可直接写数字(如 `0.95`),也可写字符串(如 `"0.95"`);在需要严格控制小数精度的场景,建议使用字符串写法。
138-- **精度目标设置说明**:文档中给出的精度数据仅供参考,请根据实际浮点模型的精度进行配置。理论上量化后模型不会超过原始浮点模型的精度,因此建议将精度目标设置为略低于或等于浮点模型的精度。
139-- 支持配置多个数据集的精度需求,每个数据集可以设置不同的目标精度和容差。
140- 
141-#### 2.2.3 evaluation - 测评工具配置
142- 
143-**作用**: 定义测评工具的配置参数。
144- 
145-**核心字段**:
146- 
147-| 字段名 | 作用 | 类型 | 必选/可选 | 说明 |
148-|--------|------|------|----------|------|
149-| type | 测评工具类型 | string | 必选 | 当前支持 `aisbench`。 |
150-| precheck | 预检查配置 | list | 可选 | 定义正式评估前的预检查配置,空列表表示跳过预检查。默认值:`[]` |
151-| aisbench | AISBench 测评工具配置 | object | 必选 | AISBench 测评工具的详细配置参数(如 `timeout`、`batch_size`、`generation_kwargs` 等)。 |
152-| datasets | 数据集配置 | dict | 必选 | 定义需要评估的数据集及其配置,必须至少包含 `demand.expectations` 中指定的所有数据集。 |
153-| host | 服务主机地址 | string | 可选 | 测评端连接推理服务的地址。**需与推理引擎侧保持一致**。默认值:`"localhost"` |
154-| port | 服务端口 | int | 可选 | 测评端连接推理服务的端口。**需与推理引擎侧保持一致**。默认值:`1234` |
155-| served_model_name | 服务化模型名称 | string | 可选 | 测评端请求时使用的模型名称标识,**需与推理引擎侧保持一致**。默认值:`"served_model_name"` |
156- 
157-**配置示例**:
158- 
159-```yaml
160-evaluation:
161- type: aisbench
162- aisbench:
163- binary: ais_bench
164- mode: all
165- timeout: 7200
166- request_rate: 1.0
167- retry: 2
168- batch_size: 32
169- max_out_len: 512
170- trust_remote_code: false
171- pred_postprocessor: extract_non_reasoning_content
172- generation_kwargs:
173- temperature: 0.5
174- top_k: 10
175- top_p: 0.9
176- seed: null
177- repetition_penalty: 1.03
178- model_meta:
179- base_name: vllm_api_general_chat
180- subdir: vllm_api
181- abbr: vllm-api-general-chat
182- attr: service
183- default_metric_keys:
184- - final_accuracy
185- - accuracy
186- - score
187- datasets:
188- gsm8k:
189- config_name: "gsm8k_gen_0_shot_cot_str"
190- mode: all
191- aime25:
192- config_name: "aime2025_gen_0_shot_chat_prompt"
193- mode: all
194- bfcl-simple:
195- config_name: "BFCL_gen_simple"
196- mode: all
197- host: localhost
198- port: 1234
199- served_model_name: served_model_name
200-```
201- 
202-##### 2.2.3.1 aisbench - AISBench 测评工具配置
203- 
204-**作用**:配置 AISBench 的命令行与测评运行参数(如 `timeout`、`batch_size`、`generation_kwargs` 等)。
205- 
206-**aisbench 字段说明**:
207- 
208-AISBench 测评工具的详细配置参数:
209- 
210-| 字段名 | 作用 | 类型 | 必选/可选 | 说明 |
211-|--------|------|------|----------|------|
212-| binary | 指定 AISBench 启动命令 | string | 可选 | 固定值:`ais_bench`。默认值:`"ais_bench"` |
213-| mode | 设置评测模式 | string | 可选 | 评测模式。默认值:`"all"` |
214-| timeout | 设置命令执行超时时间 | int | 可选 | 超时时间(秒),必须大于 0。默认值:`7200`(2小时) |
215-| cleanup_model_config | 控制是否清理模型配置 | bool | 可选 | 是否清理生成的模型配置文件。默认值:`true` |
216-| model_meta | 配置模型元数据 | object | 可选 | 模型配置元数据,详见下方说明。默认值:`ModelConfigMeta()` |
217-| request_rate | 设置默认请求速率 | float | 可选 | 默认请求速率,必须大于 0。默认值:`1.0` |
218-| pred_postprocessor | 指定预测后处理器 | string | 可选 | 预测后处理器名称。默认值:`"extract_non_reasoning_content"` |
219-| retry | 设置请求重试次数 | int | 可选 | 请求重试次数,必须大于等于 0。默认值:`2` |
220-| batch_size | 设置批处理大小 | int | 可选 | 批处理大小,必须大于 0。默认值:`1` |
221-| max_out_len | 设置最大输出长度 | int | 可选 | 最大输出长度,必须大于 0。默认值:`512` |
222-| trust_remote_code | 控制是否信任远程代码 | bool | 可选 | 是否信任远程代码。默认值:`false` |
223-| generation_kwargs | 服务化推理后端配置生成参数 | dict | 可选 | 生成参数配置字典。默认值:`{}` |
224-| extra_args | 添加额外命令行参数 | list | 可选 | 额外的命令行参数列表。默认值:`[]` |
225-| log_dir | 指定日志目录路径 | string | 可选 | 日志目录路径,空字符串表示使用默认路径。默认值:`""` |
226- 
227-**model_meta 字段说明**:
228- 
229-下面参数主要用于获得服务化推理后端模型配置:
230- 
231-| 字段名 | 作用 | 类型 | 必选/可选 | 说明 |
232-|--------|------|------|----------|------|
233-| directory | 指定模型配置目录路径 | string | 可选 | 模型配置目录的显式路径,空字符串表示使用默认路径。默认值:`""` |
234-| subdir | 指定模型服务化后端配置子目录 | string | 可选 | 模型服务化后端配置子目录。默认值:`"vllm_api"` |
235-| base_name | 指定模型服务化后端配置基础名称 | string | 可选 | 模型服务化后端配置基础名称。默认值:`"vllm_api_general_chat"` |
236-| name_suffix | 指定模型服务化后端配置名称后缀 | string | 可选 | 模型服务化后端配置名称后缀,`auto` 表示自动生成。默认值:`"auto"` |
237-| abbr | 指定模型配置缩写 | string | 可选 | 模型配置缩写。默认值:`"vllm-api-general-chat"` |
238-| attr | 指定模型配置属性 | string | 可选 | 模型配置属性。默认值:`"service"` |
239- 
240-**注意**: 上面大部分参数来自于 AISBench 命令行参数与服务化推理后端参数,可以参考 [AISBench 详细参数说明](https://ais-bench-benchmark.readthedocs.io/zh-cn/latest/base_tutorials/all_params/index.html) 进行配置。
241- 
242-##### 2.2.3.2 datasets - 数据集配置
243- 
244-**作用**:配置待评估数据集及每个数据集在 AISBench 中的参数;必须至少包含 `demand.expectations` 中出现的所有数据集。
245- 
246-**datasets 字段说明**:
247- 
248-该字段指定了不同的数据集键与 AISBench 侧数据集配置的对应关系。下文示例中仅列出三个数据集(gsm8k、aime25、bfcl-simple);更多数据集可参考[AISBench 文档数据集支持列表](https://github.com/AISBench/benchmark/blob/master/docs/source_zh_cn/get_started/datasets.md)自行扩展。
249- 
250-每个数据集的配置字段说明:
251- 
252-| 字段名 | 作用 | 类型 | 必选/可选 | 说明 |
253-|--------|------|------|----------|------|
254-| config_name | 指定 AISBench 中的配置名称 | string | 必选 | 数据集在 AISBench 中的配置名称,非空字符串 |
255-| mode | 设置该数据集的评测模式 | string | 可选 | 评测模式,空字符串表示使用全局模式。默认值:`""` |
256-| request_rate | 设置该数据集的请求速率 | float | 可选 | 请求速率,0.0 表示使用全局默认值。必须大于等于 0。默认值:`0.0` |
257-| max_out_len | 设置该数据集的最大输出长度 | int | 可选 | 最大输出长度,None 表示使用全局默认值。如果指定则必须大于 0。默认值:`None` |
258-| returns_tool_calls | 控制是否返回工具调用 | bool | 可选 | 是否返回工具调用,None 表示不写入该字段。默认值:`None` |
259-| api_chat_type | 指定该数据集使用的 API Chat 类型 | string | 可选 | 该字段需与 AISBench 对应数据集配置所要求的 API/请求格式保持一致。默认值:`"VLLMCustomAPIChat"` |
260-| extra_args | 添加该数据集的额外命令行参数 | list | 可选 | 额外的命令行参数列表。默认值:`[]` |
261- 
262-##### 2.2.3.3 precheck - 预检查配置(可选)
263- 
264-**作用**: 定义正式评估前的预检查配置,用于在每次迭代的模型评估前对量化后的模型进行预验证。
265- 
266-**类型**: `list`
267- 
268-**说明**: precheck 是一个列表,每个元素是一个预检查规则配置,包含 `type` 字段用于指定预检查类型。如果配置了 precheck 且不为空列表,系统会在正式评估前执行预检查。
269- 
270-**支持的预检查类型**: `expected_answer`
271- 
272-**expected_answer - 期望答案验证**
273- 
274-**作用**: 验证模型输出是否包含预期的答案内容。
275- 
276-**字段说明**:
277- 
278-| 字段名 | 作用 | 类型 | 必选/可选 | 说明 |
279-|--------|------|------|----------|------|
280-| type | 指定预检查类型 | string | 必选 | 固定值:`expected_answer`。 |
281-| test_cases | 配置测试用例列表 | list | 可选 | 测试用例列表,使用键值对格式(问题: 答案)。如果不配置,默认使用一个测试用例("What is 2+2?": "4")。默认值:`[{"What is 2+2?": "4"}]` |
282-| max_tokens | 设置最大 token 数 | int | 可选 | 必须大于零。默认值:`512` |
283-| timeout | 设置超时时间 | float | 可选 | 超时时间(秒),必须大于零。默认值:`60.0` |
284- 
285-**test_cases 字段说明**:
286- 
287-`test_cases` 使用字典格式(键值对),键为问题,值为答案:
288- 
289-```yaml
290-test_cases:
291- - "What is 2+2?": ["4", "four"] # 期望响应中包含 "4" 或 "four"
292- - "What is the capital of China?": "Beijing" # 期望响应中包含 "Beijing"
293-```
294- 
295-**格式说明**:
296- 
297-- 键(问题):字符串类型,测试消息
298-- 值(答案):可以是字符串、字符串列表
299- - 字符串:如 `"4"`,表示期望响应中包含 "4"
300- - 字符串列表:如 `["4", "four"]`,表示期望响应中包含 "4" 或 "four" 中的任意一个
301- 
302-**配置示例**:
303- 
304-```yaml
305-precheck:
306- - type: expected_answer
307- test_cases:
308- - "What is 2+2?": ["4", "four"]
309- - "What is the capital of China?": "Beijing"
310- max_tokens: 1024
311- timeout: 60.0
312-```
313- 
314-**注意**:
315- 
316-- 预检查功能会在每次迭代的模型评估前执行(在服务化启动后)。系统会依次执行所有配置的预检查规则,如果任何一个预检查失败,系统会跳过本次迭代的正式评估,返回数据集全零结果,直接开启下一次迭代。
317-- 预检查的目的是快速发现明显的问题,避免浪费时间进行完整的评估。如果所有预检查都通过,系统会继续进行正式的精度评估。
318-- **仅支持英文问答**:预检查功能目前仅支持英文问答,测试消息和期望答案应使用英文。
319-- 如果不配置 `precheck` 字段或配置为空列表,将跳过预检查直接进行正式评估。
320- 
321-#### 2.2.4 inference_engine - 推理引擎配置
322- 
323-**作用**: 定义推理引擎的配置参数,用于将量化后的模型以服务化方式启动。
324- 
325-**字段说明**:
326- 
327-| 字段名 | 作用 | 类型 | 必选/可选 | 说明 |
328-|--------|------|------|----------|------|
329-| type | 指定推理引擎类型 | string | 必选 | 当前只支持 `vllm-ascend`。 |
330-| entrypoint | 指定服务入口点 | string | 可选 | 服务入口点,非空字符串。默认 `vllm.entrypoints.openai.api_server` 为 vLLM OpenAI 兼容 API 服务入口;若需其他入口,须与当前安装的 vLLM/vLLM-Ascend 中可 `-m` 运行的模块一致。 |
331-| env_vars | 配置环境变量 | dict | 可选 | 环境变量配置。默认值:`{}` |
332-| served_model_name | 指定服务化模型名称 | string | 可选 | 推理服务对外使用的模型名称标识,非空字符串。**需与测评端(`evaluation.evaluation`)保持一致**。默认值:`"served_model_name"` |
333-| host | 指定服务主机地址 | string | 可选 | 推理服务监听地址,支持 localhost、IPv4、IPv6 格式。**需与测评端保持一致**。默认值:`"localhost"` |
334-| port | 指定服务端口 | int | 可选 | 推理服务监听端口,范围:1-65535。**需与测评端保持一致**。默认值:`1234` |
335-| health_check_endpoint | 指定健康检查端点 | string | 可选 | 就绪探测时请求的 **HTTP 路径**,须与推理进程实际提供的、可返回成功响应的 URL 一致。默认 `"/v1/models"` 对应常见 OpenAI 兼容服务的模型列表接口。必须以 `/` 开头,其它取值无统一列表,可按部署的 vLLM-Ascend 真实路由自定义。 |
336-| startup_timeout | 设置启动超时时间 | int | 可选 | 启动超时时间(秒),必须大于 0。默认值:`600` |
337-| args | 配置推理引擎启动参数 | dict | 可选 | 推理引擎启动参数,用于添加其他 vLLM-Ascend 参数配置。默认值:`{}` |
338- 
339-**注意**: 不同模型拉起服务化时需要的参数可能不同,用户需要根据实际模型调整服务化参数。可以参考 [vLLM-Ascend 教程](https://docs.vllm.ai/projects/vllm-ascend-cn/zh-cn/latest/user_guide/configuration/index.html) 按模型需求配置参数,启动参数可以在 `args` 中进行添加,环境变量可以在 `env_vars` 中添加。
340- 
341-**配置示例**:
342- 
343-```yaml
344-inference_engine:
345- type: vllm-ascend
346- entrypoint: vllm.entrypoints.openai.api_server
347- env_vars:
348- HCCL_BUFFSIZE: 1024
349- VLLM_VERSION: 0.11.0
350- ASCEND_RT_VISIBLE_DEVICES: 0
351- served_model_name: served_model_name
352- host: localhost
353- port: 1234
354- health_check_endpoint: /v1/models
355- startup_timeout: 600
356- args:
357- enforce-eager: true
358- served-model-name: served_model_name
359- trust-remote-code: true
360- tensor-parallel-size: 1
361- data-parallel-size: 1
362- quantization: ascend
363- enable-prefix-caching: false
364- max-model-len: 8192
365- max-num-batched-tokens: 8192
366- gpu-memory-utilization: 0.9
367- additional_config:
368- ascend_scheduler_config:
369- enable: true
370- enable_weight_nz_layout: true
371-```
372- 
373-### 2.3 使用示例
374- 
375-完整的自动调优配置示例请参考:
376- 
377-- standing_high 调优策略配置:[standing_high.yaml](../../knowledge_base/tuning_strategies/standing_high/standing_high.yaml)
378-- standing_high_with_experience 调优策略配置:[standing_high_with_experience.yaml](../../knowledge_base/tuning_strategies/standing_high_with_experience/standing_high_with_experience.yaml)
379-- binary_fallback 调优策略配置:[binary_fallback.yaml](../../knowledge_base/tuning_strategies/binary_fallback/binary_fallback.yaml)
@@ -27,10 +27,15 @@ MindIE 保存格式配置,导出 MindIE 落盘格式的权重文件。
27## 3. 完整配置参考27## 3. 完整配置参考
28 28 
29```yaml29```yaml
30-apiversion: modelslim_v130+apiversion: multimodal_sd_modelslim_v1
31spec:31spec:
32 save:32 save:
33 - type: mindie_format_saver33 - type: mindie_format_saver
34 part_file_size: 434 part_file_size: 4
35 ext: {}35 ext: {}
36+ multimodal_sd_config:
37+ dump_config:
38+ enable_dump: true
39+ capture_mode: args
40+ dump_data_dir: ''
36```41```
@@ -18,20 +18,22 @@
18|----------|------|-----------|--------|----------------|------|----------|18|----------|------|-----------|--------|----------------|------|----------|
19| `type` | `string` | 可选 | `adapt_rotation` | `adapt_rotation` | 处理器类型,固定为 `adapt_rotation`。 | 无 |19| `type` | `string` | 可选 | `adapt_rotation` | `adapt_rotation` | 处理器类型,固定为 `adapt_rotation`。 | 无 |
20| `stage` | `int` | 必选 | 无 | `1`、`2` | 旋转适配阶段:1 或 2,决定使用哪个阶段配置。 | 无 |20| `stage` | `int` | 必选 | 无 | `1`、`2` | 旋转适配阶段:1 或 2,决定使用哪个阶段配置。 | 无 |
21-| `stage_config` | `object` | 必选 | 无 | — | 阶段配置对象(内部自动组装字段,必选但由 before-validator 根据 `stage` 自动生成,用户无需在 YAML 中配置);YAML 中不要直接配置该字段,请把阶段字段(如 steps、quant_dtype)平铺在处理器下,见《AdaptRotationStage1ProcessorConfig 配置说明》/《AdaptRotationStage2ProcessorConfig 配置说明》。 | 本页 <a href="#2-2-processorconfig">§2.2</a> |21+| `stage_config` | `object` | 必选 | 无 | — | 阶段配置对象(内部自动组装字段,必选但由 before-validator 根据 `stage` 自动生成,用户无需在 YAML 中配置);YAML 中不要直接配置该字段,请把阶段字段(如 steps、quant_dtype)平铺在处理器下,见<a href="#2-2-1-adapt-rotation-stage1">《AdaptRotationStage1ProcessorConfig 配置说明》</a>/<a href="#2-2-2-adapt-rotation-stage2">《AdaptRotationStage2ProcessorConfig 配置说明》</a>。 | 本页 <a href="#2-2-processorconfig">§2.2</a> |
22 22 
23**配置约束**23**配置约束**
24 24 
25- 按 stage 把扁平字段组装为 stage_config:仅允许对应阶段字段,多余字段报错。25- 按 stage 把扁平字段组装为 stage_config:仅允许对应阶段字段,多余字段报错。
26 26 
27-<h3 id="2-2-processorconfig">2.2 ProcessorConfig</h3>27+<h3 id="2-2-processorconfig">2.2 《<a href="linear_quant.md">ProcessorConfig</a>》</h3>
28 28 
29**派生类**29**派生类**
30 30 
31-- `AdaptRotationStage1ProcessorConfig` — adapt_rotation 阶段1的配置。 本页 <a href="#2-3-adapt-rotation-stage1">§2.3</a>31+| 配置类 | 说明 | 文档 |
32-- `AdaptRotationStage2ProcessorConfig` — adapt_rotation 阶段2的配置。 本页 <a href="#2-4-adapt-rotation-stage2">§2.4</a>32+|--------|------|------|
33+| `AdaptRotationStage1ProcessorConfig` | adapt_rotation 阶段1的配置。 | 本页 <a href="#2-2-1-adapt-rotation-stage1">§2.2.1</a> |
34+| `AdaptRotationStage2ProcessorConfig` | adapt_rotation 阶段2的配置。 | 本页 <a href="#2-2-2-adapt-rotation-stage2">§2.2.2</a> |
33 35 
34-<h4 id="2-3-adapt-rotation-stage1">2.3 AdaptRotationStage1ProcessorConfig</h4>36+<h4 id="2-2-1-adapt-rotation-stage1">2.2.1 AdaptRotationStage1ProcessorConfig</h4>
35 37 
36adapt_rotation 阶段1的配置。38adapt_rotation 阶段1的配置。
37 39 
@@ -49,7 +51,7 @@ adapt_rotation 阶段1的配置。
49- 校验 layer_type:每个元素为非空字符串且长度 <= 12851- 校验 layer_type:每个元素为非空字符串且长度 <= 128
50- 校验 block_size:取值范围为-1或2的非负整数次幂52- 校验 block_size:取值范围为-1或2的非负整数次幂
51 53 
52-<h4 id="2-4-adapt-rotation-stage2">2.4 AdaptRotationStage2ProcessorConfig</h4>54+<h4 id="2-2-2-adapt-rotation-stage2">2.2.2 AdaptRotationStage2ProcessorConfig</h4>
53 55 
54adapt_rotation 阶段2的配置。56adapt_rotation 阶段2的配置。
55 57 
@@ -72,13 +74,20 @@ adapt_rotation 阶段2的配置。
72```yaml74```yaml
73apiversion: modelslim_v175apiversion: modelslim_v1
74spec:76spec:
77+ prior:
78+ - process:
79+ - type: adapt_rotation
80+ stage: 1
81+ steps: 20
82+ quant_dtype: int4
83+ layer_type:
84+ - up_proj
85+ block_size: -1
86+ max_samples: 2048
75 process:87 process:
76 - type: adapt_rotation88 - type: adapt_rotation
77- stage: 189+ stage: 2
78- steps: 2090+ online: false
79- quant_dtype: int4
80- layer_type:
81- - up_proj
82 block_size: -191 block_size: -1
83- max_samples: 204892+ max_tp_size: 1
84```93```
@@ -32,7 +32,7 @@ autoround 量化策略:对匹配的线性层应用一组量化配置。
32 32 
33| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |33| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
34|----------|------|-----------|--------|----------------|------|----------|34|----------|------|-----------|--------|----------------|------|----------|
35-| `qconfig` | `object` | 必选 | 无 | — | 激活与权重的量化配置,见《LinearQConfig 配置说明》。 | 本页 <a href="#2-3-linear-qconfig">§2.3</a> |35+| `qconfig` | `object` | 必选 | 无 | — | 激活与权重的量化配置,见<a href="#2-2-1-linear-qconfig">《LinearQConfig 配置说明》</a>。 | 本页 <a href="#2-2-1-linear-qconfig">§2.2.1</a> |
36| `include` | `list[string]` | 可选 | `['*']` | — | 包含的模块名称模式,默认 `*` 匹配全部模块 | 无 |36| `include` | `list[string]` | 可选 | `['*']` | — | 包含的模块名称模式,默认 `*` 匹配全部模块 | 无 |
37| `exclude` | `list[string]` | 可选 | `[]` | — | 排除的模块名称模式,优先级高于 `include` | 无 |37| `exclude` | `list[string]` | 可选 | `[]` | — | 排除的模块名称模式,优先级高于 `include` | 无 |
38 38 
@@ -40,29 +40,29 @@ autoround 量化策略:对匹配的线性层应用一组量化配置。
40 40 
41- 无。41- 无。
42 42 
43-<h3 id="2-3-linear-qconfig">2.3 LinearQConfig</h3>43+<h4 id="2-2-1-linear-qconfig">2.2.1 LinearQConfig</h4>
44 44 
45线性层(Linear)的量化配置,含激活与权重两路量化。45线性层(Linear)的量化配置,含激活与权重两路量化。
46 46 
47| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |47| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
48|----------|------|-----------|--------|----------------|------|----------|48|----------|------|-----------|--------|----------------|------|----------|
49-| `act` | `object` | 可选 | `{'dtype': 'float', 'scope': 'per_tensor', 'symmetric': True, 'method': 'none', 'ext': {}}` | — | 激活值的量化配置。默认 `float`(不量化激活),仅对权重做量化。 | 本页 <a href="#2-4-qconfig">§2.4</a> |49+| `act` | `object` | 可选 | `{'dtype': 'float', 'scope': 'per_tensor', 'symmetric': True, 'method': 'none', 'ext': {}}` | — | 激活值的量化配置。由激活量化器实现,`method` 支持 `minmax`、`histogram`、`none`;`scope` 支持 `per_tensor`、`per_token`、`per_channel`(限 int8/fp8_e4m3/mxfp8 的 minmax)等。默认 `float`(不量化激活),仅对权重做量化。 | 本页 <a href="#2-2-2-qconfig">§2.2.2</a> |
50-| `weight` | `object` | 必选 | 无 | — | 权重的量化配置,必选。 | 本页 <a href="#2-4-qconfig">§2.4</a> |50+| `weight` | `object` | 必选 | 无 | — | 权重的量化配置,必选。由权重量化器实现,`method` 支持 `minmax`、`mse_round`、`ssz`、`gptq` 等;`scope` 支持 `per_channel`、`per_group`、`per_block` 等(不支持 `per_tensor`/`per_token`)。 | 本页 <a href="#2-2-2-qconfig">§2.2.2</a> |
51 51 
52**配置约束**52**配置约束**
53 53 
54- 无。54- 无。
55 55 
56-<h3 id="2-4-qconfig">2.4 QConfig</h3>56+<h4 id="2-2-2-qconfig">2.2.2 QConfig</h4>
57 57 
58描述单个张量(权重或激活)的量化方式。58描述单个张量(权重或激活)的量化方式。
59 59 
60| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |60| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
61|----------|------|-----------|--------|----------------|------|----------|61|----------|------|-----------|--------|----------------|------|----------|
62| `dtype` | `string` | 必选 | 无 | `float`、`int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3` | 量化数据类型,如 `int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3`;`float` 表示该张量不量化。 | 无 |62| `dtype` | `string` | 必选 | 无 | `float`、`int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3` | 量化数据类型,如 `int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3`;`float` 表示该张量不量化。 | 无 |
63-| `scope` | `string` | 必选 | 无 | `per_tensor`、`per_channel`、`per_group`、`per_block`、`per_token`、`pd_mix`、`per_head`、`dual_scale` | 量化粒度,即 scale/zero_point 的计算范围:`per_tensor`(整张量一个尺度)、`per_channel`(按通道)、`per_group`/`per_block`(按分组或固定块)、`per_token`(按 token)、`per_head`(按注意力头)、`dual_scale`(双尺度)等;合法取值组合取决于 `dtype` 与量化器实现。 | 无 |63+| `scope` | `string` | 必选 | 无 | `per_tensor`、`per_channel`、`per_group`、`per_block`、`per_token`、`pd_mix`、`per_head`、`dual_scale`、`per_channel_neg_offset` | 量化粒度,即 scale/zero_point 的计算范围。各取值含义:`per_tensor`(整张量一个尺度)、`per_channel`(按通道)、`per_group`/`per_block`(按分组或固定块)、`per_token`(按 token)、`per_head`(按注意力头)、`pd_mix`(Prefill/Decode 混合粒度)、`dual_scale`(双尺度)等;按场景可用取值如下(还须与 `dtype`/`method` 组合匹配):激活:`per_tensor`、`per_token`、`per_channel`(当前为 `int8`/`fp8_e4m3`/`mxfp8` 的 minmax)、`per_block`(MX minmax)、`pd_mix`、`dual_scale`;权重:`per_channel`、`per_group`(GPTQ)、`per_block`(MX)、`dual_scale`;FA3 注意力:`per_head`(默认)、`per_channel`、`per_token`、`per_block`。 | 无 |
64| `symmetric` | `bool` | 必选 | 无 | — | 是否对称量化。对称量化只保存 scale;非对称量化额外保存 zero_point,可用性取决于 `dtype`/`scope` 组合。 | 无 |64| `symmetric` | `bool` | 必选 | 无 | — | 是否对称量化。对称量化只保存 scale;非对称量化额外保存 zero_point,可用性取决于 `dtype`/`scope` 组合。 | 无 |
65-| `method` | `string` | 必选 | 无 | — | 量化参数估计算法,如 `minmax`、`mse_round`、`histogram`、`ssz`、`none` 等;可用取值取决于 `dtype`/`scope`/`symmetric` 组合,`none` 表示不估计参数(配合 `float` 使用)。 | 无 |65+| `method` | `string` | 必选 | 无 | — | 量化参数估计算法,如 `minmax`、`mse_round`、`histogram`、`ssz`、`none`、`gptq` 等;算法按张量类型分属两套量化器:激活量化器支持 `minmax`、`histogram`、`none`(配合 `float`);权重量化器支持 `minmax`、`mse_round`、`ssz`、`gptq` 等。可用取值还取决于 `dtype`/`scope`/`symmetric` 组合,`none` 表示不估计参数。 | 无 |
66| `ext` | `object` | 可选 | `{}` | — | 量化器扩展参数,随 `method` 与量化器实现而定(如 gptq 的 `percdamp`/`group_size`);空对象表示无扩展参数。 | 无 |66| `ext` | `object` | 可选 | `{}` | — | 量化器扩展参数,随 `method` 与量化器实现而定(如 gptq 的 `percdamp`/`group_size`);空对象表示无扩展参数。 | 无 |
67 67 
68**配置约束**68**配置约束**
@@ -17,7 +17,7 @@ AWQ(Activation-aware Weight Quantization)处理器配置。
17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
18|----------|------|-----------|--------|----------------|------|----------|18|----------|------|-----------|--------|----------------|------|----------|
19| `type` | `string` | 可选 | `awq` | `awq` | 处理器类型,固定为 `awq`。 | 无 |19| `type` | `string` | 可选 | `awq` | `awq` | 处理器类型,固定为 `awq`。 | 无 |
20-| `weight_qconfig` | `object` | 必选 | 无 | — | 权重的量化配置(QConfig),必选,见《QConfig 配置说明》。 | 本页 <a href="#2-2-qconfig">§2.2</a> |20+| `weight_qconfig` | `object` | 必选 | 无 | — | 权重的量化配置(QConfig),必选,见<a href="#2-2-qconfig">《QConfig 配置说明》</a>。 | 本页 <a href="#2-2-qconfig">§2.2</a> |
21| `enable_subgraph_type` | `list[any]` | 可选 | `['norm-linear', 'linear-linear', 'ov', 'up-down']` | — | 应用 AWQ 的子图类型列表,默认 `norm-linear`、`linear-linear`、`ov`、`up-down`。 | 无 |21| `enable_subgraph_type` | `list[any]` | 可选 | `['norm-linear', 'linear-linear', 'ov', 'up-down']` | — | 应用 AWQ 的子图类型列表,默认 `norm-linear`、`linear-linear`、`ov`、`up-down`。 | 无 |
22| `n_grid` | `int` | 可选 | `20` | — | 网格搜索的网格数,用于搜索最优量化尺度/裁剪点,必须大于0。 | 无 |22| `n_grid` | `int` | 可选 | `20` | — | 网格搜索的网格数,用于搜索最优量化尺度/裁剪点,必须大于0。 | 无 |
23| `include` | `list[string] / null` | 可选 | `null` | — | 包含的模块名称模式;不设置表示全部匹配。 | 无 |23| `include` | `list[string] / null` | 可选 | `null` | — | 包含的模块名称模式;不设置表示全部匹配。 | 无 |
@@ -34,9 +34,9 @@ AWQ(Activation-aware Weight Quantization)处理器配置。
34| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |34| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
35|----------|------|-----------|--------|----------------|------|----------|35|----------|------|-----------|--------|----------------|------|----------|
36| `dtype` | `string` | 必选 | 无 | `float`、`int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3` | 量化数据类型,如 `int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3`;`float` 表示该张量不量化。 | 无 |36| `dtype` | `string` | 必选 | 无 | `float`、`int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3` | 量化数据类型,如 `int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3`;`float` 表示该张量不量化。 | 无 |
37-| `scope` | `string` | 必选 | 无 | `per_tensor`、`per_channel`、`per_group`、`per_block`、`per_token`、`pd_mix`、`per_head`、`dual_scale` | 量化粒度,即 scale/zero_point 的计算范围:`per_tensor`(整张量一个尺度)、`per_channel`(按通道)、`per_group`/`per_block`(按分组或固定块)、`per_token`(按 token)、`per_head`(按注意力头)、`dual_scale`(双尺度)等;合法取值组合取决于 `dtype` 与量化器实现。 | 无 |37+| `scope` | `string` | 必选 | 无 | `per_tensor`、`per_channel`、`per_group`、`per_block`、`per_token`、`pd_mix`、`per_head`、`dual_scale`、`per_channel_neg_offset` | 量化粒度,即 scale/zero_point 的计算范围。各取值含义:`per_tensor`(整张量一个尺度)、`per_channel`(按通道)、`per_group`/`per_block`(按分组或固定块)、`per_token`(按 token)、`per_head`(按注意力头)、`pd_mix`(Prefill/Decode 混合粒度)、`dual_scale`(双尺度)等;按场景可用取值如下(还须与 `dtype`/`method` 组合匹配):激活:`per_tensor`、`per_token`、`per_channel`(当前为 `int8`/`fp8_e4m3`/`mxfp8` 的 minmax)、`per_block`(MX minmax)、`pd_mix`、`dual_scale`;权重:`per_channel`、`per_group`(GPTQ)、`per_block`(MX)、`dual_scale`;FA3 注意力:`per_head`(默认)、`per_channel`、`per_token`、`per_block`。 | 无 |
38| `symmetric` | `bool` | 必选 | 无 | — | 是否对称量化。对称量化只保存 scale;非对称量化额外保存 zero_point,可用性取决于 `dtype`/`scope` 组合。 | 无 |38| `symmetric` | `bool` | 必选 | 无 | — | 是否对称量化。对称量化只保存 scale;非对称量化额外保存 zero_point,可用性取决于 `dtype`/`scope` 组合。 | 无 |
39-| `method` | `string` | 必选 | 无 | — | 量化参数估计算法,如 `minmax`、`mse_round`、`histogram`、`ssz`、`none` 等;可用取值取决于 `dtype`/`scope`/`symmetric` 组合,`none` 表示不估计参数(配合 `float` 使用)。 | 无 |39+| `method` | `string` | 必选 | 无 | — | 量化参数估计算法,如 `minmax`、`mse_round`、`histogram`、`ssz`、`none`、`gptq` 等;算法按张量类型分属两套量化器:激活量化器支持 `minmax`、`histogram`、`none`(配合 `float`);权重量化器支持 `minmax`、`mse_round`、`ssz`、`gptq` 等。可用取值还取决于 `dtype`/`scope`/`symmetric` 组合,`none` 表示不估计参数。 | 无 |
40| `ext` | `object` | 可选 | `{}` | — | 量化器扩展参数,随 `method` 与量化器实现而定(如 gptq 的 `percdamp`/`group_size`);空对象表示无扩展参数。 | 无 |40| `ext` | `object` | 可选 | `{}` | — | 量化器扩展参数,随 `method` 与量化器实现而定(如 gptq 的 `percdamp`/`group_size`);空对象表示无扩展参数。 | 无 |
41 41 
42**配置约束**42**配置约束**
@@ -25,35 +25,37 @@
25 25 
26- 无。26- 无。
27 27 
28-<h3 id="2-2-autoprocessorconfig">2.2 AutoProcessorConfig</h3>28+<h3 id="2-2-autoprocessorconfig">2.2 《<a href="linear_quant.md">AutoProcessorConfig</a>》</h3>
29 29 
30**派生类**30**派生类**
31 31 
32-- `AdaptRotationProcessorConfig`(`type: adapt_rotation`) — 自适应旋转(adapt_rotation)处理器配置。 《[adapt_rotation 配置说明](adapt_rotation.md)》32+| 配置类 | `type` | 说明 | 文档 |
33-- `AutoroundProcessorConfig`(`type: autoround_quant`) — autoround 量化处理器配置。 《[autoround_quant 配置说明](autoround_quant.md)》33+|--------|----------|------|------|
34-- `AWQProcessorConfig`(`type: awq`) — AWQ(Activation-aware Weight Quantization)处理器配置。 《[awq 配置说明](awq.md)》34+| `AdaptRotationProcessorConfig` | `adapt_rotation` | 自适应旋转(adapt_rotation)处理器配置。 | 《[adapt_rotation 配置说明](adapt_rotation.md)》 |
35-- `BinaryAnalysisProcessorConfig`(`type: binary_analysis`) — 二值(有/无量化)敏感度分析处理器配置。 本页 <a href="#2-1-binary-analysis">§2.1</a>35+| `AutoroundProcessorConfig` | `autoround_quant` | autoround 量化处理器配置。 | 《[autoround_quant 配置说明](autoround_quant.md)》 |
36-- `BinaryOperatorLayerWiseProcessorConfig`(`type: binary_operator_layer_wise`) — 逐层敏感度分析处理器配置(对比逐块浮点与量化输出)。 《[binary_operator_layer_wise 配置说明](binary_operator_layer_wise.md)》36+| `AWQProcessorConfig` | `awq` | AWQ(Activation-aware Weight Quantization)处理器配置。 | 《[awq 配置说明](awq.md)》 |
37-- `BinaryOperatorModelWiseProcessorConfig`(`type: binary_operator_model_wise`) — 模型级敏感度分析配置(对比模型最终输出,使用 MSE 指标) 《[binary_operator_model_wise 配置说明](binary_operator_model_wise.md)》37+| `BinaryAnalysisProcessorConfig` | `binary_analysis` | 二值(有/无量化)敏感度分析处理器配置。 | 本页 <a href="#2-1-binary-analysis">§2.1</a> |
38-- `DynamicCacheProcessorConfig`(`type: dynamic_cache`) — KV cache 量化处理器配置。 《[dynamic_cache 配置说明](dynamic_cache.md)》38+| `BinaryOperatorLayerWiseProcessorConfig` | `binary_operator_layer_wise` | 逐层敏感度分析处理器配置(对比逐块浮点与量化输出)。 | 《[binary_operator_layer_wise 配置说明](binary_operator_layer_wise.md)》 |
39-- `FA3QuantProcessorConfig`(`type: fa3_quant`) — FA3(FlashAttention-3)量化处理器配置。 《[fa3_quant 配置说明](fa3_quant.md)》39+| `BinaryOperatorModelWiseProcessorConfig` | `binary_operator_model_wise` | 模型级敏感度分析配置(对比模型最终输出,使用 MSE 指标) | 《[binary_operator_model_wise 配置说明](binary_operator_model_wise.md)》 |
40-- `FlatQuantProcessorConfig`(`type: flatquant`) — FlatQuant处理器配置:定义量化训练参数、策略、混合精度等 《[flatquant 配置说明](flatquant.md)》40+| `DynamicCacheProcessorConfig` | `dynamic_cache` | KV cache 量化处理器配置。 | 《[dynamic_cache 配置说明](dynamic_cache.md)》 |
41-- `FlexAWQSSZProcessorConfig`(`type: flex_awq_ssz`) — FlexAWQSSZ 平滑+AWQ 处理器配置。 《[flex_awq_ssz 配置说明](flex_awq_ssz.md)》41+| `FA3QuantProcessorConfig` | `fa3_quant` | FA3(FlashAttention-3)量化处理器配置。 | 《[fa3_quant 配置说明](fa3_quant.md)》 |
42-- `FlexSmoothQuantProcessorConfig`(`type: flex_smooth_quant`) — FlexSmoothQuant 平滑量化处理器配置。 《[flex_smooth_quant 配置说明](flex_smooth_quant.md)》42+| `FlatQuantProcessorConfig` | `flatquant` | FlatQuant处理器配置:定义量化训练参数、策略、混合精度等 | 《[flatquant 配置说明](flatquant.md)》 |
43-- `FloatSparseProcessorConfig`(`type: float_sparse`) — 浮点稀疏处理器配置。 《[float_sparse 配置说明](float_sparse.md)》43+| `FlexAWQSSZProcessorConfig` | `flex_awq_ssz` | Flex AWQ SSZ 离群值抑制处理器配置。 | 《[flex_awq_ssz 配置说明](flex_awq_ssz.md)》 |
44-- `GroupProcessorConfig`(`type: group`) — 处理器合并器配置。 《[group 配置说明](group.md)》44+| `FlexSmoothQuantProcessorConfig` | `flex_smooth_quant` | FlexSmoothQuant 平滑量化处理器配置。 | 《[flex_smooth_quant 配置说明](flex_smooth_quant.md)》 |
45-- `IterSmoothProcessorConfig`(`type: iter_smooth`) — 迭代平滑(IterativeSmooth)处理器配置。 《[iter_smooth 配置说明](iter_smooth.md)》45+| `FloatSparseProcessorConfig` | `float_sparse` | 浮点稀疏处理器配置。 | 《[float_sparse 配置说明](float_sparse.md)》 |
46-- `KVSmoothProcessorConfig`(`type: kv_smooth`) — KV cache 平滑处理器配置。 《[kv_smooth 配置说明](kv_smooth.md)》46+| `GroupProcessorConfig` | `group` | 处理器合并器配置。 | 《[group 配置说明](group.md)》 |
47-- `LinearProcessorConfig`(`type: linear_quant`) — 线性层(Linear)量化处理器配置。 《[linear_quant 配置说明](linear_quant.md)》47+| `IterSmoothProcessorConfig` | `iter_smooth` | 迭代平滑(IterativeSmooth)处理器配置。 | 《[iter_smooth 配置说明](iter_smooth.md)》 |
48-- `LoadProcessorConfig`(`type: load`) — 模块加载/卸载处理器配置。 《[load 配置说明](load.md)》48+| `KVSmoothProcessorConfig` | `kv_smooth` | KV cache 平滑处理器配置。 | 《[kv_smooth 配置说明](kv_smooth.md)》 |
49-- `OASQProcessorConfig`(`type: oasq`) — OASQ(Outlier-Aware Smooth Quantization)处理器配置。 《[oasq 配置说明](oasq.md)》49+| `LinearProcessorConfig` | `linear_quant` | 线性层(Linear)量化处理器配置。 | 《[linear_quant 配置说明](linear_quant.md)》 |
50-- `OnlineQuaRotProcessorConfig`(`type: online_quarot`) — 在线 QuaRot 旋转处理器配置。 《[online_quarot 配置说明](online_quarot.md)》50+| `LoadProcessorConfig` | `load` | 模块加载/卸载处理器配置。 | 《[load 配置说明](load.md)》 |
51-- `QuaRotProcessorConfig`(`type: quarot`) — QuaRot(离线旋转)处理器配置。 《[quarot 配置说明](quarot.md)》51+| `OASQProcessorConfig` | `oasq` | OASQ(Outlier-Aware Smooth Quantization)处理器配置。 | 《[oasq 配置说明](oasq.md)》 |
52-- `QuantSaveProcessorConfig`(`type: saver`) — 统一保存处理器配置。 《[saver 配置说明](saver.md)》52+| `OnlineQuaRotProcessorConfig` | `online_quarot` | 在线 QuaRot 旋转处理器配置。 | 《[online_quarot 配置说明](online_quarot.md)》 |
53-- `SmoothQuantProcessorConfig`(`type: smooth_quant`) — SmoothQuant 平滑量化处理器配置。 《[smooth_quant 配置说明](smooth_quant.md)》53+| `QuaRotProcessorConfig` | `quarot` | QuaRot(离线旋转)处理器配置。 | 《[quarot 配置说明](quarot.md)》 |
54-- `SVDResidualProcessorConfig`(`type: svd_res`) — SVD 残差(低秩补偿)处理器配置。 《[svd_res 配置说明](svd_res.md)》54+| `QuantSaveProcessorConfig` | `saver` | 统一保存处理器配置。 | 《[saver 配置说明](saver.md)》 |
55-- `TrainableLinearQuantProcessorConfig`(`type: trainable_linear_quant`) — 可训练线性量化(TLQ)处理器配置。 《[trainable_linear_quant 配置说明](trainable_linear_quant.md)》55+| `SmoothQuantProcessorConfig` | `smooth_quant` | SmoothQuant 平滑量化处理器配置。 | 《[smooth_quant 配置说明](smooth_quant.md)》 |
56-- `UnaryAnalysisProcessorConfig`(`type: unary_analysis`) — 一元(无量化)敏感度分析处理器配置。 《[unary_analysis 配置说明](unary_analysis.md)》56+| `SVDResidualProcessorConfig` | `svd_res` | SVD 残差(低秩补偿)处理器配置。 | 《[svd_res 配置说明](svd_res.md)》 |
57+| `TrainableLinearQuantProcessorConfig` | `trainable_linear_quant` | 可训练线性量化(TLQ)处理器配置。 | 《[trainable_linear_quant 配置说明](trainable_linear_quant.md)》 |
58+| `UnaryAnalysisProcessorConfig` | `unary_analysis` | 一元(无量化)敏感度分析处理器配置。 | 《[unary_analysis 配置说明](unary_analysis.md)》 |
57 59 
58## 3. 完整配置参考60## 3. 完整配置参考
59 61 
@@ -17,7 +17,7 @@
17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
18|----------|------|-----------|--------|----------------|------|----------|18|----------|------|-----------|--------|----------------|------|----------|
19| `type` | `string` | 可选 | `binary_operator_layer_wise` | `binary_operator_layer_wise` | 处理器类型,固定为 `binary_operator_layer_wise`。 | 无 |19| `type` | `string` | 可选 | `binary_operator_layer_wise` | `binary_operator_layer_wise` | 处理器类型,固定为 `binary_operator_layer_wise`。 | 无 |
20-| `metrics` | `string` | 可选 | `mse_layer_wise` | — | 分析指标,如 `mse_layer_wise`。 | 无 |20+| `metrics` | `string` | 可选 | `mse_layer_wise` | — | 分析指标 `mse_layer_wise`。 | 无 |
21| `quant_modules` | `list[string]` | 可选 | `['*']` | — | 与 linear_quant.include、CLI --quant_modules 一致(YAML 占位 ${quant_modules});用于层敏感结果展示名后缀,如 model.layers.2 (mod1, mod2)。 | 无 |21| `quant_modules` | `list[string]` | 可选 | `['*']` | — | 与 linear_quant.include、CLI --quant_modules 一致(YAML 占位 ${quant_modules});用于层敏感结果展示名后缀,如 model.layers.2 (mod1, mod2)。 | 无 |
22| `configs` | `list[object]` | 可选 | `[]` | — | 用于执行量化-反量化路径的量化子处理器配置列表 | 本页 <a href="#2-2-autoprocessorconfig">§2.2</a> |22| `configs` | `list[object]` | 可选 | `[]` | — | 用于执行量化-反量化路径的量化子处理器配置列表 | 本页 <a href="#2-2-autoprocessorconfig">§2.2</a> |
23 23 
@@ -25,35 +25,37 @@
25 25 
26- 无。26- 无。
27 27 
28-<h3 id="2-2-autoprocessorconfig">2.2 AutoProcessorConfig</h3>28+<h3 id="2-2-autoprocessorconfig">2.2 《<a href="linear_quant.md">AutoProcessorConfig</a>》</h3>
29 29 
30**派生类**30**派生类**
31 31 
32-- `AdaptRotationProcessorConfig`(`type: adapt_rotation`) — 自适应旋转(adapt_rotation)处理器配置。 《[adapt_rotation 配置说明](adapt_rotation.md)》32+| 配置类 | `type` | 说明 | 文档 |
33-- `AutoroundProcessorConfig`(`type: autoround_quant`) — autoround 量化处理器配置。 《[autoround_quant 配置说明](autoround_quant.md)》33+|--------|----------|------|------|
34-- `AWQProcessorConfig`(`type: awq`) — AWQ(Activation-aware Weight Quantization)处理器配置。 《[awq 配置说明](awq.md)》34+| `AdaptRotationProcessorConfig` | `adapt_rotation` | 自适应旋转(adapt_rotation)处理器配置。 | 《[adapt_rotation 配置说明](adapt_rotation.md)》 |
35-- `BinaryAnalysisProcessorConfig`(`type: binary_analysis`) — 二值(有/无量化)敏感度分析处理器配置。 《[binary_analysis 配置说明](binary_analysis.md)》35+| `AutoroundProcessorConfig` | `autoround_quant` | autoround 量化处理器配置。 | 《[autoround_quant 配置说明](autoround_quant.md)》 |
36-- `BinaryOperatorLayerWiseProcessorConfig`(`type: binary_operator_layer_wise`) — 逐层敏感度分析处理器配置(对比逐块浮点与量化输出)。 本页 <a href="#2-1-binary-operator-layer-wise">§2.1</a>36+| `AWQProcessorConfig` | `awq` | AWQ(Activation-aware Weight Quantization)处理器配置。 | 《[awq 配置说明](awq.md)》 |
37-- `BinaryOperatorModelWiseProcessorConfig`(`type: binary_operator_model_wise`) — 模型级敏感度分析配置(对比模型最终输出,使用 MSE 指标) 《[binary_operator_model_wise 配置说明](binary_operator_model_wise.md)》37+| `BinaryAnalysisProcessorConfig` | `binary_analysis` | 二值(有/无量化)敏感度分析处理器配置。 | 《[binary_analysis 配置说明](binary_analysis.md)》 |
38-- `DynamicCacheProcessorConfig`(`type: dynamic_cache`) — KV cache 量化处理器配置。 《[dynamic_cache 配置说明](dynamic_cache.md)》38+| `BinaryOperatorLayerWiseProcessorConfig` | `binary_operator_layer_wise` | 逐层敏感度分析处理器配置(对比逐块浮点与量化输出)。 | 本页 <a href="#2-1-binary-operator-layer-wise">§2.1</a> |
39-- `FA3QuantProcessorConfig`(`type: fa3_quant`) — FA3(FlashAttention-3)量化处理器配置。 《[fa3_quant 配置说明](fa3_quant.md)》39+| `BinaryOperatorModelWiseProcessorConfig` | `binary_operator_model_wise` | 模型级敏感度分析配置(对比模型最终输出,使用 MSE 指标) | 《[binary_operator_model_wise 配置说明](binary_operator_model_wise.md)》 |
40-- `FlatQuantProcessorConfig`(`type: flatquant`) — FlatQuant处理器配置:定义量化训练参数、策略、混合精度等 《[flatquant 配置说明](flatquant.md)》40+| `DynamicCacheProcessorConfig` | `dynamic_cache` | KV cache 量化处理器配置。 | 《[dynamic_cache 配置说明](dynamic_cache.md)》 |
41-- `FlexAWQSSZProcessorConfig`(`type: flex_awq_ssz`) — FlexAWQSSZ 平滑+AWQ 处理器配置。 《[flex_awq_ssz 配置说明](flex_awq_ssz.md)》41+| `FA3QuantProcessorConfig` | `fa3_quant` | FA3(FlashAttention-3)量化处理器配置。 | 《[fa3_quant 配置说明](fa3_quant.md)》 |
42-- `FlexSmoothQuantProcessorConfig`(`type: flex_smooth_quant`) — FlexSmoothQuant 平滑量化处理器配置。 《[flex_smooth_quant 配置说明](flex_smooth_quant.md)》42+| `FlatQuantProcessorConfig` | `flatquant` | FlatQuant处理器配置:定义量化训练参数、策略、混合精度等 | 《[flatquant 配置说明](flatquant.md)》 |
43-- `FloatSparseProcessorConfig`(`type: float_sparse`) — 浮点稀疏处理器配置。 《[float_sparse 配置说明](float_sparse.md)》43+| `FlexAWQSSZProcessorConfig` | `flex_awq_ssz` | Flex AWQ SSZ 离群值抑制处理器配置。 | 《[flex_awq_ssz 配置说明](flex_awq_ssz.md)》 |
44-- `GroupProcessorConfig`(`type: group`) — 处理器合并器配置。 《[group 配置说明](group.md)》44+| `FlexSmoothQuantProcessorConfig` | `flex_smooth_quant` | FlexSmoothQuant 平滑量化处理器配置。 | 《[flex_smooth_quant 配置说明](flex_smooth_quant.md)》 |
45-- `IterSmoothProcessorConfig`(`type: iter_smooth`) — 迭代平滑(IterativeSmooth)处理器配置。 《[iter_smooth 配置说明](iter_smooth.md)》45+| `FloatSparseProcessorConfig` | `float_sparse` | 浮点稀疏处理器配置。 | 《[float_sparse 配置说明](float_sparse.md)》 |
46-- `KVSmoothProcessorConfig`(`type: kv_smooth`) — KV cache 平滑处理器配置。 《[kv_smooth 配置说明](kv_smooth.md)》46+| `GroupProcessorConfig` | `group` | 处理器合并器配置。 | 《[group 配置说明](group.md)》 |
47-- `LinearProcessorConfig`(`type: linear_quant`) — 线性层(Linear)量化处理器配置。 《[linear_quant 配置说明](linear_quant.md)》47+| `IterSmoothProcessorConfig` | `iter_smooth` | 迭代平滑(IterativeSmooth)处理器配置。 | 《[iter_smooth 配置说明](iter_smooth.md)》 |
48-- `LoadProcessorConfig`(`type: load`) — 模块加载/卸载处理器配置。 《[load 配置说明](load.md)》48+| `KVSmoothProcessorConfig` | `kv_smooth` | KV cache 平滑处理器配置。 | 《[kv_smooth 配置说明](kv_smooth.md)》 |
49-- `OASQProcessorConfig`(`type: oasq`) — OASQ(Outlier-Aware Smooth Quantization)处理器配置。 《[oasq 配置说明](oasq.md)》49+| `LinearProcessorConfig` | `linear_quant` | 线性层(Linear)量化处理器配置。 | 《[linear_quant 配置说明](linear_quant.md)》 |
50-- `OnlineQuaRotProcessorConfig`(`type: online_quarot`) — 在线 QuaRot 旋转处理器配置。 《[online_quarot 配置说明](online_quarot.md)》50+| `LoadProcessorConfig` | `load` | 模块加载/卸载处理器配置。 | 《[load 配置说明](load.md)》 |
51-- `QuaRotProcessorConfig`(`type: quarot`) — QuaRot(离线旋转)处理器配置。 《[quarot 配置说明](quarot.md)》51+| `OASQProcessorConfig` | `oasq` | OASQ(Outlier-Aware Smooth Quantization)处理器配置。 | 《[oasq 配置说明](oasq.md)》 |
52-- `QuantSaveProcessorConfig`(`type: saver`) — 统一保存处理器配置。 《[saver 配置说明](saver.md)》52+| `OnlineQuaRotProcessorConfig` | `online_quarot` | 在线 QuaRot 旋转处理器配置。 | 《[online_quarot 配置说明](online_quarot.md)》 |
53-- `SmoothQuantProcessorConfig`(`type: smooth_quant`) — SmoothQuant 平滑量化处理器配置。 《[smooth_quant 配置说明](smooth_quant.md)》53+| `QuaRotProcessorConfig` | `quarot` | QuaRot(离线旋转)处理器配置。 | 《[quarot 配置说明](quarot.md)》 |
54-- `SVDResidualProcessorConfig`(`type: svd_res`) — SVD 残差(低秩补偿)处理器配置。 《[svd_res 配置说明](svd_res.md)》54+| `QuantSaveProcessorConfig` | `saver` | 统一保存处理器配置。 | 《[saver 配置说明](saver.md)》 |
55-- `TrainableLinearQuantProcessorConfig`(`type: trainable_linear_quant`) — 可训练线性量化(TLQ)处理器配置。 《[trainable_linear_quant 配置说明](trainable_linear_quant.md)》55+| `SmoothQuantProcessorConfig` | `smooth_quant` | SmoothQuant 平滑量化处理器配置。 | 《[smooth_quant 配置说明](smooth_quant.md)》 |
56-- `UnaryAnalysisProcessorConfig`(`type: unary_analysis`) — 一元(无量化)敏感度分析处理器配置。 《[unary_analysis 配置说明](unary_analysis.md)》56+| `SVDResidualProcessorConfig` | `svd_res` | SVD 残差(低秩补偿)处理器配置。 | 《[svd_res 配置说明](svd_res.md)》 |
57+| `TrainableLinearQuantProcessorConfig` | `trainable_linear_quant` | 可训练线性量化(TLQ)处理器配置。 | 《[trainable_linear_quant 配置说明](trainable_linear_quant.md)》 |
58+| `UnaryAnalysisProcessorConfig` | `unary_analysis` | 一元(无量化)敏感度分析处理器配置。 | 《[unary_analysis 配置说明](unary_analysis.md)》 |
57 59 
58## 3. 完整配置参考60## 3. 完整配置参考
59 61 
@@ -25,35 +25,37 @@
25 25 
26- 无。26- 无。
27 27 
28-<h3 id="2-2-autoprocessorconfig">2.2 AutoProcessorConfig</h3>28+<h3 id="2-2-autoprocessorconfig">2.2 《<a href="linear_quant.md">AutoProcessorConfig</a>》</h3>
29 29 
30**派生类**30**派生类**
31 31 
32-- `AdaptRotationProcessorConfig`(`type: adapt_rotation`) — 自适应旋转(adapt_rotation)处理器配置。 《[adapt_rotation 配置说明](adapt_rotation.md)》32+| 配置类 | `type` | 说明 | 文档 |
33-- `AutoroundProcessorConfig`(`type: autoround_quant`) — autoround 量化处理器配置。 《[autoround_quant 配置说明](autoround_quant.md)》33+|--------|----------|------|------|
34-- `AWQProcessorConfig`(`type: awq`) — AWQ(Activation-aware Weight Quantization)处理器配置。 《[awq 配置说明](awq.md)》34+| `AdaptRotationProcessorConfig` | `adapt_rotation` | 自适应旋转(adapt_rotation)处理器配置。 | 《[adapt_rotation 配置说明](adapt_rotation.md)》 |
35-- `BinaryAnalysisProcessorConfig`(`type: binary_analysis`) — 二值(有/无量化)敏感度分析处理器配置。 《[binary_analysis 配置说明](binary_analysis.md)》35+| `AutoroundProcessorConfig` | `autoround_quant` | autoround 量化处理器配置。 | 《[autoround_quant 配置说明](autoround_quant.md)》 |
36-- `BinaryOperatorLayerWiseProcessorConfig`(`type: binary_operator_layer_wise`) — 逐层敏感度分析处理器配置(对比逐块浮点与量化输出)。 《[binary_operator_layer_wise 配置说明](binary_operator_layer_wise.md)》36+| `AWQProcessorConfig` | `awq` | AWQ(Activation-aware Weight Quantization)处理器配置。 | 《[awq 配置说明](awq.md)》 |
37-- `BinaryOperatorModelWiseProcessorConfig`(`type: binary_operator_model_wise`) — 模型级敏感度分析配置(对比模型最终输出,使用 MSE 指标) 本页 <a href="#2-1-binary-operator-model-wise">§2.1</a>37+| `BinaryAnalysisProcessorConfig` | `binary_analysis` | 二值(有/无量化)敏感度分析处理器配置。 | 《[binary_analysis 配置说明](binary_analysis.md)》 |
38-- `DynamicCacheProcessorConfig`(`type: dynamic_cache`) — KV cache 量化处理器配置。 《[dynamic_cache 配置说明](dynamic_cache.md)》38+| `BinaryOperatorLayerWiseProcessorConfig` | `binary_operator_layer_wise` | 逐层敏感度分析处理器配置(对比逐块浮点与量化输出)。 | 《[binary_operator_layer_wise 配置说明](binary_operator_layer_wise.md)》 |
39-- `FA3QuantProcessorConfig`(`type: fa3_quant`) — FA3(FlashAttention-3)量化处理器配置。 《[fa3_quant 配置说明](fa3_quant.md)》39+| `BinaryOperatorModelWiseProcessorConfig` | `binary_operator_model_wise` | 模型级敏感度分析配置(对比模型最终输出,使用 MSE 指标) | 本页 <a href="#2-1-binary-operator-model-wise">§2.1</a> |
40-- `FlatQuantProcessorConfig`(`type: flatquant`) — FlatQuant处理器配置:定义量化训练参数、策略、混合精度等 《[flatquant 配置说明](flatquant.md)》40+| `DynamicCacheProcessorConfig` | `dynamic_cache` | KV cache 量化处理器配置。 | 《[dynamic_cache 配置说明](dynamic_cache.md)》 |
41-- `FlexAWQSSZProcessorConfig`(`type: flex_awq_ssz`) — FlexAWQSSZ 平滑+AWQ 处理器配置。 《[flex_awq_ssz 配置说明](flex_awq_ssz.md)》41+| `FA3QuantProcessorConfig` | `fa3_quant` | FA3(FlashAttention-3)量化处理器配置。 | 《[fa3_quant 配置说明](fa3_quant.md)》 |
42-- `FlexSmoothQuantProcessorConfig`(`type: flex_smooth_quant`) — FlexSmoothQuant 平滑量化处理器配置。 《[flex_smooth_quant 配置说明](flex_smooth_quant.md)》42+| `FlatQuantProcessorConfig` | `flatquant` | FlatQuant处理器配置:定义量化训练参数、策略、混合精度等 | 《[flatquant 配置说明](flatquant.md)》 |
43-- `FloatSparseProcessorConfig`(`type: float_sparse`) — 浮点稀疏处理器配置。 《[float_sparse 配置说明](float_sparse.md)》43+| `FlexAWQSSZProcessorConfig` | `flex_awq_ssz` | Flex AWQ SSZ 离群值抑制处理器配置。 | 《[flex_awq_ssz 配置说明](flex_awq_ssz.md)》 |
44-- `GroupProcessorConfig`(`type: group`) — 处理器合并器配置。 《[group 配置说明](group.md)》44+| `FlexSmoothQuantProcessorConfig` | `flex_smooth_quant` | FlexSmoothQuant 平滑量化处理器配置。 | 《[flex_smooth_quant 配置说明](flex_smooth_quant.md)》 |
45-- `IterSmoothProcessorConfig`(`type: iter_smooth`) — 迭代平滑(IterativeSmooth)处理器配置。 《[iter_smooth 配置说明](iter_smooth.md)》45+| `FloatSparseProcessorConfig` | `float_sparse` | 浮点稀疏处理器配置。 | 《[float_sparse 配置说明](float_sparse.md)》 |
46-- `KVSmoothProcessorConfig`(`type: kv_smooth`) — KV cache 平滑处理器配置。 《[kv_smooth 配置说明](kv_smooth.md)》46+| `GroupProcessorConfig` | `group` | 处理器合并器配置。 | 《[group 配置说明](group.md)》 |
47-- `LinearProcessorConfig`(`type: linear_quant`) — 线性层(Linear)量化处理器配置。 《[linear_quant 配置说明](linear_quant.md)》47+| `IterSmoothProcessorConfig` | `iter_smooth` | 迭代平滑(IterativeSmooth)处理器配置。 | 《[iter_smooth 配置说明](iter_smooth.md)》 |
48-- `LoadProcessorConfig`(`type: load`) — 模块加载/卸载处理器配置。 《[load 配置说明](load.md)》48+| `KVSmoothProcessorConfig` | `kv_smooth` | KV cache 平滑处理器配置。 | 《[kv_smooth 配置说明](kv_smooth.md)》 |
49-- `OASQProcessorConfig`(`type: oasq`) — OASQ(Outlier-Aware Smooth Quantization)处理器配置。 《[oasq 配置说明](oasq.md)》49+| `LinearProcessorConfig` | `linear_quant` | 线性层(Linear)量化处理器配置。 | 《[linear_quant 配置说明](linear_quant.md)》 |
50-- `OnlineQuaRotProcessorConfig`(`type: online_quarot`) — 在线 QuaRot 旋转处理器配置。 《[online_quarot 配置说明](online_quarot.md)》50+| `LoadProcessorConfig` | `load` | 模块加载/卸载处理器配置。 | 《[load 配置说明](load.md)》 |
51-- `QuaRotProcessorConfig`(`type: quarot`) — QuaRot(离线旋转)处理器配置。 《[quarot 配置说明](quarot.md)》51+| `OASQProcessorConfig` | `oasq` | OASQ(Outlier-Aware Smooth Quantization)处理器配置。 | 《[oasq 配置说明](oasq.md)》 |
52-- `QuantSaveProcessorConfig`(`type: saver`) — 统一保存处理器配置。 《[saver 配置说明](saver.md)》52+| `OnlineQuaRotProcessorConfig` | `online_quarot` | 在线 QuaRot 旋转处理器配置。 | 《[online_quarot 配置说明](online_quarot.md)》 |
53-- `SmoothQuantProcessorConfig`(`type: smooth_quant`) — SmoothQuant 平滑量化处理器配置。 《[smooth_quant 配置说明](smooth_quant.md)》53+| `QuaRotProcessorConfig` | `quarot` | QuaRot(离线旋转)处理器配置。 | 《[quarot 配置说明](quarot.md)》 |
54-- `SVDResidualProcessorConfig`(`type: svd_res`) — SVD 残差(低秩补偿)处理器配置。 《[svd_res 配置说明](svd_res.md)》54+| `QuantSaveProcessorConfig` | `saver` | 统一保存处理器配置。 | 《[saver 配置说明](saver.md)》 |
55-- `TrainableLinearQuantProcessorConfig`(`type: trainable_linear_quant`) — 可训练线性量化(TLQ)处理器配置。 《[trainable_linear_quant 配置说明](trainable_linear_quant.md)》55+| `SmoothQuantProcessorConfig` | `smooth_quant` | SmoothQuant 平滑量化处理器配置。 | 《[smooth_quant 配置说明](smooth_quant.md)》 |
56-- `UnaryAnalysisProcessorConfig`(`type: unary_analysis`) — 一元(无量化)敏感度分析处理器配置。 《[unary_analysis 配置说明](unary_analysis.md)》56+| `SVDResidualProcessorConfig` | `svd_res` | SVD 残差(低秩补偿)处理器配置。 | 《[svd_res 配置说明](svd_res.md)》 |
57+| `TrainableLinearQuantProcessorConfig` | `trainable_linear_quant` | 可训练线性量化(TLQ)处理器配置。 | 《[trainable_linear_quant 配置说明](trainable_linear_quant.md)》 |
58+| `UnaryAnalysisProcessorConfig` | `unary_analysis` | 一元(无量化)敏感度分析处理器配置。 | 《[unary_analysis 配置说明](unary_analysis.md)》 |
57 59 
58## 3. 完整配置参考60## 3. 完整配置参考
59 61 
@@ -17,7 +17,7 @@ KV cache 量化处理器配置。
17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
18|----------|------|-----------|--------|----------------|------|----------|18|----------|------|-----------|--------|----------------|------|----------|
19| `type` | `string` | 可选 | `dynamic_cache` | `dynamic_cache` | 处理器类型,固定为 `dynamic_cache`。 | 无 |19| `type` | `string` | 可选 | `dynamic_cache` | `dynamic_cache` | 处理器类型,固定为 `dynamic_cache`。 | 无 |
20-| `qconfig` | `object` | 必选 | 无 | — | KV cache 张量的量化配置,见《QConfig 配置说明》。 | 本页 <a href="#2-2-qconfig">§2.2</a> |20+| `qconfig` | `object` | 必选 | 无 | — | KV cache 张量的量化配置,见<a href="#2-2-qconfig">《QConfig 配置说明》</a>。 | 本页 <a href="#2-2-qconfig">§2.2</a> |
21| `include` | `list[string]` | 可选 | `[]` | — | 包含的模块名称模式 | 无 |21| `include` | `list[string]` | 可选 | `[]` | — | 包含的模块名称模式 | 无 |
22| `exclude` | `list[string]` | 可选 | `[]` | — | 排除的模块名称模式,优先级高于 `include` | 无 |22| `exclude` | `list[string]` | 可选 | `[]` | — | 排除的模块名称模式,优先级高于 `include` | 无 |
23 23 
@@ -32,9 +32,9 @@ KV cache 量化处理器配置。
32| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |32| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
33|----------|------|-----------|--------|----------------|------|----------|33|----------|------|-----------|--------|----------------|------|----------|
34| `dtype` | `string` | 必选 | 无 | `float`、`int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3` | 量化数据类型,如 `int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3`;`float` 表示该张量不量化。 | 无 |34| `dtype` | `string` | 必选 | 无 | `float`、`int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3` | 量化数据类型,如 `int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3`;`float` 表示该张量不量化。 | 无 |
35-| `scope` | `string` | 必选 | 无 | `per_tensor`、`per_channel`、`per_group`、`per_block`、`per_token`、`pd_mix`、`per_head`、`dual_scale` | 量化粒度,即 scale/zero_point 的计算范围:`per_tensor`(整张量一个尺度)、`per_channel`(按通道)、`per_group`/`per_block`(按分组或固定块)、`per_token`(按 token)、`per_head`(按注意力头)、`dual_scale`(双尺度)等;合法取值组合取决于 `dtype` 与量化器实现。 | 无 |35+| `scope` | `string` | 必选 | 无 | `per_tensor`、`per_channel`、`per_group`、`per_block`、`per_token`、`pd_mix`、`per_head`、`dual_scale`、`per_channel_neg_offset` | 量化粒度,即 scale/zero_point 的计算范围。各取值含义:`per_tensor`(整张量一个尺度)、`per_channel`(按通道)、`per_group`/`per_block`(按分组或固定块)、`per_token`(按 token)、`per_head`(按注意力头)、`pd_mix`(Prefill/Decode 混合粒度)、`dual_scale`(双尺度)等;按场景可用取值如下(还须与 `dtype`/`method` 组合匹配):激活:`per_tensor`、`per_token`、`per_channel`(当前为 `int8`/`fp8_e4m3`/`mxfp8` 的 minmax)、`per_block`(MX minmax)、`pd_mix`、`dual_scale`;权重:`per_channel`、`per_group`(GPTQ)、`per_block`(MX)、`dual_scale`;FA3 注意力:`per_head`(默认)、`per_channel`、`per_token`、`per_block`。 | 无 |
36| `symmetric` | `bool` | 必选 | 无 | — | 是否对称量化。对称量化只保存 scale;非对称量化额外保存 zero_point,可用性取决于 `dtype`/`scope` 组合。 | 无 |36| `symmetric` | `bool` | 必选 | 无 | — | 是否对称量化。对称量化只保存 scale;非对称量化额外保存 zero_point,可用性取决于 `dtype`/`scope` 组合。 | 无 |
37-| `method` | `string` | 必选 | 无 | — | 量化参数估计算法,如 `minmax`、`mse_round`、`histogram`、`ssz`、`none` 等;可用取值取决于 `dtype`/`scope`/`symmetric` 组合,`none` 表示不估计参数(配合 `float` 使用)。 | 无 |37+| `method` | `string` | 必选 | 无 | — | 量化参数估计算法,如 `minmax`、`mse_round`、`histogram`、`ssz`、`none`、`gptq` 等;算法按张量类型分属两套量化器:激活量化器支持 `minmax`、`histogram`、`none`(配合 `float`);权重量化器支持 `minmax`、`mse_round`、`ssz`、`gptq` 等。可用取值还取决于 `dtype`/`scope`/`symmetric` 组合,`none` 表示不估计参数。 | 无 |
38| `ext` | `object` | 可选 | `{}` | — | 量化器扩展参数,随 `method` 与量化器实现而定(如 gptq 的 `percdamp`/`group_size`);空对象表示无扩展参数。 | 无 |38| `ext` | `object` | 可选 | `{}` | — | 量化器扩展参数,随 `method` 与量化器实现而定(如 gptq 的 `percdamp`/`group_size`);空对象表示无扩展参数。 | 无 |
39 39 
40**配置约束**40**配置约束**
@@ -17,14 +17,14 @@ FA3(FlashAttention-3)量化处理器配置。
17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
18|----------|------|-----------|--------|----------------|------|----------|18|----------|------|-----------|--------|----------------|------|----------|
19| `type` | `string` | 可选 | `fa3_quant` | `fa3_quant` | 处理器类型,固定为 `fa3_quant`。 | 无 |19| `type` | `string` | 可选 | `fa3_quant` | `fa3_quant` | 处理器类型,固定为 `fa3_quant`。 | 无 |
20-| `qconfig` | `object / null` | 可选 | `null` | — | 统一量化配置;不提供时默认使用 INT8 per-head symmetric,见《QConfig 配置说明》 | 本页 <a href="#2-2-qconfig">§2.2</a> |20+| `qconfig` | `object / null` | 可选 | `null` | — | 统一量化配置;不提供时默认使用 `dtype: int8`、`scope: per_head`、`symmetric: true`、`method: minmax`(对称量化),见<a href="#2-2-qconfig">《QConfig 配置说明》</a> | 本页 <a href="#2-2-qconfig">§2.2</a> |
21| `include` | `list[string]` | 可选 | `['*']` | — | 包含的模块名称模式,默认 `*` 匹配全部模块 | 无 |21| `include` | `list[string]` | 可选 | `['*']` | — | 包含的模块名称模式,默认 `*` 匹配全部模块 | 无 |
22| `exclude` | `list[string]` | 可选 | `[]` | — | 排除的模块名称模式,优先级高于 `include` | 无 |22| `exclude` | `list[string]` | 可选 | `[]` | — | 排除的模块名称模式,优先级高于 `include` | 无 |
23-| `details` | `object / null` | 可选 | `null` | — | Q/K/V 分支级量化配置(FA3AttentionDetails),见《FA3AttentionDetails 配置说明》 | 本页 <a href="#2-3-fa3-attention-details">§2.3</a> |23+| `details` | `object / null` | 可选 | `null` | — | Q/K/V 分支级量化配置(FA3AttentionDetails),见<a href="#2-3-fa3-attention-details">《FA3AttentionDetails 配置说明》</a> | 本页 <a href="#2-3-fa3-attention-details">§2.3</a> |
24 24 
25**配置约束**25**配置约束**
26 26 
27-- 校验 qconfig 与 details 互斥:两者都提供时报错;两者都未提供时默认 INT8 per-head symmetric。27+- 校验 qconfig 与 details 互斥:两者都提供时报错;两者都未提供时使用默认:`{dtype: int8, scope: per_head, symmetric: true, method: minmax}`。
28 28 
29<h3 id="2-2-qconfig">2.2 QConfig</h3>29<h3 id="2-2-qconfig">2.2 QConfig</h3>
30 30 
@@ -33,9 +33,9 @@ FA3(FlashAttention-3)量化处理器配置。
33| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |33| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
34|----------|------|-----------|--------|----------------|------|----------|34|----------|------|-----------|--------|----------------|------|----------|
35| `dtype` | `string` | 必选 | 无 | `float`、`int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3` | 量化数据类型,如 `int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3`;`float` 表示该张量不量化。 | 无 |35| `dtype` | `string` | 必选 | 无 | `float`、`int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3` | 量化数据类型,如 `int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3`;`float` 表示该张量不量化。 | 无 |
36-| `scope` | `string` | 必选 | 无 | `per_tensor`、`per_channel`、`per_group`、`per_block`、`per_token`、`pd_mix`、`per_head`、`dual_scale` | 量化粒度,即 scale/zero_point 的计算范围:`per_tensor`(整张量一个尺度)、`per_channel`(按通道)、`per_group`/`per_block`(按分组或固定块)、`per_token`(按 token)、`per_head`(按注意力头)、`dual_scale`(双尺度)等;合法取值组合取决于 `dtype` 与量化器实现。 | 无 |36+| `scope` | `string` | 必选 | 无 | `per_tensor`、`per_channel`、`per_group`、`per_block`、`per_token`、`pd_mix`、`per_head`、`dual_scale`、`per_channel_neg_offset` | 量化粒度,即 scale/zero_point 的计算范围。各取值含义:`per_tensor`(整张量一个尺度)、`per_channel`(按通道)、`per_group`/`per_block`(按分组或固定块)、`per_token`(按 token)、`per_head`(按注意力头)、`pd_mix`(Prefill/Decode 混合粒度)、`dual_scale`(双尺度)等;按场景可用取值如下(还须与 `dtype`/`method` 组合匹配):激活:`per_tensor`、`per_token`、`per_channel`(当前为 `int8`/`fp8_e4m3`/`mxfp8` 的 minmax)、`per_block`(MX minmax)、`pd_mix`、`dual_scale`;权重:`per_channel`、`per_group`(GPTQ)、`per_block`(MX)、`dual_scale`;FA3 注意力:`per_head`(默认)、`per_channel`、`per_token`、`per_block`。 | 无 |
37| `symmetric` | `bool` | 必选 | 无 | — | 是否对称量化。对称量化只保存 scale;非对称量化额外保存 zero_point,可用性取决于 `dtype`/`scope` 组合。 | 无 |37| `symmetric` | `bool` | 必选 | 无 | — | 是否对称量化。对称量化只保存 scale;非对称量化额外保存 zero_point,可用性取决于 `dtype`/`scope` 组合。 | 无 |
38-| `method` | `string` | 必选 | 无 | — | 量化参数估计算法,如 `minmax`、`mse_round`、`histogram`、`ssz`、`none` 等;可用取值取决于 `dtype`/`scope`/`symmetric` 组合,`none` 表示不估计参数(配合 `float` 使用)。 | 无 |38+| `method` | `string` | 必选 | 无 | — | 量化参数估计算法,如 `minmax`、`mse_round`、`histogram`、`ssz`、`none`、`gptq` 等;算法按张量类型分属两套量化器:激活量化器支持 `minmax`、`histogram`、`none`(配合 `float`);权重量化器支持 `minmax`、`mse_round`、`ssz`、`gptq` 等。可用取值还取决于 `dtype`/`scope`/`symmetric` 组合,`none` 表示不估计参数。 | 无 |
39| `ext` | `object` | 可选 | `{}` | — | 量化器扩展参数,随 `method` 与量化器实现而定(如 gptq 的 `percdamp`/`group_size`);空对象表示无扩展参数。 | 无 |39| `ext` | `object` | 可选 | `{}` | — | 量化器扩展参数,随 `method` 与量化器实现而定(如 gptq 的 `percdamp`/`group_size`);空对象表示无扩展参数。 | 无 |
40 40 
41**配置约束**41**配置约束**
@@ -48,9 +48,9 @@ FA3 注意力分支级量化配置,分别指定 Q/K/V 的量化方式。
48 48 
49| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |49| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
50|----------|------|-----------|--------|----------------|------|----------|50|----------|------|-----------|--------|----------------|------|----------|
51-| `fa_q` | `object` | 可选 | `null` | — | Query 分支的量化配置,见《QConfig 配置说明》 | 本页 <a href="#2-2-qconfig">§2.2</a> |51+| `fa_q` | `object` | 可选 | `null` | — | Query 分支的量化配置,见<a href="#2-2-qconfig">《QConfig 配置说明》</a> | 本页 <a href="#2-2-qconfig">§2.2</a> |
52-| `fa_k` | `object` | 可选 | `null` | — | Key 分支的量化配置,见《QConfig 配置说明》 | 本页 <a href="#2-2-qconfig">§2.2</a> |52+| `fa_k` | `object` | 可选 | `null` | — | Key 分支的量化配置,见<a href="#2-2-qconfig">《QConfig 配置说明》</a> | 本页 <a href="#2-2-qconfig">§2.2</a> |
53-| `fa_v` | `object` | 可选 | `null` | — | Value 分支的量化配置,见《QConfig 配置说明》 | 本页 <a href="#2-2-qconfig">§2.2</a> |53+| `fa_v` | `object` | 可选 | `null` | — | Value 分支的量化配置,见<a href="#2-2-qconfig">《QConfig 配置说明》</a> | 本页 <a href="#2-2-qconfig">§2.2</a> |
54 54 
55**配置约束**55**配置约束**
56 56 
@@ -53,7 +53,7 @@ FlatQuant处理器配置:定义量化训练参数、策略、混合精度等
53 53 
54| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |54| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
55|----------|------|-----------|--------|----------------|------|----------|55|----------|------|-----------|--------|----------------|------|----------|
56-| `qconfig` | `object` | 必选 | 无 | — | 量化配置参数 | 本页 <a href="#2-3-linear-qconfig">§2.3</a> |56+| `qconfig` | `object` | 必选 | 无 | — | 量化配置参数 | 本页 <a href="#2-2-1-linear-qconfig">§2.2.1</a> |
57| `include` | `list[string]` | 可选 | `['*']` | — | 要包含的模块名称(支持通配符 *) | 无 |57| `include` | `list[string]` | 可选 | `['*']` | — | 要包含的模块名称(支持通配符 *) | 无 |
58| `exclude` | `list[string]` | 可选 | `[]` | — | 要排除的模块名称(优先于 include) | 无 |58| `exclude` | `list[string]` | 可选 | `[]` | — | 要排除的模块名称(优先于 include) | 无 |
59 59 
@@ -61,29 +61,29 @@ FlatQuant处理器配置:定义量化训练参数、策略、混合精度等
61 61 
62- 无。62- 无。
63 63 
64-<h3 id="2-3-linear-qconfig">2.3 LinearQConfig</h3>64+<h4 id="2-2-1-linear-qconfig">2.2.1 LinearQConfig</h4>
65 65 
66线性层(Linear)的量化配置,含激活与权重两路量化。66线性层(Linear)的量化配置,含激活与权重两路量化。
67 67 
68| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |68| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
69|----------|------|-----------|--------|----------------|------|----------|69|----------|------|-----------|--------|----------------|------|----------|
70-| `act` | `object` | 可选 | `{'dtype': 'float', 'scope': 'per_tensor', 'symmetric': True, 'method': 'none', 'ext': {}}` | — | 激活值的量化配置。默认 `float`(不量化激活),仅对权重做量化。 | 本页 <a href="#2-4-qconfig">§2.4</a> |70+| `act` | `object` | 可选 | `{'dtype': 'float', 'scope': 'per_tensor', 'symmetric': True, 'method': 'none', 'ext': {}}` | — | 激活值的量化配置。由激活量化器实现,`method` 支持 `minmax`、`histogram`、`none`;`scope` 支持 `per_tensor`、`per_token`、`per_channel`(限 int8/fp8_e4m3/mxfp8 的 minmax)等。默认 `float`(不量化激活),仅对权重做量化。 | 本页 <a href="#2-2-2-qconfig">§2.2.2</a> |
71-| `weight` | `object` | 必选 | 无 | — | 权重的量化配置,必选。 | 本页 <a href="#2-4-qconfig">§2.4</a> |71+| `weight` | `object` | 必选 | 无 | — | 权重的量化配置,必选。由权重量化器实现,`method` 支持 `minmax`、`mse_round`、`ssz`、`gptq` 等;`scope` 支持 `per_channel`、`per_group`、`per_block` 等(不支持 `per_tensor`/`per_token`)。 | 本页 <a href="#2-2-2-qconfig">§2.2.2</a> |
72 72 
73**配置约束**73**配置约束**
74 74 
75- 无。75- 无。
76 76 
77-<h3 id="2-4-qconfig">2.4 QConfig</h3>77+<h4 id="2-2-2-qconfig">2.2.2 QConfig</h4>
78 78 
79描述单个张量(权重或激活)的量化方式。79描述单个张量(权重或激活)的量化方式。
80 80 
81| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |81| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
82|----------|------|-----------|--------|----------------|------|----------|82|----------|------|-----------|--------|----------------|------|----------|
83| `dtype` | `string` | 必选 | 无 | `float`、`int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3` | 量化数据类型,如 `int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3`;`float` 表示该张量不量化。 | 无 |83| `dtype` | `string` | 必选 | 无 | `float`、`int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3` | 量化数据类型,如 `int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3`;`float` 表示该张量不量化。 | 无 |
84-| `scope` | `string` | 必选 | 无 | `per_tensor`、`per_channel`、`per_group`、`per_block`、`per_token`、`pd_mix`、`per_head`、`dual_scale` | 量化粒度,即 scale/zero_point 的计算范围:`per_tensor`(整张量一个尺度)、`per_channel`(按通道)、`per_group`/`per_block`(按分组或固定块)、`per_token`(按 token)、`per_head`(按注意力头)、`dual_scale`(双尺度)等;合法取值组合取决于 `dtype` 与量化器实现。 | 无 |84+| `scope` | `string` | 必选 | 无 | `per_tensor`、`per_channel`、`per_group`、`per_block`、`per_token`、`pd_mix`、`per_head`、`dual_scale`、`per_channel_neg_offset` | 量化粒度,即 scale/zero_point 的计算范围。各取值含义:`per_tensor`(整张量一个尺度)、`per_channel`(按通道)、`per_group`/`per_block`(按分组或固定块)、`per_token`(按 token)、`per_head`(按注意力头)、`pd_mix`(Prefill/Decode 混合粒度)、`dual_scale`(双尺度)等;按场景可用取值如下(还须与 `dtype`/`method` 组合匹配):激活:`per_tensor`、`per_token`、`per_channel`(当前为 `int8`/`fp8_e4m3`/`mxfp8` 的 minmax)、`per_block`(MX minmax)、`pd_mix`、`dual_scale`;权重:`per_channel`、`per_group`(GPTQ)、`per_block`(MX)、`dual_scale`;FA3 注意力:`per_head`(默认)、`per_channel`、`per_token`、`per_block`。 | 无 |
85| `symmetric` | `bool` | 必选 | 无 | — | 是否对称量化。对称量化只保存 scale;非对称量化额外保存 zero_point,可用性取决于 `dtype`/`scope` 组合。 | 无 |85| `symmetric` | `bool` | 必选 | 无 | — | 是否对称量化。对称量化只保存 scale;非对称量化额外保存 zero_point,可用性取决于 `dtype`/`scope` 组合。 | 无 |
86-| `method` | `string` | 必选 | 无 | — | 量化参数估计算法,如 `minmax`、`mse_round`、`histogram`、`ssz`、`none` 等;可用取值取决于 `dtype`/`scope`/`symmetric` 组合,`none` 表示不估计参数(配合 `float` 使用)。 | 无 |86+| `method` | `string` | 必选 | 无 | — | 量化参数估计算法,如 `minmax`、`mse_round`、`histogram`、`ssz`、`none`、`gptq` 等;算法按张量类型分属两套量化器:激活量化器支持 `minmax`、`histogram`、`none`(配合 `float`);权重量化器支持 `minmax`、`mse_round`、`ssz`、`gptq` 等。可用取值还取决于 `dtype`/`scope`/`symmetric` 组合,`none` 表示不估计参数。 | 无 |
87| `ext` | `object` | 可选 | `{}` | — | 量化器扩展参数,随 `method` 与量化器实现而定(如 gptq 的 `percdamp`/`group_size`);空对象表示无扩展参数。 | 无 |87| `ext` | `object` | 可选 | `{}` | — | 量化器扩展参数,随 `method` 与量化器实现而定(如 gptq 的 `percdamp`/`group_size`);空对象表示无扩展参数。 | 无 |
88 88 
89**配置约束**89**配置约束**
@@ -3,7 +3,7 @@
3 3 
4## 1. 配置概述4## 1. 配置概述
5 5 
6-FlexAWQSSZ 平滑+AWQ 处理器配置。6+Flex AWQ SSZ 离群值抑制处理器配置。
7 7 
8| 项目 | 内容 |8| 项目 | 内容 |
9|------|------|9|------|------|
@@ -22,7 +22,7 @@ FlexAWQSSZ 平滑+AWQ 处理器配置。
22| `enable_subgraph_type` | `list[any]` | 可选 | `['norm-linear', 'linear-linear', 'ov', 'up-down']` | — | 应用平滑的子图类型列表,默认 `norm-linear`、`linear-linear`、`ov`、`up-down`。 | 无 |22| `enable_subgraph_type` | `list[any]` | 可选 | `['norm-linear', 'linear-linear', 'ov', 'up-down']` | — | 应用平滑的子图类型列表,默认 `norm-linear`、`linear-linear`、`ov`、`up-down`。 | 无 |
23| `include` | `list[string] / null` | 可选 | `null` | — | 包含的模块名称模式;不设置表示全部匹配。 | 无 |23| `include` | `list[string] / null` | 可选 | `null` | — | 包含的模块名称模式;不设置表示全部匹配。 | 无 |
24| `exclude` | `list[string] / null` | 可选 | `null` | — | 排除的模块名称模式,优先级高于 `include`。 | 无 |24| `exclude` | `list[string] / null` | 可选 | `null` | — | 排除的模块名称模式,优先级高于 `include`。 | 无 |
25-| `qconfig` | `object` | 必选 | 无 | — | 激活与权重的量化配置,见《LinearQConfig 配置说明》。 | 本页 <a href="#2-2-linear-qconfig">§2.2</a> |25+| `qconfig` | `object` | 必选 | 无 | — | 激活与权重的量化配置,见<a href="#2-2-linear-qconfig">《LinearQConfig 配置说明》</a>。 | 本页 <a href="#2-2-linear-qconfig">§2.2</a> |
26 26 
27**配置约束**27**配置约束**
28 28 
@@ -34,23 +34,23 @@ FlexAWQSSZ 平滑+AWQ 处理器配置。
34 34 
35| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |35| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
36|----------|------|-----------|--------|----------------|------|----------|36|----------|------|-----------|--------|----------------|------|----------|
37-| `act` | `object` | 可选 | `{'dtype': 'float', 'scope': 'per_tensor', 'symmetric': True, 'method': 'none', 'ext': {}}` | — | 激活值的量化配置。默认 `float`(不量化激活),仅对权重做量化。 | 本页 <a href="#2-3-qconfig">§2.3</a> |37+| `act` | `object` | 可选 | `{'dtype': 'float', 'scope': 'per_tensor', 'symmetric': True, 'method': 'none', 'ext': {}}` | — | 激活值的量化配置。由激活量化器实现,`method` 支持 `minmax`、`histogram`、`none`;`scope` 支持 `per_tensor`、`per_token`、`per_channel`(限 int8/fp8_e4m3/mxfp8 的 minmax)等。默认 `float`(不量化激活),仅对权重做量化。 | 本页 <a href="#2-2-1-qconfig">§2.2.1</a> |
38-| `weight` | `object` | 必选 | 无 | — | 权重的量化配置,必选。 | 本页 <a href="#2-3-qconfig">§2.3</a> |38+| `weight` | `object` | 必选 | 无 | — | 权重的量化配置,必选。由权重量化器实现,`method` 支持 `minmax`、`mse_round`、`ssz`、`gptq` 等;`scope` 支持 `per_channel`、`per_group`、`per_block` 等(不支持 `per_tensor`/`per_token`)。 | 本页 <a href="#2-2-1-qconfig">§2.2.1</a> |
39 39 
40**配置约束**40**配置约束**
41 41 
42- 无。42- 无。
43 43 
44-<h3 id="2-3-qconfig">2.3 QConfig</h3>44+<h4 id="2-2-1-qconfig">2.2.1 QConfig</h4>
45 45 
46描述单个张量(权重或激活)的量化方式。46描述单个张量(权重或激活)的量化方式。
47 47 
48| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |48| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
49|----------|------|-----------|--------|----------------|------|----------|49|----------|------|-----------|--------|----------------|------|----------|
50| `dtype` | `string` | 必选 | 无 | `float`、`int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3` | 量化数据类型,如 `int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3`;`float` 表示该张量不量化。 | 无 |50| `dtype` | `string` | 必选 | 无 | `float`、`int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3` | 量化数据类型,如 `int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3`;`float` 表示该张量不量化。 | 无 |
51-| `scope` | `string` | 必选 | 无 | `per_tensor`、`per_channel`、`per_group`、`per_block`、`per_token`、`pd_mix`、`per_head`、`dual_scale` | 量化粒度,即 scale/zero_point 的计算范围:`per_tensor`(整张量一个尺度)、`per_channel`(按通道)、`per_group`/`per_block`(按分组或固定块)、`per_token`(按 token)、`per_head`(按注意力头)、`dual_scale`(双尺度)等;合法取值组合取决于 `dtype` 与量化器实现。 | 无 |51+| `scope` | `string` | 必选 | 无 | `per_tensor`、`per_channel`、`per_group`、`per_block`、`per_token`、`pd_mix`、`per_head`、`dual_scale`、`per_channel_neg_offset` | 量化粒度,即 scale/zero_point 的计算范围。各取值含义:`per_tensor`(整张量一个尺度)、`per_channel`(按通道)、`per_group`/`per_block`(按分组或固定块)、`per_token`(按 token)、`per_head`(按注意力头)、`pd_mix`(Prefill/Decode 混合粒度)、`dual_scale`(双尺度)等;按场景可用取值如下(还须与 `dtype`/`method` 组合匹配):激活:`per_tensor`、`per_token`、`per_channel`(当前为 `int8`/`fp8_e4m3`/`mxfp8` 的 minmax)、`per_block`(MX minmax)、`pd_mix`、`dual_scale`;权重:`per_channel`、`per_group`(GPTQ)、`per_block`(MX)、`dual_scale`;FA3 注意力:`per_head`(默认)、`per_channel`、`per_token`、`per_block`。 | 无 |
52| `symmetric` | `bool` | 必选 | 无 | — | 是否对称量化。对称量化只保存 scale;非对称量化额外保存 zero_point,可用性取决于 `dtype`/`scope` 组合。 | 无 |52| `symmetric` | `bool` | 必选 | 无 | — | 是否对称量化。对称量化只保存 scale;非对称量化额外保存 zero_point,可用性取决于 `dtype`/`scope` 组合。 | 无 |
53-| `method` | `string` | 必选 | 无 | — | 量化参数估计算法,如 `minmax`、`mse_round`、`histogram`、`ssz`、`none` 等;可用取值取决于 `dtype`/`scope`/`symmetric` 组合,`none` 表示不估计参数(配合 `float` 使用)。 | 无 |53+| `method` | `string` | 必选 | 无 | — | 量化参数估计算法,如 `minmax`、`mse_round`、`histogram`、`ssz`、`none`、`gptq` 等;算法按张量类型分属两套量化器:激活量化器支持 `minmax`、`histogram`、`none`(配合 `float`);权重量化器支持 `minmax`、`mse_round`、`ssz`、`gptq` 等。可用取值还取决于 `dtype`/`scope`/`symmetric` 组合,`none` 表示不估计参数。 | 无 |
54| `ext` | `object` | 可选 | `{}` | — | 量化器扩展参数,随 `method` 与量化器实现而定(如 gptq 的 `percdamp`/`group_size`);空对象表示无扩展参数。 | 无 |54| `ext` | `object` | 可选 | `{}` | — | 量化器扩展参数,随 `method` 与量化器实现而定(如 gptq 的 `percdamp`/`group_size`);空对象表示无扩展参数。 | 无 |
55 55 
56**配置约束**56**配置约束**
@@ -21,37 +21,39 @@
21 21 
22**配置约束**22**配置约束**
23 23 
24-- 无。24+- `configs` 内各子处理器必须为同一 `type`(同类合并,如均为 `linear_quant`);不同 `type` 请拆成多个独立的 `process` 项,不要混在同一 `group` 中。
25 25 
26-<h3 id="2-2-autoprocessorconfig">2.2 AutoProcessorConfig</h3>26+<h3 id="2-2-autoprocessorconfig">2.2 《<a href="linear_quant.md">AutoProcessorConfig</a>》</h3>
27 27 
28**派生类**28**派生类**
29 29 
30-- `AdaptRotationProcessorConfig`(`type: adapt_rotation`) — 自适应旋转(adapt_rotation)处理器配置。 《[adapt_rotation 配置说明](adapt_rotation.md)》30+| 配置类 | `type` | 说明 | 文档 |
31-- `AutoroundProcessorConfig`(`type: autoround_quant`) — autoround 量化处理器配置。 《[autoround_quant 配置说明](autoround_quant.md)》31+|--------|----------|------|------|
32-- `AWQProcessorConfig`(`type: awq`) — AWQ(Activation-aware Weight Quantization)处理器配置。 《[awq 配置说明](awq.md)》32+| `AdaptRotationProcessorConfig` | `adapt_rotation` | 自适应旋转(adapt_rotation)处理器配置。 | 《[adapt_rotation 配置说明](adapt_rotation.md)》 |
33-- `BinaryAnalysisProcessorConfig`(`type: binary_analysis`) — 二值(有/无量化)敏感度分析处理器配置。 《[binary_analysis 配置说明](binary_analysis.md)》33+| `AutoroundProcessorConfig` | `autoround_quant` | autoround 量化处理器配置。 | 《[autoround_quant 配置说明](autoround_quant.md)》 |
34-- `BinaryOperatorLayerWiseProcessorConfig`(`type: binary_operator_layer_wise`) — 逐层敏感度分析处理器配置(对比逐块浮点与量化输出)。 《[binary_operator_layer_wise 配置说明](binary_operator_layer_wise.md)》34+| `AWQProcessorConfig` | `awq` | AWQ(Activation-aware Weight Quantization)处理器配置。 | 《[awq 配置说明](awq.md)》 |
35-- `BinaryOperatorModelWiseProcessorConfig`(`type: binary_operator_model_wise`) — 模型级敏感度分析配置(对比模型最终输出,使用 MSE 指标) 《[binary_operator_model_wise 配置说明](binary_operator_model_wise.md)》35+| `BinaryAnalysisProcessorConfig` | `binary_analysis` | 二值(有/无量化)敏感度分析处理器配置。 | 《[binary_analysis 配置说明](binary_analysis.md)》 |
36-- `DynamicCacheProcessorConfig`(`type: dynamic_cache`) — KV cache 量化处理器配置。 《[dynamic_cache 配置说明](dynamic_cache.md)》36+| `BinaryOperatorLayerWiseProcessorConfig` | `binary_operator_layer_wise` | 逐层敏感度分析处理器配置(对比逐块浮点与量化输出)。 | 《[binary_operator_layer_wise 配置说明](binary_operator_layer_wise.md)》 |
37-- `FA3QuantProcessorConfig`(`type: fa3_quant`) — FA3(FlashAttention-3)量化处理器配置。 《[fa3_quant 配置说明](fa3_quant.md)》37+| `BinaryOperatorModelWiseProcessorConfig` | `binary_operator_model_wise` | 模型级敏感度分析配置(对比模型最终输出,使用 MSE 指标) | 《[binary_operator_model_wise 配置说明](binary_operator_model_wise.md)》 |
38-- `FlatQuantProcessorConfig`(`type: flatquant`) — FlatQuant处理器配置:定义量化训练参数、策略、混合精度等 《[flatquant 配置说明](flatquant.md)》38+| `DynamicCacheProcessorConfig` | `dynamic_cache` | KV cache 量化处理器配置。 | 《[dynamic_cache 配置说明](dynamic_cache.md)》 |
39-- `FlexAWQSSZProcessorConfig`(`type: flex_awq_ssz`) — FlexAWQSSZ 平滑+AWQ 处理器配置。 《[flex_awq_ssz 配置说明](flex_awq_ssz.md)》39+| `FA3QuantProcessorConfig` | `fa3_quant` | FA3(FlashAttention-3)量化处理器配置。 | 《[fa3_quant 配置说明](fa3_quant.md)》 |
40-- `FlexSmoothQuantProcessorConfig`(`type: flex_smooth_quant`) — FlexSmoothQuant 平滑量化处理器配置。 《[flex_smooth_quant 配置说明](flex_smooth_quant.md)》40+| `FlatQuantProcessorConfig` | `flatquant` | FlatQuant处理器配置:定义量化训练参数、策略、混合精度等 | 《[flatquant 配置说明](flatquant.md)》 |
41-- `FloatSparseProcessorConfig`(`type: float_sparse`) — 浮点稀疏处理器配置。 《[float_sparse 配置说明](float_sparse.md)》41+| `FlexAWQSSZProcessorConfig` | `flex_awq_ssz` | Flex AWQ SSZ 离群值抑制处理器配置。 | 《[flex_awq_ssz 配置说明](flex_awq_ssz.md)》 |
42-- `GroupProcessorConfig`(`type: group`) — 处理器合并器配置。 本页 <a href="#2-1-group">§2.1</a>42+| `FlexSmoothQuantProcessorConfig` | `flex_smooth_quant` | FlexSmoothQuant 平滑量化处理器配置。 | 《[flex_smooth_quant 配置说明](flex_smooth_quant.md)》 |
43-- `IterSmoothProcessorConfig`(`type: iter_smooth`) — 迭代平滑(IterativeSmooth)处理器配置。 《[iter_smooth 配置说明](iter_smooth.md)》43+| `FloatSparseProcessorConfig` | `float_sparse` | 浮点稀疏处理器配置。 | 《[float_sparse 配置说明](float_sparse.md)》 |
44-- `KVSmoothProcessorConfig`(`type: kv_smooth`) — KV cache 平滑处理器配置。 《[kv_smooth 配置说明](kv_smooth.md)》44+| `GroupProcessorConfig` | `group` | 处理器合并器配置。 | 本页 <a href="#2-1-group">§2.1</a> |
45-- `LinearProcessorConfig`(`type: linear_quant`) — 线性层(Linear)量化处理器配置。 《[linear_quant 配置说明](linear_quant.md)》45+| `IterSmoothProcessorConfig` | `iter_smooth` | 迭代平滑(IterativeSmooth)处理器配置。 | 《[iter_smooth 配置说明](iter_smooth.md)》 |
46-- `LoadProcessorConfig`(`type: load`) — 模块加载/卸载处理器配置。 《[load 配置说明](load.md)》46+| `KVSmoothProcessorConfig` | `kv_smooth` | KV cache 平滑处理器配置。 | 《[kv_smooth 配置说明](kv_smooth.md)》 |
47-- `OASQProcessorConfig`(`type: oasq`) — OASQ(Outlier-Aware Smooth Quantization)处理器配置。 《[oasq 配置说明](oasq.md)》47+| `LinearProcessorConfig` | `linear_quant` | 线性层(Linear)量化处理器配置。 | 《[linear_quant 配置说明](linear_quant.md)》 |
48-- `OnlineQuaRotProcessorConfig`(`type: online_quarot`) — 在线 QuaRot 旋转处理器配置。 《[online_quarot 配置说明](online_quarot.md)》48+| `LoadProcessorConfig` | `load` | 模块加载/卸载处理器配置。 | 《[load 配置说明](load.md)》 |
49-- `QuaRotProcessorConfig`(`type: quarot`) — QuaRot(离线旋转)处理器配置。 《[quarot 配置说明](quarot.md)》49+| `OASQProcessorConfig` | `oasq` | OASQ(Outlier-Aware Smooth Quantization)处理器配置。 | 《[oasq 配置说明](oasq.md)》 |
50-- `QuantSaveProcessorConfig`(`type: saver`) — 统一保存处理器配置。 《[saver 配置说明](saver.md)》50+| `OnlineQuaRotProcessorConfig` | `online_quarot` | 在线 QuaRot 旋转处理器配置。 | 《[online_quarot 配置说明](online_quarot.md)》 |
51-- `SmoothQuantProcessorConfig`(`type: smooth_quant`) — SmoothQuant 平滑量化处理器配置。 《[smooth_quant 配置说明](smooth_quant.md)》51+| `QuaRotProcessorConfig` | `quarot` | QuaRot(离线旋转)处理器配置。 | 《[quarot 配置说明](quarot.md)》 |
52-- `SVDResidualProcessorConfig`(`type: svd_res`) — SVD 残差(低秩补偿)处理器配置。 《[svd_res 配置说明](svd_res.md)》52+| `QuantSaveProcessorConfig` | `saver` | 统一保存处理器配置。 | 《[saver 配置说明](saver.md)》 |
53-- `TrainableLinearQuantProcessorConfig`(`type: trainable_linear_quant`) — 可训练线性量化(TLQ)处理器配置。 《[trainable_linear_quant 配置说明](trainable_linear_quant.md)》53+| `SmoothQuantProcessorConfig` | `smooth_quant` | SmoothQuant 平滑量化处理器配置。 | 《[smooth_quant 配置说明](smooth_quant.md)》 |
54-- `UnaryAnalysisProcessorConfig`(`type: unary_analysis`) — 一元(无量化)敏感度分析处理器配置。 《[unary_analysis 配置说明](unary_analysis.md)》54+| `SVDResidualProcessorConfig` | `svd_res` | SVD 残差(低秩补偿)处理器配置。 | 《[svd_res 配置说明](svd_res.md)》 |
55+| `TrainableLinearQuantProcessorConfig` | `trainable_linear_quant` | 可训练线性量化(TLQ)处理器配置。 | 《[trainable_linear_quant 配置说明](trainable_linear_quant.md)》 |
56+| `UnaryAnalysisProcessorConfig` | `unary_analysis` | 一元(无量化)敏感度分析处理器配置。 | 《[unary_analysis 配置说明](unary_analysis.md)》 |
55 57 
56## 3. 完整配置参考58## 3. 完整配置参考
57 59 
@@ -64,16 +66,31 @@ spec:
64 - type: linear_quant66 - type: linear_quant
65 qconfig:67 qconfig:
66 act:68 act:
67- dtype: float69+ dtype: int8
68 scope: per_tensor70 scope: per_tensor
69- symmetric: true71+ symmetric: false
70- method: none72+ method: minmax
71 weight:73 weight:
72 dtype: int874 dtype: int8
73 scope: per_channel75 scope: per_channel
74 symmetric: true76 symmetric: true
75 method: minmax77 method: minmax
76- - type: smooth_quant78+ include:
77- alpha: 0.579+ - '*self_attn*'
78- symmetric: true80+ - type: linear_quant
81+ qconfig:
82+ act:
83+ dtype: int8
84+ scope: per_token
85+ symmetric: true
86+ method: minmax
87+ weight:
88+ dtype: int8
89+ scope: per_channel
90+ symmetric: true
91+ method: minmax
92+ include:
93+ - '*mlp*'
94+ exclude:
95+ - '*gate*'
79```96```
@@ -17,7 +17,7 @@
17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
18|----------|------|-----------|--------|----------------|------|----------|18|----------|------|-----------|--------|----------------|------|----------|
19| `type` | `string` | 可选 | `linear_quant` | `linear_quant` | 处理器类型,固定为 `linear_quant`。 | 无 |19| `type` | `string` | 可选 | `linear_quant` | `linear_quant` | 处理器类型,固定为 `linear_quant`。 | 无 |
20-| `qconfig` | `object` | 必选 | 无 | — | 激活与权重的量化配置,见《LinearQConfig 配置说明》。 | 本页 <a href="#2-2-linear-qconfig">§2.2</a> |20+| `qconfig` | `object` | 必选 | 无 | — | 激活与权重的量化配置,见<a href="#2-2-linear-qconfig">《LinearQConfig 配置说明》</a>。 | 本页 <a href="#2-2-linear-qconfig">§2.2</a> |
21| `include` | `list[string]` | 可选 | `['*']` | — | 包含的模块名称模式,默认 `*` 匹配全部模块 | 无 |21| `include` | `list[string]` | 可选 | `['*']` | — | 包含的模块名称模式,默认 `*` 匹配全部模块 | 无 |
22| `exclude` | `list[string]` | 可选 | `[]` | — | 排除的模块名称模式,优先级高于 `include` | 无 |22| `exclude` | `list[string]` | 可选 | `[]` | — | 排除的模块名称模式,优先级高于 `include` | 无 |
23 23 
@@ -31,23 +31,23 @@
31 31 
32| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |32| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
33|----------|------|-----------|--------|----------------|------|----------|33|----------|------|-----------|--------|----------------|------|----------|
34-| `act` | `object` | 可选 | `{'dtype': 'float', 'scope': 'per_tensor', 'symmetric': True, 'method': 'none', 'ext': {}}` | — | 激活值的量化配置。默认 `float`(不量化激活),仅对权重做量化。 | 本页 <a href="#2-3-qconfig">§2.3</a> |34+| `act` | `object` | 可选 | `{'dtype': 'float', 'scope': 'per_tensor', 'symmetric': True, 'method': 'none', 'ext': {}}` | — | 激活值的量化配置。由激活量化器实现,`method` 支持 `minmax`、`histogram`、`none`;`scope` 支持 `per_tensor`、`per_token`、`per_channel`(限 int8/fp8_e4m3/mxfp8 的 minmax)等。默认 `float`(不量化激活),仅对权重做量化。 | 本页 <a href="#2-2-1-qconfig">§2.2.1</a> |
35-| `weight` | `object` | 必选 | 无 | — | 权重的量化配置,必选。 | 本页 <a href="#2-3-qconfig">§2.3</a> |35+| `weight` | `object` | 必选 | 无 | — | 权重的量化配置,必选。由权重量化器实现,`method` 支持 `minmax`、`mse_round`、`ssz`、`gptq` 等;`scope` 支持 `per_channel`、`per_group`、`per_block` 等(不支持 `per_tensor`/`per_token`)。 | 本页 <a href="#2-2-1-qconfig">§2.2.1</a> |
36 36 
37**配置约束**37**配置约束**
38 38 
39- 无。39- 无。
40 40 
41-<h3 id="2-3-qconfig">2.3 QConfig</h3>41+<h4 id="2-2-1-qconfig">2.2.1 QConfig</h4>
42 42 
43描述单个张量(权重或激活)的量化方式。43描述单个张量(权重或激活)的量化方式。
44 44 
45| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |45| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
46|----------|------|-----------|--------|----------------|------|----------|46|----------|------|-----------|--------|----------------|------|----------|
47| `dtype` | `string` | 必选 | 无 | `float`、`int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3` | 量化数据类型,如 `int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3`;`float` 表示该张量不量化。 | 无 |47| `dtype` | `string` | 必选 | 无 | `float`、`int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3` | 量化数据类型,如 `int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3`;`float` 表示该张量不量化。 | 无 |
48-| `scope` | `string` | 必选 | 无 | `per_tensor`、`per_channel`、`per_group`、`per_block`、`per_token`、`pd_mix`、`per_head`、`dual_scale` | 量化粒度,即 scale/zero_point 的计算范围:`per_tensor`(整张量一个尺度)、`per_channel`(按通道)、`per_group`/`per_block`(按分组或固定块)、`per_token`(按 token)、`per_head`(按注意力头)、`dual_scale`(双尺度)等;合法取值组合取决于 `dtype` 与量化器实现。 | 无 |48+| `scope` | `string` | 必选 | 无 | `per_tensor`、`per_channel`、`per_group`、`per_block`、`per_token`、`pd_mix`、`per_head`、`dual_scale`、`per_channel_neg_offset` | 量化粒度,即 scale/zero_point 的计算范围。各取值含义:`per_tensor`(整张量一个尺度)、`per_channel`(按通道)、`per_group`/`per_block`(按分组或固定块)、`per_token`(按 token)、`per_head`(按注意力头)、`pd_mix`(Prefill/Decode 混合粒度)、`dual_scale`(双尺度)等;按场景可用取值如下(还须与 `dtype`/`method` 组合匹配):激活:`per_tensor`、`per_token`、`per_channel`(当前为 `int8`/`fp8_e4m3`/`mxfp8` 的 minmax)、`per_block`(MX minmax)、`pd_mix`、`dual_scale`;权重:`per_channel`、`per_group`(GPTQ)、`per_block`(MX)、`dual_scale`;FA3 注意力:`per_head`(默认)、`per_channel`、`per_token`、`per_block`。 | 无 |
49| `symmetric` | `bool` | 必选 | 无 | — | 是否对称量化。对称量化只保存 scale;非对称量化额外保存 zero_point,可用性取决于 `dtype`/`scope` 组合。 | 无 |49| `symmetric` | `bool` | 必选 | 无 | — | 是否对称量化。对称量化只保存 scale;非对称量化额外保存 zero_point,可用性取决于 `dtype`/`scope` 组合。 | 无 |
50-| `method` | `string` | 必选 | 无 | — | 量化参数估计算法,如 `minmax`、`mse_round`、`histogram`、`ssz`、`none` 等;可用取值取决于 `dtype`/`scope`/`symmetric` 组合,`none` 表示不估计参数(配合 `float` 使用)。 | 无 |50+| `method` | `string` | 必选 | 无 | — | 量化参数估计算法,如 `minmax`、`mse_round`、`histogram`、`ssz`、`none`、`gptq` 等;算法按张量类型分属两套量化器:激活量化器支持 `minmax`、`histogram`、`none`(配合 `float`);权重量化器支持 `minmax`、`mse_round`、`ssz`、`gptq` 等。可用取值还取决于 `dtype`/`scope`/`symmetric` 组合,`none` 表示不估计参数。 | 无 |
51| `ext` | `object` | 可选 | `{}` | — | 量化器扩展参数,随 `method` 与量化器实现而定(如 gptq 的 `percdamp`/`group_size`);空对象表示无扩展参数。 | 无 |51| `ext` | `object` | 可选 | `{}` | — | 量化器扩展参数,随 `method` 与量化器实现而定(如 gptq 的 `percdamp`/`group_size`);空对象表示无扩展参数。 | 无 |
52 52 
53**配置约束**53**配置约束**
@@ -17,7 +17,7 @@
17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
18|----------|------|-----------|--------|----------------|------|----------|18|----------|------|-----------|--------|----------------|------|----------|
19| `type` | `string` | 可选 | `saver` | `saver` | 处理器类型,固定为 `saver`。 | 无 |19| `type` | `string` | 可选 | `saver` | `saver` | 处理器类型,固定为 `saver`。 | 无 |
20-| `format` | `object` | 必选 | 无 | — | 导出格式配置(单对象),见《QuantFormatConfig 配置说明》;由保存处理器自动注入。 | QuantFormatConfig |20+| `format` | `object` | 必选 | 无 | — | 导出格式配置(单对象),由保存处理器自动注入。 | [`QuantFormatConfig`](../../../../../msmodelslim/format/base.py) |
21 21 
22**配置约束**22**配置约束**
23 23 
@@ -18,10 +18,10 @@
18|----------|------|-----------|--------|----------------|------|----------|18|----------|------|-----------|--------|----------------|------|----------|
19| `type` | `string` | 可选 | `trainable_linear_quant` | `trainable_linear_quant` | 处理器类型,固定为 `trainable_linear_quant`。 | 无 |19| `type` | `string` | 可选 | `trainable_linear_quant` | `trainable_linear_quant` | 处理器类型,固定为 `trainable_linear_quant`。 | 无 |
20| `operations` | `list[object]` | 可选 | `[MinmaxTuneOpConfig(type='minmax_tune', lr=None), RoundTuneOpConfig(type='round_tune', lr=None)]` | 最少1项 | 可训练量化管线 OP 配置列表;每项含 type,其余字段由各插件定义 | 本页 <a href="#2-2-tlq-op-config">§2.2</a> |20| `operations` | `list[object]` | 可选 | `[MinmaxTuneOpConfig(type='minmax_tune', lr=None), RoundTuneOpConfig(type='round_tune', lr=None)]` | 最少1项 | 可训练量化管线 OP 配置列表;每项含 type,其余字段由各插件定义 | 本页 <a href="#2-2-tlq-op-config">§2.2</a> |
21-| `strategies` | `list[object]` | 可选 | `[]` | 0项或≥1项 | 量化策略配置列表;未提供时为空列表,不应用量化策略;若显式提供则至少1项。 | 本页 <a href="#2-6-tlq-quant-strategy-config">§2.6</a> |21+| `strategies` | `list[object]` | 可选 | `[]` | 0项或≥1项 | 量化策略配置列表;未提供时为空列表,不应用量化策略;若显式提供则至少1项。 | 本页 <a href="#2-3-tlq-quant-strategy-config">§2.3</a> |
22| `train_with_act_quant` | `bool` | 可选 | `false` | — | 块级训练前向是否对激活做伪量化(经 x_kernel);false 与 autoround 的 train_with_act_quant=False 一致;导出 IR 仍由 qconfig.act 决定,不受此项影响 | 无 |22| `train_with_act_quant` | `bool` | 可选 | `false` | — | 块级训练前向是否对激活做伪量化(经 x_kernel);false 与 autoround 的 train_with_act_quant=False 一致;导出 IR 仍由 qconfig.act 决定,不受此项影响 | 无 |
23| `enable_quanted_input` | `bool` | 可选 | `false` | — | 是否将本层量化前向结果作为下一层训练/量化传播的旁路输入(q_input);不影响浮点 teacher:Runner 层间 datas 始终传递 teacher 输出 | 无 |23| `enable_quanted_input` | `bool` | 可选 | `false` | — | 是否将本层量化前向结果作为下一层训练/量化传播的旁路输入(q_input);不影响浮点 teacher:Runner 层间 datas 始终传递 teacher 输出 | 无 |
24-| `train_config` | `object` | 可选 | 见嵌套配置默认值 | — | 块级 Trainer 超参:iters、gradient_accumulate_steps、select_best、lr(或 learning_rate)、loss_type;各 OP 可单独配置 lr 覆盖全局值 | 本页 <a href="#2-9-block-train-config">§2.9</a> |24+| `train_config` | `object` | 可选 | 见嵌套配置默认值 | — | 块级 Trainer 超参:iters、gradient_accumulate_steps、select_best、lr(或 learning_rate)、loss_type;各 OP 可单独配置 lr 覆盖全局值 | 本页 <a href="#2-4-block-train-config">§2.4</a> |
25 25 
26**配置约束**26**配置约束**
27 27 
@@ -32,7 +32,7 @@
32| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |32| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
33|----------|------|-----------|--------|----------------|------|----------|33|----------|------|-----------|--------|----------------|------|----------|
34| `type` | `string` | 必选 | 无 | — | 算子类型,分派具体 TLQ 算子(如 `minmax_tune`、`round_tune`)。 | 无 |34| `type` | `string` | 必选 | 无 | — | 算子类型,分派具体 TLQ 算子(如 `minmax_tune`、`round_tune`)。 | 无 |
35-| `lr` | `float / null` | 可选 | `null` | >0.0;或 null | 该 Op 可训练参数学习率;未指定时使用 train_config.lr | 无 |35+| `lr` | `float / null` | 可选 | `null` | >0.0 或 null | 该 Op 可训练参数学习率;未指定时使用 train_config.lr | 无 |
36 36 
37**配置约束**37**配置约束**
38 38 
@@ -40,38 +40,40 @@
40 40 
41**派生类**41**派生类**
42 42 
43-- `MinmaxTuneOpConfig`(`type: minmax_tune`) — `MinmaxTuneOpConfig` 是嵌套配置。 本页 <a href="#2-3-minmax-tune">§2.3</a>43+| 配置类 | `type` | 说明 | 文档 |
44-- `RoundTuneOpConfig`(`type: round_tune`) — `RoundTuneOpConfig` 是嵌套配置。 本页 <a href="#2-4-round-tune">§2.4</a>44+|--------|----------|------|------|
45-- `TrainableSmoothOpConfig`(`type: trainable_smooth`) — `TrainableSmoothOpConfig` 是嵌套配置。 本页 <a href="#2-5-trainable-smooth">§2.5</a>45+| `MinmaxTuneOpConfig` | `minmax_tune` | `MinmaxTuneOpConfig` 是嵌套配置。 | 本页 <a href="#2-2-1-minmax-tune">§2.2.1</a> |
46+| `RoundTuneOpConfig` | `round_tune` | `RoundTuneOpConfig` 是嵌套配置。 | 本页 <a href="#2-2-2-round-tune">§2.2.2</a> |
47+| `TrainableSmoothOpConfig` | `trainable_smooth` | `TrainableSmoothOpConfig` 是嵌套配置。 | 本页 <a href="#2-2-3-trainable-smooth">§2.2.3</a> |
46 48 
47-<h4 id="2-3-minmax-tune">2.3 MinmaxTuneOpConfig</h4>49+<h4 id="2-2-1-minmax-tune">2.2.1 MinmaxTuneOpConfig</h4>
48 50 
49| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |51| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
50|----------|------|-----------|--------|----------------|------|----------|52|----------|------|-----------|--------|----------------|------|----------|
51| `type` | `string` | 可选 | `minmax_tune` | `minmax_tune` | 插件类型:minmax_tune | 无 |53| `type` | `string` | 可选 | `minmax_tune` | `minmax_tune` | 插件类型:minmax_tune | 无 |
52-| `lr` | `float / null` | 可选 | `null` | >0.0;或 null | — | 无 |54+| `lr` | `float / null` | 可选 | `null` | >0.0 或 null | — | 无 |
53 55 
54**配置约束**56**配置约束**
55 57 
56- 无。58- 无。
57 59 
58-<h4 id="2-4-round-tune">2.4 RoundTuneOpConfig</h4>60+<h4 id="2-2-2-round-tune">2.2.2 RoundTuneOpConfig</h4>
59 61 
60| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |62| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
61|----------|------|-----------|--------|----------------|------|----------|63|----------|------|-----------|--------|----------------|------|----------|
62| `type` | `string` | 可选 | `round_tune` | `round_tune` | 插件类型:round_tune | 无 |64| `type` | `string` | 可选 | `round_tune` | `round_tune` | 插件类型:round_tune | 无 |
63-| `lr` | `float / null` | 可选 | `null` | >0.0;或 null | — | 无 |65+| `lr` | `float / null` | 可选 | `null` | >0.0 或 null | — | 无 |
64 66 
65**配置约束**67**配置约束**
66 68 
67- 无。69- 无。
68 70 
69-<h4 id="2-5-trainable-smooth">2.5 TrainableSmoothOpConfig</h4>71+<h4 id="2-2-3-trainable-smooth">2.2.3 TrainableSmoothOpConfig</h4>
70 72 
71| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |73| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
72|----------|------|-----------|--------|----------------|------|----------|74|----------|------|-----------|--------|----------------|------|----------|
73| `type` | `string` | 可选 | `trainable_smooth` | `trainable_smooth` | 插件类型:trainable_smooth | 无 |75| `type` | `string` | 可选 | `trainable_smooth` | `trainable_smooth` | 插件类型:trainable_smooth | 无 |
74-| `lr` | `float / null` | 可选 | `null` | >0.0;或 null | — | 无 |76+| `lr` | `float / null` | 可选 | `null` | >0.0 或 null | — | 无 |
75| `enable_subgraph_type` | `list[string]` | 可选 | `['norm-linear', 'linear-linear', 'ov', 'up-down', 'non-fusion']` | — | 启用的 Smooth 子图类型,须为 SMOOTH_SUPPORTED_SUBGRAPH_TYPES 子集 | 无 |77| `enable_subgraph_type` | `list[string]` | 可选 | `['norm-linear', 'linear-linear', 'ov', 'up-down', 'non-fusion']` | — | 启用的 Smooth 子图类型,须为 SMOOTH_SUPPORTED_SUBGRAPH_TYPES 子集 | 无 |
76| `include` | `list[string] / null` | 可选 | `null` | — | 子图入口 include 通配 | 无 |78| `include` | `list[string] / null` | 可选 | `null` | — | 子图入口 include 通配 | 无 |
77| `exclude` | `list[string] / null` | 可选 | `null` | — | 子图入口 exclude 通配 | 无 |79| `exclude` | `list[string] / null` | 可选 | `null` | — | 子图入口 exclude 通配 | 无 |
@@ -80,13 +82,13 @@
80 82 
81- 无。83- 无。
82 84 
83-<h3 id="2-6-tlq-quant-strategy-config">2.6 QuantStrategyConfig</h3>85+<h3 id="2-3-tlq-quant-strategy-config">2.3 QuantStrategyConfig</h3>
84 86 
85trainable_linear_quant 量化策略:对匹配的线性层应用一组可训练量化配置。87trainable_linear_quant 量化策略:对匹配的线性层应用一组可训练量化配置。
86 88 
87| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |89| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
88|----------|------|-----------|--------|----------------|------|----------|90|----------|------|-----------|--------|----------------|------|----------|
89-| `qconfig` | `object` | 必选 | 无 | — | 激活与权重的量化配置,见《LinearQConfig 配置说明》。 | 本页 <a href="#2-7-linear-qconfig">§2.7</a> |91+| `qconfig` | `object` | 必选 | 无 | — | 激活与权重的量化配置,见<a href="#2-3-1-linear-qconfig">《LinearQConfig 配置说明》</a>。 | 本页 <a href="#2-3-1-linear-qconfig">§2.3.1</a> |
90| `include` | `list[string]` | 可选 | `['*']` | — | 包含的模块名称模式,默认 `*` 匹配全部模块 | 无 |92| `include` | `list[string]` | 可选 | `['*']` | — | 包含的模块名称模式,默认 `*` 匹配全部模块 | 无 |
91| `exclude` | `list[string]` | 可选 | `[]` | — | 排除的模块名称模式,优先级高于 `include` | 无 |93| `exclude` | `list[string]` | 可选 | `[]` | — | 排除的模块名称模式,优先级高于 `include` | 无 |
92 94 
@@ -94,36 +96,36 @@ trainable_linear_quant 量化策略:对匹配的线性层应用一组可训练
94 96 
95- 校验 qconfig:dtype/method 组合须有对应 TLQ kernel 支持,否则报错。97- 校验 qconfig:dtype/method 组合须有对应 TLQ kernel 支持,否则报错。
96 98 
97-<h3 id="2-7-linear-qconfig">2.7 LinearQConfig</h3>99+<h4 id="2-3-1-linear-qconfig">2.3.1 LinearQConfig</h4>
98 100 
99线性层(Linear)的量化配置,含激活与权重两路量化。101线性层(Linear)的量化配置,含激活与权重两路量化。
100 102 
101| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |103| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
102|----------|------|-----------|--------|----------------|------|----------|104|----------|------|-----------|--------|----------------|------|----------|
103-| `act` | `object` | 可选 | `{'dtype': 'float', 'scope': 'per_tensor', 'symmetric': True, 'method': 'none', 'ext': {}}` | — | 激活值的量化配置。默认 `float`(不量化激活),仅对权重做量化。 | 本页 <a href="#2-8-qconfig">§2.8</a> |105+| `act` | `object` | 可选 | `{'dtype': 'float', 'scope': 'per_tensor', 'symmetric': True, 'method': 'none', 'ext': {}}` | — | 激活值的量化配置。由激活量化器实现,`method` 支持 `minmax`、`histogram`、`none`;`scope` 支持 `per_tensor`、`per_token`、`per_channel`(限 int8/fp8_e4m3/mxfp8 的 minmax)等。默认 `float`(不量化激活),仅对权重做量化。 | 本页 <a href="#2-3-2-qconfig">§2.3.2</a> |
104-| `weight` | `object` | 必选 | 无 | — | 权重的量化配置,必选。 | 本页 <a href="#2-8-qconfig">§2.8</a> |106+| `weight` | `object` | 必选 | 无 | — | 权重的量化配置,必选。由权重量化器实现,`method` 支持 `minmax`、`mse_round`、`ssz`、`gptq` 等;`scope` 支持 `per_channel`、`per_group`、`per_block` 等(不支持 `per_tensor`/`per_token`)。 | 本页 <a href="#2-3-2-qconfig">§2.3.2</a> |
105 107 
106**配置约束**108**配置约束**
107 109 
108- 无。110- 无。
109 111 
110-<h3 id="2-8-qconfig">2.8 QConfig</h3>112+<h4 id="2-3-2-qconfig">2.3.2 QConfig</h4>
111 113 
112描述单个张量(权重或激活)的量化方式。114描述单个张量(权重或激活)的量化方式。
113 115 
114| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |116| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
115|----------|------|-----------|--------|----------------|------|----------|117|----------|------|-----------|--------|----------------|------|----------|
116| `dtype` | `string` | 必选 | 无 | `float`、`int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3` | 量化数据类型,如 `int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3`;`float` 表示该张量不量化。 | 无 |118| `dtype` | `string` | 必选 | 无 | `float`、`int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3` | 量化数据类型,如 `int8`、`int4`、`mxfp8`、`mxfp4`、`fp8_e4m3`;`float` 表示该张量不量化。 | 无 |
117-| `scope` | `string` | 必选 | 无 | `per_tensor`、`per_channel`、`per_group`、`per_block`、`per_token`、`pd_mix`、`per_head`、`dual_scale` | 量化粒度,即 scale/zero_point 的计算范围:`per_tensor`(整张量一个尺度)、`per_channel`(按通道)、`per_group`/`per_block`(按分组或固定块)、`per_token`(按 token)、`per_head`(按注意力头)、`dual_scale`(双尺度)等;合法取值组合取决于 `dtype` 与量化器实现。 | 无 |119+| `scope` | `string` | 必选 | 无 | `per_tensor`、`per_channel`、`per_group`、`per_block`、`per_token`、`pd_mix`、`per_head`、`dual_scale`、`per_channel_neg_offset` | 量化粒度,即 scale/zero_point 的计算范围。各取值含义:`per_tensor`(整张量一个尺度)、`per_channel`(按通道)、`per_group`/`per_block`(按分组或固定块)、`per_token`(按 token)、`per_head`(按注意力头)、`pd_mix`(Prefill/Decode 混合粒度)、`dual_scale`(双尺度)等;按场景可用取值如下(还须与 `dtype`/`method` 组合匹配):激活:`per_tensor`、`per_token`、`per_channel`(当前为 `int8`/`fp8_e4m3`/`mxfp8` 的 minmax)、`per_block`(MX minmax)、`pd_mix`、`dual_scale`;权重:`per_channel`、`per_group`(GPTQ)、`per_block`(MX)、`dual_scale`;FA3 注意力:`per_head`(默认)、`per_channel`、`per_token`、`per_block`。 | 无 |
118| `symmetric` | `bool` | 必选 | 无 | — | 是否对称量化。对称量化只保存 scale;非对称量化额外保存 zero_point,可用性取决于 `dtype`/`scope` 组合。 | 无 |120| `symmetric` | `bool` | 必选 | 无 | — | 是否对称量化。对称量化只保存 scale;非对称量化额外保存 zero_point,可用性取决于 `dtype`/`scope` 组合。 | 无 |
119-| `method` | `string` | 必选 | 无 | — | 量化参数估计算法,如 `minmax`、`mse_round`、`histogram`、`ssz`、`none` 等;可用取值取决于 `dtype`/`scope`/`symmetric` 组合,`none` 表示不估计参数(配合 `float` 使用)。 | 无 |121+| `method` | `string` | 必选 | 无 | — | 量化参数估计算法,如 `minmax`、`mse_round`、`histogram`、`ssz`、`none`、`gptq` 等;算法按张量类型分属两套量化器:激活量化器支持 `minmax`、`histogram`、`none`(配合 `float`);权重量化器支持 `minmax`、`mse_round`、`ssz`、`gptq` 等。可用取值还取决于 `dtype`/`scope`/`symmetric` 组合,`none` 表示不估计参数。 | 无 |
120| `ext` | `object` | 可选 | `{}` | — | 量化器扩展参数,随 `method` 与量化器实现而定(如 gptq 的 `percdamp`/`group_size`);空对象表示无扩展参数。 | 无 |122| `ext` | `object` | 可选 | `{}` | — | 量化器扩展参数,随 `method` 与量化器实现而定(如 gptq 的 `percdamp`/`group_size`);空对象表示无扩展参数。 | 无 |
121 123 
122**配置约束**124**配置约束**
123 125 
124- 无。126- 无。
125 127 
126-<h3 id="2-9-block-train-config">2.9 BlockTrainConfig</h3>128+<h3 id="2-4-block-train-config">2.4 BlockTrainConfig</h3>
127 129 
128块级训练(block train)超参配置。130块级训练(block train)超参配置。
129 131 
@@ -132,7 +134,7 @@ trainable_linear_quant 量化策略:对匹配的线性层应用一组可训练
132| `iters` | `int` | 可选 | `50` | ≥0 | 块级训练迭代次数;为 0 时 Trainer 跳过优化 | 无 |134| `iters` | `int` | 可选 | `50` | ≥0 | 块级训练迭代次数;为 0 时 Trainer 跳过优化 | 无 |
133| `gradient_accumulate_steps` | `int` | 可选 | `8` | ≥1 | 梯度累加步数,用于在有限显存下调节等效 batch | 无 |135| `gradient_accumulate_steps` | `int` | 可选 | `8` | ≥1 | 梯度累加步数,用于在有限显存下调节等效 batch | 无 |
134| `lr` | `float` | 可选 | `0.01` | >0.0 | 全局基础学习率(别名 `learning_rate`) | 无 |136| `lr` | `float` | 可选 | `0.01` | >0.0 | 全局基础学习率(别名 `learning_rate`) | 无 |
135-| `select_best` | `object` | 可选 | 见嵌套配置默认值 | — | 最优 iter 快照策略(按 mode 区分字段:ema / min_loss / last) | 本页 <a href="#2-10-selectbestconfig">§2.10</a> |137+| `select_best` | `object` | 可选 | 见嵌套配置默认值 | — | 最优 iter 快照策略(按 mode 区分字段:ema / min_loss / last) | 本页 <a href="#2-4-1-selectbestconfig">§2.4.1</a> |
136| `loss_type` | `string` | 可选 | `l1` | `l1`、`custom_outlier` | 块级训练损失:l1(L1Loss reduction=none)、custom_outlier(0.3*全量 L1 + 0.7*3σ 内区域 L1) | 无 |138| `loss_type` | `string` | 可选 | `l1` | `l1`、`custom_outlier` | 块级训练损失:l1(L1Loss reduction=none)、custom_outlier(0.3*全量 L1 + 0.7*3σ 内区域 L1) | 无 |
137| `train_seed` | `int` | 可选 | `42` | — | 块级训练随机种子(用于 sample 打乱与确定性算子) | 无 |139| `train_seed` | `int` | 可选 | `42` | — | 块级训练随机种子(用于 sample 打乱与确定性算子) | 无 |
138 140 
@@ -140,15 +142,17 @@ trainable_linear_quant 量化策略:对匹配的线性层应用一组可训练
140 142 
141- 无。143- 无。
142 144 
143-<h3 id="2-10-selectbestconfig">2.10 SelectBestConfig(按 `mode` 分派)</h3>145+<h4 id="2-4-1-selectbestconfig">2.4.1 SelectBestConfig(按 <code>mode</code> 分派)</h4>
144 146 
145**派生类**147**派生类**
146 148 
147-- `EmaSelectBest`(`mode: ema`) — EMA 滑动平均选最优;支持 early stop。 本页 <a href="#2-11-ema-select-best">§2.11</a>149+| 配置类 | `mode` | 说明 | 文档 |
148-- `MinLossSelectBest`(`mode: min_loss`) — 当轮 loss 历史最小值选最优;支持 early stop。 本页 <a href="#2-12-min-loss-select-best">§2.12</a>150+|--------|----------|------|------|
149-- `LastSelectBest`(`mode: last`) — 仅保存 iter 0 与最后一轮;无 early stop。 本页 <a href="#2-13-last-select-best">§2.13</a>151+| `EmaSelectBest` | `ema` | EMA 滑动平均选最优;支持 early stop。 | 本页 <a href="#2-4-2-ema-select-best">§2.4.2</a> |
152+| `MinLossSelectBest` | `min_loss` | 当轮 loss 历史最小值选最优;支持 early stop。 | 本页 <a href="#2-4-3-min-loss-select-best">§2.4.3</a> |
153+| `LastSelectBest` | `last` | 仅保存 iter 0 与最后一轮;无 early stop。 | 本页 <a href="#2-4-4-last-select-best">§2.4.4</a> |
150 154 
151-<h4 id="2-11-ema-select-best">2.11 EmaSelectBest</h4>155+<h4 id="2-4-2-ema-select-best">2.4.2 EmaSelectBest</h4>
152 156 
153EMA 滑动平均选最优;支持 early stop。157EMA 滑动平均选最优;支持 early stop。
154 158 
@@ -163,7 +167,7 @@ EMA 滑动平均选最优;支持 early stop。
163 167 
164- 无。168- 无。
165 169 
166-<h4 id="2-12-min-loss-select-best">2.12 MinLossSelectBest</h4>170+<h4 id="2-4-3-min-loss-select-best">2.4.3 MinLossSelectBest</h4>
167 171 
168当轮 loss 历史最小值选最优;支持 early stop。172当轮 loss 历史最小值选最优;支持 early stop。
169 173 
@@ -176,7 +180,7 @@ EMA 滑动平均选最优;支持 early stop。
176 180 
177- 无。181- 无。
178 182 
179-<h4 id="2-13-last-select-best">2.13 LastSelectBest</h4>183+<h4 id="2-4-4-last-select-best">2.4.4 LastSelectBest</h4>
180 184 
181仅保存 iter 0 与最后一轮;无 early stop。185仅保存 iter 0 与最后一轮;无 early stop。
182 186 
@@ -0,0 +1,22 @@
1+# 量化任务配置说明导航
2+ 
3+本目录是 msModelSlim 量化任务配置(YAML)的字段级参考文档,按先选 `apiversion`、再展开 `spec`的方式组织。使用流程与端到端操作步骤见《[一键量化完整指南](../../../user_guide/usage_quick_quantization.md)》;处理器与保存格式总表见《[配置说明导航](../README.md)》;自动调优见《[自动调优配置说明导航](../tuning/README.md)》。
4+ 
5+## 1. 怎么用这套文档
6+ 
7+1. **确定协议**:YAML 根节点的 `apiversion` 决定 `spec` 的结构,按任务场景在下方[任务配置](#2-任务配置按-apiversion-选择)表中选择对应页面。各协议可用的 `process` / `save` 子类型并不相同,以对应任务页为准。
8+2. **查任务字段**:打开对应协议页的参数列表,根块为任务配置(如 `ModelslimV1QuantConfig`),嵌套块为 `spec` 及展开的服务配置。
9+3. **查处理器 / 保存格式**:`spec.process[]`、`spec.save[]` 由 `type` 分派,字段见《[配置说明导航](../README.md)》的处理器、保存格式表,或直接打开 `../processor/`、`../format/` 下对应页面。
10+4. **查最佳实践包装**:一键量化 / 调优模板若带 `metadata`,见《[practice_config](practice_config.md)》;其内 `task` 仍对应某一 `apiversion` 任务配置。
11+ 
12+> 本页为手写导航;本目录其余页面由 `skills/docs-management/scripts/gen_config_api_docs.py`(或 `gen_quant_config_docs.py`)从源码 Pydantic 注解生成。修改字段说明请改源码 `Field(description=)` 等注解后重新生成,不要直接编辑带 `generated-by` 标记的页面。
13+ 
14+## 2. 任务配置(按 `apiversion` 选择)
15+ 
16+| 配置 | `apiversion` | 说明 |
17+|------|--------------|------|
18+| [modelslim_v1](modelslim_v1.md) | `modelslim_v1` | 大语言模型量化与权重转换的默认协议,含 `runner`/`process`/`save`/`dataset`。 |
19+| [multimodal_vlm_modelslim_v1](multimodal_vlm_modelslim_v1.md) | `multimodal_vlm_modelslim_v1` | 多模态理解(VLM)模型量化协议。 |
20+| [multimodal_sd_modelslim_v1](multimodal_sd_modelslim_v1.md) | `multimodal_sd_modelslim_v1` | 多模态生成(DiT/SD)模型量化协议,含 dump 与推理参数。 |
21+| [modelslim_convert](modelslim_convert.md) | `modelslim_convert` | 纯权重转换协议,用于权重重命名、结构替换与格式转换。 |
22+| [practice_config](practice_config.md) | `modelslim_v1`(在 `task` 内) | 最佳实践配置:`metadata` + `task`,被自动调优策略引用。 |
Rdocs/zh/api_reference/config/task/modelslim_convert.md→docs/zh/api_reference/config/quant/modelslim_convert.md+67-66
@@ -10,21 +10,18 @@
10| 配置类 | `ModelslimConvertQuantConfig` |10| 配置类 | `ModelslimConvertQuantConfig` |
11| 源码 | [quant_config.py](../../../../../msmodelslim/core/quant_service/modelslim_convert/quant_config.py) |11| 源码 | [quant_config.py](../../../../../msmodelslim/core/quant_service/modelslim_convert/quant_config.py) |
12 12 
13-执行入口是 `msmodelslim quant --config`,完整命令与操作步骤见《[msmodelslim quant 命令行](../../cli/msmodelslim_quant.md#76-权重转换不需要-model_type)》与《[权重转换使用指南](../../../knowledge_base/ptq/convert/usage_weight_conversion.md)》。
14- 
15## 2. 参数列表13## 2. 参数列表
16 14 
17<h3 id="2-1-modelslim-convert">2.1 ModelslimConvertQuantConfig</h3>15<h3 id="2-1-modelslim-convert">2.1 ModelslimConvertQuantConfig</h3>
18 16 
19| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
20|----------|------|-----------|--------|----------------|------|----------|18|----------|------|-----------|--------|----------------|------|----------|
21-| `apiversion` | `string` | 必选 | 无 | `modelslim_convert` | 权重转换任务类型,固定为 `modelslim_convert`。 | 无 |19+| `apiversion` | `string` | 可选 | `modelslim_convert` | `modelslim_convert` | — | 无 |
22-| `spec` | `object` | 必选 | 无 | — | `modelslim_convert` 服务的 spec 结构,声明线性层转换规则(`linears`)、保存格式(`save`)与并行(`parallel`)。 | 本页 <a href="#2-2-modelslim-convert-spec">§2.2</a> |20+| `spec` | `object` | 必选 | 无 | — | `modelslim_convert` 服务的 spec 结构。<br><br>声明权重名重命名/变换(`preprocess`)、线性层转换规则(`linears`)、<br>保存格式(`save`)、并行执行(`parallel`)与默认值(`defaults`)。 | 本页 <a href="#2-2-modelslim-convert-spec">§2.2</a> |
23 21 
24**配置约束**22**配置约束**
25 23 
26-- YAML 须写 `apiversion: modelslim_convert`。24+- 无。
27-- `spec` 为必选;日常至少配置 `linears` 与 `save`。
28 25 
29<h3 id="2-2-modelslim-convert-spec">2.2 ModelslimConvertServiceConfig</h3>26<h3 id="2-2-modelslim-convert-spec">2.2 ModelslimConvertServiceConfig</h3>
30 27 
@@ -32,37 +29,39 @@
32 29 
33| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |30| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
34|----------|------|-----------|--------|----------------|------|----------|31|----------|------|-----------|--------|----------------|------|----------|
35-| `preprocess` | `list[object]` | 可选 | `[]` | — | 预处理步骤列表,每项 `type` 为 `rename` 或 `convert`。 | 本页 <a href="#2-3-preprocessconfig">§2.3</a> |32+| `preprocess` | `list[object]` | 可选 | `[]` | — | 预处理步骤列表,每项 `type` 为 `rename` 或 `convert`。 | 本页 <a href="#2-2-1-preprocessconfig">§2.2.1</a> |
36-| `linears` | `list[object]` | 可选 | `[]` | — | 线性层转换规则列表。 | 本页 <a href="#2-8-linear-convert-config">§2.8</a> |33+| `linears` | `list[object]` | 可选 | `[]` | — | 线性层转换规则列表。 | 本页 <a href="#2-2-6-linear-convert-config">§2.2.6</a> |
37-| `save` | `list[object]` | 可选 | `[]` | — | 保存格式配置列表,取首个生效。 | 本页 <a href="#2-9-save-config">§2.9</a> |34+| `save` | `list[object]` | 可选 | `[]` | — | 保存格式配置列表,取首个生效。 | 本页 <a href="#2-2-7-save-config">§2.2.7</a> |
38-| `parallel` | `object` | 可选 | 见嵌套配置默认值 | — | CPU 并行配置。NPU 多卡用命令行 `--device_id`。 | 本页 <a href="#2-10-parallel-spec-config">§2.10</a> |35+| `parallel` | `object` | 可选 | 见嵌套配置默认值 | — | 并行执行配置。 | 本页 <a href="#2-2-8-parallel-spec-config">§2.2.8</a> |
39-| `defaults` | `object` | 可选 | 见嵌套配置默认值 | — | 保底默认值配置。配置了 `save` 时直接按 `save` 执行,不走此处的默认值。 | 本页 <a href="#2-11-convert-defaults">§2.11</a> |36+| `defaults` | `object` | 可选 | 见嵌套配置默认值 | — | 字段缺省时的全局默认值。 | 本页 <a href="#2-2-9-convert-defaults">§2.2.9</a> |
40 37 
41**配置约束**38**配置约束**
42 39 
43-- 日常至少配置 `linears` 与 `save`。配置了 `save` 时以 `save[0].type` 为准,`defaults.dst_format` 会被忽略。40+- 无。
44 41 
45-<h3 id="2-3-preprocessconfig">2.3 PreprocessConfig</h3>42+<h4 id="2-2-1-preprocessconfig">2.2.1 PreprocessConfig</h4>
46 43 
47**派生类**44**派生类**
48 45 
49-- `RenamePreprocessConfig`(`type: rename`) — `modelslim_convert` 预处理步骤之一:批量重命名权重张量。 本页 <a href="#2-4-rename">§2.4</a>46+| 配置类 | `type` | 说明 | 文档 |
50-- `ConvertPreprocessConfig`(`type: convert`) — `modelslim_convert` 预处理步骤之一:对匹配的线性层做权重变换(拆分/合并等)。 本页 <a href="#2-6-convert">§2.6</a>47+|--------|----------|------|------|
48+| `RenamePreprocessConfig` | `rename` | `modelslim_convert` 预处理步骤之一:批量重命名权重张量。 | 本页 <a href="#2-2-2-rename">§2.2.2</a> |
49+| `ConvertPreprocessConfig` | `convert` | `modelslim_convert` 预处理步骤之一:对匹配的线性层做权重变换(拆分/合并等)。 | 本页 <a href="#2-2-4-convert">§2.2.4</a> |
51 50 
52-<h4 id="2-4-rename">2.4 RenamePreprocessConfig</h4>51+<h4 id="2-2-2-rename">2.2.2 RenamePreprocessConfig</h4>
53 52 
54`modelslim_convert` 预处理步骤之一:批量重命名权重张量。53`modelslim_convert` 预处理步骤之一:批量重命名权重张量。
55 54 
56| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |55| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
57|----------|------|-----------|--------|----------------|------|----------|56|----------|------|-----------|--------|----------------|------|----------|
58| `type` | `string` | 可选 | `rename` | `rename` | 预处理类型,固定为 `rename`。 | 无 |57| `type` | `string` | 可选 | `rename` | `rename` | 预处理类型,固定为 `rename`。 | 无 |
59-| `patterns` | `list[object]` | 可选 | `[]` | — | 重命名规则列表,逐条应用到匹配的权重名。 | 本页 <a href="#2-5-rename-pattern">§2.5</a> |58+| `patterns` | `list[object]` | 可选 | `[]` | — | 重命名规则列表,逐条应用到匹配的权重名。 | 本页 <a href="#2-2-3-rename-pattern">§2.2.3</a> |
60 59 
61**配置约束**60**配置约束**
62 61 
63- 无。62- 无。
64 63 
65-<h3 id="2-5-rename-pattern">2.5 RenamePattern</h3>64+<h4 id="2-2-3-rename-pattern">2.2.3 RenamePattern</h4>
66 65 
67权重张量名重命名规则:把匹配 `from` 的权重名改写为 `to`。66权重张量名重命名规则:把匹配 `from` 的权重名改写为 `to`。
68 67 
@@ -75,7 +74,7 @@
75 74 
76- 无。75- 无。
77 76 
78-<h4 id="2-6-convert">2.6 ConvertPreprocessConfig</h4>77+<h4 id="2-2-4-convert">2.2.4 ConvertPreprocessConfig</h4>
79 78 
80`modelslim_convert` 预处理步骤之一:对匹配的线性层做权重变换(拆分/合并等)。79`modelslim_convert` 预处理步骤之一:对匹配的线性层做权重变换(拆分/合并等)。
81 80 
@@ -84,13 +83,13 @@
84| `type` | `string` | 可选 | `convert` | `convert` | 预处理类型,固定为 `convert`。 | 无 |83| `type` | `string` | 可选 | `convert` | `convert` | 预处理类型,固定为 `convert`。 | 无 |
85| `source` | `list[string]` | 可选 | `[]` | — | 源权重名模式列表(待变换的线性层)。 | 无 |84| `source` | `list[string]` | 可选 | `[]` | — | 源权重名模式列表(待变换的线性层)。 | 无 |
86| `target` | `list[string]` | 可选 | `[]` | — | 目标权重名模式列表(变换结果)。 | 无 |85| `target` | `list[string]` | 可选 | `[]` | — | 目标权重名模式列表(变换结果)。 | 无 |
87-| `ops` | `list[object]` | 可选 | `[]` | — | 权重变换算子列表,如 `chunk`、`merge`。 | 本页 <a href="#2-7-convert-op-config">§2.7</a> |86+| `ops` | `list[object]` | 可选 | `[]` | — | 权重变换算子列表,如 `chunk`、`merge`。 | 本页 <a href="#2-2-5-convert-op-config">§2.2.5</a> |
88 87 
89**配置约束**88**配置约束**
90 89 
91- 无。90- 无。
92 91 
93-<h3 id="2-7-convert-op-config">2.7 ConvertOpConfig</h3>92+<h4 id="2-2-5-convert-op-config">2.2.5 ConvertOpConfig</h4>
94 93 
95`convert` 预处理步骤中的权重算子,如拆分/合并 fused 的 gate/up 投影。94`convert` 预处理步骤中的权重算子,如拆分/合并 fused 的 gate/up 投影。
96 95 
@@ -102,93 +101,95 @@
102 101 
103**配置约束**102**配置约束**
104 103 
105-- `type: chunk` 用于拆分 fused 的 `gate_up_proj`。专家数从模型 `config.json` 的 `num_experts` 读取。104+- 无。
106-- 权重已经是独立的 `gate_proj` / `up_proj` 时不要再配 `chunk`,只改 `linears.match`。
107 105 
108-<h3 id="2-8-linear-convert-config">2.8 LinearConvertConfig</h3>106+<h4 id="2-2-6-linear-convert-config">2.2.6 LinearConvertConfig</h4>
109 107 
110-指定匹配的线性层要转到哪种目标格式。108+指定匹配的线性层转换到目标 IR 的规则。
111 109 
112| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |110| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
113|----------|------|-----------|--------|----------------|------|----------|111|----------|------|-----------|--------|----------------|------|----------|
114| `match` | `list[string]` | 可选 | `[]` | — | 匹配的线性层名称模式列表。 | 无 |112| `match` | `list[string]` | 可选 | `[]` | — | 匹配的线性层名称模式列表。 | 无 |
115-| `target` | `string` | 必选 | 无 | `FLOAT`、`W8A8_MXFP8` | 转换目标。常用 `FLOAT`、`W8A8_MXFP8`。 | 无 |113+| `target` | `string` | 必选 | 无 | `FLOAT`、`FP8_BLOCK`、`W8A8_MXFP8`、`W4A4_MXFP4`、`W4A8_MXFP8`、`INT4_PACKED`、`NVFP4_MODELOPT`、`HIFP4`、`UNKNOWN` | 转换目标 IR 类型,如 `W8A8_MXFP8`、`INT4_PACKED` 等。 | 无 |
114+| `route` | `list[string] / string` | 可选 | `auto` | `FLOAT`、`FP8_BLOCK`、`W8A8_MXFP8`、`W4A4_MXFP4`、`W4A8_MXFP8`、`INT4_PACKED`、`NVFP4_MODELOPT`、`HIFP4`、`UNKNOWN`;`auto` | 转换路径:显式 IR 列表(首元素为源 IR),或 `auto` 由虚拟树按权重 dtype 推断。 | 无 |
116 115 
117**配置约束**116**配置约束**
118 117 
119-- `W8A8_MXFP8` 配 `ascend_v1`,`FLOAT` 配 `huggingface`。118+- 无。
120 119 
121-<h3 id="2-9-save-config">2.9 SaveConfig</h3>120+<h4 id="2-2-7-save-config">2.2.7 SaveConfig</h4>
122 121 
123`modelslim_convert` 的保存格式配置。122`modelslim_convert` 的保存格式配置。
124 123 
125| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |124| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
126|----------|------|-----------|--------|----------------|------|----------|125|----------|------|-----------|--------|----------------|------|----------|
127-| `type` | `string` | 可选 | `ascend_v1` | — | 保存格式:`ascend_v1`(昇腾 AscendV1)、`huggingface`(HF safetensors)。 | 无 |126+| `type` | `string` | 可选 | `ascend_v1` | — | 保存格式:`ascend_v1`(昇腾,与 `ConvertDefaults.dst_format` 的 `ascendv1` 等价);`compressed_tensors`(HF 兼容 safetensors);`huggingface`/`hf` 是 `compressed_tensors` 的别名。 | 无 |
128| `part_file_size` | `int` | 可选 | `4` | — | 分片文件大小,单位 GB;0 表示不分片。 | 无 |127| `part_file_size` | `int` | 可选 | `4` | — | 分片文件大小,单位 GB;0 表示不分片。 | 无 |
129 128 
130**配置约束**129**配置约束**
131 130 
132-- `W8A8_MXFP8` 必须用 `ascend_v1`;`FLOAT` 用 `huggingface`。131+- 无。
133 132 
134-<h3 id="2-10-parallel-spec-config">2.10 ParallelSpecConfig</h3>133+<h4 id="2-2-8-parallel-spec-config">2.2.8 ParallelSpecConfig</h4>
135 134 
136`modelslim_convert` 的并行执行配置。135`modelslim_convert` 的并行执行配置。
137 136 
138| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |137| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
139|----------|------|-----------|--------|----------------|------|----------|138|----------|------|-----------|--------|----------------|------|----------|
140-| `workers` | `int` | 可选 | `1` | — | CPU 并行 worker 数。 | 无 |139+| `workers` | `int` | 可选 | `1` | — | 并行 worker 数:1 表示单进程组内线程(可配 NPU);大于1 表示组间多进程 + 组内线程(CPU)。 | 无 |
141-| `max_group_size` | `int / null` | 可选 | `null` | — | 单个依赖组的最大任务数,超过则拆成多个子组分散到不同进程/卡;不设置表示不拆分。 | 无 |140+| `max_group_size` | `int / null` | 可选 | `null` | — | 单个依赖组的最大任务数,超过则拆成多个子组分散到不同进程;不设置表示不拆分。 | 无 |
141+| `worker_device` | `string` | 可选 | `cpu` | — | worker 运行设备:`cpu` 或 `npu`。 | 无 |
142+| `npu_max_workers` | `int` | 可选 | `1` | — | 仅 `workers=1` 且 `worker_device=npu` 时生效,限制组内并发以防显存溢出。 | 无 |
142 143 
143**配置约束**144**配置约束**
144 145 
145-- `workers` 用于 CPU。NPU 用 `--device npu --device_id ...`。146+- 无。
146-- `max_group_size`:MoE 等含有大量专家任务的模型,可设置为约「每层专家任务数 / 卡数」(如 8 卡设为 96),防止大组单进程/单卡长尾等待。
147 147 
148-<h3 id="2-11-convert-defaults">2.11 ConvertDefaults</h3>148+<h4 id="2-2-9-convert-defaults">2.2.9 ConvertDefaults</h4>
149 149 
150-未显式声明对应配置时的全局保底默认值。150+转换规则未显式声明字段时的全局默认值。
151 151 
152| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |152| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
153|----------|------|-----------|--------|----------------|------|----------|153|----------|------|-----------|--------|----------------|------|----------|
154-| `src_format` | `string` | 可选 | `auto` | — | 源权重格式;工具按 checkpoint 权重 key 与 dtype 自动推断,日常无需配置。 | 无 |154+| `src_format` | `string` | 可选 | `auto` | — | 源权重格式;`auto` 由模型适配器/权重目录自动推断。 | 无 |
155-| `dst_format` | `string` | 可选 | `ascendv1` | — | 保底落盘格式。**与 `spec.save` 互斥**:只要配置了 `spec.save`,就直接使用 `save[0].type`,不走本字段;未配置 `spec.save` 时才回退到此默认值。 | 无 |155+| `dst_format` | `string` | 可选 | `ascendv1` | `ascendv1`、`ascendv1_saver`、`compressed_tensors`、`huggingface`、`hf` | 目标保存格式:`ascendv1`(昇腾,与 `SaveConfig.type` 的 `ascend_v1` 等价);`compressed_tensors`(HF 兼容 safetensors);`huggingface`/`hf` 是 `compressed_tensors` 的别名。 | 无 |
156-| `dst_ir` | `string / null` | 可选 | `null` | `FLOAT`、`W8A8_MXFP8` 等;或 null | 保底目标格式。各层目标格式直接由 `linears[].target` 显式指定,日常无需配置此项。 | 无 |156+| `dst_ir` | `string / null` | 可选 | `null` | `FLOAT`、`FP8_BLOCK`、`W8A8_MXFP8`、`W4A4_MXFP4`、`W4A8_MXFP8`、`INT4_PACKED`、`NVFP4_MODELOPT`、`HIFP4`、`UNKNOWN` 或 null | 目标 IR 类型;不设置时由目标格式决定。 | 无 |
157 157 
158-**配置约束与互斥说明**158+**配置约束**
159 159 
160-- **与 `spec.save` 互斥/覆盖**:`spec.save` 优先级高于 `defaults.dst_format`。只要在 YAML 中配置了 `spec.save`(如 `type: ascend_v1` 或 `type: huggingface`),系统直接按 `save` 落盘,**完全不走 `defaults.dst_format` 默认值**。160+- 无。
161-- **与 `linears.target` 的关系**:线性层转换目标直接由各条规则的 `linears[].target` 指定,不走 `defaults.dst_ir`。
162-- **无需配置**:日常转换推荐显式配置 `linears` 和 `save`,**无需配置 `defaults`**。
163 161 
164## 3. 完整配置参考162## 3. 完整配置参考
165 163 
166```yaml164```yaml
167apiversion: modelslim_convert165apiversion: modelslim_convert
168spec:166spec:
169- linears: []167+ linears:
170- save: []168+ - match:
169+ - model.language_model.layers.*.mlp.gate_proj
170+ - model.language_model.layers.*.mlp.up_proj
171+ - model.language_model.layers.*.mlp.down_proj
172+ - model.language_model.layers.*.mlp.shared_experts.gate_proj
173+ - model.language_model.layers.*.mlp.shared_experts.up_proj
174+ - model.language_model.layers.*.mlp.shared_experts.down_proj
175+ - model.language_model.layers.*.mlp.experts.*.gate_proj
176+ - model.language_model.layers.*.mlp.experts.*.up_proj
177+ - model.language_model.layers.*.mlp.experts.*.down_proj
178+ - model.language_model.layers.*.self_attn.q_a_proj
179+ - model.language_model.layers.*.self_attn.q_b_proj
180+ - model.language_model.layers.*.self_attn.kv_a_proj_with_mqa
181+ target: W8A8_MXFP8
182+ route: auto
183+ save:
184+ - type: ascend_v1
185+ part_file_size: 4
171 parallel:186 parallel:
172 workers: 1187 workers: 1
173 max_group_size: null188 max_group_size: null
174-```189+ worker_device: cpu
175- 190+ npu_max_workers: 1
176-可落地的最小命令:191+ defaults:
177- 192+ src_format: auto
178-```bash193+ dst_format: ascendv1
179-msmodelslim quant \194+ dst_ir: null
180- --model_path "${MODEL_PATH}" \
181- --save_path "${SAVE_PATH}" \
182- --config "${CONFIG_PATH}"
183-```
184- 
185-多卡 NPU:
186- 
187-```bash
188-msmodelslim quant \
189- --model_path "${MODEL_PATH}" \
190- --save_path "${SAVE_PATH}" \
191- --config "${CONFIG_PATH}" \
192- --device npu \
193- --device_id 0 1 2 3
194```195```
Rdocs/zh/api_reference/config/task/modelslim_v1.md→docs/zh/api_reference/config/quant/modelslim_v1.md+40-36
@@ -16,7 +16,7 @@
16 16 
17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
18|----------|------|-----------|--------|----------------|------|----------|18|----------|------|-----------|--------|----------------|------|----------|
19-| `apiversion` | `string` | 可选 | Unknown(代码占位;YAML 中须按任务类型显式指定) | `modelslim_v1`、`multimodal_vlm_modelslim_v1`、`multimodal_sd_modelslim_v1`、`modelslim_convert` | API 版本(任务类型),决定 spec 的结构:`modelslim_v1`、`multimodal_vlm_modelslim_v1`、`multimodal_sd_modelslim_v1`、`modelslim_convert`;YAML 中必须显式指定,默认值 `Unknown` 仅为代码内部占位,不可直接使用。 | 无 |19+| `apiversion` | `string` | 可选 | `modelslim_v1` | `modelslim_v1` | — | 无 |
20| `spec` | `object` | 必选 | 无 | — | `modelslim_v1` 服务的 spec 结构,声明量化流水线、保存格式与校准数据。 | 本页 <a href="#2-2-modelslim-v1-spec">§2.2</a> |20| `spec` | `object` | 必选 | 无 | — | `modelslim_v1` 服务的 spec 结构,声明量化流水线、保存格式与校准数据。 | 本页 <a href="#2-2-modelslim-v1-spec">§2.2</a> |
21 21 
22**配置约束**22**配置约束**
@@ -30,65 +30,69 @@
30| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |30| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
31|----------|------|-----------|--------|----------------|------|----------|31|----------|------|-----------|--------|----------------|------|----------|
32| `runner` | `string` | 可选 | `auto` | `auto`、`model_wise`、`layer_wise`、`dp_layer_wise` | 流水线执行方式:`auto` 按设备数量自动选择(单设备 `layer_wise`,多设备 `dp_layer_wise`)、`model_wise` 整模型计算、`layer_wise` 逐层计算、`dp_layer_wise` 数据并行逐层计算。 | 无 |32| `runner` | `string` | 可选 | `auto` | `auto`、`model_wise`、`layer_wise`、`dp_layer_wise` | 流水线执行方式:`auto` 按设备数量自动选择(单设备 `layer_wise`,多设备 `dp_layer_wise`)、`model_wise` 整模型计算、`layer_wise` 逐层计算、`dp_layer_wise` 数据并行逐层计算。 | 无 |
33-| `prior` | `list[object]` | 可选 | `[]` | — | 前置阶段列表,每阶段含 process 与 dataset | 本页 <a href="#2-3-prior-stage-config">§2.3</a> |33+| `prior` | `list[object]` | 可选 | `[]` | — | 前置阶段列表,每阶段含 process 与 dataset | 本页 <a href="#2-2-1-prior-stage-config">§2.2.1</a> |
34-| `process` | `list[object]` | 可选 | `[]` | — | 量化处理器链,按顺序执行;每个元素是 `type` 分派的处理器配置,如 `linear_quant`、`awq`、`smooth_quant` 等。 | 本页 <a href="#2-4-autoprocessorconfig">§2.4</a> |34+| `process` | `list[object]` | 可选 | `[]` | — | 量化处理器链,按顺序执行;每个元素是 `type` 分派的处理器配置,如 `linear_quant`、`awq`、`smooth_quant` 等。 | 本页 <a href="#2-2-2-autoprocessorconfig">§2.2.2</a> |
35-| `save` | `list[object]` | 可选 | `[]` | — | 保存格式列表,每个元素是 `type` 分派的保存格式配置,如 `ascendv1_saver`、`compressed_tensors`、`mindie_format_saver`。 | 本页 <a href="#2-5-quantformatconfig">§2.5</a> |35+| `save` | `list[object]` | 可选 | `[]` | — | 保存格式列表,每个元素是 `type` 分派的保存格式配置,如 `ascendv1_saver`、`compressed_tensors`、`mindie_format_saver`。 | 本页 <a href="#2-2-3-quantformatconfig">§2.2.3</a> |
36| `dataset` | `string` | 可选 | `mix_calib.jsonl` | — | 校准数据集名称(`lab_calib` 下的文件名)或数据集路径,用于量化的参数估计与敏感性校准。 | 无 |36| `dataset` | `string` | 可选 | `mix_calib.jsonl` | — | 校准数据集名称(`lab_calib` 下的文件名)或数据集路径,用于量化的参数估计与敏感性校准。 | 无 |
37 37 
38**配置约束**38**配置约束**
39 39 
40- 无。40- 无。
41 41 
42-<h3 id="2-3-prior-stage-config">2.3 PriorStageConfig</h3>42+<h4 id="2-2-1-prior-stage-config">2.2.1 PriorStageConfig</h4>
43 43 
44前置阶段配置:仅 process + dataset,用于如 adapt_rotation stage1 等先验阶段。44前置阶段配置:仅 process + dataset,用于如 adapt_rotation stage1 等先验阶段。
45 45 
46| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |46| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
47|----------|------|-----------|--------|----------------|------|----------|47|----------|------|-----------|--------|----------------|------|----------|
48-| `process` | `list[object]` | 可选 | `[]` | — | 该阶段处理器列表 | 本页 <a href="#2-4-autoprocessorconfig">§2.4</a> |48+| `process` | `list[object]` | 可选 | `[]` | — | 该阶段处理器列表 | 本页 <a href="#2-2-2-autoprocessorconfig">§2.2.2</a> |
49| `dataset` | `string / null` | 可选 | `null` | — | 该阶段数据集名称,不提供则使用 spec.dataset | 无 |49| `dataset` | `string / null` | 可选 | `null` | — | 该阶段数据集名称,不提供则使用 spec.dataset | 无 |
50 50 
51**配置约束**51**配置约束**
52 52 
53- 无。53- 无。
54 54 
55-<h3 id="2-4-autoprocessorconfig">2.4 AutoProcessorConfig</h3>55+<h4 id="2-2-2-autoprocessorconfig">2.2.2 《<a href="../processor/linear_quant.md">AutoProcessorConfig</a>》</h4>
56 56 
57**派生类**57**派生类**
58 58 
59-- `AdaptRotationProcessorConfig`(`type: adapt_rotation`) — 自适应旋转(adapt_rotation)处理器配置。 《[adapt_rotation 配置说明](../processor/adapt_rotation.md)》59+| 配置类 | `type` | 说明 | 文档 |
60-- `AutoroundProcessorConfig`(`type: autoround_quant`) — autoround 量化处理器配置。 《[autoround_quant 配置说明](../processor/autoround_quant.md)》60+|--------|----------|------|------|
61-- `AWQProcessorConfig`(`type: awq`) — AWQ(Activation-aware Weight Quantization)处理器配置。 《[awq 配置说明](../processor/awq.md)》61+| `AdaptRotationProcessorConfig` | `adapt_rotation` | 自适应旋转(adapt_rotation)处理器配置。 | 《[adapt_rotation 配置说明](../processor/adapt_rotation.md)》 |
62-- `BinaryAnalysisProcessorConfig`(`type: binary_analysis`) — 二值(有/无量化)敏感度分析处理器配置。 《[binary_analysis 配置说明](../processor/binary_analysis.md)》62+| `AutoroundProcessorConfig` | `autoround_quant` | autoround 量化处理器配置。 | 《[autoround_quant 配置说明](../processor/autoround_quant.md)》 |
63-- `BinaryOperatorLayerWiseProcessorConfig`(`type: binary_operator_layer_wise`) — 逐层敏感度分析处理器配置(对比逐块浮点与量化输出)。 《[binary_operator_layer_wise 配置说明](../processor/binary_operator_layer_wise.md)》63+| `AWQProcessorConfig` | `awq` | AWQ(Activation-aware Weight Quantization)处理器配置。 | 《[awq 配置说明](../processor/awq.md)》 |
64-- `BinaryOperatorModelWiseProcessorConfig`(`type: binary_operator_model_wise`) — 模型级敏感度分析配置(对比模型最终输出,使用 MSE 指标) 《[binary_operator_model_wise 配置说明](../processor/binary_operator_model_wise.md)》64+| `BinaryAnalysisProcessorConfig` | `binary_analysis` | 二值(有/无量化)敏感度分析处理器配置。 | 《[binary_analysis 配置说明](../processor/binary_analysis.md)》 |
65-- `DynamicCacheProcessorConfig`(`type: dynamic_cache`) — KV cache 量化处理器配置。 《[dynamic_cache 配置说明](../processor/dynamic_cache.md)》65+| `BinaryOperatorLayerWiseProcessorConfig` | `binary_operator_layer_wise` | 逐层敏感度分析处理器配置(对比逐块浮点与量化输出)。 | 《[binary_operator_layer_wise 配置说明](../processor/binary_operator_layer_wise.md)》 |
66-- `FA3QuantProcessorConfig`(`type: fa3_quant`) — FA3(FlashAttention-3)量化处理器配置。 《[fa3_quant 配置说明](../processor/fa3_quant.md)》66+| `BinaryOperatorModelWiseProcessorConfig` | `binary_operator_model_wise` | 模型级敏感度分析配置(对比模型最终输出,使用 MSE 指标) | 《[binary_operator_model_wise 配置说明](../processor/binary_operator_model_wise.md)》 |
67-- `FlatQuantProcessorConfig`(`type: flatquant`) — FlatQuant处理器配置:定义量化训练参数、策略、混合精度等 《[flatquant 配置说明](../processor/flatquant.md)》67+| `DynamicCacheProcessorConfig` | `dynamic_cache` | KV cache 量化处理器配置。 | 《[dynamic_cache 配置说明](../processor/dynamic_cache.md)》 |
68-- `FlexAWQSSZProcessorConfig`(`type: flex_awq_ssz`) — FlexAWQSSZ 平滑+AWQ 处理器配置。 《[flex_awq_ssz 配置说明](../processor/flex_awq_ssz.md)》68+| `FA3QuantProcessorConfig` | `fa3_quant` | FA3(FlashAttention-3)量化处理器配置。 | 《[fa3_quant 配置说明](../processor/fa3_quant.md)》 |
69-- `FlexSmoothQuantProcessorConfig`(`type: flex_smooth_quant`) — FlexSmoothQuant 平滑量化处理器配置。 《[flex_smooth_quant 配置说明](../processor/flex_smooth_quant.md)》69+| `FlatQuantProcessorConfig` | `flatquant` | FlatQuant处理器配置:定义量化训练参数、策略、混合精度等 | 《[flatquant 配置说明](../processor/flatquant.md)》 |
70-- `FloatSparseProcessorConfig`(`type: float_sparse`) — 浮点稀疏处理器配置。 《[float_sparse 配置说明](../processor/float_sparse.md)》70+| `FlexAWQSSZProcessorConfig` | `flex_awq_ssz` | Flex AWQ SSZ 离群值抑制处理器配置。 | 《[flex_awq_ssz 配置说明](../processor/flex_awq_ssz.md)》 |
71-- `GroupProcessorConfig`(`type: group`) — 处理器合并器配置。 《[group 配置说明](../processor/group.md)》71+| `FlexSmoothQuantProcessorConfig` | `flex_smooth_quant` | FlexSmoothQuant 平滑量化处理器配置。 | 《[flex_smooth_quant 配置说明](../processor/flex_smooth_quant.md)》 |
72-- `IterSmoothProcessorConfig`(`type: iter_smooth`) — 迭代平滑(IterativeSmooth)处理器配置。 《[iter_smooth 配置说明](../processor/iter_smooth.md)》72+| `FloatSparseProcessorConfig` | `float_sparse` | 浮点稀疏处理器配置。 | 《[float_sparse 配置说明](../processor/float_sparse.md)》 |
73-- `KVSmoothProcessorConfig`(`type: kv_smooth`) — KV cache 平滑处理器配置。 《[kv_smooth 配置说明](../processor/kv_smooth.md)》73+| `GroupProcessorConfig` | `group` | 处理器合并器配置。 | 《[group 配置说明](../processor/group.md)》 |
74-- `LinearProcessorConfig`(`type: linear_quant`) — 线性层(Linear)量化处理器配置。 《[linear_quant 配置说明](../processor/linear_quant.md)》74+| `IterSmoothProcessorConfig` | `iter_smooth` | 迭代平滑(IterativeSmooth)处理器配置。 | 《[iter_smooth 配置说明](../processor/iter_smooth.md)》 |
75-- `LoadProcessorConfig`(`type: load`) — 模块加载/卸载处理器配置。 《[load 配置说明](../processor/load.md)》75+| `KVSmoothProcessorConfig` | `kv_smooth` | KV cache 平滑处理器配置。 | 《[kv_smooth 配置说明](../processor/kv_smooth.md)》 |
76-- `OASQProcessorConfig`(`type: oasq`) — OASQ(Outlier-Aware Smooth Quantization)处理器配置。 《[oasq 配置说明](../processor/oasq.md)》76+| `LinearProcessorConfig` | `linear_quant` | 线性层(Linear)量化处理器配置。 | 《[linear_quant 配置说明](../processor/linear_quant.md)》 |
77-- `OnlineQuaRotProcessorConfig`(`type: online_quarot`) — 在线 QuaRot 旋转处理器配置。 《[online_quarot 配置说明](../processor/online_quarot.md)》77+| `LoadProcessorConfig` | `load` | 模块加载/卸载处理器配置。 | 《[load 配置说明](../processor/load.md)》 |
78-- `QuaRotProcessorConfig`(`type: quarot`) — QuaRot(离线旋转)处理器配置。 《[quarot 配置说明](../processor/quarot.md)》78+| `OASQProcessorConfig` | `oasq` | OASQ(Outlier-Aware Smooth Quantization)处理器配置。 | 《[oasq 配置说明](../processor/oasq.md)》 |
79-- `QuantSaveProcessorConfig`(`type: saver`) — 统一保存处理器配置。 《[saver 配置说明](../processor/saver.md)》79+| `OnlineQuaRotProcessorConfig` | `online_quarot` | 在线 QuaRot 旋转处理器配置。 | 《[online_quarot 配置说明](../processor/online_quarot.md)》 |
80-- `SmoothQuantProcessorConfig`(`type: smooth_quant`) — SmoothQuant 平滑量化处理器配置。 《[smooth_quant 配置说明](../processor/smooth_quant.md)》80+| `QuaRotProcessorConfig` | `quarot` | QuaRot(离线旋转)处理器配置。 | 《[quarot 配置说明](../processor/quarot.md)》 |
81-- `SVDResidualProcessorConfig`(`type: svd_res`) — SVD 残差(低秩补偿)处理器配置。 《[svd_res 配置说明](../processor/svd_res.md)》81+| `QuantSaveProcessorConfig` | `saver` | 统一保存处理器配置。 | 《[saver 配置说明](../processor/saver.md)》 |
82-- `TrainableLinearQuantProcessorConfig`(`type: trainable_linear_quant`) — 可训练线性量化(TLQ)处理器配置。 《[trainable_linear_quant 配置说明](../processor/trainable_linear_quant.md)》82+| `SmoothQuantProcessorConfig` | `smooth_quant` | SmoothQuant 平滑量化处理器配置。 | 《[smooth_quant 配置说明](../processor/smooth_quant.md)》 |
83-- `UnaryAnalysisProcessorConfig`(`type: unary_analysis`) — 一元(无量化)敏感度分析处理器配置。 《[unary_analysis 配置说明](../processor/unary_analysis.md)》83+| `SVDResidualProcessorConfig` | `svd_res` | SVD 残差(低秩补偿)处理器配置。 | 《[svd_res 配置说明](../processor/svd_res.md)》 |
84+| `TrainableLinearQuantProcessorConfig` | `trainable_linear_quant` | 可训练线性量化(TLQ)处理器配置。 | 《[trainable_linear_quant 配置说明](../processor/trainable_linear_quant.md)》 |
85+| `UnaryAnalysisProcessorConfig` | `unary_analysis` | 一元(无量化)敏感度分析处理器配置。 | 《[unary_analysis 配置说明](../processor/unary_analysis.md)》 |
84 86 
85-<h3 id="2-5-quantformatconfig">2.5 QuantFormatConfig</h3>87+<h4 id="2-2-3-quantformatconfig">2.2.3 《<a href="../format/ascendv1_saver.md">QuantFormatConfig</a>》</h4>
86 88 
87**派生类**89**派生类**
88 90 
89-- `AscendV1QuantFormatConfig`(`type: ascendv1_saver`) — AscendV1 保存格式配置,导出昇腾落盘格式的权重文件。 《[ascendv1_saver 配置说明](../format/ascendv1_saver.md)》91+| 配置类 | `type` | 说明 | 文档 |
90-- `CompressedTensorsQuantFormatConfig`(`type: compressed_tensors`) — compressed_tensors 保存格式配置,导出 safetensors 权重与 config.json。 《[compressed_tensors 配置说明](../format/compressed_tensors.md)》92+|--------|----------|------|------|
91-- `MindIEQuantFormatConfig`(`type: mindie_format_saver`) — MindIE 保存格式配置,导出 MindIE 落盘格式的权重文件。 《[mindie_format_saver 配置说明](../format/mindie_format_saver.md)》93+| `AscendV1QuantFormatConfig` | `ascendv1_saver` | AscendV1 保存格式配置,导出昇腾落盘格式的权重文件。 | 《[ascendv1_saver 配置说明](../format/ascendv1_saver.md)》 |
94+| `CompressedTensorsQuantFormatConfig` | `compressed_tensors` | compressed_tensors 保存格式配置,导出 safetensors 权重与 config.json。 | 《[compressed_tensors 配置说明](../format/compressed_tensors.md)》 |
95+| `MindIEQuantFormatConfig` | `mindie_format_saver` | MindIE 保存格式配置,导出 MindIE 落盘格式的权重文件。 | 《[mindie_format_saver 配置说明](../format/mindie_format_saver.md)》 |
92 96 
93## 3. 完整配置参考97## 3. 完整配置参考
94 98 
Rdocs/zh/api_reference/config/task/multimodal_sd_modelslim_v1.md→docs/zh/api_reference/config/quant/multimodal_sd_modelslim_v1.md+48-44
@@ -16,7 +16,7 @@
16 16 
17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
18|----------|------|-----------|--------|----------------|------|----------|18|----------|------|-----------|--------|----------------|------|----------|
19-| `apiversion` | `string` | 可选 | Unknown(代码占位;YAML 中须按任务类型显式指定) | `modelslim_v1`、`multimodal_vlm_modelslim_v1`、`multimodal_sd_modelslim_v1`、`modelslim_convert` | API 版本(任务类型),决定 spec 的结构:`modelslim_v1`、`multimodal_vlm_modelslim_v1`、`multimodal_sd_modelslim_v1`、`modelslim_convert`;YAML 中必须显式指定,默认值 `Unknown` 仅为代码内部占位,不可直接使用。 | 无 |19+| `apiversion` | `string` | 可选 | `multimodal_sd_modelslim_v1` | `multimodal_sd_modelslim_v1` | — | 无 |
20| `spec` | `object` | 必选 | 无 | — | `multimodal_sd_modelslim_v1` 服务的 spec 结构。<br><br>面向多模态生成(SD)模型:在通用字段之外支持按专家(`per_expert`)覆盖处理器链,<br>并提供多模态专用 `multimodal_sd_config`。 | 本页 <a href="#2-2-multimodal-sd-modelslim-v1-spec">§2.2</a> |20| `spec` | `object` | 必选 | 无 | — | `multimodal_sd_modelslim_v1` 服务的 spec 结构。<br><br>面向多模态生成(SD)模型:在通用字段之外支持按专家(`per_expert`)覆盖处理器链,<br>并提供多模态专用 `multimodal_sd_config`。 | 本页 <a href="#2-2-multimodal-sd-modelslim-v1-spec">§2.2</a> |
21 21 
22**配置约束**22**配置约束**
@@ -30,82 +30,86 @@
30| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |30| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
31|----------|------|-----------|--------|----------------|------|----------|31|----------|------|-----------|--------|----------------|------|----------|
32| `runner` | `string` | 可选 | `layer_wise` | `auto`、`model_wise`、`layer_wise`、`dp_layer_wise` | 流水线执行方式:`layer_wise` 逐层计算(默认)、`auto` 按设备数量自动选择、`model_wise` 整模型计算、`dp_layer_wise` 数据并行逐层计算。 | 无 |32| `runner` | `string` | 可选 | `layer_wise` | `auto`、`model_wise`、`layer_wise`、`dp_layer_wise` | 流水线执行方式:`layer_wise` 逐层计算(默认)、`auto` 按设备数量自动选择、`model_wise` 整模型计算、`dp_layer_wise` 数据并行逐层计算。 | 无 |
33-| `prior` | `list[object]` | 可选 | `[]` | — | 前置阶段列表,每阶段含 process 与 dataset | 本页 <a href="#2-3-prior-stage-config">§2.3</a> |33+| `prior` | `list[object]` | 可选 | `[]` | — | 前置阶段列表,每阶段含 process 与 dataset | 本页 <a href="#2-2-1-prior-stage-config">§2.2.1</a> |
34-| `process` | `list[object]` | 可选 | `[]` | — | 量化处理器链,按顺序执行;每个元素是 `type` 分派的处理器配置。 | 本页 <a href="#2-4-autoprocessorconfig">§2.4</a> |34+| `process` | `list[object]` | 可选 | `[]` | — | 量化处理器链,按顺序执行;每个元素是 `type` 分派的处理器配置。 | 本页 <a href="#2-2-2-autoprocessorconfig">§2.2.2</a> |
35-| `per_expert` | `object / null` | 可选 | `null` | — | 按专家覆盖 process 的字典;值为该专家的 Processor 列表。某专家在此出现则整链替换,否则回退 process | 本页 <a href="#2-4-autoprocessorconfig">§2.4</a> |35+| `per_expert` | `object / null` | 可选 | `null` | — | 按专家覆盖 process 的字典;值为该专家的 Processor 列表。某专家在此出现则整链替换,否则回退 process | 本页 <a href="#2-2-2-autoprocessorconfig">§2.2.2</a> |
36-| `save` | `list[object]` | 可选 | `[]` | — | 保存格式列表,每个元素是 `type` 分派的保存格式配置。 | 本页 <a href="#2-5-quantformatconfig">§2.5</a> |36+| `save` | `list[object]` | 可选 | `[]` | — | 保存格式列表,每个元素是 `type` 分派的保存格式配置。 | 本页 <a href="#2-2-3-quantformatconfig">§2.2.3</a> |
37| `dataset` | `string` | 可选 | `mix_calib.jsonl` | — | 校准数据集名称(`lab_calib` 下的文件名)或数据集路径。 | 无 |37| `dataset` | `string` | 可选 | `mix_calib.jsonl` | — | 校准数据集名称(`lab_calib` 下的文件名)或数据集路径。 | 无 |
38-| `multimodal_sd_config` | `object` | 可选 | 由工厂函数生成 | — | 多模态生成模型的专用配置,可为字典或 `MultimodalSDConfig` 实例,含 `dump_config` 与 `inference_config`。 | 本页 <a href="#2-6-multimodal-sd-config">§2.6</a> |38+| `multimodal_sd_config` | `object` | 可选 | 由工厂函数生成 | — | 多模态生成模型的专用配置,可为字典或 `MultimodalSDConfig` 实例,含 `dump_config` 与 `inference_config`。 | 本页 <a href="#2-2-4-multimodal-sd-config">§2.2.4</a> |
39 39 
40**配置约束**40**配置约束**
41 41 
42-- 无。42+- 本协议不支持 `adapt_rotation`:量化服务不执行 `spec.prior`,且多模态生成适配器未实现 `AdaptRotationInterface`;请保持 `prior` 为空,且勿在 `process`/`per_expert` 中配置 `adapt_rotation`。
43 43 
44-<h3 id="2-3-prior-stage-config">2.3 PriorStageConfig</h3>44+<h4 id="2-2-1-prior-stage-config">2.2.1 PriorStageConfig</h4>
45 45 
46前置阶段配置:仅 process + dataset,用于如 adapt_rotation stage1 等先验阶段。46前置阶段配置:仅 process + dataset,用于如 adapt_rotation stage1 等先验阶段。
47 47 
48| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |48| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
49|----------|------|-----------|--------|----------------|------|----------|49|----------|------|-----------|--------|----------------|------|----------|
50-| `process` | `list[object]` | 可选 | `[]` | — | 该阶段处理器列表 | 本页 <a href="#2-4-autoprocessorconfig">§2.4</a> |50+| `process` | `list[object]` | 可选 | `[]` | — | 该阶段处理器列表 | 本页 <a href="#2-2-2-autoprocessorconfig">§2.2.2</a> |
51| `dataset` | `string / null` | 可选 | `null` | — | 该阶段数据集名称,不提供则使用 spec.dataset | 无 |51| `dataset` | `string / null` | 可选 | `null` | — | 该阶段数据集名称,不提供则使用 spec.dataset | 无 |
52 52 
53**配置约束**53**配置约束**
54 54 
55- 无。55- 无。
56 56 
57-<h3 id="2-4-autoprocessorconfig">2.4 AutoProcessorConfig</h3>57+<h4 id="2-2-2-autoprocessorconfig">2.2.2 《<a href="../processor/linear_quant.md">AutoProcessorConfig</a>》</h4>
58 58 
59**派生类**59**派生类**
60 60 
61-- `AdaptRotationProcessorConfig`(`type: adapt_rotation`) — 自适应旋转(adapt_rotation)处理器配置。 《[adapt_rotation 配置说明](../processor/adapt_rotation.md)》61+| 配置类 | `type` | 说明 | 文档 |
62-- `AutoroundProcessorConfig`(`type: autoround_quant`) — autoround 量化处理器配置。 《[autoround_quant 配置说明](../processor/autoround_quant.md)》62+|--------|----------|------|------|
63-- `AWQProcessorConfig`(`type: awq`) — AWQ(Activation-aware Weight Quantization)处理器配置。 《[awq 配置说明](../processor/awq.md)》63+| `AdaptRotationProcessorConfig` | `adapt_rotation` | 自适应旋转(adapt_rotation)处理器配置。 | 《[adapt_rotation 配置说明](../processor/adapt_rotation.md)》 |
64-- `BinaryAnalysisProcessorConfig`(`type: binary_analysis`) — 二值(有/无量化)敏感度分析处理器配置。 《[binary_analysis 配置说明](../processor/binary_analysis.md)》64+| `AutoroundProcessorConfig` | `autoround_quant` | autoround 量化处理器配置。 | 《[autoround_quant 配置说明](../processor/autoround_quant.md)》 |
65-- `BinaryOperatorLayerWiseProcessorConfig`(`type: binary_operator_layer_wise`) — 逐层敏感度分析处理器配置(对比逐块浮点与量化输出)。 《[binary_operator_layer_wise 配置说明](../processor/binary_operator_layer_wise.md)》65+| `AWQProcessorConfig` | `awq` | AWQ(Activation-aware Weight Quantization)处理器配置。 | 《[awq 配置说明](../processor/awq.md)》 |
66-- `BinaryOperatorModelWiseProcessorConfig`(`type: binary_operator_model_wise`) — 模型级敏感度分析配置(对比模型最终输出,使用 MSE 指标) 《[binary_operator_model_wise 配置说明](../processor/binary_operator_model_wise.md)》66+| `BinaryAnalysisProcessorConfig` | `binary_analysis` | 二值(有/无量化)敏感度分析处理器配置。 | 《[binary_analysis 配置说明](../processor/binary_analysis.md)》 |
67-- `DynamicCacheProcessorConfig`(`type: dynamic_cache`) — KV cache 量化处理器配置。 《[dynamic_cache 配置说明](../processor/dynamic_cache.md)》67+| `BinaryOperatorLayerWiseProcessorConfig` | `binary_operator_layer_wise` | 逐层敏感度分析处理器配置(对比逐块浮点与量化输出)。 | 《[binary_operator_layer_wise 配置说明](../processor/binary_operator_layer_wise.md)》 |
68-- `FA3QuantProcessorConfig`(`type: fa3_quant`) — FA3(FlashAttention-3)量化处理器配置。 《[fa3_quant 配置说明](../processor/fa3_quant.md)》68+| `BinaryOperatorModelWiseProcessorConfig` | `binary_operator_model_wise` | 模型级敏感度分析配置(对比模型最终输出,使用 MSE 指标) | 《[binary_operator_model_wise 配置说明](../processor/binary_operator_model_wise.md)》 |
69-- `FlatQuantProcessorConfig`(`type: flatquant`) — FlatQuant处理器配置:定义量化训练参数、策略、混合精度等 《[flatquant 配置说明](../processor/flatquant.md)》69+| `DynamicCacheProcessorConfig` | `dynamic_cache` | KV cache 量化处理器配置。 | 《[dynamic_cache 配置说明](../processor/dynamic_cache.md)》 |
70-- `FlexAWQSSZProcessorConfig`(`type: flex_awq_ssz`) — FlexAWQSSZ 平滑+AWQ 处理器配置。 《[flex_awq_ssz 配置说明](../processor/flex_awq_ssz.md)》70+| `FA3QuantProcessorConfig` | `fa3_quant` | FA3(FlashAttention-3)量化处理器配置。 | 《[fa3_quant 配置说明](../processor/fa3_quant.md)》 |
71-- `FlexSmoothQuantProcessorConfig`(`type: flex_smooth_quant`) — FlexSmoothQuant 平滑量化处理器配置。 《[flex_smooth_quant 配置说明](../processor/flex_smooth_quant.md)》71+| `FlatQuantProcessorConfig` | `flatquant` | FlatQuant处理器配置:定义量化训练参数、策略、混合精度等 | 《[flatquant 配置说明](../processor/flatquant.md)》 |
72-- `FloatSparseProcessorConfig`(`type: float_sparse`) — 浮点稀疏处理器配置。 《[float_sparse 配置说明](../processor/float_sparse.md)》72+| `FlexAWQSSZProcessorConfig` | `flex_awq_ssz` | Flex AWQ SSZ 离群值抑制处理器配置。 | 《[flex_awq_ssz 配置说明](../processor/flex_awq_ssz.md)》 |
73-- `GroupProcessorConfig`(`type: group`) — 处理器合并器配置。 《[group 配置说明](../processor/group.md)》73+| `FlexSmoothQuantProcessorConfig` | `flex_smooth_quant` | FlexSmoothQuant 平滑量化处理器配置。 | 《[flex_smooth_quant 配置说明](../processor/flex_smooth_quant.md)》 |
74-- `IterSmoothProcessorConfig`(`type: iter_smooth`) — 迭代平滑(IterativeSmooth)处理器配置。 《[iter_smooth 配置说明](../processor/iter_smooth.md)》74+| `FloatSparseProcessorConfig` | `float_sparse` | 浮点稀疏处理器配置。 | 《[float_sparse 配置说明](../processor/float_sparse.md)》 |
75-- `KVSmoothProcessorConfig`(`type: kv_smooth`) — KV cache 平滑处理器配置。 《[kv_smooth 配置说明](../processor/kv_smooth.md)》75+| `GroupProcessorConfig` | `group` | 处理器合并器配置。 | 《[group 配置说明](../processor/group.md)》 |
76-- `LinearProcessorConfig`(`type: linear_quant`) — 线性层(Linear)量化处理器配置。 《[linear_quant 配置说明](../processor/linear_quant.md)》76+| `IterSmoothProcessorConfig` | `iter_smooth` | 迭代平滑(IterativeSmooth)处理器配置。 | 《[iter_smooth 配置说明](../processor/iter_smooth.md)》 |
77-- `LoadProcessorConfig`(`type: load`) — 模块加载/卸载处理器配置。 《[load 配置说明](../processor/load.md)》77+| `KVSmoothProcessorConfig` | `kv_smooth` | KV cache 平滑处理器配置。 | 《[kv_smooth 配置说明](../processor/kv_smooth.md)》 |
78-- `OASQProcessorConfig`(`type: oasq`) — OASQ(Outlier-Aware Smooth Quantization)处理器配置。 《[oasq 配置说明](../processor/oasq.md)》78+| `LinearProcessorConfig` | `linear_quant` | 线性层(Linear)量化处理器配置。 | 《[linear_quant 配置说明](../processor/linear_quant.md)》 |
79-- `OnlineQuaRotProcessorConfig`(`type: online_quarot`) — 在线 QuaRot 旋转处理器配置。 《[online_quarot 配置说明](../processor/online_quarot.md)》79+| `LoadProcessorConfig` | `load` | 模块加载/卸载处理器配置。 | 《[load 配置说明](../processor/load.md)》 |
80-- `QuaRotProcessorConfig`(`type: quarot`) — QuaRot(离线旋转)处理器配置。 《[quarot 配置说明](../processor/quarot.md)》80+| `OASQProcessorConfig` | `oasq` | OASQ(Outlier-Aware Smooth Quantization)处理器配置。 | 《[oasq 配置说明](../processor/oasq.md)》 |
81-- `QuantSaveProcessorConfig`(`type: saver`) — 统一保存处理器配置。 《[saver 配置说明](../processor/saver.md)》81+| `OnlineQuaRotProcessorConfig` | `online_quarot` | 在线 QuaRot 旋转处理器配置。 | 《[online_quarot 配置说明](../processor/online_quarot.md)》 |
82-- `SmoothQuantProcessorConfig`(`type: smooth_quant`) — SmoothQuant 平滑量化处理器配置。 《[smooth_quant 配置说明](../processor/smooth_quant.md)》82+| `QuaRotProcessorConfig` | `quarot` | QuaRot(离线旋转)处理器配置。 | 《[quarot 配置说明](../processor/quarot.md)》 |
83-- `SVDResidualProcessorConfig`(`type: svd_res`) — SVD 残差(低秩补偿)处理器配置。 《[svd_res 配置说明](../processor/svd_res.md)》83+| `QuantSaveProcessorConfig` | `saver` | 统一保存处理器配置。 | 《[saver 配置说明](../processor/saver.md)》 |
84-- `TrainableLinearQuantProcessorConfig`(`type: trainable_linear_quant`) — 可训练线性量化(TLQ)处理器配置。 《[trainable_linear_quant 配置说明](../processor/trainable_linear_quant.md)》84+| `SmoothQuantProcessorConfig` | `smooth_quant` | SmoothQuant 平滑量化处理器配置。 | 《[smooth_quant 配置说明](../processor/smooth_quant.md)》 |
85-- `UnaryAnalysisProcessorConfig`(`type: unary_analysis`) — 一元(无量化)敏感度分析处理器配置。 《[unary_analysis 配置说明](../processor/unary_analysis.md)》85+| `SVDResidualProcessorConfig` | `svd_res` | SVD 残差(低秩补偿)处理器配置。 | 《[svd_res 配置说明](../processor/svd_res.md)》 |
86+| `TrainableLinearQuantProcessorConfig` | `trainable_linear_quant` | 可训练线性量化(TLQ)处理器配置。 | 《[trainable_linear_quant 配置说明](../processor/trainable_linear_quant.md)》 |
87+| `UnaryAnalysisProcessorConfig` | `unary_analysis` | 一元(无量化)敏感度分析处理器配置。 | 《[unary_analysis 配置说明](../processor/unary_analysis.md)》 |
86 88 
87-<h3 id="2-5-quantformatconfig">2.5 QuantFormatConfig</h3>89+<h4 id="2-2-3-quantformatconfig">2.2.3 《<a href="../format/ascendv1_saver.md">QuantFormatConfig</a>》</h4>
88 90 
89**派生类**91**派生类**
90 92 
91-- `AscendV1QuantFormatConfig`(`type: ascendv1_saver`) — AscendV1 保存格式配置,导出昇腾落盘格式的权重文件。 《[ascendv1_saver 配置说明](../format/ascendv1_saver.md)》93+| 配置类 | `type` | 说明 | 文档 |
92-- `CompressedTensorsQuantFormatConfig`(`type: compressed_tensors`) — compressed_tensors 保存格式配置,导出 safetensors 权重与 config.json。 《[compressed_tensors 配置说明](../format/compressed_tensors.md)》94+|--------|----------|------|------|
93-- `MindIEQuantFormatConfig`(`type: mindie_format_saver`) — MindIE 保存格式配置,导出 MindIE 落盘格式的权重文件。 《[mindie_format_saver 配置说明](../format/mindie_format_saver.md)》95+| `AscendV1QuantFormatConfig` | `ascendv1_saver` | AscendV1 保存格式配置,导出昇腾落盘格式的权重文件。 | 《[ascendv1_saver 配置说明](../format/ascendv1_saver.md)》 |
96+| `CompressedTensorsQuantFormatConfig` | `compressed_tensors` | compressed_tensors 保存格式配置,导出 safetensors 权重与 config.json。 | 《[compressed_tensors 配置说明](../format/compressed_tensors.md)》 |
97+| `MindIEQuantFormatConfig` | `mindie_format_saver` | MindIE 保存格式配置,导出 MindIE 落盘格式的权重文件。 | 《[mindie_format_saver 配置说明](../format/mindie_format_saver.md)》 |
94 98 
95-<h3 id="2-6-multimodal-sd-config">2.6 MultimodalSDConfig</h3>99+<h4 id="2-2-4-multimodal-sd-config">2.2.4 MultimodalSDConfig</h4>
96 100 
97多模态生成(SD)模型的专用配置,含 dump 与推理参数。101多模态生成(SD)模型的专用配置,含 dump 与推理参数。
98 102 
99| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |103| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
100|----------|------|-----------|--------|----------------|------|----------|104|----------|------|-----------|--------|----------------|------|----------|
101-| `dump_config` | `object` | 必选 | 无 | — | 浮点 dump 配置,必选。 | 本页 <a href="#2-7-dump-config">§2.7</a> |105+| `dump_config` | `object` | 必选 | 无 | — | 浮点 dump 配置,必选。 | 本页 <a href="#2-2-5-dump-config">§2.2.5</a> |
102-| `inference_config` | `object / null` | 可选 | `null` | — | 推理参数字典,经模型适配器的 InferenceConfig 类校验;与迁移期字段 `model_config` 互斥。 | 无 |106+| `inference_config` | `object / null` | 可选 | `null` | — | 推理参数字典。字段形状由当前模型适配器的 `get_inference_config_class()` 返回的 InferenceConfig 决定,量化时用该类做校验;与迁移期字段 `model_config` 互斥。 | 无 |
103 107 
104**配置约束**108**配置约束**
105 109 
106- 校验 inference_config 与迁移期字段 model_config 互斥:两者同时提供时报错。110- 校验 inference_config 与迁移期字段 model_config 互斥:两者同时提供时报错。
107 111 
108-<h3 id="2-7-dump-config">2.7 DumpConfig</h3>112+<h4 id="2-2-5-dump-config">2.2.5 DumpConfig</h4>
109 113 
110多模态生成(SD)模型的浮点 dump 配置。114多模态生成(SD)模型的浮点 dump 配置。
111 115 
@@ -113,7 +117,7 @@
113|----------|------|-----------|--------|----------------|------|----------|117|----------|------|-----------|--------|----------------|------|----------|
114| `enable_dump` | `bool` | 可选 | `true` | — | 是否在量化前对模型做浮点 dump(导出 pth 校准数据);`false` 时跳过 pth 加载与浮点 dump。 | 无 |118| `enable_dump` | `bool` | 可选 | `true` | — | 是否在量化前对模型做浮点 dump(导出 pth 校准数据);`false` 时跳过 pth 加载与浮点 dump。 | 无 |
115| `capture_mode` | `string` | 可选 | `args` | `args` | dump 捕获模式,当前仅支持 `args`。 | 无 |119| `capture_mode` | `string` | 可选 | `args` | `args` | dump 捕获模式,当前仅支持 `args`。 | 无 |
116-| `dump_data_dir` | `string` | 可选 | `` | — | 浮点 dump 数据的输出目录;为空时回退到 save_path。 | 无 |120+| `dump_data_dir` | `string` | 可选 | `` | — | 浮点 dump 数据的输出目录;为空时回退到本次量化的权重保存目录 `save_path`。 | 无 |
117 121 
118**配置约束**122**配置约束**
119 123 
Rdocs/zh/api_reference/config/task/multimodal_vlm_modelslim_v1.md→docs/zh/api_reference/config/quant/multimodal_vlm_modelslim_v1.md+40-36
@@ -16,7 +16,7 @@
16 16 
17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
18|----------|------|-----------|--------|----------------|------|----------|18|----------|------|-----------|--------|----------------|------|----------|
19-| `apiversion` | `string` | 可选 | Unknown(代码占位;YAML 中须按任务类型显式指定) | `modelslim_v1`、`multimodal_vlm_modelslim_v1`、`multimodal_sd_modelslim_v1`、`modelslim_convert` | API 版本(任务类型),决定 spec 的结构:`modelslim_v1`、`multimodal_vlm_modelslim_v1`、`multimodal_sd_modelslim_v1`、`modelslim_convert`;YAML 中必须显式指定,默认值 `Unknown` 仅为代码内部占位,不可直接使用。 | 无 |19+| `apiversion` | `string` | 可选 | `multimodal_vlm_modelslim_v1` | `multimodal_vlm_modelslim_v1` | — | 无 |
20| `spec` | `object` | 必选 | 无 | — | `multimodal_vlm_modelslim_v1` 服务的 spec 结构。<br><br>面向多模态理解(VLM)模型:在 `ModelslimV1ServiceConfig` 基础上增加<br>`default_text` 提示词,用于图像类校准数据缺省文本时的默认输入。 | 本页 <a href="#2-2-multimodal-vlm-modelslim-v1-spec">§2.2</a> |20| `spec` | `object` | 必选 | 无 | — | `multimodal_vlm_modelslim_v1` 服务的 spec 结构。<br><br>面向多模态理解(VLM)模型:在 `ModelslimV1ServiceConfig` 基础上增加<br>`default_text` 提示词,用于图像类校准数据缺省文本时的默认输入。 | 本页 <a href="#2-2-multimodal-vlm-modelslim-v1-spec">§2.2</a> |
21 21 
22**配置约束**22**配置约束**
@@ -30,9 +30,9 @@
30| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |30| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
31|----------|------|-----------|--------|----------------|------|----------|31|----------|------|-----------|--------|----------------|------|----------|
32| `runner` | `string` | 可选 | `auto` | `auto`、`model_wise`、`layer_wise`、`dp_layer_wise` | 流水线执行方式:`auto` 按设备数量自动选择(单设备 `layer_wise`,多设备 `dp_layer_wise`)、`model_wise` 整模型计算、`layer_wise` 逐层计算、`dp_layer_wise` 数据并行逐层计算。 | 无 |32| `runner` | `string` | 可选 | `auto` | `auto`、`model_wise`、`layer_wise`、`dp_layer_wise` | 流水线执行方式:`auto` 按设备数量自动选择(单设备 `layer_wise`,多设备 `dp_layer_wise`)、`model_wise` 整模型计算、`layer_wise` 逐层计算、`dp_layer_wise` 数据并行逐层计算。 | 无 |
33-| `prior` | `list[object]` | 可选 | `[]` | — | 前置阶段列表,每阶段含 process 与 dataset | 本页 <a href="#2-3-prior-stage-config">§2.3</a> |33+| `prior` | `list[object]` | 可选 | `[]` | — | 前置阶段列表,每阶段含 process 与 dataset | 本页 <a href="#2-2-1-prior-stage-config">§2.2.1</a> |
34-| `process` | `list[object]` | 可选 | `[]` | — | 量化处理器链,按顺序执行;每个元素是 `type` 分派的处理器配置。 | 本页 <a href="#2-4-autoprocessorconfig">§2.4</a> |34+| `process` | `list[object]` | 可选 | `[]` | — | 量化处理器链,按顺序执行;每个元素是 `type` 分派的处理器配置。 | 本页 <a href="#2-2-2-autoprocessorconfig">§2.2.2</a> |
35-| `save` | `list[object]` | 可选 | `[]` | — | 保存格式列表,每个元素是 `type` 分派的保存格式配置。 | 本页 <a href="#2-5-quantformatconfig">§2.5</a> |35+| `save` | `list[object]` | 可选 | `[]` | — | 保存格式列表,每个元素是 `type` 分派的保存格式配置。 | 本页 <a href="#2-2-3-quantformatconfig">§2.2.3</a> |
36| `dataset` | `string` | 可选 | `mix_calib.jsonl` | — | 校准数据集名称(`lab_calib` 下的文件名)或数据集路径。 | 无 |36| `dataset` | `string` | 可选 | `mix_calib.jsonl` | — | 校准数据集名称(`lab_calib` 下的文件名)或数据集路径。 | 无 |
37| `default_text` | `string` | 可选 | `Describe this image in detail.` | — | 校准数据缺少文本模态时,图像类样本使用的默认提示词。 | 无 |37| `default_text` | `string` | 可选 | `Describe this image in detail.` | — | 校准数据缺少文本模态时,图像类样本使用的默认提示词。 | 无 |
38 38 
@@ -40,56 +40,60 @@
40 40 
41- 无。41- 无。
42 42 
43-<h3 id="2-3-prior-stage-config">2.3 PriorStageConfig</h3>43+<h4 id="2-2-1-prior-stage-config">2.2.1 PriorStageConfig</h4>
44 44 
45前置阶段配置:仅 process + dataset,用于如 adapt_rotation stage1 等先验阶段。45前置阶段配置:仅 process + dataset,用于如 adapt_rotation stage1 等先验阶段。
46 46 
47| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |47| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
48|----------|------|-----------|--------|----------------|------|----------|48|----------|------|-----------|--------|----------------|------|----------|
49-| `process` | `list[object]` | 可选 | `[]` | — | 该阶段处理器列表 | 本页 <a href="#2-4-autoprocessorconfig">§2.4</a> |49+| `process` | `list[object]` | 可选 | `[]` | — | 该阶段处理器列表 | 本页 <a href="#2-2-2-autoprocessorconfig">§2.2.2</a> |
50| `dataset` | `string / null` | 可选 | `null` | — | 该阶段数据集名称,不提供则使用 spec.dataset | 无 |50| `dataset` | `string / null` | 可选 | `null` | — | 该阶段数据集名称,不提供则使用 spec.dataset | 无 |
51 51 
52**配置约束**52**配置约束**
53 53 
54- 无。54- 无。
55 55 
56-<h3 id="2-4-autoprocessorconfig">2.4 AutoProcessorConfig</h3>56+<h4 id="2-2-2-autoprocessorconfig">2.2.2 《<a href="../processor/linear_quant.md">AutoProcessorConfig</a>》</h4>
57 57 
58**派生类**58**派生类**
59 59 
60-- `AdaptRotationProcessorConfig`(`type: adapt_rotation`) — 自适应旋转(adapt_rotation)处理器配置。 《[adapt_rotation 配置说明](../processor/adapt_rotation.md)》60+| 配置类 | `type` | 说明 | 文档 |
61-- `AutoroundProcessorConfig`(`type: autoround_quant`) — autoround 量化处理器配置。 《[autoround_quant 配置说明](../processor/autoround_quant.md)》61+|--------|----------|------|------|
62-- `AWQProcessorConfig`(`type: awq`) — AWQ(Activation-aware Weight Quantization)处理器配置。 《[awq 配置说明](../processor/awq.md)》62+| `AdaptRotationProcessorConfig` | `adapt_rotation` | 自适应旋转(adapt_rotation)处理器配置。 | 《[adapt_rotation 配置说明](../processor/adapt_rotation.md)》 |
63-- `BinaryAnalysisProcessorConfig`(`type: binary_analysis`) — 二值(有/无量化)敏感度分析处理器配置。 《[binary_analysis 配置说明](../processor/binary_analysis.md)》63+| `AutoroundProcessorConfig` | `autoround_quant` | autoround 量化处理器配置。 | 《[autoround_quant 配置说明](../processor/autoround_quant.md)》 |
64-- `BinaryOperatorLayerWiseProcessorConfig`(`type: binary_operator_layer_wise`) — 逐层敏感度分析处理器配置(对比逐块浮点与量化输出)。 《[binary_operator_layer_wise 配置说明](../processor/binary_operator_layer_wise.md)》64+| `AWQProcessorConfig` | `awq` | AWQ(Activation-aware Weight Quantization)处理器配置。 | 《[awq 配置说明](../processor/awq.md)》 |
65-- `BinaryOperatorModelWiseProcessorConfig`(`type: binary_operator_model_wise`) — 模型级敏感度分析配置(对比模型最终输出,使用 MSE 指标) 《[binary_operator_model_wise 配置说明](../processor/binary_operator_model_wise.md)》65+| `BinaryAnalysisProcessorConfig` | `binary_analysis` | 二值(有/无量化)敏感度分析处理器配置。 | 《[binary_analysis 配置说明](../processor/binary_analysis.md)》 |
66-- `DynamicCacheProcessorConfig`(`type: dynamic_cache`) — KV cache 量化处理器配置。 《[dynamic_cache 配置说明](../processor/dynamic_cache.md)》66+| `BinaryOperatorLayerWiseProcessorConfig` | `binary_operator_layer_wise` | 逐层敏感度分析处理器配置(对比逐块浮点与量化输出)。 | 《[binary_operator_layer_wise 配置说明](../processor/binary_operator_layer_wise.md)》 |
67-- `FA3QuantProcessorConfig`(`type: fa3_quant`) — FA3(FlashAttention-3)量化处理器配置。 《[fa3_quant 配置说明](../processor/fa3_quant.md)》67+| `BinaryOperatorModelWiseProcessorConfig` | `binary_operator_model_wise` | 模型级敏感度分析配置(对比模型最终输出,使用 MSE 指标) | 《[binary_operator_model_wise 配置说明](../processor/binary_operator_model_wise.md)》 |
68-- `FlatQuantProcessorConfig`(`type: flatquant`) — FlatQuant处理器配置:定义量化训练参数、策略、混合精度等 《[flatquant 配置说明](../processor/flatquant.md)》68+| `DynamicCacheProcessorConfig` | `dynamic_cache` | KV cache 量化处理器配置。 | 《[dynamic_cache 配置说明](../processor/dynamic_cache.md)》 |
69-- `FlexAWQSSZProcessorConfig`(`type: flex_awq_ssz`) — FlexAWQSSZ 平滑+AWQ 处理器配置。 《[flex_awq_ssz 配置说明](../processor/flex_awq_ssz.md)》69+| `FA3QuantProcessorConfig` | `fa3_quant` | FA3(FlashAttention-3)量化处理器配置。 | 《[fa3_quant 配置说明](../processor/fa3_quant.md)》 |
70-- `FlexSmoothQuantProcessorConfig`(`type: flex_smooth_quant`) — FlexSmoothQuant 平滑量化处理器配置。 《[flex_smooth_quant 配置说明](../processor/flex_smooth_quant.md)》70+| `FlatQuantProcessorConfig` | `flatquant` | FlatQuant处理器配置:定义量化训练参数、策略、混合精度等 | 《[flatquant 配置说明](../processor/flatquant.md)》 |
71-- `FloatSparseProcessorConfig`(`type: float_sparse`) — 浮点稀疏处理器配置。 《[float_sparse 配置说明](../processor/float_sparse.md)》71+| `FlexAWQSSZProcessorConfig` | `flex_awq_ssz` | Flex AWQ SSZ 离群值抑制处理器配置。 | 《[flex_awq_ssz 配置说明](../processor/flex_awq_ssz.md)》 |
72-- `GroupProcessorConfig`(`type: group`) — 处理器合并器配置。 《[group 配置说明](../processor/group.md)》72+| `FlexSmoothQuantProcessorConfig` | `flex_smooth_quant` | FlexSmoothQuant 平滑量化处理器配置。 | 《[flex_smooth_quant 配置说明](../processor/flex_smooth_quant.md)》 |
73-- `IterSmoothProcessorConfig`(`type: iter_smooth`) — 迭代平滑(IterativeSmooth)处理器配置。 《[iter_smooth 配置说明](../processor/iter_smooth.md)》73+| `FloatSparseProcessorConfig` | `float_sparse` | 浮点稀疏处理器配置。 | 《[float_sparse 配置说明](../processor/float_sparse.md)》 |
74-- `KVSmoothProcessorConfig`(`type: kv_smooth`) — KV cache 平滑处理器配置。 《[kv_smooth 配置说明](../processor/kv_smooth.md)》74+| `GroupProcessorConfig` | `group` | 处理器合并器配置。 | 《[group 配置说明](../processor/group.md)》 |
75-- `LinearProcessorConfig`(`type: linear_quant`) — 线性层(Linear)量化处理器配置。 《[linear_quant 配置说明](../processor/linear_quant.md)》75+| `IterSmoothProcessorConfig` | `iter_smooth` | 迭代平滑(IterativeSmooth)处理器配置。 | 《[iter_smooth 配置说明](../processor/iter_smooth.md)》 |
76-- `LoadProcessorConfig`(`type: load`) — 模块加载/卸载处理器配置。 《[load 配置说明](../processor/load.md)》76+| `KVSmoothProcessorConfig` | `kv_smooth` | KV cache 平滑处理器配置。 | 《[kv_smooth 配置说明](../processor/kv_smooth.md)》 |
77-- `OASQProcessorConfig`(`type: oasq`) — OASQ(Outlier-Aware Smooth Quantization)处理器配置。 《[oasq 配置说明](../processor/oasq.md)》77+| `LinearProcessorConfig` | `linear_quant` | 线性层(Linear)量化处理器配置。 | 《[linear_quant 配置说明](../processor/linear_quant.md)》 |
78-- `OnlineQuaRotProcessorConfig`(`type: online_quarot`) — 在线 QuaRot 旋转处理器配置。 《[online_quarot 配置说明](../processor/online_quarot.md)》78+| `LoadProcessorConfig` | `load` | 模块加载/卸载处理器配置。 | 《[load 配置说明](../processor/load.md)》 |
79-- `QuaRotProcessorConfig`(`type: quarot`) — QuaRot(离线旋转)处理器配置。 《[quarot 配置说明](../processor/quarot.md)》79+| `OASQProcessorConfig` | `oasq` | OASQ(Outlier-Aware Smooth Quantization)处理器配置。 | 《[oasq 配置说明](../processor/oasq.md)》 |
80-- `QuantSaveProcessorConfig`(`type: saver`) — 统一保存处理器配置。 《[saver 配置说明](../processor/saver.md)》80+| `OnlineQuaRotProcessorConfig` | `online_quarot` | 在线 QuaRot 旋转处理器配置。 | 《[online_quarot 配置说明](../processor/online_quarot.md)》 |
81-- `SmoothQuantProcessorConfig`(`type: smooth_quant`) — SmoothQuant 平滑量化处理器配置。 《[smooth_quant 配置说明](../processor/smooth_quant.md)》81+| `QuaRotProcessorConfig` | `quarot` | QuaRot(离线旋转)处理器配置。 | 《[quarot 配置说明](../processor/quarot.md)》 |
82-- `SVDResidualProcessorConfig`(`type: svd_res`) — SVD 残差(低秩补偿)处理器配置。 《[svd_res 配置说明](../processor/svd_res.md)》82+| `QuantSaveProcessorConfig` | `saver` | 统一保存处理器配置。 | 《[saver 配置说明](../processor/saver.md)》 |
83-- `TrainableLinearQuantProcessorConfig`(`type: trainable_linear_quant`) — 可训练线性量化(TLQ)处理器配置。 《[trainable_linear_quant 配置说明](../processor/trainable_linear_quant.md)》83+| `SmoothQuantProcessorConfig` | `smooth_quant` | SmoothQuant 平滑量化处理器配置。 | 《[smooth_quant 配置说明](../processor/smooth_quant.md)》 |
84-- `UnaryAnalysisProcessorConfig`(`type: unary_analysis`) — 一元(无量化)敏感度分析处理器配置。 《[unary_analysis 配置说明](../processor/unary_analysis.md)》84+| `SVDResidualProcessorConfig` | `svd_res` | SVD 残差(低秩补偿)处理器配置。 | 《[svd_res 配置说明](../processor/svd_res.md)》 |
85+| `TrainableLinearQuantProcessorConfig` | `trainable_linear_quant` | 可训练线性量化(TLQ)处理器配置。 | 《[trainable_linear_quant 配置说明](../processor/trainable_linear_quant.md)》 |
86+| `UnaryAnalysisProcessorConfig` | `unary_analysis` | 一元(无量化)敏感度分析处理器配置。 | 《[unary_analysis 配置说明](../processor/unary_analysis.md)》 |
85 87 
86-<h3 id="2-5-quantformatconfig">2.5 QuantFormatConfig</h3>88+<h4 id="2-2-3-quantformatconfig">2.2.3 《<a href="../format/ascendv1_saver.md">QuantFormatConfig</a>》</h4>
87 89 
88**派生类**90**派生类**
89 91 
90-- `AscendV1QuantFormatConfig`(`type: ascendv1_saver`) — AscendV1 保存格式配置,导出昇腾落盘格式的权重文件。 《[ascendv1_saver 配置说明](../format/ascendv1_saver.md)》92+| 配置类 | `type` | 说明 | 文档 |
91-- `CompressedTensorsQuantFormatConfig`(`type: compressed_tensors`) — compressed_tensors 保存格式配置,导出 safetensors 权重与 config.json。 《[compressed_tensors 配置说明](../format/compressed_tensors.md)》93+|--------|----------|------|------|
92-- `MindIEQuantFormatConfig`(`type: mindie_format_saver`) — MindIE 保存格式配置,导出 MindIE 落盘格式的权重文件。 《[mindie_format_saver 配置说明](../format/mindie_format_saver.md)》94+| `AscendV1QuantFormatConfig` | `ascendv1_saver` | AscendV1 保存格式配置,导出昇腾落盘格式的权重文件。 | 《[ascendv1_saver 配置说明](../format/ascendv1_saver.md)》 |
95+| `CompressedTensorsQuantFormatConfig` | `compressed_tensors` | compressed_tensors 保存格式配置,导出 safetensors 权重与 config.json。 | 《[compressed_tensors 配置说明](../format/compressed_tensors.md)》 |
96+| `MindIEQuantFormatConfig` | `mindie_format_saver` | MindIE 保存格式配置,导出 MindIE 落盘格式的权重文件。 | 《[mindie_format_saver 配置说明](../format/mindie_format_saver.md)》 |
93 97 
94## 3. 完整配置参考98## 3. 完整配置参考
95 99 
Rdocs/zh/api_reference/config/task/practice_config.md→docs/zh/api_reference/config/quant/practice_config.md+50-4
@@ -3,7 +3,7 @@
3 3 
4## 1. 配置概述4## 1. 配置概述
5 5 
6-完整最佳实践量化任务配置:apiversion + spec + metadata。6+完整最佳实践量化任务配置:metadata + task(task ≡ apiversion + spec)。
7 7 
8| 项目 | 内容 |8| 项目 | 内容 |
9|------|------|9|------|------|
@@ -16,13 +16,13 @@
16 16 
17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
18|----------|------|-----------|--------|----------------|------|----------|18|----------|------|-----------|--------|----------------|------|----------|
19-| `apiversion` | `string` | 可选 | Unknown(代码占位;YAML 中须按任务类型显式指定) | `modelslim_v1`、`multimodal_vlm_modelslim_v1`、`multimodal_sd_modelslim_v1`、`modelslim_convert` | API 版本(任务类型),决定 spec 的结构:`modelslim_v1`、`multimodal_vlm_modelslim_v1`、`multimodal_sd_modelslim_v1`、`modelslim_convert`;YAML 中必须显式指定,默认值 `Unknown` 仅为代码内部占位,不可直接使用。 | 无 |
20-| `spec` | `any` | 可选 | `{}` | — | 任务规格,结构随 apiversion 而定。 | 无 |
21| `metadata` | `object` | 可选 | 见嵌套配置默认值 | — | 量化配置元数据(config_id/score/label/verified_*) | 本页 <a href="#2-2-metadata">§2.2</a> |19| `metadata` | `object` | 可选 | 见嵌套配置默认值 | — | 量化配置元数据(config_id/score/label/verified_*) | 本页 <a href="#2-2-metadata">§2.2</a> |
20+| `task` | `object` | 可选 | 见嵌套配置默认值 | — | 量化任务描述(apiversion + spec) | 本页 <a href="#2-3-basequantconfig">§2.3</a> |
22 21 
23**配置约束**22**配置约束**
24 23 
25-- 无。24+- 预处理:旧格式 {apiversion, metadata, spec, ...} → {metadata, task:{apiversion, spec, ...}}。
25+- 剥除聚合后 task. 前缀,使错误路径与 yaml 的 spec. 一致。
26 26 
27<h3 id="2-2-metadata">2.2 Metadata</h3>27<h3 id="2-2-metadata">2.2 Metadata</h3>
28 28 
@@ -39,3 +39,49 @@
39**配置约束**39**配置约束**
40 40 
41- 无。41- 无。
42+ 
43+<h3 id="2-3-basequantconfig">2.3 BaseQuantConfig</h3>
44+ 
45+**派生类**
46+ 
47+| 配置类 | 说明 | 文档 |
48+|--------|------|------|
49+| `ModelslimV1QuantConfig` | `modelslim_v1` 量化任务配置,位于 YAML 根节点。 | 《[modelslim_v1 配置说明](modelslim_v1.md)》 |
50+| `ModelslimConvertQuantConfig` | `modelslim_convert` 量化(权重转换)任务配置,位于 YAML 根节点。 | 《[modelslim_convert 配置说明](modelslim_convert.md)》 |
51+ 
52+## 3. 完整配置参考
53+ 
54+```yaml
55+metadata:
56+ config_id: Qwen3-32B W8A8
57+ label:
58+ w_bit: 8
59+ a_bit: 8
60+ is_sparse: false
61+ kv_cache: false
62+ verified_model_types:
63+ - Qwen3-32B
64+task:
65+ apiversion: modelslim_v1
66+ spec:
67+ process:
68+ - type: linear_quant
69+ qconfig:
70+ act:
71+ dtype: int8
72+ scope: per_tensor
73+ symmetric: false
74+ method: minmax
75+ weight:
76+ dtype: int8
77+ scope: per_channel
78+ symmetric: true
79+ method: minmax
80+ include:
81+ - '*'
82+ exclude: []
83+ save:
84+ - type: ascendv1_saver
85+ part_file_size: 4
86+ dataset: mix_calib.jsonl
87+```
@@ -0,0 +1,34 @@
1+# 自动调优配置说明导航
2+ 
3+本目录是 msModelSlim 自动调优配置(YAML)的字段级参考文档,按先写调优计划、再按 `type` 查策略与评估服务的方式组织。使用流程与端到端操作步骤见《[自动调优使用说明](../../../user_guide/usage_auto_precision_tuning.md)》,命令行参数见《[msmodelslim tune 命令行 API 文档](../../cli/msmodelslim_tune.md)》,策略选型见《[自动调优策略总览](../../../knowledge_base/tuning_strategies/README.md)》。量化任务 YAML 的字段见《[量化任务配置说明导航](../quant/README.md)》;处理器与保存格式总表见《[配置说明导航](../README.md)》。
4+ 
5+## 1. 怎么用这套文档
6+ 
7+1. **确定顶层结构**:调优 YAML 根节点不是 `apiversion`,而是《[tuning_plan](tuning_plan.md)》的两个必选字段 `strategy` 与 `evaluation`。
8+2. **查策略**:`strategy` 由 `type` 分派,按下方[调优策略](#3-调优策略strategy-按-type-分派)表查对应页面。
9+3. **查评估服务**:`evaluation` 由 `type` 分派,按下方[评估服务](#4-评估服务evaluation-按-type-分派)表查对应页面。当前仅 `service_oriented`。
10+4. **查内嵌量化配置**:`standing_high` 与 `binary_fallback` 的 `template` 引用最佳实践或 `modelslim_v1` 任务配置,协议页见《[量化任务配置说明导航](../quant/README.md)》,处理器 `type` 见《[配置说明导航](../README.md)》。`standing_high_with_experience` 不要求手写完整量化 YAML,由 `quant_type` 与 `structure_configs` 生成。
11+ 
12+> 本目录除本页外,均由 `skills/docs-management/scripts/gen_config_api_docs.py` 从源码 Pydantic 注解生成。修改字段说明请改源码 `Field(description=)` 等注解后重新生成,不要直接编辑带 `generated-by` 标记的页面。
13+ 
14+## 2. 调优计划
15+ 
16+| 配置 | 说明 |
17+|------|------|
18+| [tuning_plan](tuning_plan.md) | 调优计划根配置,只含 `strategy` 与 `evaluation`。 |
19+ 
20+## 3. 调优策略(`strategy` 按 `type` 分派)
21+ 
22+| `type` | 配置 | 作用 |
23+|--------|------|------|
24+| `standing_high` | [standing_high](strategy_standing_high.md) | 摸高:先做敏感层分析,再逐步回退并尝试不同离群值抑制链;需提供量化模板。 |
25+| `standing_high_with_experience` | [standing_high_with_experience](strategy_standing_high_with_experience.md) | 基于专家经验的摸高:由量化类型与结构配置生成量化方案,无需手写完整模板。 |
26+| `binary_fallback` | [binary_fallback](strategy_binary_fallback.md) | 二分回退:在完整 `PracticeConfig` 模板上搜索最小回退前缀。 |
27+ 
28+`standing_high.template` 指向《[modelslim_v1 配置说明](../quant/modelslim_v1.md)》。`binary_fallback.template` 指向《[PracticeConfig 配置说明](../quant/practice_config.md)》,且 `apiversion` 须为 `modelslim_v1`。
29+ 
30+## 4. 评估服务(`evaluation` 按 `type` 分派)
31+ 
32+| `type` | 配置 | 作用 |
33+|--------|------|------|
34+| `service_oriented` | [evaluation_service_oriented](evaluation_service_oriented.md) | 面向服务的评估:精度期望、AISBench 评测与 vLLM-Ascend 推理引擎。 |
@@ -18,8 +18,8 @@
18|----------|------|-----------|--------|----------------|------|----------|18|----------|------|-----------|--------|----------------|------|----------|
19| `type` | `string` | 可选 | `service_oriented` | — | 评估服务类型,固定为 `service_oriented` | 无 |19| `type` | `string` | 可选 | `service_oriented` | — | 评估服务类型,固定为 `service_oriented` | 无 |
20| `demand` | `object` | 必选 | 无 | — | 评估需求(数据集精度期望) | 本页 <a href="#2-2-evaluate-demand">§2.2</a> |20| `demand` | `object` | 必选 | 无 | — | 评估需求(数据集精度期望) | 本页 <a href="#2-2-evaluate-demand">§2.2</a> |
21-| `evaluation` | `object` | 必选 | 无 | — | AISBench 评测服务配置 | 本页 <a href="#2-4-aisbench">§2.4</a> |21+| `evaluation` | `object` | 必选 | 无 | — | AISBench 评测服务配置 | 本页 <a href="#2-3-aisbench">§2.3</a> |
22-| `inference_engine` | `object` | 必选 | 无 | — | vLLM-Ascend 推理引擎配置 | 本页 <a href="#2-9-vllm-ascend">§2.9</a> |22+| `inference_engine` | `object` | 必选 | 无 | — | vLLM-Ascend 推理引擎配置 | 本页 <a href="#2-4-vllm-ascend">§2.4</a> |
23 23 
24**配置约束**24**配置约束**
25 25 
@@ -31,45 +31,45 @@
31 31 
32| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |32| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
33|----------|------|-----------|--------|----------------|------|----------|33|----------|------|-----------|--------|----------------|------|----------|
34-| `expectations` | `list[object]` | 必选 | 无 | — | 精度期望列表,至少1个;每项声明数据集与目标精度(含容差) | 本页 <a href="#2-3-accuracy-expectation">§2.3</a> |34+| `expectations` | `list[object]` | 必选 | 无 | — | 精度期望列表,至少1个;每项声明数据集与目标精度(含容差) | 本页 <a href="#2-2-1-accuracy-expectation">§2.2.1</a> |
35 35 
36**配置约束**36**配置约束**
37 37 
38- 无。38- 无。
39 39 
40-<h3 id="2-3-accuracy-expectation">2.3 AccuracyExpectation</h3>40+<h4 id="2-2-1-accuracy-expectation">2.2.1 AccuracyExpectation</h4>
41 41 
42精度期望:要求模型在指定数据集上达到的目标精度(含容差)。42精度期望:要求模型在指定数据集上达到的目标精度(含容差)。
43 43 
44| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |44| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
45|----------|------|-----------|--------|----------------|------|----------|45|----------|------|-----------|--------|----------------|------|----------|
46| `dataset` | `string` | 必选 | 无 | — | 数据集名称 | 无 |46| `dataset` | `string` | 必选 | 无 | — | 数据集名称 | 无 |
47-| `target` | `string` | 必选 | 无 | — | 目标精度,必须 > 0 | 无 |47+| `target` | `string` | 必选 | 无 | `^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$` | 目标精度,必须 > 0 | 无 |
48-| `tolerance` | `string` | 必选 | 无 | — | 相对目标精度可容忍的偏差,必须 >= 0 | 无 |48+| `tolerance` | `string` | 必选 | 无 | `^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$` | 相对目标精度可容忍的偏差,必须 >= 0 | 无 |
49 49 
50**配置约束**50**配置约束**
51 51 
52- 无。52- 无。
53 53 
54-<h3 id="2-4-aisbench">2.4 AisbenchServerConfig</h3>54+<h3 id="2-3-aisbench">2.3 AisbenchServerConfig</h3>
55 55 
56AISBench 评测服务配置56AISBench 评测服务配置
57 57 
58| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |58| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
59|----------|------|-----------|--------|----------------|------|----------|59|----------|------|-----------|--------|----------------|------|----------|
60| `type` | `string` | 可选 | `aisbench` | `aisbench` | 评测服务类型,固定为 `aisbench` | 无 |60| `type` | `string` | 可选 | `aisbench` | `aisbench` | 评测服务类型,固定为 `aisbench` | 无 |
61-| `aisbench` | `object` | 可选 | 见嵌套配置默认值 | — | AISBench 评测配置 | 本页 <a href="#2-5-aisbench-config">§2.5</a> |61+| `aisbench` | `object` | 可选 | 见嵌套配置默认值 | — | AISBench 评测配置 | 本页 <a href="#2-3-1-aisbench-config">§2.3.1</a> |
62-| `datasets` | `object` | 可选 | `{}` | — | 数据集配置字典,键为数据集名称 | 本页 <a href="#2-7-dataset-config">§2.7</a> |62+| `datasets` | `object` | 可选 | `{}` | — | 数据集配置字典,键为数据集名称 | 本页 <a href="#2-3-3-dataset-config">§2.3.3</a> |
63| `host` | `string` | 可选 | `localhost` | — | 评测服务监听地址,须为合法主机名/IP | 无 |63| `host` | `string` | 可选 | `localhost` | — | 评测服务监听地址,须为合法主机名/IP | 无 |
64| `port` | `int` | 可选 | `1234` | — | 评测服务监听端口,须为合法端口号 | 无 |64| `port` | `int` | 可选 | `1234` | — | 评测服务监听端口,须为合法端口号 | 无 |
65| `served_model_name` | `string` | 可选 | `served_model_name` | — | 已部署的模型名称 | 无 |65| `served_model_name` | `string` | 可选 | `served_model_name` | — | 已部署的模型名称 | 无 |
66-| `precheck` | `list[object]` | 可选 | `[]` | — | 模型预检配置列表,每个元素是一个字典,包含 'type' 字段('garbled_text' 或 'expected_answer') | 本页 <a href="#2-8-base-precheck-config">§2.8</a> |66+| `precheck` | `list[object]` | 可选 | `[]` | — | 模型预检配置列表,每个元素是一个字典,包含 'type' 字段('garbled_text' 或 'expected_answer') | 本页 <a href="#2-3-4-base-precheck-config">§2.3.4</a> |
67 67 
68**配置约束**68**配置约束**
69 69 
70- 无。70- 无。
71 71 
72-<h3 id="2-5-aisbench-config">2.5 AisbenchConfig</h3>72+<h4 id="2-3-1-aisbench-config">2.3.1 AisbenchConfig</h4>
73 73 
74AISBench 评测配置74AISBench 评测配置
75 75 
@@ -79,7 +79,7 @@ AISBench 评测配置
79| `mode` | `string` | 可选 | `all` | — | 评测模式 | 无 |79| `mode` | `string` | 可选 | `all` | — | 评测模式 | 无 |
80| `timeout` | `int` | 可选 | `7200` | — | 命令执行超时时间(秒),默认2小时 | 无 |80| `timeout` | `int` | 可选 | `7200` | — | 命令执行超时时间(秒),默认2小时 | 无 |
81| `cleanup_model_config` | `bool` | 可选 | `true` | — | 是否清理生成的模型配置文件 | 无 |81| `cleanup_model_config` | `bool` | 可选 | `true` | — | 是否清理生成的模型配置文件 | 无 |
82-| `model_meta` | `object` | 可选 | 见嵌套配置默认值 | — | 模型配置元数据 | 本页 <a href="#2-6-model-config-meta">§2.6</a> |82+| `model_meta` | `object` | 可选 | 见嵌套配置默认值 | — | 模型配置元数据 | 本页 <a href="#2-3-2-model-config-meta">§2.3.2</a> |
83| `request_rate` | `float` | 可选 | `1.0` | — | 默认请求速率,必须 > 0 | 无 |83| `request_rate` | `float` | 可选 | `1.0` | — | 默认请求速率,必须 > 0 | 无 |
84| `pred_postprocessor` | `string` | 可选 | `extract_non_reasoning_content` | — | 预测后处理器名称 | 无 |84| `pred_postprocessor` | `string` | 可选 | `extract_non_reasoning_content` | — | 预测后处理器名称 | 无 |
85| `retry` | `int` | 可选 | `2` | ≥0 | 请求重试次数,必须 >= 0 | 无 |85| `retry` | `int` | 可选 | `2` | ≥0 | 请求重试次数,必须 >= 0 | 无 |
@@ -94,7 +94,7 @@ AISBench 评测配置
94 94 
95- 无。95- 无。
96 96 
97-<h3 id="2-6-model-config-meta">2.6 ModelConfigMeta</h3>97+<h4 id="2-3-2-model-config-meta">2.3.2 ModelConfigMeta</h4>
98 98 
99模型配置元数据99模型配置元数据
100 100 
@@ -111,7 +111,7 @@ AISBench 评测配置
111 111 
112- 无。112- 无。
113 113 
114-<h3 id="2-7-dataset-config">2.7 DatasetConfig</h3>114+<h4 id="2-3-3-dataset-config">2.3.3 DatasetConfig</h4>
115 115 
116单个数据集的评测配置116单个数据集的评测配置
117 117 
@@ -123,14 +123,14 @@ AISBench 评测配置
123| `max_out_len` | `int / null` | 可选 | `null` | — | 该数据集的最大输出长度,None 表示使用全局默认值 | 无 |123| `max_out_len` | `int / null` | 可选 | `null` | — | 该数据集的最大输出长度,None 表示使用全局默认值 | 无 |
124| `returns_tool_calls` | `bool / null` | 可选 | `null` | — | 是否返回工具调用,None 表示不写入该字段 | 无 |124| `returns_tool_calls` | `bool / null` | 可选 | `null` | — | 是否返回工具调用,None 表示不写入该字段 | 无 |
125| `api_chat_type` | `string` | 可选 | `VLLMCustomAPIChat` | — | 该数据集使用的 API Chat 类型 | 无 |125| `api_chat_type` | `string` | 可选 | `VLLMCustomAPIChat` | — | 该数据集使用的 API Chat 类型 | 无 |
126-| `chat_template_kwargs` | `object` | 可选 | `{}` | — | chat_template 的额外参数,例如 aime25 需要 {"thinking": True} | 无 |126+| `chat_template_kwargs` | `object` | 可选 | `{}` | — | chat_template 的额外参数,具体参数请参考 AISBench 文档 | 无 |
127| `extra_args` | `list[string]` | 可选 | `[]` | — | 该数据集额外的命令行参数列表,默认为空列表 | 无 |127| `extra_args` | `list[string]` | 可选 | `[]` | — | 该数据集额外的命令行参数列表,默认为空列表 | 无 |
128 128 
129**配置约束**129**配置约束**
130 130 
131- 无。131- 无。
132 132 
133-<h3 id="2-8-base-precheck-config">2.8 BasePrecheckConfig</h3>133+<h4 id="2-3-4-base-precheck-config">2.3.4 BasePrecheckConfig</h4>
134 134 
135预检查配置基类135预检查配置基类
136 136 
@@ -144,7 +144,7 @@ AISBench 评测配置
144 144 
145- 无。145- 无。
146 146 
147-<h3 id="2-9-vllm-ascend">2.9 VllmAscendConfig</h3>147+<h3 id="2-4-vllm-ascend">2.4 VllmAscendConfig</h3>
148 148 
149vLLM-Ascend 推理引擎配置:用于拉起 OpenAI 兼容的服务端并做健康检查。149vLLM-Ascend 推理引擎配置:用于拉起 OpenAI 兼容的服务端并做健康检查。
150 150 
@@ -152,13 +152,13 @@ vLLM-Ascend 推理引擎配置:用于拉起 OpenAI 兼容的服务端并做健
152|----------|------|-----------|--------|----------------|------|----------|152|----------|------|-----------|--------|----------------|------|----------|
153| `type` | `string` | 可选 | `vllm-ascend` | `vllm-ascend` | 推理引擎类型,固定为 `vllm-ascend` | 无 |153| `type` | `string` | 可选 | `vllm-ascend` | `vllm-ascend` | 推理引擎类型,固定为 `vllm-ascend` | 无 |
154| `entrypoint` | `string` | 可选 | `vllm.entrypoints.openai.api_server` | — | vLLM 服务启动入口,默认 OpenAI API server | 无 |154| `entrypoint` | `string` | 可选 | `vllm.entrypoints.openai.api_server` | — | vLLM 服务启动入口,默认 OpenAI API server | 无 |
155-| `env_vars` | `object` | 可选 | `{}` | — | 传递给 vLLM 进程的额外环境变量字典 | 无 |155+| `env_vars` | `object` | 可选 | `{}` | — | 传递给 vLLM 进程的额外环境变量字典(键值对),具体参数请参考 vLLM-Ascend 文档 | 无 |
156| `served_model_name` | `string` | 可选 | `served_model_name` | — | 已部署/对外暴露的模型名称 | 无 |156| `served_model_name` | `string` | 可选 | `served_model_name` | — | 已部署/对外暴露的模型名称 | 无 |
157| `host` | `string` | 可选 | `localhost` | — | 服务监听地址 | 无 |157| `host` | `string` | 可选 | `localhost` | — | 服务监听地址 | 无 |
158| `port` | `int` | 可选 | `1234` | — | 服务监听端口 | 无 |158| `port` | `int` | 可选 | `1234` | — | 服务监听端口 | 无 |
159| `health_check_endpoint` | `string` | 可选 | `/v1/models` | — | 健康检查接口路径(vLLM OpenAI 兼容) | 无 |159| `health_check_endpoint` | `string` | 可选 | `/v1/models` | — | 健康检查接口路径(vLLM OpenAI 兼容) | 无 |
160| `startup_timeout` | `int` | 可选 | `600` | — | 服务启动超时(秒),必须 > 0 | 无 |160| `startup_timeout` | `int` | 可选 | `600` | — | 服务启动超时(秒),必须 > 0 | 无 |
161-| `args` | `object` | 可选 | `{}` | — | 追加的 vLLM 启动命令行参数(键值对) | 无 |161+| `args` | `object` | 可选 | `{}` | — | 追加的 vLLM 启动命令行参数(键值对),具体参数请参考 vLLM-Ascend 文档 | 无 |
162 162 
163**配置约束**163**配置约束**
164 164 
@@ -17,7 +17,7 @@
17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |17| 字段路径 | 类型 | 必选/可选 | 默认值 | 取值范围或格式 | 含义 | 引用配置 |
18|----------|------|-----------|--------|----------------|------|----------|18|----------|------|-----------|--------|----------------|------|----------|
19| `type` | `string` | 可选 | `binary_fallback` | `binary_fallback` | 策略类型,固定为 `binary_fallback` | 无 |19| `type` | `string` | 可选 | `binary_fallback` | `binary_fallback` | 策略类型,固定为 `binary_fallback` | 无 |
20-| `template` | `object` | 必选 | 无 | — | 完整最佳实践 PracticeConfig,apiversion 须为 modelslim_v1 | 《[PracticeConfig 配置说明](../task/practice_config.md)》 |20+| `template` | `object` | 必选 | 无 | — | 完整最佳实践 PracticeConfig,apiversion 须为 modelslim_v1 | 《[PracticeConfig 配置说明](../quant/practice_config.md)》 |
21| `rollback_path` | `string` | 必选 | 无 | — | 点分路径,指向 template 内必须为 list 的回退字段 | 无 |21| `rollback_path` | `string` | 必选 | 无 | — | 点分路径,指向 template 内必须为 list 的回退字段 | 无 |
22| `rollback_candidates` | `list[string] / null` | 可选 | `null` | — | 有序回退候选;非空则跳过敏感层分析 | 无 |22| `rollback_candidates` | `list[string] / null` | 可选 | `null` | — | 有序回退候选;非空则跳过敏感层分析 | 无 |
23| `analysis_dataset` | `string / null` | 可选 | `null` | — | 敏感层分析校准集名称;未填则使用 template.spec.dataset | 无 |23| `analysis_dataset` | `string / null` | 可选 | `null` | — | 敏感层分析校准集名称;未填则使用 template.spec.dataset | 无 |
@@ -33,6 +33,7 @@ strategy:
33 type: binary_fallback33 type: binary_fallback
34 rollback_path: spec.process.1.exclude34 rollback_path: spec.process.1.exclude
35 rollback_candidates: []35 rollback_candidates: []
36+ analysis_dataset: mix_calib.jsonl
36 template:37 template:
37 apiversion: modelslim_v138 apiversion: modelslim_v1
38 metadata:39 metadata:
@@ -18,42 +18,44 @@
18|----------|------|-----------|--------|----------------|------|----------|18|----------|------|-----------|--------|----------------|------|----------|
19| `type` | `string` | 可选 | `standing_high` | `standing_high` | 策略类型,固定为 `standing_high` | 无 |19| `type` | `string` | 可选 | `standing_high` | `standing_high` | 策略类型,固定为 `standing_high` | 无 |
20| `anti_outlier_strategies` | `list[list[object]]` | 必选 | 无 | — | 离群值抑制处理器链列表,至少1个;每个元素是一条处理器链,链内每个处理器是 `type` 分派的处理器配置(如 smooth_quant 等) | 本页 <a href="#2-2-autoprocessorconfig">§2.2</a> |20| `anti_outlier_strategies` | `list[list[object]]` | 必选 | 无 | — | 离群值抑制处理器链列表,至少1个;每个元素是一条处理器链,链内每个处理器是 `type` 分派的处理器配置(如 smooth_quant 等) | 本页 <a href="#2-2-autoprocessorconfig">§2.2</a> |
21-| `template` | `object` | 可选 | 由工厂函数生成 | — | 完整的PracticeConfig模板,用于提取所有配置(包括线性层量化)。如果未提供,将使用默认的V1模板 | 《[modelslim_v1_spec 配置说明](../task/modelslim_v1.md#2-2-modelslim-v1-spec)》 |21+| `template` | `object` | 可选 | 由工厂函数生成 | — | 完整的PracticeConfig模板,用于提取所有配置(包括线性层量化)。如果未提供,将使用默认的V1模板 | 《[modelslim_v1_spec 配置说明](../quant/modelslim_v1.md#2-2-modelslim-v1-spec)》 |
22| `metadata` | `object` | 可选 | 见嵌套配置默认值 | — | 量化配置元数据(config_id / label 等) | 本页 <a href="#2-3-metadata">§2.3</a> |22| `metadata` | `object` | 可选 | 见嵌套配置默认值 | — | 量化配置元数据(config_id / label 等) | 本页 <a href="#2-3-metadata">§2.3</a> |
23 23 
24**配置约束**24**配置约束**
25 25 
26- 校验template中至少有一个linear_quant配置26- 校验template中至少有一个linear_quant配置
27 27 
28-<h3 id="2-2-autoprocessorconfig">2.2 AutoProcessorConfig</h3>28+<h3 id="2-2-autoprocessorconfig">2.2 《<a href="../processor/linear_quant.md">AutoProcessorConfig</a>》</h3>
29 29 
30**派生类**30**派生类**
31 31 
32-- `AdaptRotationProcessorConfig`(`type: adapt_rotation`) — 自适应旋转(adapt_rotation)处理器配置。 《[adapt_rotation 配置说明](../processor/adapt_rotation.md)》32+| 配置类 | `type` | 说明 | 文档 |
33-- `AutoroundProcessorConfig`(`type: autoround_quant`) — autoround 量化处理器配置。 《[autoround_quant 配置说明](../processor/autoround_quant.md)》33+|--------|----------|------|------|
34-- `AWQProcessorConfig`(`type: awq`) — AWQ(Activation-aware Weight Quantization)处理器配置。 《[awq 配置说明](../processor/awq.md)》34+| `AdaptRotationProcessorConfig` | `adapt_rotation` | 自适应旋转(adapt_rotation)处理器配置。 | 《[adapt_rotation 配置说明](../processor/adapt_rotation.md)》 |
35-- `BinaryAnalysisProcessorConfig`(`type: binary_analysis`) — 二值(有/无量化)敏感度分析处理器配置。 《[binary_analysis 配置说明](../processor/binary_analysis.md)》35+| `AutoroundProcessorConfig` | `autoround_quant` | autoround 量化处理器配置。 | 《[autoround_quant 配置说明](../processor/autoround_quant.md)》 |
36-- `BinaryOperatorLayerWiseProcessorConfig`(`type: binary_operator_layer_wise`) — 逐层敏感度分析处理器配置(对比逐块浮点与量化输出)。 《[binary_operator_layer_wise 配置说明](../processor/binary_operator_layer_wise.md)》36+| `AWQProcessorConfig` | `awq` | AWQ(Activation-aware Weight Quantization)处理器配置。 | 《[awq 配置说明](../processor/awq.md)》 |
37-- `BinaryOperatorModelWiseProcessorConfig`(`type: binary_operator_model_wise`) — 模型级敏感度分析配置(对比模型最终输出,使用 MSE 指标) 《[binary_operator_model_wise 配置说明](../processor/binary_operator_model_wise.md)》37+| `BinaryAnalysisProcessorConfig` | `binary_analysis` | 二值(有/无量化)敏感度分析处理器配置。 | 《[binary_analysis 配置说明](../processor/binary_analysis.md)》 |
38-- `DynamicCacheProcessorConfig`(`type: dynamic_cache`) — KV cache 量化处理器配置。 《[dynamic_cache 配置说明](../processor/dynamic_cache.md)》38+| `BinaryOperatorLayerWiseProcessorConfig` | `binary_operator_layer_wise` | 逐层敏感度分析处理器配置(对比逐块浮点与量化输出)。 | 《[binary_operator_layer_wise 配置说明](../processor/binary_operator_layer_wise.md)》 |
39-- `FA3QuantProcessorConfig`(`type: fa3_quant`) — FA3(FlashAttention-3)量化处理器配置。 《[fa3_quant 配置说明](../processor/fa3_quant.md)》39+| `BinaryOperatorModelWiseProcessorConfig` | `binary_operator_model_wise` | 模型级敏感度分析配置(对比模型最终输出,使用 MSE 指标) | 《[binary_operator_model_wise 配置说明](../processor/binary_operator_model_wise.md)》 |
40-- `FlatQuantProcessorConfig`(`type: flatquant`) — FlatQuant处理器配置:定义量化训练参数、策略、混合精度等 《[flatquant 配置说明](../processor/flatquant.md)》40+| `DynamicCacheProcessorConfig` | `dynamic_cache` | KV cache 量化处理器配置。 | 《[dynamic_cache 配置说明](../processor/dynamic_cache.md)》 |
41-- `FlexAWQSSZProcessorConfig`(`type: flex_awq_ssz`) — FlexAWQSSZ 平滑+AWQ 处理器配置。 《[flex_awq_ssz 配置说明](../processor/flex_awq_ssz.md)》41+| `FA3QuantProcessorConfig` | `fa3_quant` | FA3(FlashAttention-3)量化处理器配置。 | 《[fa3_quant 配置说明](../processor/fa3_quant.md)》 |
42-- `FlexSmoothQuantProcessorConfig`(`type: flex_smooth_quant`) — FlexSmoothQuant 平滑量化处理器配置。 《[flex_smooth_quant 配置说明](../processor/flex_smooth_quant.md)》42+| `FlatQuantProcessorConfig` | `flatquant` | FlatQuant处理器配置:定义量化训练参数、策略、混合精度等 | 《[flatquant 配置说明](../processor/flatquant.md)》 |
43-- `FloatSparseProcessorConfig`(`type: float_sparse`) — 浮点稀疏处理器配置。 《[float_sparse 配置说明](../processor/float_sparse.md)》43+| `FlexAWQSSZProcessorConfig` | `flex_awq_ssz` | Flex AWQ SSZ 离群值抑制处理器配置。 | 《[flex_awq_ssz 配置说明](../processor/flex_awq_ssz.md)》 |
44-- `GroupProcessorConfig`(`type: group`) — 处理器合并器配置。 《[group 配置说明](../processor/group.md)》44+| `FlexSmoothQuantProcessorConfig` | `flex_smooth_quant` | FlexSmoothQuant 平滑量化处理器配置。 | 《[flex_smooth_quant 配置说明](../processor/flex_smooth_quant.md)》 |
45-- `IterSmoothProcessorConfig`(`type: iter_smooth`) — 迭代平滑(IterativeSmooth)处理器配置。 《[iter_smooth 配置说明](../processor/iter_smooth.md)》45+| `FloatSparseProcessorConfig` | `float_sparse` | 浮点稀疏处理器配置。 | 《[float_sparse 配置说明](../processor/float_sparse.md)》 |
46-- `KVSmoothProcessorConfig`(`type: kv_smooth`) — KV cache 平滑处理器配置。 《[kv_smooth 配置说明](../processor/kv_smooth.md)》46+| `GroupProcessorConfig` | `group` | 处理器合并器配置。 | 《[group 配置说明](../processor/group.md)》 |
47-- `LinearProcessorConfig`(`type: linear_quant`) — 线性层(Linear)量化处理器配置。 《[linear_quant 配置说明](../processor/linear_quant.md)》47+| `IterSmoothProcessorConfig` | `iter_smooth` | 迭代平滑(IterativeSmooth)处理器配置。 | 《[iter_smooth 配置说明](../processor/iter_smooth.md)》 |
48-- `LoadProcessorConfig`(`type: load`) — 模块加载/卸载处理器配置。 《[load 配置说明](../processor/load.md)》48+| `KVSmoothProcessorConfig` | `kv_smooth` | KV cache 平滑处理器配置。 | 《[kv_smooth 配置说明](../processor/kv_smooth.md)》 |
49-- `OASQProcessorConfig`(`type: oasq`) — OASQ(Outlier-Aware Smooth Quantization)处理器配置。 《[oasq 配置说明](../processor/oasq.md)》49+| `LinearProcessorConfig` | `linear_quant` | 线性层(Linear)量化处理器配置。 | 《[linear_quant 配置说明](../processor/linear_quant.md)》 |
50-- `OnlineQuaRotProcessorConfig`(`type: online_quarot`) — 在线 QuaRot 旋转处理器配置。 《[online_quarot 配置说明](../processor/online_quarot.md)》50+| `LoadProcessorConfig` | `load` | 模块加载/卸载处理器配置。 | 《[load 配置说明](../processor/load.md)》 |
51-- `QuaRotProcessorConfig`(`type: quarot`) — QuaRot(离线旋转)处理器配置。 《[quarot 配置说明](../processor/quarot.md)》51+| `OASQProcessorConfig` | `oasq` | OASQ(Outlier-Aware Smooth Quantization)处理器配置。 | 《[oasq 配置说明](../processor/oasq.md)》 |
52-- `QuantSaveProcessorConfig`(`type: saver`) — 统一保存处理器配置。 《[saver 配置说明](../processor/saver.md)》52+| `OnlineQuaRotProcessorConfig` | `online_quarot` | 在线 QuaRot 旋转处理器配置。 | 《[online_quarot 配置说明](../processor/online_quarot.md)》 |
53-- `SmoothQuantProcessorConfig`(`type: smooth_quant`) — SmoothQuant 平滑量化处理器配置。 《[smooth_quant 配置说明](../processor/smooth_quant.md)》53+| `QuaRotProcessorConfig` | `quarot` | QuaRot(离线旋转)处理器配置。 | 《[quarot 配置说明](../processor/quarot.md)》 |
54-- `SVDResidualProcessorConfig`(`type: svd_res`) — SVD 残差(低秩补偿)处理器配置。 《[svd_res 配置说明](../processor/svd_res.md)》54+| `QuantSaveProcessorConfig` | `saver` | 统一保存处理器配置。 | 《[saver 配置说明](../processor/saver.md)》 |
55-- `TrainableLinearQuantProcessorConfig`(`type: trainable_linear_quant`) — 可训练线性量化(TLQ)处理器配置。 《[trainable_linear_quant 配置说明](../processor/trainable_linear_quant.md)》55+| `SmoothQuantProcessorConfig` | `smooth_quant` | SmoothQuant 平滑量化处理器配置。 | 《[smooth_quant 配置说明](../processor/smooth_quant.md)》 |
56-- `UnaryAnalysisProcessorConfig`(`type: unary_analysis`) — 一元(无量化)敏感度分析处理器配置。 《[unary_analysis 配置说明](../processor/unary_analysis.md)》56+| `SVDResidualProcessorConfig` | `svd_res` | SVD 残差(低秩补偿)处理器配置。 | 《[svd_res 配置说明](../processor/svd_res.md)》 |
57+| `TrainableLinearQuantProcessorConfig` | `trainable_linear_quant` | 可训练线性量化(TLQ)处理器配置。 | 《[trainable_linear_quant 配置说明](../processor/trainable_linear_quant.md)》 |
58+| `UnaryAnalysisProcessorConfig` | `unary_analysis` | 一元(无量化)敏感度分析处理器配置。 | 《[unary_analysis 配置说明](../processor/unary_analysis.md)》 |
57 59 
58<h3 id="2-3-metadata">2.3 Metadata</h3>60<h3 id="2-3-metadata">2.3 Metadata</h3>
59 61 
@@ -27,15 +27,19 @@
27 27 
28**派生类**28**派生类**
29 29 
30-- `StandingHighStrategyConfig`(`type: standing_high`) — 摸高算法策略配置(V1框架):先跑敏感层分析,再逐步回退不满意的层并尝试不同离群值抑制策略。 《[standing_high 配置说明](strategy_standing_high.md)》30+| 配置类 | `type` | 说明 | 文档 |
31-- `StandingHighWithExperienceStrategyConfig`(`type: standing_high_with_experience`) — 基于专家经验的摸高算法策略配置 《[standing_high_with_experience 配置说明](strategy_standing_high_with_experience.md)》31+|--------|----------|------|------|
32-- `BinaryFallbackStrategyConfig`(`type: binary_fallback`) — 二分回退调优策略配置。 《[binary_fallback 配置说明](strategy_binary_fallback.md)》32+| `StandingHighStrategyConfig` | `standing_high` | 摸高算法策略配置(V1框架):先跑敏感层分析,再逐步回退不满意的层并尝试不同离群值抑制策略。 | 《[standing_high 配置说明](strategy_standing_high.md)》 |
33+| `StandingHighWithExperienceStrategyConfig` | `standing_high_with_experience` | 基于专家经验的摸高算法策略配置 | 《[standing_high_with_experience 配置说明](strategy_standing_high_with_experience.md)》 |
34+| `BinaryFallbackStrategyConfig` | `binary_fallback` | 二分回退调优策略配置。 | 《[binary_fallback 配置说明](strategy_binary_fallback.md)》 |
33 35 
34<h3 id="2-3-evaluateserviceconfig">2.3 EvaluateServiceConfig</h3>36<h3 id="2-3-evaluateserviceconfig">2.3 EvaluateServiceConfig</h3>
35 37 
36**派生类**38**派生类**
37 39 
38-- `ServiceOrientedEvaluateServiceConfig` — 面向服务的评估服务配置:评估需求 + aisbench 评测 + vLLM-Ascend 推理引擎。 《[evaluation_service_oriented 配置说明](evaluation_service_oriented.md)》40+| 配置类 | 说明 | 文档 |
41+|--------|------|------|
42+| `ServiceOrientedEvaluateServiceConfig` | 面向服务的评估服务配置:评估需求 + aisbench 评测 + vLLM-Ascend 推理引擎。 | 《[evaluation_service_oriented 配置说明](evaluation_service_oriented.md)》 |
39 43 
40## 3. 完整配置参考44## 3. 完整配置参考
41 45 
@@ -77,7 +77,7 @@ Pydantic 配置类
77 77 
78CLI 文档不在本生成器范围内,也不使用 `generated-by` 标记。78CLI 文档不在本生成器范围内,也不使用 `generated-by` 标记。
79 79 
80-手写保留:`processor_group.md`、`auto_precision_tuning.md`。生成器写入前跳过这两个文件名。80+手写保留:`README.md`(配置说明导航)、`auto_precision_tuning.md`、`processor_group.md`(已迁至 `user_guide/usage_processor_group.md`)。生成器写入与清理前跳过这些文件名。
81 81 
82## 4. 量化配置生成器82## 4. 量化配置生成器
83 83 
@@ -97,14 +97,14 @@ CLI 文档不在本生成器范围内,也不使用 `generated-by` 标记。
97 97 
98| 分类 | 子目录 |98| 分类 | 子目录 |
99|------|--------|99|------|--------|
100-| 任务配置 | `task/` |100+| 任务配置 | `quant/` |
101-| 服务规格 | 默认不单独成页:展开进对应 task 页的「参数列表」;基础脚本独立成文时放 `spec/` |101+| 服务规格 | 默认不单独成页:展开进对应任务(quant)页的「参数列表」;基础脚本独立成文时放 `spec/` |
102| 处理器 | `processor/` |102| 处理器 | `processor/` |
103| 保存格式 | `format/` |103| 保存格式 | `format/` |
104| 自动调优 | `tuning/` |104| 自动调优 | `tuning/` |
105| 嵌套配置(仅基础脚本独立成文时) | `nested/` |105| 嵌套配置(仅基础脚本独立成文时) | `nested/` |
106 106 
107-不再生成 `config/README.md` 索引页;入口文档(使用指南)直接链接到各分类下的具体页面。107+不生成 `config/README.md` 的**内容**(该页为手写导航页,`MANUAL_KEEP` 保护):协议选择、`type` 索引与分组由人工维护,生成器只负责各配置页;入口文档(使用指南)同时直接链接到各分类下的具体页面。
108 108 
109### 4.2 为什么这样切109### 4.2 为什么这样切
110 110 
@@ -112,7 +112,7 @@ YAML 是「根配置 → spec → process[] / save[] → 嵌套对象」的树
112 112 
113因此采用 **一模型一文档 + 引用图(正向)**:每份文档只回答「本类字段指向哪些配置」,`type` 分派字段(`process`、`save`、`strategy`、`evaluation`、`select_best`、`operations`、`preprocess` 等)用「基础类块 + 派生类列表 + 派生类子块」表达:基础类块说明该字段按 `type`/`mode` 分派并列出全部公开子类型,而不是只写基类名。被引用信息收敛到参数表的「引用配置」列,不再单设「引用的配置 / 被引用的配置」小节。113因此采用 **一模型一文档 + 引用图(正向)**:每份文档只回答「本类字段指向哪些配置」,`type` 分派字段(`process`、`save`、`strategy`、`evaluation`、`select_best`、`operations`、`preprocess` 等)用「基础类块 + 派生类列表 + 派生类子块」表达:基础类块说明该字段按 `type`/`mode` 分派并列出全部公开子类型,而不是只写基类名。被引用信息收敛到参数表的「引用配置」列,不再单设「引用的配置 / 被引用的配置」小节。
114 114 
115-内部配置按[第2.1节](#21-内部类格式)判定,不把内部 `type` 写进公开分派索引。驱动脚本默认把嵌套内部配置展开进上级文档「参数列表」内对应类名子块,减少跳转;task 根配置同时把对应的 spec(服务规格)展开进「参数列表」,task 与 spec 合并为一页,不再单独生成 `spec/` 页面。`PracticeConfig` 是 `BaseQuantConfig` 子类(任务配置),虽然会被调优策略引用,仍独立成 `task/practice_config.md` 页,在任务侧集中展示 `apiversion + spec + metadata`(`Metadata`)的完整实践配置结构。115+内部配置按[第2.1节](#21-内部类格式)判定,不把内部 `type` 写进公开分派索引。驱动脚本默认把嵌套内部配置展开进上级文档「参数列表」内对应类名子块,减少跳转;任务根配置同时把对应的 spec(服务规格)展开进「参数列表」,任务与 spec 合并为一页,不再单独生成 `spec/` 页面。`PracticeConfig` 是 `BaseQuantConfig` 子类(任务配置),虽然会被调优策略引用,仍独立成 `quant/practice_config.md` 页,在任务侧集中展示 `apiversion + spec + metadata`(`Metadata`)的完整实践配置结构。
116 116 
117### 4.3 如何实现117### 4.3 如何实现
118 118 
@@ -180,9 +180,9 @@ YAML 是「根配置 → spec → process[] / save[] → 嵌套对象」的树
180- `ModelslimConvertServiceConfig.preprocess`:`rename` / `convert` 两类预处理步骤,关系为 `type 分派`,分派基础类名合成 `PreprocessConfig`。180- `ModelslimConvertServiceConfig.preprocess`:`rename` / `convert` 两类预处理步骤,关系为 `type 分派`,分派基础类名合成 `PreprocessConfig`。
181- 普通嵌套 BaseModel:一条 `嵌套对象`。处理器 / 保存器子类在这条路径上跳过,避免与分派展开重复。181- 普通嵌套 BaseModel:一条 `嵌套对象`。处理器 / 保存器子类在这条路径上跳过,避免与分派展开重复。
182 182 
183-不再渲染「被引用的配置」小节(内部仍保留 `parents` 反查表供示例 YAML 上溯宿主)。展开嵌套时,BFS 从 `nested_refs` 出发,把可达的嵌套配置按引用处上下文路径渲染进「参数列表」内对应类名子块;task 页把 spec 一并展开。对未独立成页的 spec 的引用(如调优策略的 `template` 指向 `ModelslimV1ServiceConfig`)重定向到所属 task 页的 2.2 小节锚点(task 页块序固定:根块 §2.1,spec 为首个嵌套块 §2.2);跨目录链接按输出子目录计算相对路径。183+不再渲染「被引用的配置」小节(内部仍保留 `parents` 反查表供示例 YAML 上溯宿主)。展开嵌套时,BFS 从 `nested_refs` 出发,把可达的嵌套配置按引用处上下文路径渲染进「参数列表」内对应类名子块;任务(quant)页把 spec 一并展开。对未独立成页的 spec 的引用(如调优策略的 `template` 指向 `ModelslimV1ServiceConfig`)重定向到所属任务页的 2.2 小节锚点(任务页块序固定:根块 §2.1,spec 为首个嵌套块 §2.2);配置块编号最多 3 段(`2.x.y` / `<h4>`),再深则提升为祖父同级续号;跨目录链接按输出子目录计算相对路径。
184 184 
185-**type 分派渲染**:同一字段路径下引用数 ≥2 或含 `type 分派` 即判为分派组。渲染成一个 `<h3 id="…">2.x 基础类名(按 type 分派)</h3>` 块:块内含基础类参数表(基础类本身是真实模型时)与「派生类」列表(每项 = 类名、`type` 值、一行说明、本页子块锚点或独立页相对链接),各派生类参数表 + 配置约束作为 `<h4 id="…">2.x 派生类名</h4>` 子块排在其后。同一页面同一基础类只渲染一次,后续分派字段的「引用配置」列别名指向该块锚点(例如 task 页的 `spec.process[]` 与 `spec.prior[].process` 共用同一个 `AutoProcessorConfig` 块)。「引用配置」列对分派字段统一写`「本页 <a href="#anchor">§x.y</a>」`指向基础类块锚点,不再逐个子类型平铺、也不再写「按 `type` 分派,见对应配置文档」汇总文案。配置块标题带可见编号,且标题与页内跳转统一用 HTML 标签(`<h3 id>` / `<h4 id>` / `<a href="#…">`),不用 Markdown 的 `{#anchor}` 属性语法。185+**type 分派渲染**:同一字段路径下引用数 ≥2 或含 `type 分派` 即判为分派组。渲染成一个 `<h3 id="…">2.x 基础类名(按 type 分派)</h3>` 块:块内含基础类参数表(基础类本身是真实模型时)与「派生类」列表(每项 = 类名、`type` 值、一行说明、本页子块锚点或独立页相对链接),各派生类参数表 + 配置约束作为同级或下层编号子块排在其后(仍受 3 段编号上限约束)。同一页面同一基础类只渲染一次,后续分派字段的「引用配置」列别名指向该块锚点(例如任务页的 `spec.process[]` 与 `spec.prior[].process` 共用同一个 `AutoProcessorConfig` 块)。「引用配置」列对分派字段统一写`「本页 <a href="#anchor">§x.y</a>」`指向基础类块锚点,不再逐个子类型平铺、也不再写「按 `type` 分派,见对应配置文档」汇总文案。配置块标题带可见编号,且标题与页内跳转统一用 HTML 标签(`<h3 id>` / `<h4 id>` / `<a href="#…">`),不用 Markdown 的 `{#anchor}` 属性语法。
186 186 
187#### 4.3.6 示例 YAML187#### 4.3.6 示例 YAML
188 188 
@@ -198,7 +198,7 @@ YAML 是「根配置 → spec → process[] / save[] → 嵌套对象」的树
198 198 
199#### 4.3.7 导航199#### 4.3.7 导航
200 200 
201-默认不改 `mkdocs.yml`。仅当显式传入 `--update-mkdocs` 时,才替换 `# BEGIN GENERATED QUANT CONFIG NAV` … `# END GENERATED QUANT CONFIG NAV`。分组顺序固定为:任务配置、服务规格、处理器、保存格式、自动调优、嵌套配置。手写的组合处理器与自动调优条目接在生成块末尾。不再生成 `config/README.md` 索引页。201+默认不改 `mkdocs.yml`。仅当显式传入 `--update-mkdocs` 时,才替换 `# BEGIN GENERATED QUANT CONFIG NAV` … `# END GENERATED QUANT CONFIG NAV`。分组顺序固定为:任务配置、服务规格、处理器、保存格式、自动调优、嵌套配置。手写的组合处理器与自动调优条目接在生成块末尾;`config/README.md` 为手写导航页,不参与生成与清理。
202 202 
203开发树里 `config.ini` 在仓库根 `config/`,包代码期望 `msmodelslim/config`。生成前若缺失则建临时 symlink,结束后删除,避免导入失败。203开发树里 `config.ini` 在仓库根 `config/`,包代码期望 `msmodelslim/config`。生成前若缺失则建临时 symlink,结束后删除,避免导入失败。
204 204 
@@ -13,7 +13,7 @@
13| 是否需要 `quant_type` | 方式 1 需要 | **不需要**(须通过 `--config` 指定转换配置) |13| 是否需要 `quant_type` | 方式 1 需要 | **不需要**(须通过 `--config` 指定转换配置) |
14| 典型场景 | 浮点模型 → W8A8 等 | FP8 → BF16、BF16 → MXFP8、FP8 → MXFP8 等 |14| 典型场景 | 浮点模型 → W8A8 等 | FP8 → BF16、BF16 → MXFP8、FP8 → MXFP8 等 |
15 15 
16-命令行书写规范见 [步骤 3](#步骤-3执行转换命令),参数总表见《[msmodelslim quant 命令行](../../../api_reference/cli/msmodelslim_quant.md)》,字段说明见《[modelslim_convert 配置说明](../../../api_reference/config/task/modelslim_convert.md)》。16+命令行书写规范见 [步骤 3](#步骤-3执行转换命令),参数总表见《[msmodelslim quant 命令行](../../../api_reference/cli/msmodelslim_quant.md)》,字段说明见《[modelslim_convert 配置说明](../../../api_reference/config/quant/modelslim_convert.md)》。
17 17 
18## 2. 输入和交付件18## 2. 输入和交付件
19 19 
@@ -203,6 +203,6 @@ msmodelslim quant \
203| 接口或能力 | 简述 | 链接 |203| 接口或能力 | 简述 | 链接 |
204| --- | --- | --- |204| --- | --- | --- |
205| `msmodelslim quant` | 命令行入口、参数与权重转换示例 | [msmodelslim quant 命令行](../../../api_reference/cli/msmodelslim_quant.md) |205| `msmodelslim quant` | 命令行入口、参数与权重转换示例 | [msmodelslim quant 命令行](../../../api_reference/cli/msmodelslim_quant.md) |
206-| modelslim_convert 配置说明 | `linears` / `save` / `parallel` 等字段说明 | [modelslim_convert 配置说明](../../../api_reference/config/task/modelslim_convert.md) |206+| modelslim_convert 配置说明 | `linears` / `save` / `parallel` 等字段说明 | [modelslim_convert 配置说明](../../../api_reference/config/quant/modelslim_convert.md) |
207| 格式支持矩阵 | 量化格式与存储格式说明 | [格式支持矩阵](../../quantization_format/README.md) |207| 格式支持矩阵 | 量化格式与存储格式说明 | [格式支持矩阵](../../quantization_format/README.md) |
208| AscendV1 量化结果 | AscendV1 落盘结果说明 | [一键量化生成结果](../../quantization_format/ascendv1/ascendv1_usage.md) |208| AscendV1 量化结果 | AscendV1 落盘结果说明 | [一键量化生成结果](../../quantization_format/ascendv1/ascendv1_usage.md) |
@@ -251,7 +251,7 @@ def enable_kv_cache(self, model: nn.Module, need_kv_cache: bool) -> None:
251| Interface Hub | 量化机制与算法组件对模型所需接口的集中定义与汇总 | [《Interface Hub》](https://gitcode.com/Ascend/msmodelslim/blob/master/msmodelslim/model/interface_hub.py) |251| Interface Hub | 量化机制与算法组件对模型所需接口的集中定义与汇总 | [《Interface Hub》](https://gitcode.com/Ascend/msmodelslim/blob/master/msmodelslim/model/interface_hub.py) |
252| Pipeline 接口 | 多模态生成量化服务的流水线接口定义 | [《pipeline_interface.py》](https://gitcode.com/Ascend/msmodelslim/blob/master/msmodelslim/core/quant_service/multimodal_sd_v1/pipeline_interface.py) |252| Pipeline 接口 | 多模态生成量化服务的流水线接口定义 | [《pipeline_interface.py》](https://gitcode.com/Ascend/msmodelslim/blob/master/msmodelslim/core/quant_service/multimodal_sd_v1/pipeline_interface.py) |
253| DiT 量化使用指南 | 标准 DiT 模型量化全流程、配置协议与开箱即用示例 | [《DiT 量化使用指南》](usage_diffusion_transformer_quantization.md) |253| DiT 量化使用指南 | 标准 DiT 模型量化全流程、配置协议与开箱即用示例 | [《DiT 量化使用指南》](usage_diffusion_transformer_quantization.md) |
254-| multimodal_sd_modelslim_v1 配置说明 | `process`/`save`/`multimodal_sd_config` 等多模态生成配置字段说明 | [《multimodal_sd_modelslim_v1 配置说明》](../../../api_reference/config/task/multimodal_sd_modelslim_v1.md) |254+| multimodal_sd_modelslim_v1 配置说明 | `process`/`save`/`multimodal_sd_config` 等多模态生成配置字段说明 | [《multimodal_sd_modelslim_v1 配置说明》](../../../api_reference/config/quant/multimodal_sd_modelslim_v1.md) |
255| mindie_format_saver 配置说明 | MindIE-SD 保存格式与多专家落盘说明 | [《mindie_format_saver 配置说明》](../../../api_reference/config/format/mindie_format_saver.md) |255| mindie_format_saver 配置说明 | MindIE-SD 保存格式与多专家落盘说明 | [《mindie_format_saver 配置说明》](../../../api_reference/config/format/mindie_format_saver.md) |
256| 一键量化完整指南 | 一键量化 CLI 入口与完整命令参数说明 | [《一键量化完整指南》](../../../user_guide/usage_one_click_quantization.md) |256| 一键量化完整指南 | 一键量化 CLI 入口与完整命令参数说明 | [《一键量化完整指南》](../../../user_guide/usage_one_click_quantization.md) |
257| 量化算法总览 | 微缩浮点、在线旋转与各类量化算法详述 | [《量化算法总览》](../../quantization_algorithms/README.md) |257| 量化算法总览 | 微缩浮点、在线旋转与各类量化算法详述 | [《量化算法总览》](../../quantization_algorithms/README.md) |
@@ -285,6 +285,6 @@ msmodelslim quant \
285| 接口或能力 | 简述 | 链接 |285| 接口或能力 | 简述 | 链接 |
286| --- | --- | --- |286| --- | --- | --- |
287| `msmodelslim quant` | 一键量化 CLI 入口与完整命令说明 | [《一键量化完整指南》](../../../user_guide/usage_one_click_quantization.md) |287| `msmodelslim quant` | 一键量化 CLI 入口与完整命令说明 | [《一键量化完整指南》](../../../user_guide/usage_one_click_quantization.md) |
288-| multimodal_sd_modelslim_v1 配置说明 | `runner`/`process`/`per_expert`/`save`/`dataset`/`multimodal_sd_config` 等任务级配置的字段说明 | [《multimodal_sd_modelslim_v1 配置说明》](../../../api_reference/config/task/multimodal_sd_modelslim_v1.md) |288+| multimodal_sd_modelslim_v1 配置说明 | `runner`/`process`/`per_expert`/`save`/`dataset`/`multimodal_sd_config` 等任务级配置的字段说明 | [《multimodal_sd_modelslim_v1 配置说明》](../../../api_reference/config/quant/multimodal_sd_modelslim_v1.md) |
289| linear_quant 配置说明 | `linear_quant` 处理器及其 `qconfig` 各字段的完整取值说明 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |289| linear_quant 配置说明 | `linear_quant` 处理器及其 `qconfig` 各字段的完整取值说明 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |
290| 多模态生成模型接入 | DiT 模型接入与适配器开发 | [《多模态生成模型接入》](./integration_guide_diffusion_transformer_quantization.md) |290| 多模态生成模型接入 | DiT 模型接入与适配器开发 | [《多模态生成模型接入》](./integration_guide_diffusion_transformer_quantization.md) |
@@ -225,7 +225,7 @@ def enable_kv_cache(self, model: nn.Module, need_kv_cache: bool) -> None
225| --- | --- | --- |225| --- | --- | --- |
226| Interface Hub | 量化机制与算法组件对模型所需接口的集中定义与汇总 | [《Interface Hub》](https://gitcode.com/Ascend/msmodelslim/blob/master/msmodelslim/model/interface_hub.py) |226| Interface Hub | 量化机制与算法组件对模型所需接口的集中定义与汇总 | [《Interface Hub》](https://gitcode.com/Ascend/msmodelslim/blob/master/msmodelslim/model/interface_hub.py) |
227| LLM 量化使用指南 | 标准 LLM 量化全流程、配置协议与开箱即用示例 | [《LLM 量化使用指南》](usage_large_language_model_quantization.md) |227| LLM 量化使用指南 | 标准 LLM 量化全流程、配置协议与开箱即用示例 | [《LLM 量化使用指南》](usage_large_language_model_quantization.md) |
228-| modelslim_v1 配置说明 | `runner`/`process`/`save`/`dataset` 等任务级配置的字段说明 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |228+| modelslim_v1 配置说明 | `runner`/`process`/`save`/`dataset` 等任务级配置的字段说明 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
229| 一键量化完整指南 | 一键量化 CLI 入口与完整命令参数说明 | [《一键量化完整指南》](../../../user_guide/usage_one_click_quantization.md) |229| 一键量化完整指南 | 一键量化 CLI 入口与完整命令参数说明 | [《一键量化完整指南》](../../../user_guide/usage_one_click_quantization.md) |
230| 自动调优使用说明 | 敏感层分析、回退候选及调优策略说明 | [《自动调优使用说明》](../../../user_guide/usage_auto_precision_tuning.md) |230| 自动调优使用说明 | 敏感层分析、回退候选及调优策略说明 | [《自动调优使用说明》](../../../user_guide/usage_auto_precision_tuning.md) |
231| 量化算法总览 | 离群值平滑抑制与各类量化算法详述 | [《量化算法总览》](../../quantization_algorithms/README.md) |231| 量化算法总览 | 离群值平滑抑制与各类量化算法详述 | [《量化算法总览》](../../quantization_algorithms/README.md) |
@@ -255,4 +255,4 @@ msmodelslim quant \
255| 接口或能力 | 简述 | 链接 |255| 接口或能力 | 简述 | 链接 |
256| --- | --- | --- |256| --- | --- | --- |
257| `msmodelslim quant` | 一键量化 CLI 入口与完整命令说明 | [《一键量化完整指南》](../../../user_guide/usage_one_click_quantization.md) |257| `msmodelslim quant` | 一键量化 CLI 入口与完整命令说明 | [《一键量化完整指南》](../../../user_guide/usage_one_click_quantization.md) |
258-| modelslim_v1 配置说明 | `runner`/`process`/`save`/`dataset` 等任务级配置的字段说明 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |258+| modelslim_v1 配置说明 | `runner`/`process`/`save`/`dataset` 等任务级配置的字段说明 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
@@ -233,6 +233,6 @@ def enable_kv_cache(self, model: nn.Module, need_kv_cache: bool) -> None:
233| --- | --- | --- |233| --- | --- | --- |
234| Interface Hub | 量化机制与算法组件对模型所需接口的集中定义与汇总 | [《Interface Hub》](https://gitcode.com/Ascend/msmodelslim/blob/master/msmodelslim/model/interface_hub.py) |234| Interface Hub | 量化机制与算法组件对模型所需接口的集中定义与汇总 | [《Interface Hub》](https://gitcode.com/Ascend/msmodelslim/blob/master/msmodelslim/model/interface_hub.py) |
235| VLM 量化使用指南 | 标准多模态理解模型量化全流程、配置协议与开箱即用示例 | [《VLM 量化使用指南》](usage_vision_transformer_quantization.md) |235| VLM 量化使用指南 | 标准多模态理解模型量化全流程、配置协议与开箱即用示例 | [《VLM 量化使用指南》](usage_vision_transformer_quantization.md) |
236-| multimodal_vlm_modelslim_v1 配置说明 | `process`/`save`/`dataset` 等多模态理解配置的字段说明 | [《multimodal_vlm_modelslim_v1 配置说明》](../../../api_reference/config/task/multimodal_vlm_modelslim_v1.md) |236+| multimodal_vlm_modelslim_v1 配置说明 | `process`/`save`/`dataset` 等多模态理解配置的字段说明 | [《multimodal_vlm_modelslim_v1 配置说明》](../../../api_reference/config/quant/multimodal_vlm_modelslim_v1.md) |
237| 一键量化完整指南 | 一键量化 CLI 入口与完整命令参数说明 | [《一键量化完整指南》](../../../user_guide/usage_one_click_quantization.md) |237| 一键量化完整指南 | 一键量化 CLI 入口与完整命令参数说明 | [《一键量化完整指南》](../../../user_guide/usage_one_click_quantization.md) |
238| 量化算法总览 | 离群值平滑抑制与各类量化算法详述 | [《量化算法总览》](../../quantization_algorithms/README.md) |238| 量化算法总览 | 离群值平滑抑制与各类量化算法详述 | [《量化算法总览》](../../quantization_algorithms/README.md) |
@@ -226,4 +226,4 @@ msmodelslim quant \
226| 接口或能力 | 简述 | 链接 |226| 接口或能力 | 简述 | 链接 |
227| --- | --- | --- |227| --- | --- | --- |
228| `msmodelslim quant` | 一键量化 CLI 入口与完整命令说明 | [《一键量化完整指南》](../../../user_guide/usage_one_click_quantization.md) |228| `msmodelslim quant` | 一键量化 CLI 入口与完整命令说明 | [《一键量化完整指南》](../../../user_guide/usage_one_click_quantization.md) |
229-| multimodal_vlm_modelslim_v1 配置说明 | `runner`/`process`/`save`/`dataset`/`default_text` 等任务级配置的字段说明 | [《multimodal_vlm_modelslim_v1 配置说明》](../../../api_reference/config/task/multimodal_vlm_modelslim_v1.md) |229+| multimodal_vlm_modelslim_v1 配置说明 | `runner`/`process`/`save`/`dataset`/`default_text` 等任务级配置的字段说明 | [《multimodal_vlm_modelslim_v1 配置说明》](../../../api_reference/config/quant/multimodal_vlm_modelslim_v1.md) |
@@ -2,7 +2,7 @@
2 2 
3msModelSlim 支持多种先进的量化算法,涵盖了从离群值抑制到低比特优化的各个环节。下表按类别总结了目前支持的核心算法及其主要特性。3msModelSlim 支持多种先进的量化算法,涵盖了从离群值抑制到低比特优化的各个环节。下表按类别总结了目前支持的核心算法及其主要特性。
4 4 
5-> **阅读建议**:每个算法目录包含“词条”和“使用指南”两类文档。词条只介绍算法定义、原理、性质、适用场景与关联知识;使用指南面向入门用户,重点解释配置参数的含义、推荐起步值以及何时调整。需要查询完整字段类型、默认值和高级任务级配置时,请继续阅读《[modelslim_v1 配置说明](../../api_reference/config/task/modelslim_v1.md)》。5+> **阅读建议**:每个算法目录包含“词条”和“使用指南”两类文档。词条只介绍算法定义、原理、性质、适用场景与关联知识;使用指南面向入门用户,重点解释配置参数的含义、推荐起步值以及何时调整。需要查询完整字段类型、默认值和高级任务级配置时,请继续阅读《[modelslim_v1 配置说明](../../api_reference/config/quant/modelslim_v1.md)》。
6 6 
7## 1. 离群值抑制算法7## 1. 离群值抑制算法
8 8 
@@ -203,5 +203,5 @@ msmodelslim quant \
203| `PipelineInterface` | 模型流水线适配接口(数据预处理、模型加载、模块遍历)。 | [《LLM 量化使用指南·步骤 1》](../../ptq/llm/usage_large_language_model_quantization.md) |203| `PipelineInterface` | 模型流水线适配接口(数据预处理、模型加载、模块遍历)。 | [《LLM 量化使用指南·步骤 1》](../../ptq/llm/usage_large_language_model_quantization.md) |
204| `AdaptRotationInterface` / `QuaRotInterface` | 自适应旋转模型适配接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |204| `AdaptRotationInterface` / `QuaRotInterface` | 自适应旋转模型适配接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
205| adapt_rotation 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《adapt_rotation 配置说明》](../../../api_reference/config/processor/adapt_rotation.md) |205| adapt_rotation 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《adapt_rotation 配置说明》](../../../api_reference/config/processor/adapt_rotation.md) |
206-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |206+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
207| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |207| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -211,5 +211,5 @@ msmodelslim quant \
211| --- | --- | --- |211| --- | --- | --- |
212| `PipelineInterface` | 模型流水线接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |212| `PipelineInterface` | 模型流水线接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
213| autoround_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《autoround_quant 配置说明》](../../../api_reference/config/processor/autoround_quant.md) |213| autoround_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《autoround_quant 配置说明》](../../../api_reference/config/processor/autoround_quant.md) |
214-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |214+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
215| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |215| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -189,5 +189,5 @@ msmodelslim quant \
189| --- | --- | --- |189| --- | --- | --- |
190| `PipelineInterface` | 模型流水线接口,由 `msmodelslim.model.interface_hub` 汇总导出;`AWQInterface` 由 `msmodelslim.processor.anti_outlier.awq` 提供。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |190| `PipelineInterface` | 模型流水线接口,由 `msmodelslim.model.interface_hub` 汇总导出;`AWQInterface` 由 `msmodelslim.processor.anti_outlier.awq` 提供。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
191| awq 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《awq 配置说明》](../../../api_reference/config/processor/awq.md) |191| awq 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《awq 配置说明》](../../../api_reference/config/processor/awq.md) |
192-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |192+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
193| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |193| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -112,5 +112,5 @@ Ceil-X 中真正可调的是 `ceil_x_value` 或其搜索配置;`dtype/scope/sy
112| 接口或文档 | 简述 | 链接 |112| 接口或文档 | 简述 | 链接 |
113| --- | --- | --- |113| --- | --- | --- |
114| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |114| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |
115-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |115+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
116| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |116| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -124,5 +124,5 @@ flowchart LR
124| oasq 配置说明 | 字段类型、默认值与约束。 | [《oasq 配置说明》](../../../api_reference/config/processor/oasq.md) |124| oasq 配置说明 | 字段类型、默认值与约束。 | [《oasq 配置说明》](../../../api_reference/config/processor/oasq.md) |
125| trainable_linear_quant 配置说明 | 字段类型、默认值与约束。 | [《trainable_linear_quant 配置说明》](../../../api_reference/config/processor/trainable_linear_quant.md) |125| trainable_linear_quant 配置说明 | 字段类型、默认值与约束。 | [《trainable_linear_quant 配置说明》](../../../api_reference/config/processor/trainable_linear_quant.md) |
126| fa3_quant 配置说明 | 字段类型、默认值与约束。 | [《fa3_quant 配置说明》](../../../api_reference/config/processor/fa3_quant.md) |126| fa3_quant 配置说明 | 字段类型、默认值与约束。 | [《fa3_quant 配置说明》](../../../api_reference/config/processor/fa3_quant.md) |
127-| multimodal_sd_modelslim_v1 | 多模态生成任务级配置。 | [《multimodal_sd_modelslim_v1 配置说明》](../../../api_reference/config/task/multimodal_sd_modelslim_v1.md) |127+| multimodal_sd_modelslim_v1 | 多模态生成任务级配置。 | [《multimodal_sd_modelslim_v1 配置说明》](../../../api_reference/config/quant/multimodal_sd_modelslim_v1.md) |
128| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |128| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -111,5 +111,5 @@ DualScale 的核心旋钮是 `dual_block_size`。先固定 MXFP4 + dual_scale
111| 接口或文档 | 简述 | 链接 |111| 接口或文档 | 简述 | 链接 |
112| --- | --- | --- |112| --- | --- | --- |
113| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |113| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |
114-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |114+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
115| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |115| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -162,5 +162,5 @@ msmodelslim quant \
162| --- | --- | --- |162| --- | --- | --- |
163| `PipelineInterface` / `FA3QuantAdapterInterface` | 模型流水线与 FA3 Quant 算法适配接口,均由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |163| `PipelineInterface` / `FA3QuantAdapterInterface` | 模型流水线与 FA3 Quant 算法适配接口,均由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
164| fa3_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《fa3_quant 配置说明》](../../../api_reference/config/processor/fa3_quant.md) |164| fa3_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《fa3_quant 配置说明》](../../../api_reference/config/processor/fa3_quant.md) |
165-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |165+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
166| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |166| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -192,5 +192,5 @@ msmodelslim quant \
192| --- | --- | --- |192| --- | --- | --- |
193| `PipelineInterface` / `FlexSmoothQuantInterface` | 模型流水线与 Flex AWQ SSZ 算法适配接口,均由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |193| `PipelineInterface` / `FlexSmoothQuantInterface` | 模型流水线与 Flex AWQ SSZ 算法适配接口,均由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
194| flex_awq_ssz 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《flex_awq_ssz 配置说明》](../../../api_reference/config/processor/flex_awq_ssz.md) |194| flex_awq_ssz 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《flex_awq_ssz 配置说明》](../../../api_reference/config/processor/flex_awq_ssz.md) |
195-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |195+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
196| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |196| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -189,5 +189,5 @@ msmodelslim quant \
189| --- | --- | --- |189| --- | --- | --- |
190| `PipelineInterface` / `FlexSmoothQuantInterface` | 模型流水线与 Flex Smooth Quant 算法适配接口,均由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |190| `PipelineInterface` / `FlexSmoothQuantInterface` | 模型流水线与 Flex Smooth Quant 算法适配接口,均由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
191| flex_smooth_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《flex_smooth_quant 配置说明》](../../../api_reference/config/processor/flex_smooth_quant.md) |191| flex_smooth_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《flex_smooth_quant 配置说明》](../../../api_reference/config/processor/flex_smooth_quant.md) |
192-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |192+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
193| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |193| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -152,5 +152,5 @@ msmodelslim quant \
152| --- | --- | --- |152| --- | --- | --- |
153| `PipelineInterface` | 模型流水线接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |153| `PipelineInterface` | 模型流水线接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
154| float_sparse 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《float_sparse 配置说明》](../../../api_reference/config/processor/float_sparse.md) |154| float_sparse 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《float_sparse 配置说明》](../../../api_reference/config/processor/float_sparse.md) |
155-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |155+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
156| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |156| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -108,5 +108,5 @@ FourOverSix 是自动逐块二选一算法,通常没有必要再人为搜索 4
108| 接口或文档 | 简述 | 链接 |108| 接口或文档 | 简述 | 链接 |
109| --- | --- | --- |109| --- | --- | --- |
110| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |110| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |
111-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |111+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
112| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |112| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -114,5 +114,5 @@ GPTQ 建议按 **位宽 → scope/group_size → percdamp → block_size** 的
114| 接口或文档 | 简述 | 链接 |114| 接口或文档 | 简述 | 链接 |
115| --- | --- | --- |115| --- | --- | --- |
116| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |116| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |
117-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |117+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
118| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |118| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -113,5 +113,5 @@ Histogram 的关键决策不是“bin 数调多少”,因为当前用户配置
113| 接口或文档 | 简述 | 链接 |113| 接口或文档 | 简述 | 链接 |
114| --- | --- | --- |114| --- | --- | --- |
115| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |115| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |
116-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |116+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
117| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |117| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -110,4 +110,4 @@ HQQ 的核心自由度在作用范围,算法中迭代参数和配置侧 `scope
110| 接口或能力 | 简述 | 链接 |110| 接口或能力 | 简述 | 链接 |
111| --- | --- | --- |111| --- | --- | --- |
112| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | 《[linear_quant 配置说明](../../../api_reference/config/processor/linear_quant.md)》 |112| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | 《[linear_quant 配置说明](../../../api_reference/config/processor/linear_quant.md)》 |
113-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | 《[modelslim_v1 配置说明](../../../api_reference/config/task/modelslim_v1.md)》 |113+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | 《[modelslim_v1 配置说明](../../../api_reference/config/quant/modelslim_v1.md)》 |
@@ -194,5 +194,5 @@ msmodelslim quant \
194| --- | --- | --- |194| --- | --- | --- |
195| `PipelineInterface` / `IterSmoothInterface` | 模型流水线与 Iterative Smooth 算法适配接口,均由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |195| `PipelineInterface` / `IterSmoothInterface` | 模型流水线与 Iterative Smooth 算法适配接口,均由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
196| iter_smooth 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《iter_smooth 配置说明》](../../../api_reference/config/processor/iter_smooth.md) |196| iter_smooth 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《iter_smooth 配置说明》](../../../api_reference/config/processor/iter_smooth.md) |
197-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |197+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
198| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |198| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -105,5 +105,5 @@ Kurtosis 适合做低成本候选筛选。若高峰度层最终量化后并不
105| 接口或文档 | 简述 | 链接 |105| 接口或文档 | 简述 | 链接 |
106| --- | --- | --- |106| --- | --- | --- |
107| 敏感层分析使用指南 | 完整 CLI、输入输出和进阶流程。 | [《敏感层分析使用指南》](../../../user_guide/usage_sensitive_linear_analysis.md) |107| 敏感层分析使用指南 | 完整 CLI、输入输出和进阶流程。 | [《敏感层分析使用指南》](../../../user_guide/usage_sensitive_linear_analysis.md) |
108-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |108+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
109| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |109| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -180,5 +180,5 @@ msmodelslim quant \
180| --- | --- | --- |180| --- | --- | --- |
181| `PipelineInterface` / `KVSmoothFusedInterface` | 模型流水线与 KV Smooth 算法适配接口,均由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |181| `PipelineInterface` / `KVSmoothFusedInterface` | 模型流水线与 KV Smooth 算法适配接口,均由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
182| kv_smooth 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《kv_smooth 配置说明》](../../../api_reference/config/processor/kv_smooth.md) |182| kv_smooth 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《kv_smooth 配置说明》](../../../api_reference/config/processor/kv_smooth.md) |
183-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |183+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
184| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |184| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -177,5 +177,5 @@ msmodelslim quant \
177| --- | --- | --- |177| --- | --- | --- |
178| `PipelineInterface` | 模型流水线接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |178| `PipelineInterface` | 模型流水线接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
179| dynamic_cache 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《dynamic_cache 配置说明》](../../../api_reference/config/processor/dynamic_cache.md) |179| dynamic_cache 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《dynamic_cache 配置说明》](../../../api_reference/config/processor/dynamic_cache.md) |
180-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |180+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
181| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |181| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -262,5 +262,5 @@ msmodelslim quant \
262| `PipelineInterface` / `LAOSOnlineRotationInterface` / `QuaRotInterface` | 模型流水线与 LAOS 算法适配接口,均由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |262| `PipelineInterface` / `LAOSOnlineRotationInterface` / `QuaRotInterface` | 模型流水线与 LAOS 算法适配接口,均由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
263| adapt_rotation 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《adapt_rotation 配置说明》](../../../api_reference/config/processor/adapt_rotation.md) |263| adapt_rotation 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《adapt_rotation 配置说明》](../../../api_reference/config/processor/adapt_rotation.md) |
264| autoround_quant 配置说明 | LAOS 第二阶段的 AutoRound 参数。 | [《autoround_quant 配置说明》](../../../api_reference/config/processor/autoround_quant.md) |264| autoround_quant 配置说明 | LAOS 第二阶段的 AutoRound 参数。 | [《autoround_quant 配置说明》](../../../api_reference/config/processor/autoround_quant.md) |
265-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |265+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
266| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |266| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -191,5 +191,5 @@ msmodelslim quant \
191| --- | --- | --- |191| --- | --- | --- |
192| `PipelineInterface` | 模型流水线接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |192| `PipelineInterface` | 模型流水线接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
193| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |193| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |
194-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |194+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
195| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |195| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -116,5 +116,5 @@ MinMax 是首选基线的原因是变量最少。精度不够时应先定位:*
116| 接口或文档 | 简述 | 链接 |116| 接口或文档 | 简述 | 链接 |
117| --- | --- | --- |117| --- | --- | --- |
118| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |118| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |
119-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |119+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
120| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |120| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -159,5 +159,5 @@ msmodelslim analyze layer \
159| `PipelineInterface` | 模型流水线适配接口(数据预处理、模型加载、模块遍历)。 | [《LLM 量化使用指南·步骤 1》](../../ptq/llm/usage_large_language_model_quantization.md) |159| `PipelineInterface` | 模型流水线适配接口(数据预处理、模型加载、模块遍历)。 | [《LLM 量化使用指南·步骤 1》](../../ptq/llm/usage_large_language_model_quantization.md) |
160| `MSEModelWiseAnalysisInterface` | 模型级 MSE 分析模型适配接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |160| `MSEModelWiseAnalysisInterface` | 模型级 MSE 分析模型适配接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
161| binary_operator_model_wise 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《binary_operator_model_wise 配置说明》](../../../api_reference/config/processor/binary_operator_model_wise.md) |161| binary_operator_model_wise 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《binary_operator_model_wise 配置说明》](../../../api_reference/config/processor/binary_operator_model_wise.md) |
162-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |162+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
163| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |163| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -113,5 +113,5 @@ MSE-Round 的算法内部已经自动比较两种 exponent 舍入,因此用户
113| 接口或文档 | 简述 | 链接 |113| 接口或文档 | 简述 | 链接 |
114| --- | --- | --- |114| --- | --- | --- |
115| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |115| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |
116-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |116+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
117| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |117| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -208,5 +208,5 @@ msmodelslim quant \
208| `PipelineInterface` | 模型流水线适配接口(数据预处理、模型加载、模块遍历)。 | [《LLM 量化使用指南·步骤 1》](../../ptq/llm/usage_large_language_model_quantization.md) |208| `PipelineInterface` | 模型流水线适配接口(数据预处理、模型加载、模块遍历)。 | [《LLM 量化使用指南·步骤 1》](../../ptq/llm/usage_large_language_model_quantization.md) |
209| `OASQInterface` | OASQ 算法模型适配接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |209| `OASQInterface` | OASQ 算法模型适配接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
210| oasq 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《oasq 配置说明》](../../../api_reference/config/processor/oasq.md) |210| oasq 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《oasq 配置说明》](../../../api_reference/config/processor/oasq.md) |
211-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |211+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
212| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |212| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -113,5 +113,5 @@ PDMIX 中激活四个字段基本是固定定义;真正可变的是它与哪
113| 接口或文档 | 简述 | 链接 |113| 接口或文档 | 简述 | 链接 |
114| --- | --- | --- |114| --- | --- | --- |
115| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |115| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |
116-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |116+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
117| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |117| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -103,5 +103,5 @@ Quantile 比纯 max 更关注“极值相对主体区间有多异常”。它适
103| 接口或文档 | 简述 | 链接 |103| 接口或文档 | 简述 | 链接 |
104| --- | --- | --- |104| --- | --- | --- |
105| 敏感层分析使用指南 | 完整 CLI、输入输出和进阶流程。 | [《敏感层分析使用指南》](../../../user_guide/usage_sensitive_linear_analysis.md) |105| 敏感层分析使用指南 | 完整 CLI、输入输出和进阶流程。 | [《敏感层分析使用指南》](../../../user_guide/usage_sensitive_linear_analysis.md) |
106-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |106+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
107| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |107| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -280,5 +280,5 @@ msmodelslim quant \
280| `PipelineInterface` | 模型流水线适配接口(数据预处理、模型加载、模块遍历)。 | [《LLM 量化使用指南·步骤 1》](../../ptq/llm/usage_large_language_model_quantization.md) |280| `PipelineInterface` | 模型流水线适配接口(数据预处理、模型加载、模块遍历)。 | [《LLM 量化使用指南·步骤 1》](../../ptq/llm/usage_large_language_model_quantization.md) |
281| `QuaRotInterface` / `OnlineQuaRotInterface` / `LAOSOnlineRotationInterface` / `AdaptRotationInterface` | QuaRot 算法模型适配接口,均由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |281| `QuaRotInterface` / `OnlineQuaRotInterface` / `LAOSOnlineRotationInterface` / `AdaptRotationInterface` | QuaRot 算法模型适配接口,均由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
282| quarot 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《quarot 配置说明》](../../../api_reference/config/processor/quarot.md) |282| quarot 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《quarot 配置说明》](../../../api_reference/config/processor/quarot.md) |
283-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |283+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
284| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |284| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -185,3 +185,5 @@ msmodelslim analyze attn_head \
185| --- | --- | --- |185| --- | --- | --- |
186| `RaCompressAnalysisInterface` | RA Compress 分析模型适配接口(需实现 `get_proj_names` 与 `get_tokenizer`),由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |186| `RaCompressAnalysisInterface` | RA Compress 分析模型适配接口(需实现 `get_proj_names` 与 `get_tokenizer`),由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
187| unary_analysis 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《unary_analysis 配置说明》](../../../api_reference/config/processor/unary_analysis.md) |187| unary_analysis 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《unary_analysis 配置说明》](../../../api_reference/config/processor/unary_analysis.md) |
188+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
189+| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -188,5 +188,5 @@ msmodelslim quant \
188| `PipelineInterface` | 模型流水线适配接口(数据预处理、模型加载、模块遍历)。 | [《LLM 量化使用指南·步骤 1》](../../ptq/llm/usage_large_language_model_quantization.md) |188| `PipelineInterface` | 模型流水线适配接口(数据预处理、模型加载、模块遍历)。 | [《LLM 量化使用指南·步骤 1》](../../ptq/llm/usage_large_language_model_quantization.md) |
189| `SmoothQuantInterface` | SmoothQuant 算法模型适配接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |189| `SmoothQuantInterface` | SmoothQuant 算法模型适配接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
190| smooth_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《smooth_quant 配置说明》](../../../api_reference/config/processor/smooth_quant.md) |190| smooth_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《smooth_quant 配置说明》](../../../api_reference/config/processor/smooth_quant.md) |
191-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |191+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
192| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |192| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -109,5 +109,5 @@ SSZ 的核心自由度是位宽和 `step`;scope/symmetric/method 当前基本
109| 接口或文档 | 简述 | 链接 |109| 接口或文档 | 简述 | 链接 |
110| --- | --- | --- |110| --- | --- | --- |
111| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |111| linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《linear_quant 配置说明》](../../../api_reference/config/processor/linear_quant.md) |
112-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |112+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
113| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |113| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -103,5 +103,5 @@ Std 成本低、解释直接,适合作为第一轮粗筛;对非常重尾的
103| 接口或文档 | 简述 | 链接 |103| 接口或文档 | 简述 | 链接 |
104| --- | --- | --- |104| --- | --- | --- |
105| 敏感层分析使用指南 | 完整 CLI、输入输出和进阶流程。 | [《敏感层分析使用指南》](../../../user_guide/usage_sensitive_linear_analysis.md) |105| 敏感层分析使用指南 | 完整 CLI、输入输出和进阶流程。 | [《敏感层分析使用指南》](../../../user_guide/usage_sensitive_linear_analysis.md) |
106-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |106+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
107| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |107| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -167,5 +167,5 @@ msmodelslim quant \
167| `PipelineInterface` / `IterSmoothInterface` | 模型流水线与 SVDQuant 算法适配接口,均由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |167| `PipelineInterface` / `IterSmoothInterface` | 模型流水线与 SVDQuant 算法适配接口,均由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
168| svd_res 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《svd_res 配置说明》](../../../api_reference/config/processor/svd_res.md) |168| svd_res 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《svd_res 配置说明》](../../../api_reference/config/processor/svd_res.md) |
169| iter_smooth 配置说明 | 三阶段流水线中的其他处理器参数。 | [《iter_smooth 配置说明》](../../../api_reference/config/processor/iter_smooth.md) |169| iter_smooth 配置说明 | 三阶段流水线中的其他处理器参数。 | [《iter_smooth 配置说明》](../../../api_reference/config/processor/iter_smooth.md) |
170-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |170+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
171| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |171| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -262,5 +262,5 @@ msmodelslim quant \
262| `PipelineInterface` | 模型流水线适配接口(数据预处理、模型加载、模块遍历)。 | [《LLM 量化使用指南·步骤 1》](../../ptq/llm/usage_large_language_model_quantization.md) |262| `PipelineInterface` | 模型流水线适配接口(数据预处理、模型加载、模块遍历)。 | [《LLM 量化使用指南·步骤 1》](../../ptq/llm/usage_large_language_model_quantization.md) |
263| `TLQBlockDataInterface` | TLQ 块 I/O 模型适配接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |263| `TLQBlockDataInterface` | TLQ 块 I/O 模型适配接口,由 `msmodelslim.model.interface_hub` 汇总导出。 | [接口汇总模块](../../../../../msmodelslim/model/interface_hub.py) |
264| trainable_linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《trainable_linear_quant 配置说明》](../../../api_reference/config/processor/trainable_linear_quant.md) |264| trainable_linear_quant 配置说明 | 字段类型、默认值、合法取值与完整配置约束。 | [《trainable_linear_quant 配置说明》](../../../api_reference/config/processor/trainable_linear_quant.md) |
265-| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/task/modelslim_v1.md) |265+| modelslim_v1 配置说明 | 需要继续探索 runner、prior、save、dataset 等任务级高级配置时查阅。 | [《modelslim_v1 配置说明》](../../../api_reference/config/quant/modelslim_v1.md) |
266| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |266| 权重量化使用指南 | 用户指南:量化命令参数与完整使用说明。 | [《权重量化使用指南》](https://gitcode.com/Ascend/msmodelslim/blob/master/docs/zh/user_guide/usage_weight_quantization.md) |
@@ -3,7 +3,7 @@ toc_depth: 3
3---3---
4# 自动调优策略总览4# 自动调优策略总览
5 5 
6-msModelSlim 通过自动化策略搜索最优量化配置。下表总结了目前支持的调优策略及其主要特性。使用方法请参见《[自动调优使用指南](../../user_guide/usage_auto_precision_tuning.md)》,配置协议请参见《[自动调优配置协议说明](../../api_reference/config/auto_precision_tuning.md)》。6+msModelSlim 通过自动化策略搜索最优量化配置。下表总结了目前支持的调优策略及其主要特性。使用方法请参见《[自动调优使用指南](../../user_guide/usage_auto_precision_tuning.md)》,配置协议请参见《[自动调优配置说明导航](../../api_reference/config/tuning/README.md)》。
7 7 
8| 策略名称 | 核心思想 | 适用场景 | 详细说明 |8| 策略名称 | 核心思想 | 适用场景 | 详细说明 |
9| :--- | :--- | :--- | :--- |9| :--- | :--- | :--- | :--- |
@@ -31,7 +31,7 @@ Standing High With Experience 的核心思想是**配置简化 + 专家经验填
31 31 
32- 须实现 **`ModelSlimPipelineInterfaceV1`**(自动敏感层分析,委托 Standing High 执行)及 **`StandingHighWithExperienceInterface`**(仅 `load_model`,用于过滤当前模型不支持的离群值抑制策略)。32- 须实现 **`ModelSlimPipelineInterfaceV1`**(自动敏感层分析,委托 Standing High 执行)及 **`StandingHighWithExperienceInterface`**(仅 `load_model`,用于过滤当前模型不支持的离群值抑制策略)。
33- 常见写法:模型适配器同时继承 **`StandingHighWithExperienceInterface`**(`load_model` 探测)与 **`ModelSlimPipelineInterfaceV1`**(敏感层分析与量化 pipeline)。33- 常见写法:模型适配器同时继承 **`StandingHighWithExperienceInterface`**(`load_model` 探测)与 **`ModelSlimPipelineInterfaceV1`**(敏感层分析与量化 pipeline)。
34-- 敏感层分析不会在策略侧预先 `load_model`;详见《[自动调优配置协议说明](../../../api_reference/config/auto_precision_tuning.md#21-strategy---调优策略配置)》与《[LLM 大模型接入指南](../../ptq/llm/integration_guide_large_language_model_quantization.md)》。34+- 敏感层分析不会在策略侧预先 `load_model`;详见《[自动调优配置说明导航](../../../api_reference/config/tuning/README.md)》与《[LLM 大模型接入指南](../../ptq/llm/integration_guide_large_language_model_quantization.md)》。
35 35 
36## 功能介绍36## 功能介绍
37 37 
@@ -109,7 +109,7 @@ msmodelslim tune --model_path ${MODEL_PATH} --save_path ${SAVE_PATH} --config ${
109|-------------------|-----------|-------------------|--------------------------------------------------------------------------------------|109|-------------------|-----------|-------------------|--------------------------------------------------------------------------------------|
110| model_path | 模型路径 | 必选 | 类型:Str |110| model_path | 模型路径 | 必选 | 类型:Str |
111| save_path | 调优结果保存路径 | 必选 | 类型:Str |111| save_path | 调优结果保存路径 | 必选 | 类型:Str |
112-| config | 调优配置文件路径 | 必选 | 1. 类型:Str <br>2. 配置文件路径,必须为完整的文件路径 <br>3. 配置文件格式为 YAML,配置协议说明见 《[自动调优配置协议说明](usage_auto_precision_tuning.md)》,示例配置见各策略目录(如 《[Standing High 示例](../knowledge_base/tuning_strategies/standing_high/standing_high.yaml)》) |112+| config | 调优配置文件路径 | 必选 | 1. 类型:Str <br>2. 配置文件路径,必须为完整的文件路径 <br>3. 配置文件格式为 YAML,配置协议说明见 《[自动调优配置说明导航](../api_reference/config/tuning/README.md)》,示例配置见各策略目录(如 《[Standing High 示例](../knowledge_base/tuning_strategies/standing_high/standing_high.yaml)》) |
113| device | 量化设备类型 | 可选 | 1. 类型:Str <br>2. 参考值:'npu','cpu' <br>3. 默认值为"npu"。多卡索引请配合 device_id 指定 |113| device | 量化设备类型 | 可选 | 1. 类型:Str <br>2. 参考值:'npu','cpu' <br>3. 默认值为"npu"。多卡索引请配合 device_id 指定 |
114| device_id | 量化设备索引 | 可选 | 1. 类型:int列表,用空格分割,如:0 1 2 3 <br>2. 指定多个设备索引时(如:0 1 2 3),系统可启动分布式逐层量化(DP)。算法支持范围与配置方式详见《[一键量化使用说明](usage_quick_quantization.md#41-逐层量化及分布式逐层量化)》 |114| device_id | 量化设备索引 | 可选 | 1. 类型:int列表,用空格分割,如:0 1 2 3 <br>2. 指定多个设备索引时(如:0 1 2 3),系统可启动分布式逐层量化(DP)。算法支持范围与配置方式详见《[一键量化使用说明](usage_quick_quantization.md#41-逐层量化及分布式逐层量化)》 |
115| model_type | 模型名称 | 可选 | 1. 类型:Str <br>2. 默认值为"default" <br>3. 大小写敏感,请参考《[大模型支持矩阵](../knowledge_base/model/README.md)》 |115| model_type | 模型名称 | 可选 | 1. 类型:Str <br>2. 默认值为"default" <br>3. 大小写敏感,请参考《[大模型支持矩阵](../knowledge_base/model/README.md)》 |
@@ -156,7 +156,7 @@ ${SAVE_PATH}/
156 156 
157### 4.1 相关资料157### 4.1 相关资料
158 158 
159-- **配置协议**:调优配置文件的详细说明,可以参考 《[自动调优配置协议说明](usage_auto_precision_tuning.md)》。完整的配置文件示例见各策略目录,例如 《[Standing High 示例](../knowledge_base/tuning_strategies/standing_high/standing_high.yaml)》、《[Standing High With Experience 示例](../knowledge_base/tuning_strategies/standing_high_with_experience/standing_high_with_experience.yaml)》、《[Binary Fallback 示例](../knowledge_base/tuning_strategies/binary_fallback/binary_fallback.yaml)》。159+- **配置协议**:调优配置文件的详细说明,可以参考 《[自动调优配置说明导航](../api_reference/config/tuning/README.md)》。完整的配置文件示例见各策略目录,例如 《[Standing High 示例](../knowledge_base/tuning_strategies/standing_high/standing_high.yaml)》、《[Standing High With Experience 示例](../knowledge_base/tuning_strategies/standing_high_with_experience/standing_high_with_experience.yaml)》、《[Binary Fallback 示例](../knowledge_base/tuning_strategies/binary_fallback/binary_fallback.yaml)》。
160- **调优算法**:策略总览见《[自动调优策略总览](../knowledge_base/tuning_strategies/README.md)》。各策略详情:160- **调优算法**:策略总览见《[自动调优策略总览](../knowledge_base/tuning_strategies/README.md)》。各策略详情:
161 - 《[Standing High 调优算法](../knowledge_base/tuning_strategies/standing_high/standing_high.md)》:基于量化回退层选择和离群值抑制策略的自动调优算法161 - 《[Standing High 调优算法](../knowledge_base/tuning_strategies/standing_high/standing_high.md)》:基于量化回退层选择和离群值抑制策略的自动调优算法
162 - 《[Standing High With Experience 调优算法](../knowledge_base/tuning_strategies/standing_high_with_experience/standing_high_with_experience.md)》:基于专家经验的摸高算法策略162 - 《[Standing High With Experience 调优算法](../knowledge_base/tuning_strategies/standing_high_with_experience/standing_high_with_experience.md)》:基于专家经验的摸高算法策略
Rdocs/zh/api_reference/config/processor_group.md→docs/zh/user_guide/usage_processor_group.md+6-8
@@ -1,4 +1,4 @@
1-# 组合处理器 (Group Processor)1+# 组合处理器 (Group Processor)
2 2 
3## 1. 简介3## 1. 简介
4 4 
@@ -8,7 +8,7 @@
8 8 
9## 2. 使用前准备9## 2. 使用前准备
10 10 
11-安装 msModelSlim 工具,详情请参见《[msModelSlim工具安装指南](../../install_guide/install_guide.md)》。11+安装 msModelSlim 工具,详情请参见《[msModelSlim工具安装指南](../install_guide/install_guide.md)》。
12 12 
13## 3. 原理和实现13## 3. 原理和实现
14 14 
@@ -28,7 +28,7 @@
28 28 
29### 3.2 实现29### 3.2 实现
30 30 
31-组合处理器在 [msmodelslim/processor/container/group.py](../../../../msmodelslim/processor/container/group.py) 中实现。它作为一个容器,顺序调度其 `configs` 列表中的子处理器。31+组合处理器在 [msmodelslim/processor/container/group.py](../../../msmodelslim/processor/container/group.py) 中实现。它作为一个容器,顺序调度其 `configs` 列表中的子处理器。
32 32 
33## 4. 功能介绍33## 4. 功能介绍
34 34 
@@ -43,6 +43,7 @@
43以下示例展示了如何使用组合处理器实现 **W8A8 静态+动态混合量化**:43以下示例展示了如何使用组合处理器实现 **W8A8 静态+动态混合量化**:
44 44 
45```yaml45```yaml
46+apiversion: modelslim_v1
46# 1. 定义静态量化模板 (Anchor)47# 1. 定义静态量化模板 (Anchor)
47default_w8a8_static: &w8a8_static48default_w8a8_static: &w8a8_static
48 act:49 act:
@@ -83,12 +84,9 @@ spec:
83 exclude: ["*gate*"] # 排除门控层进行更精细控制84 exclude: ["*gate*"] # 排除门控层进行更精细控制
84```85```
85 86 
86-### 4.3 YAML配置字段详解87+### 4.3 YAML 配置字段
87 88 
88-| 字段名 | 作用 | 类型 | 说明 |89+`group` 处理器的字段定义(`type`、`configs`)与取值范围以配置文档为准,见《[group 配置说明](../api_reference/config/processor/group.md)》的「参数列表」与「完整配置参考」。各子处理器的字段与其独立使用时完全一致,按 `type` 查阅对应配置文档即可。
89-|--------|------|------|------|
90-| type | 处理器类型标识 | `string` | 固定值 `"group"`。 |
91-| configs | 子处理器配置列表 | `list[object]` | 包含多个子处理器的配置。每个子处理器的字段(如 `type`, `qconfig`, `include`)与其独立使用时一致。 |
92 90 
93## 5. FAQ91## 5. FAQ
94 92 
@@ -352,7 +352,7 @@ modelslim_v1是量化工具推出的新一代量化处理框架,目前正在
352| QuaRot | 离群值抑制 | [QuaRot 使用指南](../knowledge_base/quantization_algorithms/quarot/usage_quarot.md) |352| QuaRot | 离群值抑制 | [QuaRot 使用指南](../knowledge_base/quantization_algorithms/quarot/usage_quarot.md) |
353| Adapt Rotation | 离群值抑制 | [Adapt Rotation 使用指南](../knowledge_base/quantization_algorithms/adapt_rotation/usage_adapt_rotation.md) |353| Adapt Rotation | 离群值抑制 | [Adapt Rotation 使用指南](../knowledge_base/quantization_algorithms/adapt_rotation/usage_adapt_rotation.md) |
354| linear_quant | 量化 | [线性量化使用指南](../knowledge_base/quantization_algorithms/linear_quant/usage_linear_quant.md) |354| linear_quant | 量化 | [线性量化使用指南](../knowledge_base/quantization_algorithms/linear_quant/usage_linear_quant.md) |
355-| group | 量化 | [group 使用指南](../api_reference/config/processor_group.md) |355+| group | 量化 | [group 使用指南](usage_processor_group.md) |
356| KVCache Quant | 量化 | [KVCache Quant 使用指南](../knowledge_base/quantization_algorithms/kvcache_quant/usage_kvcache_quant.md) |356| KVCache Quant | 量化 | [KVCache Quant 使用指南](../knowledge_base/quantization_algorithms/kvcache_quant/usage_kvcache_quant.md) |
357| FA3 Quant | 量化 | [FA3 Quant 使用指南](../knowledge_base/quantization_algorithms/fa3_quant/usage_fa3_quant.md) |357| FA3 Quant | 量化 | [FA3 Quant 使用指南](../knowledge_base/quantization_algorithms/fa3_quant/usage_fa3_quant.md) |
358| Float Sparse | 量化 | [Float Sparse 使用指南](../knowledge_base/quantization_algorithms/float_sparse/usage_float_sparse.md) |358| Float Sparse | 量化 | [Float Sparse 使用指南](../knowledge_base/quantization_algorithms/float_sparse/usage_float_sparse.md) |
@@ -171,9 +171,9 @@ msmodelslim quant \
171 171 
172 | 模型类别 | 配置协议 | 权威说明 |172 | 模型类别 | 配置协议 | 权威说明 |
173 | --- | --- | --- |173 | --- | --- | --- |
174- | 大语言模型 | `modelslim_v1` | 《[modelslim_v1 配置说明](../api_reference/config/task/modelslim_v1.md)》 |174+ | 大语言模型 | `modelslim_v1` | 《[modelslim_v1 配置说明](../api_reference/config/quant/modelslim_v1.md)》 |
175- | 多模态理解 | `multimodal_vlm_modelslim_v1` | 《[multimodal_vlm_modelslim_v1 配置说明](../api_reference/config/task/multimodal_vlm_modelslim_v1.md)》 |175+ | 多模态理解 | `multimodal_vlm_modelslim_v1` | 《[multimodal_vlm_modelslim_v1 配置说明](../api_reference/config/quant/multimodal_vlm_modelslim_v1.md)》 |
176- | 多模态生成 | `multimodal_sd_modelslim_v1` | 《[multimodal_sd_modelslim_v1 配置说明](../api_reference/config/task/multimodal_sd_modelslim_v1.md)》 |176+ | 多模态生成 | `multimodal_sd_modelslim_v1` | 《[multimodal_sd_modelslim_v1 配置说明](../api_reference/config/quant/multimodal_sd_modelslim_v1.md)》 |
177 177 
178**输出**:量化配置 YAML 文件 `${CONFIG_PATH}`。178**输出**:量化配置 YAML 文件 `${CONFIG_PATH}`。
179 179 
@@ -289,9 +289,9 @@ msmodelslim quant \
289| 接口或能力 | 简述 | 链接 |289| 接口或能力 | 简述 | 链接 |
290| --- | --- | --- |290| --- | --- | --- |
291| `msmodelslim quant` | 权重量化统一命令行入口 | 《[msmodelslim quant 命令行 API](../api_reference/cli/msmodelslim_quant.md)》 |291| `msmodelslim quant` | 权重量化统一命令行入口 | 《[msmodelslim quant 命令行 API](../api_reference/cli/msmodelslim_quant.md)》 |
292-| `modelslim_v1` | 大语言模型量化配置协议 | 《[modelslim_v1 配置说明](../api_reference/config/task/modelslim_v1.md)》 |292+| `modelslim_v1` | 大语言模型量化配置协议 | 《[modelslim_v1 配置说明](../api_reference/config/quant/modelslim_v1.md)》 |
293-| `multimodal_vlm_modelslim_v1` | 多模态理解模型量化配置协议 | 《[multimodal_vlm_modelslim_v1 配置说明](../api_reference/config/task/multimodal_vlm_modelslim_v1.md)》 |293+| `multimodal_vlm_modelslim_v1` | 多模态理解模型量化配置协议 | 《[multimodal_vlm_modelslim_v1 配置说明](../api_reference/config/quant/multimodal_vlm_modelslim_v1.md)》 |
294-| `multimodal_sd_modelslim_v1` | 多模态生成模型量化配置协议 | 《[multimodal_sd_modelslim_v1 配置说明](../api_reference/config/task/multimodal_sd_modelslim_v1.md)》 |294+| `multimodal_sd_modelslim_v1` | 多模态生成模型量化配置协议 | 《[multimodal_sd_modelslim_v1 配置说明](../api_reference/config/quant/multimodal_sd_modelslim_v1.md)》 |
295 295 
296## 11. 安全说明296## 11. 安全说明
297 297 
@@ -67,14 +67,14 @@ nav:
67 - 一键量化 (V1):67 - 一键量化 (V1):
68 - 使用指南: "zh/user_guide/usage_quick_quantization.md"68 - 使用指南: "zh/user_guide/usage_quick_quantization.md"
69 - 调试模式: "zh/user_guide/usage_debug_mode.md"69 - 调试模式: "zh/user_guide/usage_debug_mode.md"
70- - 组合处理器: "zh/api_reference/config/processor_group.md"70+ - 组合处理器: "zh/user_guide/usage_processor_group.md"
71 - 敏感层分析:71 - 敏感层分析:
72 - 线性层敏感层分析: "zh/user_guide/usage_sensitive_linear_analysis.md"72 - 线性层敏感层分析: "zh/user_guide/usage_sensitive_linear_analysis.md"
73 - 层级敏感层分析: "zh/user_guide/usage_sensitive_layer_analysis.md"73 - 层级敏感层分析: "zh/user_guide/usage_sensitive_layer_analysis.md"
74 - Attention 敏感层分析: "zh/user_guide/usage_sensitive_attn_analysis.md"74 - Attention 敏感层分析: "zh/user_guide/usage_sensitive_attn_analysis.md"
75 - 自动调优策略:75 - 自动调优策略:
76 - 使用指南: "zh/user_guide/usage_auto_precision_tuning.md"76 - 使用指南: "zh/user_guide/usage_auto_precision_tuning.md"
77- - 配置协议详解: "zh/api_reference/config/auto_precision_tuning.md"77+ - 配置协议详解: "zh/api_reference/config/tuning/README.md"
78 - V0框架与传统模型(已停止演进):78 - V0框架与传统模型(已停止演进):
79 - 概览: "zh/user_guide/traditional_quantization_v0/README.md"79 - 概览: "zh/user_guide/traditional_quantization_v0/README.md"
80 - 传统模型量化与校准: "zh/user_guide/traditional_quantization_v0/traditional_model_quantization_and_calibration.md"80 - 传统模型量化与校准: "zh/user_guide/traditional_quantization_v0/traditional_model_quantization_and_calibration.md"
@@ -8,7 +8,7 @@
8 8 
9## 量化配置(模板 04)9## 量化配置(模板 04)
10 10 
11-从 Pydantic `model_json_schema()` 生成 `docs/zh/api_reference/config/`,并按类型放入 `task/`、`processor/`、`format/`、`tuning/` 等子目录。服务规格(spec)不再单独成页,而是随对应 task 页展开。字段类型、枚举、边界以 JSON Schema 为准。11+从 Pydantic `model_json_schema()` 生成 `docs/zh/api_reference/config/`,并按类型放入 `quant/`、`processor/`、`format/`、`tuning/` 等子目录。服务规格(spec)不再单独成页,而是随对应任务(quant)页展开。字段类型、枚举、边界以 JSON Schema 为准。
12 12 
13日常重新生成使用驱动脚本(默认目标 + 展开嵌套 + 清理过期文档):13日常重新生成使用驱动脚本(默认目标 + 展开嵌套 + 清理过期文档):
14 14 
@@ -37,13 +37,14 @@ python3 skills/docs-management/scripts/gen_quant_config_docs.py --check
37生成规则:37生成规则:
38 38 
39- 每个对外 Pydantic 配置类生成一份 Markdown;`type` 以 `_` 开头的内部配置不生成。39- 每个对外 Pydantic 配置类生成一份 Markdown;`type` 以 `_` 开头的内部配置不生成。
40-- 文档按类型子目录组织:任务配置 `task/`、处理器 `processor/`、保存格式 `format/`、自动调优 `tuning/`;服务规格随 task 页展开,不单独生成 `spec/` 页面。40+- 文档按类型子目录组织:任务配置 `quant/`、处理器 `processor/`、保存格式 `format/`、自动调优 `tuning/`;服务规格随任务页展开,不单独生成 `spec/` 页面。
41- 参数表「字段路径」为相对当前配置的字段名;子标题不显示 YAML 路径后缀。41- 参数表「字段路径」为相对当前配置的字段名;子标题不显示 YAML 路径后缀。
42-- 参数列表按配置类名分块组织,块标题带可见编号(如 `<h3 id="2-1-...">2.1类名</h3>`、`<h4 id="...">2.x 派生类名</h4>`);每个块含自身参数表与「配置约束」子项;嵌套配置(含 task 的 spec)展开进对应子块;嵌套块若类 docstring 首段非空,标题后先输出该句类概述。42+- 参数列表按配置类名分块组织,块标题带可见编号(如 `<h3 id="2-1-...">2.1类名</h3>`、`<h4 id="...">2.x 派生类名</h4>`);每个块含自身参数表与「配置约束」子项;嵌套配置(含任务页的 spec)展开进对应子块;嵌套块若类 docstring 首段非空,标题后先输出该句类概述。
43-- `PracticeConfig`(`BaseQuantConfig` 子类,含 `metadata` → `Metadata`)作为任务基类配置独立成 `task/practice_config.md` 页,被调优策略引用时链接到该页。43+- `PracticeConfig`(`BaseQuantConfig` 子类,含 `metadata` → `Metadata`)作为任务基类配置独立成 `quant/practice_config.md` 页,被调优策略引用时链接到该页。
44-- type/mode 分派字段(`process`、`save`、`strategy`、`evaluation`、`select_best`、`operations`、`preprocess` 等)渲染为基础类块(`<h3 id="…">基础类名(按 type 分派)</h3>`,含基础类参数表与「派生类」列表)+ 各派生类 `<h4 id="…">` 子块;同一页面同一基础类只渲染一次,分派字段的「引用配置」列统一指向基础类块锚点。44+- type/mode 分派字段(`process`、`save`、`strategy`、`evaluation`、`select_best`、`operations`、`preprocess` 等)渲染为基础类块(`<h3 id="…">基础类名(按 type 分派)</h3>`,含基础类参数表与「派生类」表格)+ 各派生类 `<h4 id="…">` 子块;同一页面同一基础类只渲染一次,分派字段的「引用配置」列统一指向基础类块锚点。
45- 配置块标题与页内跳转统一用 HTML 标签(`<h3 id>` / `<h4 id>` / `<a href="#…">`),不使用 Markdown 的 `{#anchor}` 属性语法。45- 配置块标题与页内跳转统一用 HTML 标签(`<h3 id>` / `<h4 id>` / `<a href="#…">`),不使用 Markdown 的 `{#anchor}` 属性语法。
46-- 不再生成 `config/README.md` 索引页。46+- 配置块标题的可见编号与标题层级一致:页根 `<h3>` 为 `2.1`;直接挂在页根下的嵌套/分派块与页根同级续号(`2.2`、`2.3`…),再往下的子块编号为 `<父编号>.<序号>`(如 `2.2.1`),**最多 3 段**(`2.x.y`,对应最大 `<h4>`);若再深则提升为祖父同级续号,避免出现 `2.2.1.1` / `<h5>` 及更深层。
47+- 手写页 `README.md`(配置说明导航)不参与生成与清理;不再生成 `config/README.md` 的正文内容。
47- 文件名优先使用公开 `type`(如 `linear_quant.md`),否则使用类名的 snake_case。48- 文件名优先使用公开 `type`(如 `linear_quant.md`),否则使用类名的 snake_case。
48- 顶层任务配置保留稳定文件名:`modelslim_v1.md`、`multimodal_vlm_modelslim_v1.md`、`multimodal_sd_modelslim_v1.md`、`modelslim_convert.md`、`practice_config.md`。49- 顶层任务配置保留稳定文件名:`modelslim_v1.md`、`multimodal_vlm_modelslim_v1.md`、`multimodal_sd_modelslim_v1.md`、`modelslim_convert.md`、`practice_config.md`。
49- 手写文档 `processor_group.md`、`auto_precision_tuning.md` 不会被覆盖。50- 手写文档 `processor_group.md`、`auto_precision_tuning.md` 不会被覆盖。
@@ -1,6 +1,6 @@
1# linear_quant 参数参考1# linear_quant 参数参考
2 2 
3-`linear_quant` 处理器的**完整字段 schema、类型与取值以 docs 为准**:《[linear_quant 处理器配置](../../../docs/zh/api_reference/config/processor/linear_quant.md)》、《[modelslim_v1 任务规格](../../../docs/zh/api_reference/config/task/modelslim_v1.md)》。本文只保留 Practice YAML 编写时的常用建议。3+`linear_quant` 处理器的**完整字段 schema、类型与取值以 docs 为准**:《[linear_quant 处理器配置](../../../docs/zh/api_reference/config/processor/linear_quant.md)》、《[modelslim_v1 任务规格](../../../docs/zh/api_reference/config/quant/modelslim_v1.md)》。本文只保留 Practice YAML 编写时的常用建议。
4 4 
5## 常用取值速查(非权威,取值集合以 docs 为准)5## 常用取值速查(非权威,取值集合以 docs 为准)
6 6 
@@ -6,12 +6,12 @@ Practice YAML 的完整字段 schema、处理器类型、QConfig 取值与保存
6 6 
7| 内容 | docs 位置 |7| 内容 | docs 位置 |
8|------|-----------|8|------|-----------|
9-| 配置类与字段总览(`PracticeConfig` / `metadata`) | 《[PracticeConfig 配置说明](../../../docs/zh/api_reference/config/task/practice_config.md)》 |9+| 配置类与字段总览(`PracticeConfig` / `metadata`) | 《[PracticeConfig 配置说明](../../../docs/zh/api_reference/config/quant/practice_config.md)》 |
10-| 任务规格 `spec`(按 `apiversion`) | 《[modelslim_v1](../../../docs/zh/api_reference/config/task/modelslim_v1.md)》、《[multimodal_vlm_modelslim_v1](../../../docs/zh/api_reference/config/task/multimodal_vlm_modelslim_v1.md)》、《[multimodal_sd_modelslim_v1](../../../docs/zh/api_reference/config/task/multimodal_sd_modelslim_v1.md)》 |10+| 任务规格 `spec`(按 `apiversion`) | 《[modelslim_v1](../../../docs/zh/api_reference/config/quant/modelslim_v1.md)》、《[multimodal_vlm_modelslim_v1](../../../docs/zh/api_reference/config/quant/multimodal_vlm_modelslim_v1.md)》、《[multimodal_sd_modelslim_v1](../../../docs/zh/api_reference/config/quant/multimodal_sd_modelslim_v1.md)》 |
11| 处理器类型(`linear_quant` / `flex_smooth_quant` / `iter_smooth` / `flex_awq_ssz` / `quarot` 等) | 《[config/processor/ 目录](../../../docs/zh/api_reference/config/processor/)》 |11| 处理器类型(`linear_quant` / `flex_smooth_quant` / `iter_smooth` / `flex_awq_ssz` / `quarot` 等) | 《[config/processor/ 目录](../../../docs/zh/api_reference/config/processor/)》 |
12| QConfig 字段取值(`dtype` / `scope` / `symmetric` / `method` / `ext`) | 《[linear_quant](../../../docs/zh/api_reference/config/processor/linear_quant.md)》 等 |12| QConfig 字段取值(`dtype` / `scope` / `symmetric` / `method` / `ext`) | 《[linear_quant](../../../docs/zh/api_reference/config/processor/linear_quant.md)》 等 |
13| 保存配置(`ascendv1_saver`) | 《[ascendv1_saver](../../../docs/zh/api_reference/config/format/ascendv1_saver.md)》 |13| 保存配置(`ascendv1_saver`) | 《[ascendv1_saver](../../../docs/zh/api_reference/config/format/ascendv1_saver.md)》 |
14-| 完整配置示例与协议详解 | 《[权重量化使用指南](../../../docs/zh/user_guide/usage_weight_quantization.md)》、《[modelslim_v1](../../../docs/zh/api_reference/config/task/modelslim_v1.md)》、《[multimodal_vlm_modelslim_v1](../../../docs/zh/api_reference/config/task/multimodal_vlm_modelslim_v1.md)》、《[multimodal_sd_modelslim_v1](../../../docs/zh/api_reference/config/task/multimodal_sd_modelslim_v1.md)》 |14+| 完整配置示例与协议详解 | 《[权重量化使用指南](../../../docs/zh/user_guide/usage_weight_quantization.md)》、《[modelslim_v1](../../../docs/zh/api_reference/config/quant/modelslim_v1.md)》、《[multimodal_vlm_modelslim_v1](../../../docs/zh/api_reference/config/quant/multimodal_vlm_modelslim_v1.md)》、《[multimodal_sd_modelslim_v1](../../../docs/zh/api_reference/config/quant/multimodal_sd_modelslim_v1.md)》 |
15 15 
16## 调优闭环特有约束16## 调优闭环特有约束
17 17