英文

FRED-T5大型820M(全尺寸俄语增强去噪器T5)

该模型由 SberDevices 训练。

架构基于T5。

它有24层和1024隐藏层大小。更多细节请参阅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/2060

总训练时间约为35天,使用了160个V100 GPU + 5天80个A100。

用法(HuggingFace模型仓库)

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,max_length=100)
print(tokenizer.decode(outputs[0][1:]))

#print result: '<extra_id_0> </s>'

作者

  • NLP核心团队研发 Telegram channel :
    • Dmitry Zmitrovich
    • Andrei Kalmykov
    • Vitaly Kadulin
    • Mikhail Novikov
    • Alexey Khoroshilov

Salute AI Community