一套数据格式框架搞定大模型微调和对齐训练

训练数据格式简介

做大模型微调与对齐训练(下述统一称为"大模型后训练")时,五花八门的数据格式常常让人眼花缭乱、适配成本居高不下。本文要介绍的后训练数据格式框架,能轻量化适配不同任务的训练样本结构。

接下来,将讨论下述几个问题:大模型后训练阶段使用的数据形态,和你喂入的数据一样吗?你经常听说的Alpaca格式、ChatLM格式数据到底是指什么?不同的训练任务,如何定义一套通用的数据格式?

本文内容参考 一套数据格式框架搞定大模型微调和对齐训练

大模型后训练数据格式可以分为两个层次:任务抽象结构 和 具体序列化格式(模板)。整个数据格式框架就是"任务抽象 + 序列化模板"两层结构,按场景匹配即可。训练前,每个样本的字段会被模板渲染成一个字符串,这个字符串才是模型实际看到的。整个过程如下:


数据加工过程示例

下面将给出"一条指令数据转化成Alpaca模版格式数据"的过程:

bash 复制代码
【1.】 原始抽象数据(JSON 存储格式)
{
  "instruction": "翻译以下句子到英语",
  "input": "今天天气真好",
  "output": "The weather is really nice today"
}

【2.】 选择序列化模板(以 Alpaca 模板为例)
Below is an instruction that describes a task. Write a response that appropriately completes the request.
### Instruction:
{instruction}
### Input:
{input}
### Response:
{output}

【3.】字段替换 → 渲染出完整字符串
Below is an instruction that describes a task. Write a response that appropriately completes the request.
### Instruction:
翻译以下句子到英语
### Input:
今天天气真好
### Response:
The weather is really nice today

【4.】附加特殊标记(可选,取决于目标模型,部分模型要求使用特殊分隔符来标识角色边界或对话轮次)
<|im_start|> user 翻译以下句子到英语\n\n今天天气真好 <|im_end|>
<|im_start|> assistant The weather is really nice today <|im_end|>

【5.】分词 + 添加 BOS/EOS
训练框架自动调用tokenizer,将上述字符串转换为token ID序列,
并添加 bos_token(如 <s>)和 eos_token(如 </s>)。
最终输入到模型的是一系列整数。

为什么需要数据格式渲染

将结构化JSON渲染成Alpaca这类自然语言模板字符串有下面几方面的原因:

更详细的内容参考 一套数据格式框架搞定大模型微调和对齐训练

相关推荐
6Hzlia2 小时前
【Classic 150 刷题计划】 LeetCode 205. 同构字符串 | C++ 双向绑定与哈希表映射
c++·算法·leetcode
硅谷秋水3 小时前
RoboLab:用于分析机器人任务通才策略的高-保真仿真基准
机器学习·计算机视觉·语言模型·机器人
有点。9 小时前
C++03阶段练习(练习题)
数据结构·算法·图论
周末也要写八哥10 小时前
经典算法实例:游戏中弱角色的数量(二)
算法
是Yu欸10 小时前
鸿蒙PC移植:2048 从网页小游戏到 AI 桌面应用
大数据·人工智能·算法·数据挖掘·openharmony·codex
鹿角片ljp10 小时前
KV Cache 解析
java·算法
liliangcsdn11 小时前
IVOL与偏度因子的对比测量分析
算法
threerocks12 小时前
Jev 入门第一课
算法
西柚研究生12345613 小时前
论文分析17:YOLOv11_UAVNet:无人机航拍图像专用目标检测算法
人工智能·python·深度学习·算法·目标检测
hetao173383714 小时前
2026-09-17 hetao1733837 的刷题记录
c++·算法