🚀 FRED - T5 1.7B (全量俄语增强去噪器T5)
FRED - T5 1.7B是一款基于T5架构的预训练语言模型,专为俄语设计。该模型在俄语语料库上进行训练,可用于多种自然语言处理任务。其相关的模型架构设计、预训练和评估等内容均记录在我们的预印本论文中。
🚀 快速开始
FRED - T5 1.7B模型的架构设计、预训练和评估等详细信息记录在我们的预印本论文中:A Family of Pretrained Transformer Language Models for Russian。
该模型由 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 。
- 训练时长:在112个A100 GPU上总共训练了约45天。
📦 安装指南
文档未提及安装步骤,暂不提供。
💻 使用示例
基础用法
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)
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:]))
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:]))
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:])
高级用法
文档未提及高级用法示例,暂不提供。
📚 详细文档
文档未提供更详细的说明,暂不提供。
🔧 技术细节
模型基于T5架构,具有24层和1536的隐藏层大小。训练过程结合了7种去噪器的混合设置,在300GB的俄语语料库上进行训练。前半段在小部分数据集上训练且不使用前缀,对于RSG按照T5论文的方式训练。更多详细信息可参考 config.json
文件以及预印本论文 A Family of Pretrained Transformer Language Models for Russian。
📄 许可证
本模型采用Apache - 2.0许可证。
👥 作者
- NLP核心研发团队 Telegram频道:
- Dmitry Zmitrovich
- Andrei Kalmykov
- Vitaly Kadulin
- Mikhail Novikov
- Alexey Khoroshilov
Salute AI社区。
📖 引用
如果您使用了本模型,请引用以下论文:
@misc{zmitrovich2023family,
title={A Family of Pretrained Transformer Language Models for Russian},
author={Dmitry Zmitrovich and Alexander Abramov and Andrey Kalmykov and Maria Tikhonova and Ekaterina Taktasheva and Danil Astafurov and Mark Baushenko and Artem Snegirev and Tatiana Shavrina and Sergey Markov and Vladislav Mikhailov and Alena Fenogenova},
year={2023},
eprint={2309.10931},
archivePrefix={arXiv},
primaryClass={cs.CL}
}