AI两步实现 问答 、摘要、翻译、命名实体识别等任务,本文使用hugging face上的flan-t5-base模型
hugging face 下载预训练模型,必须下载的几个文件如下,我这里是基于pytorch,因此model选择的pytorch.bin,如果是tensorflow选另外的模型tf的
二、加载模型实现功能
from transformers import T5Tokenizer, T5ForConditionalGeneration
modelpath = "E:\\work\\code\\models\\flan-t5-base"
tokenizer = T5Tokenizer.from_pretrained(modelpath)
model = T5ForConditionalGeneration.from_pretrained(modelpath)
input_text = "what's the capital for usa"
input_ids = tokenizer(input_text, return_tensors="pt").input_ids
outputs = model.generate(input_ids)
print(tokenizer.decode(outputs[0]))
把上面下载的文件放到modelpath 路径里,大功告成
三、环境准备
首先还是python的基础环境pytorch相关的包torch等都要下载好
另外这里直接用hugging face的内置transformers,因此需要先pip install 安装一下
另外还需要pip install sentencepiece 安装下这个 ,否则可能报错
详细的可以看这个说明:https://github.com/google/sentencepiece#installation
四、下游任务
加载模型部分与上述二步骤相同,此处略去
input_text = "translate German to English: Wie old sind Sie?"
input_ids = tokenizer(input_text, return_tensors="pt").input_ids
outputs = model.generate(input_ids)
print(tokenizer.decode(outputs[0]))
输出“
<pad> How old are you?</s>
f
input_text = "find out where entity: at 3:00 , I will fly to Shanghai today."
input_ids = tokenizer(input_text, return_tensors="pt").input_ids
outputs = model.generate(input_ids)
print(tokenizer.decode(outputs[0]))
输出:
<pad> shanghai</s>
如步骤二里的任务
输出"<pad> Washington, D.C.</s>"
T5可以做1000多种下游任务,下面是最经典的几类任务,具体的可以参考论文:https://arxiv.org/pdf/2210.11416.pdf