首页/新闻资讯/正文详情

MindSpeed-LLM 数据预处理完整指南:预训练与SFT数据一键转换实操

发布时间:2026/9/25 3:18:32 来源:云帆数科 栏目:资讯中心
MindSpeed-LLM 数据预处理完整指南:预训练与SFT数据一键转换实操
MindSpeed-LLM 数据预处理完整指南预训练与SFT数据一键转换实操【免费下载链接】MindSpeed-LLM昇腾LLM分布式训练框架项目地址: https://gitcode.com/Ascend/MindSpeed-LLMMindSpeed-LLM昇腾LLM分布式训练框架通过一条preprocess_data.py命令即可将原始文本数据一键转换为预训练和 SFT监督微调可用的二进制索引格式覆盖 Alpaca、ShareGPT、多轮对话、DPO 配对等多种数据风格。本文面向新手手把手演示从数据准备到转换输出的完整流程帮你快速跑通昇腾环境下的模型数据管道。 为什么需要数据预处理大模型训练不直接吃原始文本而是先经过原始数据json/parquet 等→ 分词Tokenizer→ 模板拼接Prompt Template→ 二进制索引.bin .idx这一步决定了训练时的读取效率和训练效果。MindSpeed-LLM 将这一整套流程封装在入口脚本 preprocess_data.py 中底层由 data_handler.py 提供二十余种数据处理器Handler你只需选择对应的处理器名称即可。 准备工作环境与数据1️⃣ 加载昇腾环境变量按实际安装的 Toolkit 路径修改source /usr/local/Ascend/ascend-toolkit/set_env.sh2️⃣ 准备两样东西原始数据集支持.parquet / .csv / .json / .jsonl / .txt / .arrow格式可以是一个文件也可以是一个目录目录则批量处理全部文件模型词表目录如./model_from_hf/qwen3_hf/用于分词官方文档提供了常见数据集的下载方式可参考 预训练数据集处理文档 与 Alpaca风格文档。 场景一预训练数据一键转换预训练数据最简单——只需要一个text文本列。以 Qwen3 为例项目内置脚本为 data_convert_qwen3_pretrain.shpython ./preprocess_data.py \ --input ./dataset/train-00000-of-00042-d964455e17e96d5a.parquet \ --tokenizer-name-or-path ./model_from_hf/qwen3_hf/ \ --tokenizer-type PretrainedFromHF \ --handler-name GeneralPretrainHandler \ --output-prefix ./dataset/enwiki \ --json-keys text \ --workers 4 \ --log-interval 1000关键参数解读参数作用新手提示--handler-name数据处理器预训练固定用GeneralPretrainHandler--json-keys提取的列名默认text多列可写多个--tokenizer-type分词器类型PretrainedFromHF表示用 HF 模型目录--output-prefix输出文件前缀会生成xxx_document.bin/.idx文件--workers并行进程数数据量大时可调大加速其他模型的预训练转换脚本都遵循examples/mcore/模型名/data_convert_xxx_pretrain.sh的命名规范可参考 DeepSeek4 数据转换脚本。️ 场景二SFT 指令微调数据转换SFT 数据比预训练多一步按模型对话模板拼接 prompt。以 Alpaca 风格单轮指令数据为例python ./preprocess_data.py \ --input ./dataset/train-00000-of-00001-a09b74b3ef9c3b56.parquet \ --tokenizer-name-or-path ./model_from_hf/qwen25_hf/ \ --output-prefix ./finetune_dataset/alpaca \ --handler-name AlpacaStyleInstructionHandler \ --tokenizer-type PretrainedFromHF \ --workers 4 \ --prompt-type qwen \ --pack --neat-pack \ --seq-length 4096新手必懂的 3 个 SFT 要点①--prompt-type决定对话模板模板定义了模型长什么样内置选项包括qwen、qwen3、llama3、chatml、glm4、deepseek3等 30 余种完整清单见 templates.json。请务必选择与目标模型一致的模板。②--map-keys解决字段对不上的问题Alpaca 风格默认列名为instruction / input / output。如果你的数据集列名不同比如question / answer用字段映射解决例如 DPO 场景下的 data_convert_llama2_pairwise.sh--map-keys {prompt:question, query:, system:system}③--pack --neat-pack提升训练效率把多条短样本打包进一条 4096 长度的序列显著减少通信开销适合样本普遍偏短的场景参考 Qwen2.5 打包脚本。 进阶常见数据风格速查数据风格handler-name典型场景单轮指令AlpacaAlpacaStyleInstructionHandler最常见的 SFT 格式多轮对话ShareGPTSharegptStyleInstructionHandler多轮对话数据预训练纯文本GeneralPretrainHandler大规模语料DPO 偏好对AlpacaStylePairwiseHandler偏好对齐训练思考链CoTR1AlpacaStyleInstructionHandler推理模型训练更多处理器的实现都集中在 data_handler.pyShareGPT 风格数据格式详见 官方文档。多轮对话训练小技巧Qwen3 等推理模型建议加--enable-thinking true见 data_convert_qwen3_instruction.sh开启思考模式的数据构建。✅ 转换结果与常见坑转换成功后--output-prefix目录下会生成.bintoken 数据和.idx偏移索引成对文件训练脚本中通过--data-path直接引用即可。新手常见 3 个坑--output-prefix所在目录必须已存在否则会报错先mkdir -p创建模板选错会导致训练 loss 异常--prompt-type必须匹配模型不确定时对照 supported_models.md超长样本会被截断超过--seq-length的样本默认丢弃日志中会出现Dropped lengthy example警告属正常现象 小结MindSpeed-LLM 的数据预处理核心就一句话选对 Handler 配好模板 指定词表路径一条命令完成转换。预训练 →GeneralPretrainHandler最简单SFT →AlpacaStyleInstructionHandler/SharegptStyleInstructionHandler--prompt-type大吞吐 → 加--pack --neat-pack打包准备好数据后即可进入 预训练入门 开启正式训练。祝训练顺利【免费下载链接】MindSpeed-LLM昇腾LLM分布式训练框架项目地址: https://gitcode.com/Ascend/MindSpeed-LLM创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关推荐

EasyXMen支持哪3款车规芯片?NXP S32K148、英飞凌TC397、瑞萨RH850平台对比与上手指南
EasyXMen支持哪3款车规芯片?NXP S32K148、英飞凌TC397、瑞萨RH850平台对比与上手指南

EasyXMen支持哪3款车规芯片?NXP S32K148、英飞凌TC397、瑞萨RH850平台对比与上手指南 【免费下载链接】开源小满EasyXMen代码仓库 持续18年精心打造的安全车控操作系统BSW代码。 项目地址: https://gitcode.com/easyxmen/XMen 开源小满 EasyXMen 是一款持续打… · 2026/9/25 3:18:32

Kata Containers 文档贡献实战指南:mkdocs-materialx 文档站点架构与写作规范详解
Kata Containers 文档贡献实战指南:mkdocs-materialx 文档站点架构与写作规范详解

云原生容器运行时 【免费下载链接】kata-containers Kata Containers is an open source project and community working to build a standard implementation of lightweight Virtual Machines (VMs) that feel and perform like containers, but provide the workload isolat… · 2026/9/25 3:18:32

MySQL表空间传输实战:超大单表分钟级迁移原理与踩坑指南
MySQL表空间传输实战:超大单表分钟级迁移原理与踩坑指南

表空间传输这个功能,说实话在很多DBA的日常工具箱里属于"知道但不常用"的那一类。直到有一天我接到一个需求:线上有一张将近200GB的流水表,要从一个MySQL实例迁到另一个新实例,业务方给的窗口只有30分钟。mysqldump导数… · 2026/9/25 3:18:26

使用 gqlgen 实现 GraphQL Query:Go 后端查询解析器实战指南
使用 gqlgen 实现 GraphQL Query:Go 后端查询解析器实战指南

【免费下载链接】howtographql The Fullstack Tutorial for GraphQL 项目地址: https://gitcode.com/gh_mirrors/ho/howtographql 点击查看 免费下载 本文以 howtographql 仓库中「Building a GraphQL Server with Go Backend Tutorial」教程的 Queries 章节 为核心… · 2026/9/25 3:54:35

cuDF Java API 实战指南:Fat JAR 依赖管理、源码构建与多 GPU 行为解析
cuDF Java API 实战指南:Fat JAR 依赖管理、源码构建与多 GPU 行为解析

数据分析数据工程机器学习 【免费下载链接】cudf cuDF - GPU DataFrame Library 项目地址: https://gitcode.com/gh_mirrors/cu/cudf 点击查看 免费下载 本文基于 cuDF 仓库 java/README.md 及其配套构建脚本、Maven 配置与 JNI 源码,系统讲解 cuDF Ja… · 2026/9/25 3:54:35

基于 JAX/Flax 微调序列到序列摘要模型:Transformers `run_summarization_flax.py` 实战指南
基于 JAX/Flax 微调序列到序列摘要模型:Transformers `run_summarization_flax.py` 实战指南

推理引擎大模型 【免费下载链接】FlexGen Running large language models on a single GPU for throughput-oriented scenarios. 项目地址: https://gitcode.com/gh_mirrors/fl/FlexGen 点击查看 免费下载 本文以 Transformers Flax 摘要微调示例为骨架&#xff0c… · 2026/9/25 3:54:35

WeiXinMPSDK 微信 Native 支付实战指南:从付款码 URL 签名、二维码生成到回调统一下单
WeiXinMPSDK 微信 Native 支付实战指南:从付款码 URL 签名、二维码生成到回调统一下单

后端即时通讯金融科技 【免费下载链接】WeiXinMPSDK 微信全平台 .NET SDK, Senparc.Weixin for C#,支持 .NET Framework 及 .NET Core、.NET 10.0。已支持微信公众号、小程序、小游戏、微信支付、企业微信/企业号、开放平台、JSSDK、微信周边等全平台。 … · 2026/9/25 3:54:35

CTF压缩包爆破实战:从密码原理到hashcat与掩码攻击全解析
CTF压缩包爆破实战:从密码原理到hashcat与掩码攻击全解析

那天比赛还剩半小时,队长突然在群里扔进来一个zip附件,注释就一句话:password?flag。群里瞬间安静了。我们几个人轮流试了题面里所有单词、常见弱口令、各种谐音组合,眼看着时间一分一秒过去。最后解开密码的,是队里平… · 2026/9/25 3:54:35

嵌入式四大串行协议I2C/SPI/UART/I2S对比与调试实战
嵌入式四大串行协议I2C/SPI/UART/I2S对比与调试实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 3:54:29

数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)
数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码