更新时间:2026-08-13 GMT+08:00
分享

文本生成SFT

以问答对为核心的标注文本数据集,包含明确的指令与标准应答内容。该类型深度适配大模型的有监督指令微调,能够满足对话生成、指令对齐以及特定行业场景定制的模型训练需求。

约束限制

  • 从OBS导入:单个文件/压缩包大小不超过20GB;多个文件场景,文件数量不限制,总文件大小不超过20GB。
  • 本地导入:单个文件大小不超过1GB,文件数量最多20个。
  • 文件编码:所有jsonl格式文件必须采用UTF-8编码。

格式说明

文件格式:jsonl

格式说明:jsonl是一种结构化的轻量级文本文件格式。其核心规则为文件中的每一行都必须是一个独立、合法且完整的JSON对象

数据集逻辑规范:为了适配不同开源社区的习惯,该数据类型支持三种主流的逻辑规范:标准格式、Alpaca格式与ShareGPT格式。

标准格式

该规范遵循业界通用的标准,采用消息序列的方式记录对话,具备极高的通用性与兼容性。

数据格式示例

为便于展示字段层级关系,已将单行JSONL数据展开。

{
  "meta": {
    "conversation_id": "conversation_123",
    "user_id": "user_456",
    "timestamp": "2026-05-29T10:00:00Z",
    "domain": "math_tutoring"
  },
  "messages": [
    {
      "role": "user",
      "content": "请帮我解方程 2x + 5 = 13"
    },
    {
      "role": "assistant",
      "content": "<think>这是一个简单的一元一次方程,我需要将常数项移到右边,然后除以系数。</think>\n好的,我们来解这个方程:2x + 5 = 13,两边减去5得2x = 8,所以x = 4。"
    },
    {
      "role": "user",
      "content": "那如果是 3(x - 2) = 9 呢?"
    },
    {
      "role": "assistant",
      "content": "<think>这次方程含有括号,先要去括号或两边同时除以3。</think>\n可以这样解:两边同时除以3得 x - 2 = 3,所以 x = 5。"
    },
    {
      "role": "user",
      "content": "谢谢,我明白了"
    },
    {
      "role": "assistant",
      "content": "不客气,有问题随时问我!"
    }
  ]
}

字段规范说明

对JSONL文件中的每一条(每行)数据:

表1 字段说明

字段

类型

是否必填

说明

messages

List

对话历史列表,按时间顺序包含多轮角色交互对象。

messages.role

String

发送消息的角色身份。仅支持:system(人设/系统提示词)、user(用户输入)、assistant(模型回复)中的一个。

messages.content

String

具体的对话文本内容。如果包含模型思考过程,可以使用<think>...</think>标签对进行包裹。

meta

-

拓展元数据字段。

Alpaca格式

该规范起源于Stanford Alpaca社区项目,将单次交互或包含历史的多轮对话拆分为明确的指令(instruction)、补充上下文(input)和标准输出(output),结构扁平,便于阅读与快速微调。

数据格式示例

为便于展示字段层级关系,已将单行JSONL数据展开。

{
  "system": "你是一名精通初等数学的AI助教",
  "instruction": "请帮我解方程 2x + 5 = 13",
  "input": "",
  "output": "<think>这是一个简单的一元一次方程,我需要将常数项移到右边,然后除以系数。</think>\n好的,我们来解这个方程:2x + 5 = 13,两边减去5得2x = 8,所以x = 4。",
  "history": [
    [
      "你好,你能帮我辅导数学吗?",
      "当然可以,请随时提出你的数学问题。"
    ]
  ]
}

字段规范说明

对于JSONL文件中的每一条(每行)数据:

表2 字段说明

字段

类型

是否必填

说明

system

String

系统提示词,用于显式定义模型在此次对话中扮演的角色人设。

instruction

String

用户发出的具体任务指令或核心问题。

input

String

任务所需的补充背景信息或输入上下文(若无可传入空字符串 "")。

output

String

大模型针对该指令的标准期望回答。允许包含由 <think>...</think> 标签包裹的思维链推理过程。

history

List

历史对话记录,采用二维列表结构 [[q1, a1], [q2, a2], ...]。每个元素为长度固定为2的列表,分别代表历史轮次中的用户提问与模型回复。

ShareGPT格式

该规范广泛应用于多种开源框架,通过一个集中的对话列表(conversations)来线性复现人类与AI之间的多轮交替演进过程,结构紧凑且极易拓展。

数据格式示例

为便于展示字段层级关系,已将单行JSONL数据展开。

{
  "system_prompt": "角色名称:数学辅导专家",
  "conversations": [
    {
      "from": "human",
      "value": "请帮我解方程 2x + 5 = 13"
    },
    {
      "from": "gpt",
      "value": "<think>移项、化简、求解。</think>\n解方程得2x = 8,解得x = 4。"
    }
  ]
}

字段规范说明

对于JSONL文件中的每一条(每行) 数据:

字段

类型

是否必填

说明

conversations

List

多轮对话内容有序列表。

conversations.from

String

标识当前话语的发言方。

conversations.value

String

当前轮次的文本对话内容。

相关文档