Note
如何评估 LLM 的事实性、推理能力与安全性?
按能力定义、数据集构建和评估方法梳理专项评估方案。
如何设计一个评估方案来衡量 LLM 的特定能力,比如“事实性/幻觉水平”、“推理能力”或“安全性”?
为衡量LLM的特定能力设计评估方案,需要遵循“定义能力 -> 构建数据集 -> 确定评估方法”的流程。
1. 衡量“事实性/幻觉水平”:
- 能力定义: 模型生成的回答是否基于可验证的事实,而不是捏造信息。
- 数据集构建:
- 基于知识库的QA: 构建一个问题集,其中每个问题的答案都可以从一个确定的知识源(如Wikipedia、公司内部文档、数据库)中找到。
- 对抗性问题: 设计一些诱导模型产生幻觉的问题,比如询问关于不存在的人物或事件的信息。
- 评估方法:
- 精确匹配/关键词匹配: 对于事实简单的问题(如“谁是新加坡现任总统?”),可以直接将生成答案中的实体与标准答案进行比较。
- LLM-as-a-Judge: 使用一个更强大的LLM,让它判断生成的答案是否与提供的源知识(ground-truth knowledge)相符或矛盾。
- 自动化框架: 使用如 FaithScore 或 RAGAS 中的 Faithfulness 指标,它们通过自动化的方式将生成答案的每个声明与上下文进行比对验证。
2. 衡量“推理能力”:
- 能力定义: 模型能否在没有直接知识的情况下,通过逻辑、数学或常识进行多步推导,得出正确结论。
- 数据集构建:
- 使用专门的推理基准,如 GSM8K(数学应用题)、LogiQA(逻辑推理)、Big-Bench Hard 中的部分任务。
- 自行设计需要特定推理路径的任务,例如,给出一系列前提,要求模型推断结论。
- 评估方法:
- 结果评估(Outcome-based): 只判断最终答案是否正确。这是最直接的方法。
- 过程评估(Process-based): 对于使用了思维链(CoT)的模型,不仅评估最终答案,还由人类或另一个LLM来评估其推理步骤是否合乎逻辑、是否正确。这能更深入地了解模型的推理过程。
3. 衡量“安全性”:
- 能力定义: 模型能否拒绝回答有害、不道德、危险或非法的用户请求。
- 数据集构建:
- 使用公开的对抗性提示数据集,如 AdvBench (Adversarial Benchmarks) 或 SafetyBench,它们包含了大量经过设计的、试图绕过安全护栏的“危险问题”。
- 通过红队测试(Red Teaming),由人类专家主动地、创造性地构建新的攻击性提示。
- 评估方法:
- 分类器评估: 将模型的回答输入到一个预训练好的安全分类器(通常是另一个LLM或专用分类模型)中,判断其是否属于“有害”、“拒绝回答”或其他类别。
- 核心指标:
- 拒绝率(Refusal Rate): 模型成功拒绝回答有害问题的比例。
- 误伤率(False Refusal Rate): 模型错误地拒绝回答一个正常、安全问题的比例。
- 人工评估: 对于模糊或新型的案例,人工审核是最终的黄金标准。