| import torch |
| from transformers import T5Config, T5ForConditionalGeneration |
|
|
| def create_t5_3b_model(vocab_size: int = 32128) -> T5ForConditionalGeneration: |
| """ |
| Создаёт encoder-decoder модель T5 с ~3 миллиардами параметров. |
| Параметры взяты из официальной спецификации T5-3B (v1.1). |
| """ |
| config = T5Config( |
| vocab_size=vocab_size, |
| d_model=1024, |
| d_kv=128, |
| num_heads=32, |
| num_layers=24, |
| d_ff=16384, |
| dropout_rate=0.1, |
| feed_forward_proj="gated-gelu", |
| tie_word_embeddings=False, |
| |
| ) |
| model = T5ForConditionalGeneration(config) |
| return model |
|
|
| if __name__ == "__main__": |
| |
| model = create_t5_3b_model() |
| |
| |
| num_params = model.num_parameters() |
| print(f"Модель содержит {num_params:,} параметров.") |
| |
| |
| model.config.save_pretrained("./t5-3b-config") |
| |
| print("Конфигурация сохранена в папку ./t5-3b-config") |