Russian Jokes Transformer
Модель для генерации русских анекдотов на основе архитектуры Transformer с ALiBi и GQA.
Детали модели
Архитектура:
- Transformer с Grouped-Query Attention (GQA)
- ALiBi позиционные эмбеддинги
- SwiGLU активация в FFN слоях
- Byte-level BPE токенизатор (vocab_size=1024)
Параметры:
| Конфигурация | Слои | Головы | KV-головы | Hidden dim | Параметры |
|---|
| nano | 3 | 4 | 2 | 96 | 1.2M |
| mini | 6 | 6 | 3 | 384 | 15.7M |
| small | 12 | 12 | 6 | 768 | 62.4M |
Репорт качества
За n_steps = 10 000 и learning_rate = 3e-4 loss в nano модели = 4.5, в mini версии = 4.0, в small версии 3.5.
Small не получается обучить из-за ограничения использования GPU в Google Collab.
Примеры генерации
Nano
Заходит в баркра. Передую. А в резиденты в те: "Тогда, а не в сыны! Сме - - Ну что, семьютердощи "Дван. - Пут! - А что это не плох. А что я и доктор,
Смешно? Не особо.
Mini
Заходит в барке в магазине: - А, это я ну я пиво?- Нет, я не приведу, какая...
Смешно? Не сказал бы, но как будто больше смысла.
Small
Заходит в баре и говорит: - Папа, а если у меня у нас сынок, но ты не вызвините, доктор, что ты такие дорогая, а он на дася!
Тоже не очень.
Данные
Датасет: IgorVolochay/russian_jokes
150k+ русских анекдотов
Разделение: 90/10 train/test
Ограничения
Может генерировать бессмысленный контент, так как модель достаточно маленькая
Иногда повторяет фразы