介绍文本生成模型调优数据的格式规格、打包要求、大小与数量限制及 API 上传配额,帮助用户按训练方式构造并上传合规的 SFT/DPO/CPT 训练数据。
概述
本文档阐述文本生成模型调优数据的格式规格、打包要求、大小与数量限制及 API 上传配额。适用范畴为文本生成模型调优(text/image/video → text),涵盖纯文本 SFT/DPO/CPT、千问 VL 图片与视频理解、视频抽帧、工具调用(function calling)与深度思考(thinking)。视频生成模型调优(image → video)不属于本范畴。
数据集类型(训练集或评测集)创建后不可变更。各训练方式与元素的支持情况详见训练方式与元素支持矩阵,各组合的格式构造规则见下文对应章节。
管理类操作(创建参数、版本管理、评测集管理规则、导入方式选型、数据清洗、安全合规)引导到同级文档,详见训练集与评测集、模型调优简介等。建议在创建数据集页面下载对应场景的数据模板,按模板结构准备数据可避免导入失败。
数据集构建建议(推荐数据规模、多样性与均衡、数据扩充策略)详见模型调优简介-数据集构建技巧。
强化学习(RL)训练数据格式(jsonl + messages + rollout_extra,通过 SDK 上传)详见RL 训练数据格式。
训练方式与元素支持矩阵
训练集支持 SFT、DPO、CPT 三种训练方法,各训练方式与元素的支持情况见下文矩阵表。调优推荐顺序为 CPT(可选)→ SFT → DPO(可选),三者递进非互斥。
地域可用性:
- SFT、本地上传、日志回流、API 上传、多模态数据格式全地域支持。
- DPO、CPT、OSS 导入、云存储挂载仅支持北京地域。
训练方式 | 文本生成 | 视觉理解-图片输入 | 视觉理解-视频输入(qwen3.5+) | 视觉理解-工具调用(qwen3.5+) | 深度思考 |
|---|---|---|---|---|---|
✓ | ✓ | ✓ | ✓ | ✓ | |
✓ | ✗ | ✗ | ✗ | ✓ | |
✓ | ✗ | ✗ | ✗ | ✗ | |
✓ | ✗ | ✗ | ✗ | ✗ |
文本生成 - SFT 格式
SFT 文本生成训练数据采用 jsonl 文件格式,基于 ChatML messages 多轮结构。
- 支持 system、user、assistant 三种角色,content 字段为字符串(多模态场景的 content 数组结构见对应多模态格式章节)。
- 单文件大小上限 200 MB。
- 一个数据集可混合不同格式行——每条记录独立选格式,无需统一为单一格式。
- 可选格式:普通对话、深度思考、工具调用、工具与思考组合(见下方标签页样例)。
- 普通 ChatML
- 深度思考(thinking)
- 工具调用(function calling)
进阶用法
-
支持
loss_weight参数,取值范围(0.0, 1.0],数值越大代表训练时该条数据的重要性越高。默认支持 Qwen3.5 及以上版本模型;如需支持 Qwen3、Qwen2.5 系列模型,请联系商务经理。
思考模式格式说明
深度思考内容用 <think>\n…\n</think>\n\n 标签包裹,置于 assistant 输出文本内(与最终答复同属最后一条 assistant 的 content)。规则:
- 只能放在最后一条 assistant 输出中;中间的 assistant 输出不加思考标签。
- 思考标签前后的换行符必须保留。
- 若训练样本设置模型不输出思考标签,训练完成后不建议再开启思考模式调用。
评测集格式
评测集仅服务文本生成场景,与 SFT/DPO/CPT 训练方式无关——DPO/CPT 训练后的模型同样使用文本生成评测集进行评测,不区分训练方式。
评测集规格:
- 文件格式 xlsx,列结构见控制台下载模板。
- 入库方式:本地上传、日志回流;不支持对象存储(OSS)导入与云存储挂载。
- 仅历史创建的草稿版本支持在线编辑(Prompt/Completion),已发布版本不可编辑。
- 支持日志范围为最近 30 天内。
- 单次导入上限 10 万条。
- 需授权服务关联角色并指定 API Key 与模型筛选条件。
- 训练集仅 SFT 文本生成场景可用(评测集文本生成亦支持)。
文本生成 - DPO 格式
DPO 文本生成训练数据采用 jsonl 格式,基于 ChatML messages 多轮结构,额外含 chosen 与 rejected 两条对比的 assistant 输出,用于偏好对齐训练。messages 内的所有内容均作为输入,DPO 用于训练模型对最后一条 user 输入的正负反馈。messages 多轮结构规则见文本生成 - SFT 格式。
针对深度思考内容,chosen 或 rejected 的 assistant 输出可使用思考标签包裹,思考标签只能放最后一条 assistant 行,规则见文本生成 - SFT 格式。
loss_weight (邀测)参数支持 chosen 模块,取值范围 0.0 至 1.0,数值越大训练重要性越高,详见文本生成 - SFT 格式。
DPO 训练数据单文件大小上限为 200 MB,与 SFT 文本生成一致。DPO 定义详见模型调优简介,版本管理与发布操作见训练集与评测集。
DPO 文本生成训练数据样例见下文代码块:
- 普通 ChatML
- 深度思考(thinking)
文本生成 - CPT 格式
CPT 文本生成训练数据采用 jsonl 纯文本格式,每行一个 jsonl 对象,结构为 {text},text 字段为纯文本内容。messages 多轮结构规则见文本生成 - SFT 格式。
CPT 训练数据约束:
- 建议至少 5000 万 Token,单文件大小上限 300 MB。
视觉理解-SFT 格式
SFT 图片训练数据用于千问 VL 多模态理解(控制台 UI 选项为「图片理解」)场景,采用 zip 压缩包格式,包含 data.jsonl 训练文本数据文件与图片文件。data.jsonl 须置于压缩包根目录,data.jsonl 中每条训练数据的 messages 采用 content 数组结构,数组项含图片字段(image)与文本字段(text)。推荐使用单层目录结构,打包规则详见多模态压缩包打包规则。
- 图片输入限制
- 视频输入限制
- 单张图片宽度和高度均不超过 1024 px。
- 单张图片不超过 10 MB。
- 支持格式:bmp、jpeg、jpg、png、tif、tiff、webp。
- 普通 ChatML
- 深度思考(thinking)
- 工具调用(function calling)
- 图片输入
- 视频文件路径模式
- 图片帧列表模式
工具调用格式说明
工具调用(function calling)模式在 messages 多轮结构基础上增加 tools 定义与 tool_calls/role:tool 机制,字段约束如下:
- tools:工具定义数组,每项含 type:"function" 与 function{name, description, parameters};parameters 为 JSON Schema(含 type/properties/required)。
- messages:多轮对话数组,角色含 user、assistant、tool。
- content:多模态内容数组,可含 image、text、video 等项(与多模态理解格式一致)。
- assistant.tool_calls:模型生成的工具调用数组,含 id、type:"function"、function{name, arguments};arguments 为 JSON 字符串。
- role:"tool":工具返回,tool_call_id 必须与对应 tool_calls[].id 一一对应,content 内为工具返回结果。
思考模式格式说明
深度思考内容用 <think>\n…\n</think>\n\n 标签包裹,置于 assistant 输出文本内(与最终答复同属最后一条 assistant 的 content)。规则:
- 只能放在最后一条 assistant 输出中;中间的 assistant 输出不加思考标签。
- 思考标签前后的换行符必须保留。
- 若训练样本设置模型不输出思考标签,训练完成后不建议再开启思考模式调用。
RL 训练数据格式
强化学习(RL)训练数据采用 jsonl 格式,每行一个 JSON 对象,含 messages 与 rollout_extra 两个字段。RL 通过 SDK 上传(AgenticRL.run()),非控制台打包通道;计费按 MTU 模型训练单元,非 Token。RL 数据格式、SDK 上传与 Rollout/Reward 函数开发详见强化学习训练概述。
字段说明:
messages:用户问题,ChatML 结构([{role, content}])。只含 prompt(user,可前置system),不含assistant回答——回答由模型在 Rollout 阶段自主生成。content为字符串。rollout_extra:参考答案或业务数据,dict 类型,透传给 Reward 函数用于评分。支持自定义 key(不限于solution);框架自动提取ground_truth(参考答案),自定义 key 通过rollout_extra["key"]读取。
reward字段——reward 由 Reward 函数在训练运行时计算(对比 rollout_extra 参考答案评分,输出 0~1 分),不预置在 jsonl 中。与 SFT(messages 含完整 assistant 答案)、DPO(chosen/rejected 对)不同,RL 的 messages 只有 prompt。
数学推理样例(rollout_extra.solution 标准答案):
entry_point/tests/timeout_sec/language):
expected_tools/success_check/max_steps):
rollout_extra 常用 key(按场景):
- 数学推理:
solution(标准答案)、solution_steps(过程,可选)、difficulty(难度,可选)。 - Agent 工具调用:
expected_tools(期望工具集)、success_check(成功判定)、max_steps(调用效率参考)。 - 代码生成:
entry_point(入口函数)、tests(单测代码)、timeout_sec(执行超时)、language(沙盒选型)。
- 数据量需大于
batch_size(默认 64)。几十至几百条可验证方案;正式训练数学推理 500~2000 条、Agent ≥1000 条、代码 ≥1000 题,数据量越大效果越优。 - 训练集与验证集为两个独立 jsonl 文件,分别通过
TrainingDataset/ValidationDataset上传(验证集可选)。 - RL 通过 SDK 上传(
AgenticRL.run()),非控制台打包通道;计费按 MTU 模型训练单元,非 Token。SDK 字段与提交方式详见强化学习训练配置。
多模态压缩包打包规则
多模态理解训练数据以 zip 压缩包形式通过新增数据集页面上传,打包须满足以下约束:
- 压缩包最大支持 2 GB。
- 包内文件夹与文件名允许的字符集为 ASCII 字母(a-z、A-Z)、数字(0-9)、下划线(_)、连字符(-)。
- 训练文本数据文件固定为 data.jsonl,必须位于压缩包根目录——确保压缩后打开 zip 文件直接看到 data.jsonl,外层不能再包裹文件夹。
文件大小与数量限制
本地上传文件大小与数量上限按训练方式分场景设定,详见下文分场景表。图片准入限制见视觉理解-SFT 格式,评测集格式限制见评测集格式,日志回流入库限制见评测集格式。
max_length 取值区间 500 至 131072 为训练序列长度配置参数,非上传准入上限。单条训练数据上传准入大小上限以控制台页面展示为准。
本地上传文件大小与数量上限按训练方式分场景设定,推荐数据量为最低建议值:
训练方式/场景 | 单文件大小上限 | 文件数量上限(maxCount) | 推荐数据量 |
|---|---|---|---|
文本生成 - SFT 格式 | 200 MB | 10(默认) | 至少上千条 |
文本生成 - DPO 格式 | 200 MB | 10(默认) | 至少上百条 |
文本生成 - CPT 格式 | 300 MB | 1 | 至少 5000 万 Token |
多模态(zip) | 2 GB | 1 | 根据实际场景准备充足样本 |
文件名(不含后缀) | ≤120 字符且不重名 | — | — |
扩展名 | 须在 新增数据集 列表中 | — | — |
API 上传配额
通过 DashScope API 上传调优文件(用途标记为模型调优)的配额见下文配额表。控制台创建数据集时,File API 列表最多支持 10 个文件合并注册;通过 API 上传的调优文件在控制台模型调优页面与 API 调用中均可见可用。
云存储挂载加载数据集的约束:
- 通过 MountStorage 的 file_path 指定 data.jsonl 根目录清单路径,不支持 zip 压缩包。
- 挂载前需授权百炼服务访问 OSS 数据。
- 单文件超过 300 MB:通过云存储挂载或多模态 ZIP 2 GB 通道上传。
- 总配额超额:删除历史文件释放空间。
- 导入数据自动启用 OSS 服务端加密(SSE-OSS,AES256)。
配额项 | 限制值 | 说明 |
|---|---|---|
单文件大小 | 不超过 300 MB | 调优文件(模型调优用途) |
有效文件总空间 | 100 GB | 未删除文件累计 |
有效文件总数量 | 10000 个 | 未删除文件累计 |
文件存储时长 | 无时间限制 | 不自动过期 |
File API 列表上限 | 10 个 | 控制台创建数据集时合并注册 |
维度 | OSS 导入 | 云存储挂载 |
|---|---|---|
前置条件 | 百炼数据访问授权标签 | 授权百炼服务访问 OSS 数据 |
数据形态 | 单个或批量文件 | 未经压缩的数据集文件夹整体(不支持 zip) |
入口 | 数据管理 > 新增数据集 > OSS 导入 | 模型调优 > 创建训练任务 > 数据配置 > 数据集挂载 |
评测集 | ✗ | ✗ |
上传校验与常见错误
在新增数据集页面本地上传文件时,前端校验会拒绝不符合准入规则的文件并弹出提示。常见校验拒绝与上传出错场景见下文折叠项:
问题:上传文件时前端提示文件数量超过上限,文件被拒绝上传。
问题:上传文件时前端提示文件数量超过上限,文件被拒绝上传。
- 核对当前训练方式对应的 maxCount 上限,详见文件大小与数量限制。
- 减少文件数至上限内;多模态数据合并为单个 zip,CPT 数据合并为单个 jsonl。
- 文件数仍超限时拆分为多个数据集分批上传。
问题:文件名(不含后缀)长度超过 120 字符,前端拒绝上传。
问题:文件名(不含后缀)长度超过 120 字符,前端拒绝上传。
- 重命名文件,使文件名(不含后缀)缩短至 120 字符以内。
- 仅使用 a-z/A-Z/0-9/_/- 字符,去除中文及其他非 ASCII 字符。
- 多模态压缩包内文件名还须全局唯一。
问题:文件名(不含后缀比对)重复,前端拒绝上传。
问题:文件名(不含后缀比对)重复,前端拒绝上传。
- 排查重名文件,重命名使其不含后缀部分唯一。
- 同名不同扩展名的文件(如 image.jpg 与 image.png)也会被判重名,须同时区分。
- 多模态 zip 内文件名须全局唯一,即使分布在不同文件夹。
问题:单文件大小超过对应训练方式上限,前端拒绝上传。
问题:单文件大小超过对应训练方式上限,前端拒绝上传。
- 核对文件大小是否超过对应训练方式上限。
- 拆分 jsonl 为多个文件分批上传(SFT/DPO);CPT 数据拆分需新建多个数据集。
- 单文件超 300 MB 的承接方式见API 上传配额。
问题:文件扩展名不在 supportedExtension 列表,前端弹出 warning 并拒绝上传。
问题:文件扩展名不在 supportedExtension 列表,前端弹出 warning 并拒绝上传。
- 核对文件扩展名是否在对应场景的支持列表内。
- 将文件转换为支持的扩展名后重新打包上传。
- 多模态 zip 内图片与视频扩展名须逐一符合,否则整包导入失败。
问题:OSS 上传过程中文件被置为 error 状态,上传未完成。
问题:OSS 上传过程中文件被置为 error 状态,上传未完成。
- 核对 OSS Bucket 已添加百炼数据访问授权标签。
- 确认已授权百炼服务访问 OSS 数据。
- 检查 data.jsonl 与文件格式符合打包规则后重试上传,详见多模态压缩包打包规则。
- 发布与删除操作均不可逆;已发布版本不可再编辑,仅历史创建的草稿版本可删除或在线编辑。
- 数据集类型(训练集/评测集)创建后不可变更、不可互换,选错需新建数据集重新导入全部数据。
- 切换数据集类型、训练场景、训练方式时会清空已上传文件并重置存储位置与导入方式。