CompanionHarm
收藏资源简介:
一个基于多维有害AI行为分类标注的真实世界、多轮AI伴侣交互的基准数据集。包含2,111个人类-AI对话,其中有7,016个标注的AI话语和7,035个未标注的人类话语。
A benchmark dataset of real-world, multi-turn AI companion interactions annotated with multi-dimensional harmful AI behavior classification labels. It contains 2,111 human-AI conversations, including 7,016 annotated AI utterances and 7,035 unannotated human utterances.
CompanionHarm 数据集概述
核心定位
CompanionHarm 是一个用于检测真实世界 AI 伴侣对话中危害的多轮基准数据集,支持 14 类危害分类任务。该数据集仅包含 AI/Replika 撰写的对话话语(utterance),并已按对话 ID 进行分组,确保同一对话不会出现在多个数据划分中。
数据规模
| 数据划分 | 话语数量 | 对话数量 |
|---|---|---|
| 训练集(Train) | 4,222 | 1,268 |
| 开发集(Development) | 1,403 | 423 |
| 测试集(Test) | 1,391 | 420 |
| 总计 | 7,016 | 2,111 |
任务设计
- 标签体系:每个当前 AI 伴侣话语被赋予 14 个标签之一,涵盖性内容、自残、虐待、暴力、药物使用和歧视性语言等危害类别。
- 上下文机制:对话上下文作为标注证据提供,但分类目标始终是当前 AI/Replika 生成的话语。
- 划分原则:按
conversation_id分组,确保无对话跨划分泄漏。
评测体系
- 覆盖模型与提示条件:8 个模型 × 3 种提示模板(
zero_shot、one_shot、full_codebook),共 24 种报告条件。 - 主要指标:准确率(accuracy)、宏平均精确率/召回率/F1、加权指标以及 Cohens kappa。宏平均包含全部 14 个标签,即使某标签零预测实例也计入。
- 一致性分析:比较人类标注完全一致(3-0)与多数一致(2-1)的样本,置信区间基于对话而非单条话语重采样;少数派对齐的预测在多数投票金标准下仍计为错误,并单独分析以揭示标注歧义。
文件结构
data/splits/:训练、开发、测试划分数据(共 7,016 条话语)。prompts/:零样本、单样本和完整代码簿提示模板。scripts/:基准运行器、评分器、统计分析与验证脚本,以及可选的 Qwen3-8B QLoRA 微调配方。results/predictions/:隐私最小化的 8 模型 × 3 提示预测结果。results/reference/:基于已发布预测生成的预期输出表格。
快速使用
- 支持 Python 3.12,可通过虚拟环境安装依赖后运行完整性验证和单元测试。
- 快捷分析使用 100 次 bootstrap/置换复制作为冒烟测试;完整复现需运行
scripts/reproduce_all.py,主要指标数秒内完成,全量 2,000 次聚类 bootstrap 和 5,000 次置换检验需数分钟,且不调用外部服务。 - 推理预览可通过
--dry-run参数离线进行;如需真实 API 复现,环境变量仅存储凭据,不写入配置文件。由于模型托管方可变,精确表格复现应以存档预测为准。
微调配方(可选)
提供 Qwen3-8B QLoRA 的代码级配方,可通过 --dry-run 在无 GPU 环境下验证数据与提示格式。该配方仅基于发布的 AI/Replika 划分,不保证复现论文中的精确检查点或辅助角色行为目标。
提示模板说明
prompts/ 下的模板中,输入部分标记为 [context] 和 [sentence];运行时将 <context> 替换为行的 context 字段,<current_utterance> 替换为 current_line 字段。尖括号标记仅为模板变量,并非发送给模型的字面文本。
内容警告
数据与示例提示包含性内容、自残、虐待、暴力、药物使用和歧视性语言,使用需谨慎。
注:该数据集为匿名评审准备,不含作者信息、参与者标识、原始标注及 API 凭据。




