Alpaca数据集格式要求
Alpaca是开源模型(如DeepSeek系列、Qwen系列等)常用的数据集格式,是开源模型数据微调使用的主要数据集格式。特别用于instruction-tuning,即指令微调。其数据格式的特点是提供了一个明确的任务描述(instruction)、输入(input)和输出(output)三部分。
典型的Alpaca数据集格式:
[
{
"instruction": "人类指令(必填)",
"input": "人类输入(选填)",
"output": "模型回答(必填)",
"system": "系统提示词(选填)",
"history": [
[
"第一轮指令(选填)",
"第一轮回答(选填)"
],
[
"第二轮指令(选填)",
"第二轮回答(选填)"
]
]
}
]
字段说明:
- instruction: 任务的指令,告诉模型需要完成什么操作。
- input: 任务所需的输入。如果任务是开放式的或者不需要明确的输入,这一字段可以为空字符串。
- output: 任务的期望输出,也就是模型在给定指令和输入情况下需要生成的内容。如果想训练带思考模式的模型,需要加<think></think>标签,或者引导思考的prompt,比如“Let's think step by step”。
- system:系统提示词(如什么风格、什么角色),该字段可选。
- history:是由多个字符串二元组构成的列表,分别代表历史消息中每轮对话的指令和回答。在指令监督微调时,历史消息中的回答内容也会被用于模型学习,该字段可选。
特点:
- Alpaca的数据格式结构非常简单,开发者能够快速搞清楚各字段含义及快速上手构建数据集。
- 任务指令和输入内容是分离的,适合各种自然语言处理任务,如文本生成、翻译、总结等。