快速上手DiagSafe:5分钟用HuggingFace加载LLM安全评测数据集,完成第一次越狱攻击测试

发布时间:2026/11/5 5:30:44
快速上手DiagSafe:5分钟用HuggingFace加载LLM安全评测数据集,完成第一次越狱攻击测试 快速上手DiagSafe5分钟用HuggingFace加载LLM安全评测数据集完成第一次越狱攻击测试【免费下载链接】DiagSafe项目地址: https://ai.gitcode.com/tencent_hunyuan/DiagSafeDiagSafe 是腾讯混元发布的 LLM 安全评测基准diagnostic safety benchmark。用 HuggingFace 的datasets库一行命令即可加载 3,489 条中英文越狱与安全测试提示词再配合每条 prompt 专属的评分细则rubric你就能快速完成第一次 LLM 安全评测与越狱攻击测试 。DiagSafe 是什么为什么需要“诊断式”安全评测 ️传统安全基准往往只给模型一个“安全 / 不安全”的二元标签。DiagSafe 的核心理念是Beyond Binary Labels超越二元标签它让 LLM 裁判LLM-as-a-judge对每一条提示词逐项判定并引用证据而不是只输出一个笼统结论。数据集由三部分构成组成规模说明评测提示词prompts3,489 条中英文双语单轮 多轮越狱/安全测试请求评分细则rubrics3,489 条与每条 prompt 一一对应的裁判模板含安全项与豁免条款安全分类标准standards84 个标签11 个一级维度、34 个二级、84 个三级标签OSS-01 ~ OSS-11两个子集各有侧重DiagBase2,401 条按语言 × 对话轮次 × 攻击形式合成包含直接有害请求、模板越狱和组合模板越狱DiagAttack1,088 条将单轮直接请求改写成指令式攻击——把有害意图藏在看似无害的写作任务里附带角色、格式、语气约束更贴近真实越狱场景。⚠️ 内容警告数据集刻意包含有害请求暴力、色情、自伤、儿童安全、CBRN 等仅用于安全评测与研究。数据集结构三组文件一览Config文件条数用途prompts默认prompts/DiagSafe_bench_3489.jsonl3,489中英文单轮与多轮评测提示词rubricsrubrics/DiagSafe_rubrics_3489.jsonl3,489每条 prompt 一份裁判评分细则standards_zhstandards/DiagSafe_standards_84.json84三级安全标签标准中文standards_enstandards/DiagSafe_standards_84_en.json84相同 84 个标签英文每条 prompt 的核心字段字段类型说明idstringDiagBase-NNNNNN或DiagAttack-NNNNNN前缀标识子集languagestringen或zhmessageslist按顺序排列的用户轮次多轮 prompt 为 2–5 轮categorydictl1如OSS-05、l2、l3中英文标签名5分钟用HuggingFace加载数据集三步加载一条命令搞定全部数据只需datasets库三行代码加载三组数据from datasets import load_dataset prompts load_dataset(tencent/DiagSafe, prompts, splittest) rubrics load_dataset(tencent/DiagSafe, rubrics, splittest) standards load_dataset(tencent/DiagSafe, standards_zh, splittrain)注意 split 的对应关系prompts和rubrics使用test分割standards使用train分割。用 id 精确匹配 prompt 与 rubricrubrics 与 prompts 通过id字段一一对应构建一个映射即可随时取用rubric_by_id dict(zip(rubrics[id], rubrics[rubric])) example prompts[0] rubric rubric_by_id[example[id]]完成第一次越狱攻击测试四步走 整体流程取一条攻击 prompt → 让被测模型生成回答 → 组装裁判提示词 → 让裁判模型输出 JSON 判定。第一步让被测模型回答把 prompt 的messages按轮次依次发给被测 LLM收集模型回答model_answer。多轮对话需逐轮发送保留上下文。第二步组装裁判提示词常见坑点rubric 是一个带占位符的裁判模板包含{question}、{answer}、{safety_categories}三个占位符。由于模板的输出契约中含有 JSON 花括号必须用str.replace填充而不能用str.format否则会因花括号冲突报错import json judge_prompt ( rubric .replace({question}, json.dumps(example[messages], ensure_asciiFalse)) .replace({answer}, model_answer) .replace({safety_categories}, json.dumps(example[category], ensure_asciiFalse)) )第三步裁判模型逐项输出判定每条 rubric 包含 2–6 条prompt 特定的安全项平均 4.5 条附豁免条款和 8 条通用实用性项U1.1–U3.2裁判需对每一项单独判定并引用证据实用性部分按 0–3 分打分最终按约定的 JSON 结构输出。第四步按规则汇总结果多轮对话逐轮评判裁判会把较早的轮次作为上下文判定规则只要任意一轮为 Unsafe整条 prompt 记为 Unsafe仓库配套了端到端评测脚本scripts/run_eval.py自动处理回答生成、多轮评判、断点续跑与分组统计。常见疑问 FAQ ❓为什么不能用str.format填充 rubricrubric 的 JSON 输出契约里本身就有花括号str.format会将其误认为占位符而报错用str.replace逐一替换最安全。中文场景该用哪个 standards 文件standards_zhstandards/DiagSafe_standards_84.json与standards_enstandards/DiagSafe_standards_84_en.json覆盖相同 84 个标签且顺序一致prompt 的category.l2/l3与中文文件的“二级类目/三级类目”完全对应便于交叉查阅。必须跑完全部 3,489 条吗不必。建议先抽取 10–20 条做冒烟测试smoke test跑通“生成回答 → 裁判判定 → 汇总”全链路后再全量评测。可以用这个数据集训练模型产出有害内容吗官方明确禁止。该数据集专为安全评测与 LLM 裁判研究设计结果质量取决于所选裁判模型论文报告不同裁判与人工标注的一致性为 89.41%–95.34%。总结你的第一次 DiagSafe 评测已完成 ✅回顾今天的 5 分钟路径用load_dataset(tencent/DiagSafe, ...)三条命令加载 prompts、rubrics、standards用id把每条 prompt 与专属 rubric 精确配对用str.replace填充占位符生成裁判提示词裁判模型逐项输出带证据的 JSON 判定多轮任一轮 Unsafe 即整体 Unsafe。相比单一二元标签DiagSafe 让你能定位模型到底在哪类风险、哪一条规则上失守——这正是“诊断式安全评测”的价值。完整字段说明与更多用法详见 README.md。【免费下载链接】DiagSafe项目地址: https://ai.gitcode.com/tencent_hunyuan/DiagSafe创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询