数据集和格式
您的模型的好坏取决于您的数据。以下是如何正确格式化它。支持的文件格式
AITraining 支持多种数据源:Parquet 文件通过暴露 Parquet 格式的 HuggingFace 数据集间接支持。
常见格式
CSV(最常见)
简单且通用。适用于分类、回归和基本任务。JSON/JSONL
更适合复杂数据、对话和嵌套结构。图像文件夹
按类别组织图像:数据质量基础
平衡您的类别
不好:- 1000 个积极示例
- 50 个消极示例
- 500 个积极示例
- 500 个消极示例
清理您的数据
删除:- 重复项
- 空值
- 明显错误
- 不一致的格式
大小指南
按训练器要求的列
不同的训练器需要特定的列:特殊格式
DPO/ORPO(偏好数据)
Token Classification
对话格式
对话期望{role, content} 对象列表:
Tool 角色支持
AITraining 支持tool 角色用于函数调用训练数据:
自动兼容性:对于不原生支持
tool 角色的模型(如 Gemma),AITraining 会自动将 tool 消息转换为带有 [Tool Result] 前缀的 user 消息。具有原生 tool 支持的模型(Llama 3.1+、Qwen 等)使用其原生格式。旧版格式支持:旧版 OpenAI
function 角色(在引入 tool 之前使用)也受支持,处理方式与 tool 角色相同。Tool Calls(函数调用)
AITraining 还支持tool_calls 字段用于训练模型进行函数调用:
智能格式检测:AITraining 会检测您的模型是否原生支持
tool_calls:- Qwen、Llama 3.1+:使用原生
<tool_call>格式 - Gemma、旧模型:将工具调用序列化为内容中的 OpenAI 格式 JSON
Tool Call 格式转换
对于没有原生工具支持的模型,AITraining 将工具调用序列化为 OpenAI 格式 JSON 并附加到助手内容中: 输入(带有 tool_calls 字段的消息):序列化格式保留了完整的 OpenAI 结构,包括
id、type 和 function 字段。这与系统提示中描述的格式一致,有助于模型更好地学习。消息交替处理
某些模型(Gemma、Mistral)要求严格的 user/assistant 交替。AITraining 会自动修复常见问题: 连续相同角色的消息会被合并:这些修复仅在 tokenizer 拒绝原始格式时应用。接受灵活消息顺序的模型会保持原始结构。
自动数据集转换
AITraining 可以自动检测和转换常见的数据集格式。无需手动预处理。支持的格式
列映射是可选的 - 使用它将不同的列名转换为预期格式。
使用自动转换
Chat Templates
Chat templates 将您的数据格式化为模型预期的对话结构。
模板根据您的训练器自动选择,或手动指定:
统一渲染器一致地应用模板。为了向后兼容,仍支持旧版模板路径。
对话扩展
将单轮示例合并为多轮对话:处理后数据集输出
处理后,您的数据集将包含:原始列被重命名为
_original_*,以防止其他工具自动检测并错误使用未处理的数据。保存处理后的数据
使用--save-processed-data 控制处理后数据的保存位置:
快速提示
- 从小开始 - 在扩展之前先用 100 个示例测试
- 尽早验证 - 在收集数千个示例之前检查您的格式是否有效
- 保持一致 - 在整个数据集中使用相同的格式
- 记录一切 - 注意任何预处理或特殊规则
- 使用自动转换 - 让 AITraining 自动检测和转换格式
下一步
超参数
配置您的训练
训练任务
选择您的任务类型