英文

FRED-T5 1.7B(俄语增强去噪 T5)

模型由 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。

用法(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)
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