数据集:

Anthropic/hh-rlhf

预印本库:

arxiv:2204.05862

许可:

mit
英文

HH-RLHF 数据集卡片

数据集摘要

此存储库提供了两种不同类型的数据:

  • Training a Helpful and Harmless Assistant with Reinforcement Learning from Human Feedback 中关于有益和无害性的人类偏好数据。这些数据用于训练后续RLHF训练的偏好(或奖励)模型。这些数据不适用于对话代理的监督训练。在这些数据上训练对话代理可能导致有害的模型行为,应该避免使用。
  • Red Teaming Language Models to Reduce Harms: Methods, Scaling Behaviors, and Lessons Learned 中由人类生成并注释的红队对抗对话。这些数据用于理解众包工作人员如何进行红队对抗模型以及哪种类型的红队攻击成功与否。这些数据不用于微调或偏好建模(使用上述数据进行偏好建模)。这些数据是从上述有害性偏好建模数据中派生出的整个对话的转录本,只有所选择的回应被合并到整体转录中。此外,转录本还使用人工和自动测量方法进行了注释,标记了对话的有害性程度。
  • 免责声明:数据(特别是无害性偏好数据和红队数据)可能包含令人不悦或沮丧的内容。主题包括但不限于歧视性语言以及虐待、暴力、自残、剥削和其他可能令人不悦的主题讨论。请根据个人风险承受能力处理数据。数据仅用于研究目的,尤其是能够使模型更少有害的研究。数据中表达的观点不代表Anthropic或其员工的观点。如上所述,这些数据不适合用于训练对话代理,因为这可能导致有害的模型行为。

    以下对每个数据集进行了进一步描述。

    有关有益和无害性的人类偏好数据(PM 数据)

    这些数据在论文 Training a Helpful and Harmless Assistant with Reinforcement Learning from Human Feedback 中进行了描述。如果您发现数据有用,请引用该论文。数据格式非常简单 - jsonl 文件的每一行都包含一对文本,一个是“已选择的”文本,一个是“已拒绝的”文本。

    对于有益性,数据被分为三个批次的训练/测试集:从我们的基础模型(上下文提炼的52B语言模型)中获取,通过拒绝采样(主要使用最优的16个采样)针对早期的偏好模型获得,并在迭代“在线”过程中进行样本采集。

    对于无害性,数据仅针对我们的基础模型进行收集,但格式相同。

    关于数据收集过程和群众工作者人口的详细信息可以在论文中找到,特别是第2节和附录D中。

    红队对抗数据(非 PM 数据)

    这些数据在论文 Red Teaming Language Models to Reduce Harms: Methods, Scaling Behaviors, and Lessons Learned 中进行了描述。如果您发现数据有用,请引用该论文。从高层次上讲,可以通过检查这些数据来了解成功的红队对抗尝试。

    关于数据和数据收集程序的详细信息可以在论文的附录数据表中找到。

    jsonl 文件的每一行包含一个字典,其中包含以下字段:

    • transcript:人类对手(红队成员)与 AI 助手之间的对话的文本转录
    • min_harmlessness_score_transcript:从偏好模型中获得的 AI 助手无害程度的实值评分(分数越低越有害)
    • num_params:AI 助手语言模型中的参数数目
    • model_type:驱动 AI 助手的模型类型
    • rating:红队成员对其在破坏 AI 助手方面的成功程度的评分(李克特量表,分数越高越成功)
    • task_description:红队成员编写的关于如何进行红队对抗 AI 助手的简短文本描述
    • task_description_harmlessness_score:从偏好模型中获得的任务描述的无害程度的实值评分(分数越低越有害)
    • red_team_member_id:红队成员的任意标识符。一个红队成员可以生成多个红队攻击
    • is_upworker:一个二进制指示器,如果红队成员来自群众平台Upwork,则为true,否则为false。
    • tags:每个转录的最多6个标签列表。标签是对众包工作者进行红队数据事后审核时生成的红队尝试的简短描述。对于四种模型类型中的两个,仅对1000个红队尝试进行了随机样本提供标签。

    用法

    上述每个数据集位于单独的子目录中。要加载单个子集,请使用 load_dataset() 函数的 data_dir 参数,如下所示:

    from datasets import load_dataset
    
    # Load all helpfulness/harmless subsets (share the same schema)
    dataset = load_dataset("Anthropic/hh-rlhf")
    
    # Load one of the harmless subsets
    dataset = load_dataset("Anthropic/hh-rlhf", data_dir="harmless-base")
    
    # Load the red teaming subset
    dataset = load_dataset("Anthropic/hh-rlhf", data_dir="red-team-attempts")
    

    联系方式

    原始作者在GitHub上托管该数据集,地址在此处: https://github.com/anthropics/hh-rlhf 您可以发送询问邮件至:redteam@anthropic.com