🚀 t5-qa_squad2neg-en
这是一个基于T5-small的问答模型,是QuestEval评估指标的一部分,也可独立用于问答任务,为问答场景提供支持。
🚀 快速开始
安装依赖
使用此模型前,你需要安装transformers
库。可以使用以下命令进行安装:
pip install transformers
代码示例
from transformers import T5Tokenizer, T5ForConditionalGeneration
tokenizer = T5Tokenizer.from_pretrained("ThomasNLG/t5-qa_squad2neg-en")
model = T5ForConditionalGeneration.from_pretrained("ThomasNLG/t5-qa_squad2neg-en")
你可以通过推理API来使用该模型,文本输入格式应遵循以下模板(与模型训练阶段一致):
text_input = "{QUESTION} </s> {CONTEXT}"
✨ 主要特性
- 基于T5-small架构,具备良好的问答能力。
- 作为QuestEval指标的组件,也可独立使用。
📦 安装指南
使用pip
安装所需的transformers
库:
pip install transformers
💻 使用示例
基础用法
from transformers import T5Tokenizer, T5ForConditionalGeneration
tokenizer = T5Tokenizer.from_pretrained("ThomasNLG/t5-qa_squad2neg-en")
model = T5ForConditionalGeneration.from_pretrained("ThomasNLG/t5-qa_squad2neg-en")
text_input = "Who was Louis 14? </s> Louis 14 was a French King."
input_ids = tokenizer(text_input, return_tensors="pt").input_ids
outputs = model.generate(input_ids)
answer = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(answer)
高级用法
如果你需要处理多个问题和上下文,可以将上述代码封装成函数,批量处理输入:
from transformers import T5Tokenizer, T5ForConditionalGeneration
tokenizer = T5Tokenizer.from_pretrained("ThomasNLG/t5-qa_squad2neg-en")
model = T5ForConditionalGeneration.from_pretrained("ThomasNLG/t5-qa_squad2neg-en")
def answer_questions(questions, contexts):
answers = []
for question, context in zip(questions, contexts):
text_input = f"{question} </s> {context}"
input_ids = tokenizer(text_input, return_tensors="pt").input_ids
outputs = model.generate(input_ids)
answer = tokenizer.decode(outputs[0], skip_special_tokens=True)
answers.append(answer)
return answers
questions = ["Who was Louis 14?", "What is the capital of France?"]
contexts = ["Louis 14 was a French King.", "Paris is the capital of France."]
results = answer_questions(questions, contexts)
print(results)
📚 详细文档
训练数据
该模型在以下数据集上进行训练:
- SQuAD-v2
- SQuAD-v2 neg:除了SQuAD-v2的训练数据外,对于每个可回答的示例,还添加了一个标记为不可回答的负采样示例,以帮助模型学习在给定上下文中问题不可回答的情况。更多详细信息,请参阅论文。
引用信息
@article{scialom2020QuestEval,
title={QuestEval: Summarization Asks for Fact-based Evaluation},
author={Scialom, Thomas and Dray, Paul-Alexis and Gallinari, Patrick and Lamprier, Sylvain and Piwowarski, Benjamin and Staiano, Jacopo and Wang, Alex},
journal={arXiv preprint arXiv:2103.12693},
year={2021}
}
📄 许可证
本模型使用MIT许可证。