🍄 UHGEval:通过无约束生成评估中文大语言模型的幻觉基准
这个仓库包含什么?
UHGEval:一个无约束幻觉评估基准。
评估套件:一个用户友好的幻觉任务评估框架。
评估套件支持其他相关基准,如HalluQA和HaluEval。
快速开始
# 克隆仓库
git clone https://github.com/IAAR-Shanghai/UHGEval.git
cd UHGEval
# 安装依赖
conda create -n uhg python=3.10
conda activate uhg
pip install -r requirements.txt
# 使用OpenAI兼容API运行评估
python -m eval.cli eval openai \
--model_name gpt-4o \
--api_key 你的api密钥 \
--base_url https://api.openai.com/v1 \
--evaluators ExampleQAEvaluator UHGSelectiveEvaluator
# 或者使用Hugging Face Transformers运行评估
python -m eval.cli eval huggingface \
--model_name_or_path Qwen/Qwen2-0.5B-Instruct \
--apply_chat_template \
--evaluators ExampleQAEvaluator UHGSelectiveEvaluator
# 评估后,你可以收集评估结果的统计数据
python -m eval.cli stat
# 列出所有可用的评估器
python -m eval.cli list
# 获取帮助
python -m eval.cli --help
[!提示]
- 参考
demo.ipynb
获取更详细的示例。- 如果你无法连接到Hugging Face,可以运行
export HF_ENDPOINT=https://hf-mirror.com
来使用中国镜像。- SilliconFlow为许多模型提供免费的API密钥,你可以在https://siliconflow.cn/pricing申请一个。
UHGEval
UHGEval是一个大规模基准,旨在评估专业中文内容生成中的幻觉现象。它基于无约束文本生成和幻觉收集,结合了自动标注和人工审核。
UHGEvalDataset。 UHGEval包含两个数据集版本。完整版包含5,141条数据项,而为了更高效的评估,还创建了一个包含1,000条数据项的简洁版。以下是UHGEvalDataset中的一个示例。
<详情><摘要>示例</摘要>
{
"id": "num_000432",
"headLine": "(社会)江苏首次评选消费者最喜爱的百种绿色食品",
"broadcastDate": "2015-02-11 19:46:49",
"type": "num",
"newsBeginning": "新华社南京2月11日电(记者李响)"民以食为天,食以安为先"。江苏11日发布"首届消费者最喜爱的绿色食品"评选结果,老山蜂蜜等100种食品获得消费者"最喜爱的绿色食品"称号。",
"hallucinatedContinuation": "江苏是全国绿色食品生产最发达的省份之一。",
"generatedBy": "InternLM_20B_Chat",
"annotations": [
"江苏<sep>合理",
"全国<sep>合理",
"绿色食品生产<sep>合理",
"发达<sep>不合理,没有事实证明江苏是全国绿色食品生产发达的省份,但可以确定的是,江苏在绿色食品生产上有积极的实践和推动",
"省份<sep>合理",
"之一<sep>不合理,没有具体的事实证据表明江苏是全国绿色食品生产发达的省份之一"
],
"realContinuation": "61家获奖生产企业共同签署诚信公约,共建绿色食品诚信联盟。",
"newsRemainder": "61家获奖生产企业共同签署诚信公约,共建绿色食品诚信联盟。这是江苏保障食品安全、推动绿色食品生产的重要举措。\n 此次评选由江苏省绿色食品协会等部门主办,并得到江苏省农委、省委农工办、省工商局、省地税局、省信用办、省消协等单位大力支持。评选历时4个多月,经企业报名、组委会初筛、消费者投票等层层选拔,最终出炉的百强食品榜单由消费者亲自票选得出,网络、短信、报纸及现场投票共310多万份票数,充分说明了评选结果的含金量。\n 食品安全一直是社会关注的热点。此次评选过程中,组委会工作人员走街头、进超市,邀请媒体、消费者、专家深入产地开展绿色食品基地行,除了超市选购外,还搭建"诚信购微信商城""中国移动MO生活绿色有机馆"等线上销售平台,开创江苏绿色食品"评展销"结合新局面。评选不仅宣传了江苏绿色品牌食品,更推动了省内绿色食品市场诚信体系的建立,为江苏绿色食品走向全国搭建了权威的平台。\n 江苏省农委副主任李俊超表示,绿色食品消费是当前社会重要的消费趋势。本次评选不仅为社会培育了食品安全诚信文化,也提高了消费者对食品质量和标识的甄别能力,实现了消费者和生产企业的"双赢"。\n 与会企业表示,能够入选"首届江苏消费者最喜爱的绿色食品"是消费者的信任和支持,他们将以此荣誉作为企业发展的新起点,严把食品质量关,推介放心安全的绿色品牌食品,促进产业稳定健康发展。(完)"
}
评估方法。 UHGEval提供多种评估方法,包括判别性评估、生成性评估和选择性评估。
评估器 | 指标 | 描述 |
---|---|---|
UHGDiscKeywordEvaluator | 平均准确率 | 给定关键词,大语言模型判断其是否包含幻觉。 |
UHGDiscSentenceEvaluator | 平均准确率 | 给定句子,大语言模型判断其是否包含幻觉。 |
UHGGenerativeEvaluator | BLEU-4, ROUGE-L, kwPrec, BertScore | 给定续写提示,大语言模型生成续写内容。 |
UHGSelectiveEvaluator | 准确率 | 给定幻觉文本和非幻觉文本,大语言模型选择真实的文本。 |
评估套件
为了便于评估,我们开发了一个用户友好的评估框架,称为Eval Suite。目前,Eval Suite支持常见的幻觉评估基准,允许通过一个命令对同一个大语言模型进行全面评估,如快速开始部分所示。
基准测试 | 评估器 | 更多信息 |
---|---|---|
ExampleQA | ExampleQAEvaluator | [eval/benchs/exampleqa](https://github.com/IAAR-Shanghai/UHGEval/blob/main/eval/benchs/exampleqa |
HalluQA | HalluQAMCEvaluator | [eval/benchs/halluqa](https://github.com/IAAR-Shanghai/UHGEval/blob/main/eval/benchs/halluqa |
HaluEval | HaluEvalDialogEvaluator HaluEvalQAEvaluator HaluEvalSummaEvaluator | [eval/benchs/halueval](https://github.com/IAAR-Shanghai/UHGEval/blob/main/eval/benchs/halueval |
UHGEval | UHGDiscKeywordEvaluator UHGDiscSentenceEvaluator UHGGenerativeEvaluator UHGSelectiveEvaluator | [eval/benchs/uhgeval](https://github.com/IAAR-Shanghai/UHGEval/blob/main/eval/benchs/uhgeval |
了解更多
- [评估套件架构](https://github.com/IAAR-Shanghai/UHGEval/blob/main/docs/architecture.md
- [添加新的基准测试或模型加载器](https://github.com/IAAR-Shanghai/UHGEval/blob/main/docs/add-bench-or-model.md
- [一些实验结果](https://github.com/IAAR-Shanghai/UHGEval/blob/main/docs/experiments.md
引用
@article{liang2023uhgeval,
title={Uhgeval: 通过无约束生成对中文大语言模型的幻觉进行基准测试},
author={Liang, Xun and Song, Shichao and Niu, Simin and Li, Zhiyu and Xiong, Feiyu and Tang, Bo and Wy, Zhaohui and He, Dawei and Cheng, Peng and Wang, Zhonghao and others},
journal={arXiv preprint arXiv:2311.15296},
year={2023}
}
待办事项
点击展开所有待办事项
- 修复:测试简洁数据集中的偏差
- 文档:完成文档中所有待办事项
- 功能:vLLM离线推理基准测试
- 构建:打包
- 功能(基准测试):添加TruthfulQA基准测试
- 文档:更新引用DOI