# 创建智能精炼
#### 使用场景
智能精炼是面向大模型训练的"清洗+合成"一体化数据准备方案。如果您的数据处于"原始粗糙"或"样本匮乏"状态------无论是需要去除HTML标签与乱码的预训练语料清洗，还是需要对少量种子数据进行扩充与润色的SFT指令微调增强，亦或是涉及隐私信息的安全合规脱敏------智能精炼均能通过丰富的数据处理算子编排为一条流水线，将原始数据转化为高质量、高多样性且安全合规的训练数据集。
#### 前提条件
- 已注册华为云账号，进行了实名认证，且在使用ModelArts前检查账号状态，账号不能处于欠费或冻结状态。具体操作，请参见[注册华为云账号](https://support.huaweicloud.com/usermanual-account/account_id_001.html)和[实名认证介绍](https://support.huaweicloud.com/usermanual-account/account_auth_00001.html)。
- 配置委托访问授权 ModelArts使用过程中涉及OBS等服务交互，首次使用ModelArts需要用户配置委托授权，允许访问这些依赖服务。
  
- 已申请到智能精炼过程要使用到的计算资源。
- 如果您需要使用自定义的数据集，请参考[数据连接](https://support.huaweicloud.com/dataprepare-modelarts/dataprepare-modelarts-0015.html)将数据集导入到ModelArts平台。
 
#### 计费说明
按CPU算子实际执行时长或用量计费。
#### 约束限制
- **合成算子位置限制** ：合成算子**必须且只能** 放置在工作流的**最后一个节点**。不支持插入到加工算子中间，也不支持后接其他过滤算子。
- **模态限制** ：
  - 仅支持**同模态**合成（如文本输入-\>文本输出）。
  
  - **不支持跨模态**生成（如输入文本生成问答对、输出文本生成图像等）。
   
- **功能限制** ：
  - 不支持自定义合成指令（Prompt），不支持模板功能。
  
  - 不支持合成任务的在线调测。
  
  - 合成算子输出字段固定，但会自动保留输入数据集中的原始字段。
   
- **数据量与质检** ：
  - 不支持用户自定义合成数据的输出条数（系统根据输入自动处理）。
  
  - 不支持对合成结果进行自动质检过滤。
  
  - 合成结果将输出到新数据集，不支持自动与原始数据集合并。
   
 
#### 创建智能精炼
1. 登录[ModelArts管理控制台](https://console.huaweicloud.com/modelarts/)，在左侧导航栏选择"数据准备 \> 数据精炼"。
2. 在"智能精炼"页面右上方单击"创建智能精炼"，配置相关信息，单击"下一步"。
   表1创建智能精炼参数说明 
   | 参数                                                       || 说明                                                                                                                                                                                                                                          | 示例值                          |
   |:---|---|:---|:---|
   | 基本信息 | 名称 | 默认为data-refine-年月日时分秒，您也可以自定义名称。名称需以中文、字母开头，以中文、字母、数字结尾，长度2\~64的字符。只允许输入中文、字母、数字、中划线、下划线字符。                                                                                                                                                 | data-refine-20260423102952 |
   | 基本信息 | 描述  | 自定义智能精炼任务的描述。只包含中文、字母、数字、空格、中划线、下划线、逗号和句号。最大支持200个字符。                                                                                                                                                                                       | -                            |
   | 选择数据集                                                     || 数据集可以选择ModelArts**预置数据** ，也可以选择**我的数据**。当前支持输入数据集模态为文本、图片、视频类。 选择**我的数据** ，需自行上传数据集。具体操作，请参见[创建数据连接](https://support.huaweicloud.com/dataprepare-modelarts/dataprepare-modelarts-0015.html)。   | 预置数据 code-alpaca      |
   | 精炼模板                                                      || ModelArts预置了常用[智能精炼模板](https://support.huaweicloud.com/dataprepare-modelarts/dataprepare-modelarts-0029.html)，精炼模板根据使用场景将常用的业务处理算子及各算子的参数配置完毕，您可以直接使用。 如果您的使用场景不是精炼模板包含的业务，可不选择精炼模板，直接单击"下一步"。 | 单轮问答处理流程                     |
      
   
3. 精炼模板已预置了算子和编排步骤，您也可以按需修改，单击"保存并下一步" 在页面左侧的"添加算子"区域选择算子后，页面右侧会出现算子编排区域，配置算子顺序及算子参数后，您可以按需调整。
   关于算子的使用场景，请参考[使用场景](https://support.huaweicloud.com/dataprepare-modelarts/dataprepare-modelarts-0023.html#ZH-CN_TOPIC_0000002554695381__section843442364410)；关于算子的详细说明，请参考[智能精炼算子说明](https://support.huaweicloud.com/dataprepare-modelarts/dataprepare-modelarts-0033.html)。
   **重要：** 数据编排是智能精炼最重要也最为复杂的处理过程，有很多需要注意的场景和约束。特别是针对部分文本类（文本生成SFT）数据，[开始节点](https://support.huaweicloud.com/dataprepare-modelarts/dataprepare-modelarts-0033.html#ZH-CN_TOPIC_0000002554987559__section195931114201610)和[结束节点](https://support.huaweicloud.com/dataprepare-modelarts/dataprepare-modelarts-0033.html#ZH-CN_TOPIC_0000002554987559__section3385162101618)不仅负责处理数据的输入输出，还兼具数据格式转换功能。以下针对有数据格式转换的场景做场景说明：
   - 任意格式数据集进入开始节点后，均需要转换为标准格式数据集，供后续算子处理。待各种类型算子处理完毕后，结束算子将输出数据集默认会转化为输入数据集同格式数据集。
   
   - 结束节点可以配置输出数据集格式为任意格式数据集，供用户自己选择。
   
   - 如果输入节点和输出节点之间未添加其余任何算子，需按照如下两种情况处理：
     - 结束节点设置输出数据集格式与开始节点输入数据集格式一致。此时相当于对数据集未做任何操作，下一步按钮置灰，无法进行下一步配置。
     
     - 结束节点设置输出数据集格式与开始节点输入数据集格式不同。此时相当于仅对数据集做格式转换，可进行下一步配置，完成智能精炼任务后续配置。
      
   
   - 单击"保存并下一步"后，当前智能精炼编排任务包含编排步骤及之前的配置都会被保存下来。如果后续任务未完成，可在下次打开该智能精炼任务后，继续完成后续配置。
    
4. 配置生成数据集和资源信息，单击"启动"。
    表2参数说明 
   | 参数                                                                    || 说明                                                                                                                                                                                                                                                                                                                                                                                                                               | 示例值                                    |
   |:---|---|:---|:---|
   | 生成数据集 | 数据集名称         | 自定义数据集的名称。名称需以中文、字母开头，以中文、字母、数字结尾，长度2\~63的字符。只允许输入中文、字母、数字、中划线、下划线字符。                                                                                                                                                                                                                                                                                                                                                             | dataset                               |
   | 生成数据集 | 存储地址             | 支持选择"对象存储 OBS - 对象桶"或者"对象存储 OBS - 并行文件系统"。您可以单击![](https://support.huaweicloud.com/dataprepare-modelarts/figure/zh-cn_image_0000002555923462.png)图标选择OBS存储地址或者手动输入存储地址。存储地址必须以"obs://"或者"/"开头，以"/"结尾，且除前缀外不得出现"//"，例如obs://bucketname/path/或者/bucketname/path/。其他人的共享桶路径仅支持手动输入。                                                                                                                                                | obs://bucketname/path/                 |
   | 生成数据集 | 数据集属性          | 按需配置数据集的属性，您可以按照行业、语言维度配置标签，也可以自定义标签。                                                                                                                                                                                                                                                                                                                                                                                             | -                                      |
   | 生成数据集 | 描述            | 只能包含中文、字母、数字、空格、中划线、下划线、逗号和句号。最大支持200个字符。                                                                                                                                                                                                                                                                                                                                                                                        | -                                       |
   | 生成数据集 | 数据集状态            | 已上线的数据集才可被下游模型开发与训练作业任务调用。 - 打开"立即上线数据集"，生成数据集在"资产管理 \> 数据 \>我的数据"页面为"已上线"状态，可以被下游模型训练等作业直接使用。  - 关闭"立即上线数据集"，生成数据集在"资产管理 \> 数据 \>我的数据"页面为"未上线"状态，不可被下游模型训练等作业直接使用，需要手动上线数据集后才能使用。   | 打开"立即上线数据集"                              |
   | 资源配置   | 资源池类型           | 按需选择资源池类型。                                                                                                                                                                                                                                                                                                                                                                                                                       | 公共资源池                                  |
   | 资源配置   | 执行 CPU 算子实例参考规格 | 数据算子在处理数据时，需要用到计算资源，针对处理场景和算子类型不同，需要用到CPU或NPU类资源，请按需选择。                                                                                                                                                                                                                                                                                                                                                                            | NPU (1卡) \| (24 vCPUs) \| 内存 (192 GB) |
      
   当智能精炼作业的"最近运行状态"变为"数据集生成成功"时，表示智能精炼作业运行结束，其生成的数据将存储至"资产 \> 数据 \> 我的数据"中。
   
 
#### 最佳实践：算子编排设计原则
**原则1：**先清洗，后处理。
**建议顺序：**去重 → 格式化 → 过滤 → 增强 → 合成
**原则2：**减少数据在前，扩充数据在后。先用过滤算子减少数据量，再用合成算子扩充，可提升整体处理效率。
**原则3：**合成放末端，合成算子只能作为最后一个处理步骤。
**原则4：**保持模态一致，整个工作流处理同一类型数据，不跨模态。
#### 推荐算子编排模板
**模板一：基础数据清洗**
```
输入 → 格式校验 → 去重 → 长度过滤 → 输出
```
**模板二：数据清洗+质量提升**
```
输入 → 格式校验 → 去重 → 敏感词过滤 → 质量评分筛选 → 输出
```
**模板三：数据清洗+合成扩充**
```
输入 → 去重 → 敏感词过滤 → 质量筛选 → 问答改写合成 → 输出
```
**模板四：全流程精炼**
```
输入 → 格式转换 → 去重 → 敏感词过滤 → 质量评分 → 长度筛选 → 改写合成 → 输出
```
#### 后续操作
数据集上线后可以直接用于模型后续开发，例如[模型训练](https://support.huaweicloud.com/develop-modelarts/develop-modelarts-0001.html)、[模型评测](https://support.huaweicloud.com/model-evaluation-modelarts/model-evaluation-modelarts-0003.html)等。
