🚀 MiniCheck-Flan-T5-Large
MiniCheck-Flan-T5-Large 是一个用于事实核查的模型,它基于 Flan-T5-Large 架构,能够对句子级别的陈述进行判断,确定其是否有文档支持。该模型在新收集的基准测试中表现出色,性能与 GPT-4 相当,但成本仅为其 1/400。
🚀 快速开始
你可以运行以下命令来安装 MiniCheck 包 及其所有必要的依赖项:
pip install "minicheck @ git+https://github.com/Liyan06/MiniCheck.git@main"
✨ 主要特性
- 高效事实核查:能够在句子级别对陈述进行快速准确的事实核查。
- 性能卓越:在新收集的基准测试中,大幅超越现有同规模的专业事实核查器,性能与 GPT-4 相当,但成本更低。
- 多模型变体:除了 MiniCheck-Flan-T5-Large,还有其他三种不同规模的模型变体可供选择。
📦 安装指南
请运行以下命令安装 MiniCheck 包 和所有必要的依赖项:
pip install "minicheck @ git+https://github.com/Liyan06/MiniCheck.git@main"
💻 使用示例
基础用法
from minicheck.minicheck import MiniCheck
import os
os.environ["CUDA_VISIBLE_DEVICES"] = "0"
doc = "A group of students gather in the school library to study for their upcoming final exams."
claim_1 = "The students are preparing for an examination."
claim_2 = "The students are on vacation."
scorer = MiniCheck(model_name='flan-t5-large', cache_dir='./ckpts')
pred_label, raw_prob, _, _ = scorer.score(docs=[doc, doc], claims=[claim_1, claim_2])
print(pred_label)
print(raw_prob)
高级用法
在我们的 LLM-AggreFact 基准测试上进行测试:
import pandas as pd
from datasets import load_dataset
from minicheck.minicheck import MiniCheck
import os
os.environ["CUDA_VISIBLE_DEVICES"] = "0"
df = pd.DataFrame(load_dataset("lytang/LLM-AggreFact")['test'])
docs = df.doc.values
claims = df.claim.values
scorer = MiniCheck(model_name='flan-t5-large', cache_dir='./ckpts')
pred_label, raw_prob, _, _ = scorer.score(docs=docs, claims=claims)
评估基准测试的结果:
from sklearn.metrics import balanced_accuracy_score
df['preds'] = pred_label
result_df = pd.DataFrame(columns=['Dataset', 'BAcc'])
for dataset in df.dataset.unique():
sub_df = df[df.dataset == dataset]
bacc = balanced_accuracy_score(sub_df.label, sub_df.preds) * 100
result_df.loc[len(result_df)] = [dataset, bacc]
result_df.loc[len(result_df)] = ['Average', result_df.BAcc.mean()]
result_df.round(1)
📚 详细文档
模型信息
属性 |
详情 |
模型类型 |
基于 Flan-T5-Large 的事实核查模型 |
训练数据 |
由 21K ANLI 数据和 14K 结构化生成的合成数据组成 |
模型变体
我们还有其他三种 MiniCheck 模型变体:
模型性能
这些模型的性能在我们新收集的基准测试 LLM-AggreFact 上进行评估,该基准测试由 11 个最近的人工标注的事实核查和基于大语言模型生成的数据集组成。MiniCheck-Flan-T5-Large 大幅超越所有现有同规模的专业事实核查器(绝对提升 4 - 10%),性能与 GPT-4 相当,但成本仅为其 1/400。完整结果请参考我们的论文。
注意事项
我们仅在真实陈述上评估了模型的性能,没有对模型生成的陈述进行任何形式的人工干预,例如注入特定的错误类型。那些经过编辑的陈述不能反映大语言模型的实际行为。
🔧 技术细节
该模型基于 Flan-T5-Large 架构,通过在 35K 数据的组合上进行微调得到。具体数据包括 21K ANLI 数据和 14K 结构化生成的合成数据。模型在句子级别进行预测,输入为文档和陈述,输出为二进制标签(1 表示支持,0 表示不支持)。
📄 许可证
本项目采用 MIT 许可证。
📖 引用
如果你使用了该模型,请引用以下论文:
@InProceedings{tang-etal-2024-minicheck,
title = {MiniCheck: Efficient Fact-Checking of LLMs on Grounding Documents},
author = {Liyan Tang and Philippe Laban and Greg Durrett},
booktitle = {Proceedings of the 2024 Conference on Empirical Methods in Natural Language Processing},
year = {2024},
publisher = {Association for Computational Linguistics},
url = {https://arxiv.org/pdf/2404.10774}
}