Felladrin/ChatML-distilabel-intel-orca-dpo-pairs
收藏Hugging Face2024-02-10 更新2024-03-04 收录
下载链接:
https://hf-mirror.com/datasets/Felladrin/ChatML-distilabel-intel-orca-dpo-pairs
下载链接
链接失效反馈官方服务:
资源简介:
---
license: apache-2.0
language:
- en
size_categories:
- 10K<n<100K
---
[argilla/distilabel-intel-orca-dpo-pairs](https://huggingface.co/datasets/argilla/distilabel-intel-orca-dpo-pairs) in ChatML format, ready to use in [HuggingFace TRL's DPO Trainer](https://huggingface.co/docs/trl/main/en/dpo_trainer).
Python code used for conversion:
```python
from datasets import load_dataset
dataset = load_dataset("argilla/distilabel-intel-orca-dpo-pairs", split="train")
def format(columns):
prompt = f"<|im_start|>user\n{columns['input']}<|im_end|>\n<|im_start|>assistant\n"
if (columns['system']):
prompt = f"<|im_start|>system\n{columns['system']}<|im_end|>\n{prompt}"
return {
"prompt": prompt,
"chosen": f"{columns['chosen']}<|im_end|>",
"rejected": f"{columns['rejected']}<|im_end|>",
}
dataset.map(format).select_columns(['prompt', 'chosen', 'rejected', 'status', 'chosen_score', 'in_gsm8k_train']).to_parquet("train.parquet")
```
许可证:Apache-2.0
语言:
- 英语
样本规模范围:
- 10000 < 样本量 < 100000
本数据集为ChatML格式的[argilla/distilabel-intel-orca-dpo-pairs](https://huggingface.co/datasets/argilla/distilabel-intel-orca-dpo-pairs),可直接用于[HuggingFace TRL的DPO训练器](https://huggingface.co/docs/trl/main/en/dpo_trainer)。
以下为格式转换所用的Python代码:
python
from datasets import load_dataset
dataset = load_dataset("argilla/distilabel-intel-orca-dpo-pairs", split="train")
def format(columns):
prompt = f"<|im_start|>user
{columns['input']}<|im_end|>
<|im_start|>assistant
"
if (columns['system']):
prompt = f"<|im_start|>system
{columns['system']}<|im_end|>
{prompt}"
return {
"prompt": prompt,
"chosen": f"{columns['chosen']}<|im_end|",
"rejected": f"{columns['rejected']}<|im_end|",
}
dataset.map(format).select_columns(["prompt", "chosen", "rejected", "status", "chosen_score", "in_gsm8k_train"]).to_parquet("train.parquet")
提供机构:
Felladrin原始信息汇总
数据集概述
基本信息
- 许可证: Apache-2.0
- 语言: 英语
- 数据量: 10K<n<100K
数据格式
- 数据集以ChatML格式提供,适用于HuggingFace TRLs DPO Trainer。
数据处理
-
数据集包含以下字段:
inputsystemchosenrejected
-
数据处理代码示例: python from datasets import load_dataset
dataset = load_dataset("argilla/distilabel-intel-orca-dpo-pairs", split="train")
def format(columns): prompt = f"<|im_start|>user {columns[input]}<|im_end|> <|im_start|>assistant "
if (columns[system]): prompt = f"<|im_start|>system
{columns[system]}<|im_end|> {prompt}"
return {
"prompt": prompt,
"chosen": f"{columns[chosen]}<|im_end|>",
"rejected": f"{columns[rejected]}<|im_end|>",
}
dataset.map(format).select_columns([prompt, chosen, rejected, status, chosen_score, in_gsm8k_train]).to_parquet("train.parquet")
搜集汇总
数据集介绍

构建方式
该数据集源自argilla团队发布的distilabel-intel-orca-dpo-pairs原始数据,通过Python脚本将其转换为ChatML格式,以便直接用于HuggingFace TRL的DPO训练器。转换过程中,系统提示、用户输入和助手回答被整合为结构化的对话模板,其中用户消息以<|im_start|>user标记开头,助手回答以<|im_start|>assistant标记引导,同时保留原始数据中的chosen、rejected、status、chosen_score及in_gsm8k_train等关键字段,最终以Parquet格式存储。
特点
该数据集的核心特色在于其ChatML格式的标准化设计,使得对话结构清晰且易于解析。数据规模介于10K至100K条之间,涵盖英文语料,适用于偏好对齐任务。每个样本包含明确的prompt、chosen与rejected回答,配合chosen_score和in_gsm8k_train标签,便于研究者评估模型偏好与训练效果。此外,数据集的Apache-2.0许可证确保了开放使用的灵活性。
使用方法
使用该数据集时,可直接通过HuggingFace的datasets库加载Parquet文件,或利用TRL的DPO训练器进行模型微调。加载后,prompt字段作为输入,chosen和rejected字段分别代表偏好与非偏好回答,用于计算DPO损失。建议结合TRL的DPOTrainer类,设置相应参数以适配ChatML格式,并利用status和chosen_score字段进行数据过滤或质量分析。
背景与挑战
背景概述
在大规模语言模型对齐优化的研究浪潮中,直接偏好优化(DPO)作为一种无需显式奖励模型的微调范式,正逐步取代传统的强化学习从人类反馈(RLHF)方法。Felladrin/ChatML-distilabel-intel-orca-dpo-pairs数据集正是在这一背景下应运而生,由社区研究者基于Argilla团队发布的distilabel-intel-orca-dpo-pairs原始数据,通过ChatML格式转换而成。该数据集聚焦于提升模型对指令遵循与偏好对齐的能力,其核心研究问题在于如何高效利用合成偏好对数据,在保持模型生成质量的同时实现更简洁的训练流程。作为连接原始数据与HuggingFace TRL训练框架的桥梁,该数据集为DPO训练提供了即用型格式,降低了偏好对齐实验的门槛,对推动开源社区中语言模型安全性与可控性研究具有显著影响力。
当前挑战
该数据集所解决的领域挑战在于:传统偏好对齐方法(如RLHF)依赖复杂的奖励模型训练与策略优化,计算成本高昂且易出现奖励黑客行为,而DPO虽简化了流程,却对偏好数据的质量与格式一致性要求极高。在构建过程中,主要挑战包括:原始数据中系统提示词、用户输入与助手回复的混合格式需要统一转换为ChatML结构,以确保与TRL的DPO Trainer兼容;同时需筛选并保留带有状态标记、评分及GSM8K训练集归属的元数据,在转换过程中避免信息丢失;此外,面对约10万量级的数据规模,需保证批处理映射的效率与内存管理,避免因格式转换而引入噪声或破坏原始偏好对的语义完整性。
常用场景
经典使用场景
Felladrin/ChatML-distilabel-intel-orca-dpo-pairs 数据集为偏好对齐领域的研究提供了标准化训练样本,其经典使用场景聚焦于采用 ChatML 格式配合 HuggingFace TRL 的 DPO Trainer 进行直接偏好优化。研究者可将此数据集直接用于微调大型语言模型,通过对比“chosen”与“rejected”响应,使模型学会区分高质量与低质量输出,从而提升生成内容的安全性与有用性。该格式简化了数据预处理流程,使得从原始指令数据到偏好对齐训练的过渡更加流畅高效。
实际应用
在实际应用中,该数据集主要用于提升商业化语言模型的响应质量与伦理合规性。开发者可以基于这些偏好对训练客服聊天机器人、教育辅导助手或内容生成工具,使其更倾向于输出符合用户期望且避免有害信息的答案。由于 ChatML 格式天然支持系统提示,该数据集尤其适合构建具有角色设定或行为约束的对话系统,例如在医疗咨询或法律辅助场景中,通过偏好学习确保模型遵循专业准则。
衍生相关工作
该数据集衍生了一系列关于偏好优化与数据增强的经典工作。研究者基于其 ChatML 格式探索了多轮对话中的偏好对齐策略,并对比了 DPO 与 PPO 在不同数据规模下的表现差异。此外,该格式启发了针对系统提示敏感性的研究,即如何通过调整系统消息来影响偏好学习的效果。部分工作还利用此数据集作为基准,验证了合成数据在偏好对生成中的可靠性,从而推动了低成本模型对齐技术的发展。
以上内容由遇见数据集搜集并总结生成



