Весь код написан ИИ, без участия человека.
-
Приоритетный Loss Function
КастомныйPriorityLossс динамическим штрафом для:- Эмодзи (Unicode-паттерны)
- Текстовых смайлов (:-), ;-) и др.)
- Контроля частоты спецтокенов в генерации
-
Оптимизированная архитектура
- Упрощённый GPT2 (6 слоёв, 8 голов)
- Поддержка Tensor Cores (bfloat16 + tf32)
- JIT-компиляция через
torch.compile
-
Эффективный пайплайн
- Градиентный аккумулятор (x4 шага)
- Mixed Precision Training
- Adaptive Gradient Clipping
-
Сбалансированная генерация
Динамический штраф для спецтокенов:penalty = special_penalty * (1 - seq_len/max_len) + min_penalty
- Оборудование:
NVIDIA GPU с поддержкой CUDA 12.6 (16GB+ VRAM, тестировано на RTX 4060Ti) - ОС:
Windows 10/11 x64 - ПО:
Python 3.11
# Основные пакеты
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126
pip install transformers pandas tqdm pathlib regex datasets
# Triton для Windows
pip install -U 'triton-windows<3.4'
Настройка окружения для JIT-оптимизаций
Установите Visual Studio 2022 с компонентами:
Разработка классических приложений на C++
Пакет SDK для Windows (10/11)
Убедитесь, что установлены:
Windows 10/11 SDK (включается при установке VS)
Обновления Windows (актуальная версия ОС)
Отключение JIT-оптимизаций (опционально)
Если не требуется использовать torch.compile:
# Удалите строку компиляции модели в вашем коде:
# model = torch.compile(model)
Нужно скачать любой датасет с https://huggingface.co/models?sort=trending&search=rus в формате parquet, переименовать его в train.parquet
запуск
# python train.py