(数据集)LLaMA Factory进行微调训练的时候,有哪些已经注册的数据集呢?
LLaMA‑Factory 是一个开源的 LLM 交互式微调与数据标注平台,内置支持多种数据集,涵盖指令微调、RLHF、对话生成等任务。官方提供的数据集包括 alpaca_gpt4、sharegpt、code_alpaca_gpt4 等,支持多语言、代码生成、医疗等专业领域。使用方式包括单数据集训练、多数据集混合训练以及自定义本地数据训练。推荐根据任务目标组合数据集,如通用对话选用 sharegp
·
下面列出 LLaMA‑Factory(开源的 LLM 交互式微调与数据标注平台)内置支持的全部数据集及其主要特性、来源和使用方式,方便你快速挑选合适的数据来进行指令微调、RLHF、对话生成等任务。
1️⃣ LLaMA‑Factory 官方提供的“指令/对话”数据集(已在 datasets 中注册)
| 数据集名称 | 类型 | 规模(示例/条目) | 语言 | 主要来源 | 适用场景 |
|---|---|---|---|---|---|
| alpaca_gpt4 | 指令 | 52 k | 英文 | Stanford‑Alpaca + GPT‑4 重新标注 | 常规指令微调 |
| alpaca | 指令 | 52 k | 英文 | Stanford‑Alpaca (OpenAI text-davinci-003) |
快速实验、baseline |
| sharegpt | 多轮对话 | 90 k(已去重) | 英文 | ShareGPT 网页抓取 | 多轮对话微调 |
| openai_webgpt | 多轮对话 | 28 k | 英文 | OpenAI WebGPT 采样 | 对话回复、检索 |
| vicuna_v1.1 | 多轮对话 | 70 k | 英文 | Vicuna‑1.1 (ShareGPT + LLaMA) | 受限对话 |
| hh_rlhf | RLHF 反馈 | 70 k (pre‑selected) | 英文 | Anthropic “Helpful‑Harmless” | RLHF/奖励模型训练 |
| oasst1 | 多轮对话 | 14 M (raw) / 2 M (filtered) | 多语言 | Open‑Assistant (Reddit) | 大规模多语言对话 |
| code_alpaca_gpt4 | 编码指令 | 52 k | 英文 | Code‑Alpaca (GPT‑4) | 编程指令、代码生成 |
| codealpaca | 编码指令 | 52 k | 英文 | CodeAlpaca (OpenAI code-davinci-002) |
代码微调 |
| self_instruct | 指令 | 83 k (synthetic) | 英文 | Self‑Instruct (GPT‑3 生产) | 扩展指令多样性 |
| flan_collection | 多任务指令 | 1 M+ (多子集) | 多语言 | FLAN (Google) | 多任务指令微调 |
| wizardlm | 多轮对话/指令 | 101 k | 英文 | WizardLM (GPT‑4) | 复杂对话 |
| medical_meadow | 医疗指令 | 12 k | 英文 | Medical Meadow (LLM‑Based) | 医疗/健康对话 |
| gpt4all | 多轮对话 | 46 k | 多语言 | GPT‑4‑All (OpenAI+LoRA) | 通用对话 |
| xsum (as instruction) | 摘要指令 | 200 k | 英文 | XSum (CNN) | 摘要任务 |
| samsum (as dialogue) | 对话摘要 | 13 k | 英文 | SAMSum | 对话摘要 |
| cnn_dailymail (as summarization) | 摘要 | 287 k | 英文 | CNN/DailyMail | 长文本摘要 |
| dolly (databricks) | 指令 | 15 k | 英文 | Dolly 2.0 (OpenAI) | 指令微调 |
| gpt4all_prompt_gpt4 | Prompt‑style 指令 | 45 k | 英文 | GPT‑4All prompt collection | Prompt‑engineering |
| OpenOrca | 多轮对话 | 8 M+ (filtered 200 k) | 多语言 | OpenOrca (OpenAI) | 大规模对话微调 |
| übersetzungs‑corpus | 翻译指令 | 3 M+ | 多语言 | OPUS, WMT | 翻译任务 |
| eus (Extract‑Update‑Summarize) | 增量摘要 | 60 k | 英文 | EUS dataset (research) | 增量更新摘要 |
说明
- 表中 规模 为公开可用版本的条目数量,实际使用时常常在
train/validation划分后会更少。- 大多数数据集已经在
datasets(🤗 Hub)中注册,LLaMA‑Factory 会在运行llamafactory train时自动下载并转化为统一的 instruction format({'instruction':..., 'input':..., 'output':...})。- 对于 多语言、代码、医学 等专用领域,建议单独组合对应子集(如
flan_collection+code_alpaca_gpt4)进行 混合微调,可以显著提升专业化能力。
2️⃣ 如何在 LLaMA‑Factory 中使用这些数据集
2.1 基础命令(指令微调示例)
# 以 alpaca_gpt4 为例
CUDA_VISIBLE_DEVICES=0 llamafactory train \
--model_name_or_path /path/to/llama-7b \
--dataset alpaca_gpt4 \
--output_dir ./output/llama-7b-alpaca-gpt4 \
--do_train True \
--do_eval True \
--per_device_train_batch_size 4 \
--per_device_eval_batch_size 4 \
--learning_rate 2e-5 \
--num_train_epochs 3 \
--fp16 True
2.2 多数据集混合(推荐做法)
# 使用 alpaca_gpt4 + code_alpaca_gpt4 + sharegpt 三个子集
CUDA_VISIBLE_DEVICES=0,1 llamafactory train \
--model_name_or_path /path/to/llama-13b \
--datasets alpaca_gpt4,code_alpaca_gpt4,sharegpt \
--dataset_ratios 0.4,0.3,0.3 # 按比例抽样(可省略,默认均匀抽样) \
--output_dir ./output/llama-13b-mixed \
--do_train True \
--fp16 True \
--gradient_accumulation_steps 4 \
--per_device_train_batch_size 2 \
--learning_rate 1e-5 \
--num_train_epochs 5
--datasets接受 逗号分隔的多个数据集名称。--dataset_ratios(可选)控制抽样权重,帮助在 大数据集(如 OASST1)和 小数据集(如 medical_meadow)之间平衡。
2.3 使用自定义本地数据
如果你有自己的 JSON/JSONL 或 CSV 格式数据,只要满足 {'instruction':..., 'input':..., 'output':...} 结构,就可以通过 --dataset local 并提供路径:
CUDA_VISIBLE_DEVICES=0 llamafactory train \
--model_name_or_path /path/to/llama-7b \
--dataset local \
--dataset_path ./my_dataset.jsonl \
--output_dir ./output/custom \
--do_train True
需要注意:文件必须是 UTF‑8 编码,每行必须是合法 JSON 对象。
3️⃣ 关键考量:挑选合适的训练数据
| 目标 | 推荐数据集组合 | 说明 |
|---|---|---|
| 通用对话 | sharegpt, vicuna_v1.1, wizardlm |
多轮对话质量高,覆盖常见聊天场景 |
| 指令遵循 | alpaca_gpt4, self_instruct, flan_collection |
以指令+答案的格式为主 |
| 代码生成 | code_alpaca_gpt4, codealpaca, starcoder_pretrain (外部) |
包含多语言代码(Python/JavaScript/SQL) |
| 多语言 | flan_collection(多语言子集),openorca(过滤后) |
支持 20+ 语言,对齐/翻译任务 |
| 医学/健康 | medical_meadow, pubmed_qa (外部) |
专业术语丰富,需要额外的安全过滤 |
| RLHF 训练 | hh_rlhf, openai_webgpt, oasst1(人类对齐) |
用于奖励模型(Reward Model)或 PPO 步骤 |
| 摘要/长文本 | cnn_dailymail, xsum, samsum |
长文生成、压缩任务常用基准 |
| 混合领域 | 任选 2‑3 个(如 alpaca_gpt4 + code_alpaca_gpt4 + sharegpt) |
在微调时加入 任务标签(task_type)可帮助模型学习不同风格 |
4️⃣ 小技巧 & 常见坑
| 问题 | 解决方案 |
|---|---|
| 下载慢/超时 | 在中国大陆使用 export HF_ENDPOINT=https://hf-mirror.com(或者自行搭建 HuggingFace 镜像),或提前在本地 datasets 缓存。 |
| 数据大小不匹配(train/eval 不同) | 手动对 train_split / eval_split 进行指定,例:--train_split train[:90%] --eval_split train[90%:] |
| 显存不足 | 开启 LoRA(--lora_rank 8),并使用 FP16 (--fp16 True) 或 DeepSpeed ZeRO‑3 (--deepspeed ds_config.json) |
| 指令/对话格式不统一 | 在 prepare_dataset.py 中使用 llamafactory/data 提供的 convert_to_instruction 工具统一化;也可以在 datasets 中 map lambda,示例:dataset.map(lambda x: {'instruction': x['prompt'], 'output': x['completion']}) |
| 多语言训练时出现乱码 | 确认文件是 UTF‑8 with BOM(或直接 iconv -f ISO-8859-1 -t UTF-8 转码)并在 DatasetInfo 中声明 language。 |
| RLHF 步骤报错 “no reward model found” | 确保先运行 llamafactory train 产生 reward_model,路径通过 --reward_model_path 指定;或者在 llamafactory rl 配置文件中显式写入 reward_model_name_or_path。 |
5️⃣ 参考资源(官方/社区)
| 资源 | 链接 |
|---|---|
| LLaMA‑Factory 项目主页 | https://github.com/hiyouga/LLaMA-Factory |
| 官方数据集文档 (datasets list) | https://github.com/hiyouga/LLaMA-Factory#supported-datasets |
| HuggingFace Datasets Hub | https://huggingface.co/datasets |
| LoRA + DeepSpeed 示例 | https://github.com/hiyouga/LLaMA-Factory/blob/main/scripts/finetune_lora_deepspeed.sh |
| 中文社区数据集合集 | https://github.com/THU-KEG/Chinese-LLaMA-Dataset |
| RLHF 教程 | https://github.com/hiyouga/LLaMA-Factory/blob/main/docs/rlhf.md |
🎯 快速上手小结
- 选定目标(对话、指令、代码、RLHF…)
- 挑选相应数据集(参考上表的推荐组合)
- 在
config.yaml或命令行里声明--datasets(或--dataset单个) - 确保混合精度/LoRA/DeepSpeed 兼容(尤其在 V100 等显卡上)
- 跑训练 + 评估,后续可用
llamafactory evaluate或llamafactory inference检查效果。
按以上步骤,你就能在 LLaMA‑Factory 中轻松加载并微调所需的数据集。如果还有关于特定数据集的细节(如许可、过滤策略)或训练参数的疑问,随时再来问我!祝你实验顺利 🚀
注:以上内容为AI生成,所以需要用户自己再实践检验一下。
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)