quadrat-ipi
收藏资源简介:
Quadrat-IPI是一个专门用于评估间接提示注入(indirect prompt injection)检测器的数据集。间接提示注入是指攻击者将恶意指令嵌入到模型需要阅读的文档中,而非用户直接输入。该数据集旨在解决传统评估指标(如平均召回率)掩盖检测器在特定场景下薄弱环节的问题,通过将检测器性能分解到92个单元格中,揭示每个单元格的盲区。 数据集包含16,800个独特的注入文档和63,000个干净文档,所有注入文本均为人工编写,而非从公开集合中收集,以确保检测器未见过这些样本。数据来源为六个真实语料库,涵盖邮件(email)、网页(web)和文档(doc)三种载体。注入按10种杠杆(如何使注入被服从)和10种目标(注入要求什么)两轴组合,形成92个实际填充的单元格。每个单元格在允许的载体上各包含80个示例,因此总样本量在不同载体间有所差异:59个单元格有240个示例(三种载体均支持),33个单元格有80个示例(仅支持一种载体)。 数据集提供详细的字段信息,包括文本、标签(injected/clean)、载体类型、来源、注入内容、杠杆类型、目标、合成方式、混淆处理等。数据以Parquet和JSONL格式存储,分别对应injected和clean两个split,且标签由文件决定,而非字段。 主要用途是评估间接提示注入检测器的性能,特别是测量每个单元格的召回率,并支持在0.1%和1%假阳性率下比较不同检测器。数据集已内置9个检测器的评分结果,并提供了完整的测量协议和报告。用户也可以使用配套的评估工具(quadrat-ipi-eval)测量自己的检测器,并重新加权到自己的流量分布中。 注意:该数据集是评估集,而非训练集,没有训练/测试划分,不应用于训练分类器,否则会因混合比例导致误导性结果。
Quadrat-IPI is a dataset specifically designed for evaluating indirect prompt injection detectors.
Quadrat-IPI 数据集概述
基本属性
- 许可协议:ODC-BY
- 语言:英语
- 数据规模:10K-100K 条记录
- 任务类型:文本分类
- 标签:提示注入、间接提示注入、LLM 安全、评估
- 当前版本:v1.0.2
数据集构成
数据集包含两个文件:
injected分片(data/positives.parquet):包含 16,800 条唯一注入样本clean分片(data/negatives.parquet):包含 63,000 条干净文档
重要说明:两个分片是总体而非训练/测试划分,分别用于衡量召回率和误报率,二者之间不存在留出关系。数据集中没有标签列——标签由文件本身决定,因此不存在训练划分。
设计目的
该数据集专为评估间接提示注入检测器而构建,适用于模型被要求阅读文档时出现的注入攻击类型。核心设计理念是以“单元格”为测量单位:
- 分层策略:在 10 个杠杆(lever)× 10 个目标(objective)两个轴向上进行分层,构成 92 个填充单元格
- 注入类型:92 个填充单元格,每个可承载载体(carrier)包含 80 个示例
- 载体类型:电子邮件、网页、文档(来自六个真实语料库)
- 唯一性:16,800 条注入均为原创撰写,无复用载荷,且不包含于任何公开集合中
评估协议
- 单一阈值应用于整个干净文档池,不按载体分别设置
- 报告两个误报率预算点:0.1% 和 1%
- 63,000 条干净文档在 0.1% 误报率下产生约 63 个误报(实际范围 0.078–0.128%),在 1% 下约 630 个(实际范围 0.925–1.081%)
- 召回率按单元格报告,附带 95% Wilson 置信区间
已测检测器性能
| 检测器 | 召回率 @0.1% | 单元格数 @0.1% | 召回率 @1% | 单元格数 @1% |
|---|---|---|---|---|
| Bastion Prompt Protection | 30.2% | 10% | 50.6% | 55% |
| Meta Prompt Guard 2 (86M) | 20.8% | 7% | 31.4% | 16% |
| PIGuard (ACL 2025) | 17.4% | 2% | 56.9% | 63% |
| Proventra mDeBERTa v3 base | 15.0% | 0% | 42.3% | 37% |
| AI Cordon Picket(二元)† | 12.5% | 8% | — | — |
| Wolf Defender (ModernBERT 0.3B) | 10.4% | 0% | 27.0% | 3% |
| Regex 基线(平凡基准) | 6.5% | 2% | — | — |
| ProtectAI DeBERTa v3 base v2 | 3.5% | 0% | 14.8% | 1% |
| deepset DeBERTa v3 base | 1.4% | 0% | 7.3% | 0% |
关键发现:
- 排名在两个预算点不一致——PIGuard 在 0.1% 误报率下排名第三,在 1% 下排名第一
- 最佳检测器在 0.1% 误报率下仅覆盖网格的 10%,在 1% 下最佳两个覆盖超过一半
- 有两个检测器得分低于正则基线
- 没有单一系统能覆盖整个网格——不同检测器在不同单元格各有盲区
行字段说明
双文件结构:每个文件同时提供 Parquet 和 JSONL 两种格式,JSONL 为规范副本,Parquet 由 JSONL 生成并校验。
双文件共有字段:id、text、label、split(全部为 test)、host_type、host_source、host_id、host_lang、attribution、license、license_note、text_origin、pii
注入专用字段:injection、injection_raw、inj_span、inj_lang、family(杠杆)、action(目标)、subject、locality、inj_intended、inj_judged、inj_verified、spliced_at、obfuscation、typography_folded、style、gen_model、gen_model_inferred、scrubbed
版本与可追溯性
- 每个发布版本保留在独立标签下,当前版本为
v1.0.2,构建指纹为3ee970d160449aae MANIFEST.json记录每个文件的 SHA256 哈希- 每个
results/中的结果记录语料库的内容哈希 - 修正不会编辑现有版本,而是开启下一个版本
使用方式
python from datasets import load_dataset
ds = load_dataset("mihailgribov/quadrat-ipi", revision="v1.0.2") ds["injected"][0] # 包含注入的文档 ds["clean"][0] # 不含注入的文档
另有评估工具包 quadrat-ipi-eval 可用于测量自定义检测器,提供配置文件、边际统计、按载体的误报率和渲染报告输出。




