模型:
ai-forever/FRED-T5-1.7B
模型由 SberDevices 进行训练。
架构基于 T5。
它有24层和1536个隐藏大小。更多详细信息请查看 config.json。
该模型是在7种去噪器(如UL2)的混合数据上训练的,具有几个区别( https://arxiv.org/abs/2205.05131 )。
它在俄语语料库(300GB)上进行了训练。数据集与 ruT5 模型相同。
Bbpe 分词器。50257 个词汇 + 107 个特殊标记。前缀标记:“<LM>”,“<SC1>”,.. “<SC6>”
在大部分时间中,模型是在全部数据集的一小部分上(1%、3GB)进行训练,且每个任务都没有前缀。
对于 RSG,我们按照 T5 论文中的描述进行训练。首先,我们对所有任务进行了多任务训练,然后选择最佳检查点进行进一步训练。RSG 提交在这里: https://russiansuperglue.com/login/submit_info/1936
总的训练时间约为45天,使用了112台 A100 GPU。
import torch from transformers import GPT2Tokenizer, T5ForConditionalGeneration tokenizer = GPT2Tokenizer.from_pretrained('ai-forever/FRED-T5-1.7B',eos_token='</s>') model = T5ForConditionalGeneration.from_pretrained('ai-forever/FRED-T5-1.7B') device='cuda' model.to(device) #Prefix <LM> lm_text='<LM>Принялся Кутузов рассказывать свою историю как он сюда попал. Началось' input_ids=torch.tensor([tokenizer.encode(lm_text)]).to(device) outputs=model.generate(input_ids,eos_token_id=tokenizer.eos_token_id,early_stopping=True) print(tokenizer.decode(outputs[0][1:])) # print result: с того, что он был в армии, служил в артиллерии</s>. #Prefix <SC1> lm_text='<SC1>Принялся Кутузов рассказывать свою историю <extra_id_0>. Началось с того, что он был в армии, служил в артиллерии.' input_ids=torch.tensor([tokenizer.encode(lm_text)]).to(device) outputs=model.generate(input_ids,eos_token_id=tokenizer.eos_token_id,early_stopping=True) print(tokenizer.decode(outputs[0][1:])) #print result: '<extra_id_0>, как он воевал</s>' # Prefix <SC5> lm_text='<SC5>Принялся Кутузов рассказывать свою историю <extra_id_0>. Началось с того, что он был в армии, служил в артиллерии.' input_ids=torch.tensor([tokenizer.encode(lm_text)]).to(device) outputs=model.generate(input_ids,eos_token_id=tokenizer.eos_token_id,early_stopping=True) tokenizer.decode(outputs[0][1:]) #print result: '<extra_id_0>, как он стал генералом</s>'