数据集:
OpenAssistant/oasst1
为了推动大规模对齐研究的民主化,我们发布了OpenAssistant Conversations(OASST1)数据集,这是一个人工生成、人工注释的助手式对话语料库,包含161,443个消息,涵盖35种不同的语言,标注了461,292个质量评分,共有超过10,000个完全标注的对话树。该语料库是通过13,500多名志愿者的全球众包努力而产生的。
请参阅我们的 paper 获取更多详细信息。
该数据集包含消息树。每个消息树都有一个初始提示消息作为根节点,可以有多个回复消息作为子节点,这些子节点又可以有多个回复。
所有消息都有一个角色属性:助手(assistant)或提示者(prompter)。从提示到叶节点的对话线程中,角色严格地在“提示者”和“助手”之间轮换。
该版本的数据集包含了截至2023年4月12日在 open-assistant.io 网站上收集的数据。
为了方便阅读,以下JSON示例展示了多行缩进的格式。实际jsonl文件中的对象以无缩进(单行)的形式存储。
为了方便阅读,这里只显示了消息属性的子集。
有关数据结构和使用Python代码读写包含oasst数据对象的jsonl文件的详细信息,请参阅 oasst-data 。
如果您想自己探索数据集,可以在 LAION-AI/Open-Assistant github存储库的notebooks/openassistant-oasst1文件夹中找到一个 getting-started notebook。
对话数据可以以树形式的嵌套消息(扩展名为.trees.jsonl.gz)或作为消息的扁平列表(表)(扩展名为.messages.jsonl.gz)进行提供。
准备好导出、没有垃圾和删除消息的树,包括消息标签。oasst_ready-trees文件通常足够用于监督微调(SFT)和奖励模型(RM)的训练。
所有的树,包括那些处于提示抽奖等待状态(只有一个消息,即初始提示)的树,以及被评审员停止的树。
这些是被删除或具有负面评审结果("review_result": false)的消息。除了质量低下,消息删除的常见原因是错误的语言标签。
这些是准备导出或提示抽奖状态的树中保留的所有初始提示消息,没有垃圾邮件,评审结果为正面。
虽然HF数据集非常适合表格数据集,但不适合OpenAssistant对话树这样的嵌套数据结构。尽管如此,我们将所有的消息都存储为Parquet文件,可以在训练/验证分割中直接加载。这些文件可以直接通过 Huggingface Datasets 加载。
要加载oasst1的训练和验证分割,请使用以上提到的代码。
消息按照消息树的深度优先顺序显示。
可以通过使用parent_id和message_id属性来识别消息之间的父子关系,从而从扁平消息表中重构完整的对话树。消息树的message_tree_id和tree_state属性(只存在于扁平消息文件中)可用于查找所有消息的对话树或根据其状态选择树。
OpenAssistant Conversations涵盖了35种不同的语言,消息分布如下:
超过1000条消息的语言