mirror of
https://github.com/pese-git/llm-arch-research.git
synced 2026-01-23 21:10:54 +00:00
docs(readme): add explicit support notice for GPT-2 architecture and usage examples
This commit is contained in:
23
README.md
23
README.md
@@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
Проект организован как монорепозиторий с использованием **uv** workspace:
|
Проект организован как монорепозиторий с использованием **uv** workspace:
|
||||||
|
|
||||||
- **`llm`** — основная библиотека с реализацией архитектур LLM
|
- **`llm`** — основная библиотека с реализацией архитектур LLM (GPT, GPT-2)
|
||||||
- **`hf-proxy`** — адаптер для интеграции с HuggingFace
|
- **`hf-proxy`** — адаптер для интеграции с HuggingFace
|
||||||
- **`experiments`** — скрипты обучения и экспериментов
|
- **`experiments`** — скрипты обучения и экспериментов
|
||||||
- **`notebooks`** — исследовательские ноутбуки
|
- **`notebooks`** — исследовательские ноутбуки
|
||||||
@@ -30,8 +30,9 @@ llm-arch-research/
|
|||||||
│ │ ├── feed_forward.py
|
│ │ ├── feed_forward.py
|
||||||
│ │ ├── token_embeddings.py
|
│ │ ├── token_embeddings.py
|
||||||
│ │ └── positional_embeddings.py
|
│ │ └── positional_embeddings.py
|
||||||
│ ├── models/gpt/ # GPT реализация
|
│ ├── models/gpt/ # GPT и GPT-2 реализация
|
||||||
│ │ ├── gpt.py
|
│ │ ├── gpt.py
|
||||||
|
│ │ ├── gpt2.py
|
||||||
│ │ └── __init__.py
|
│ │ └── __init__.py
|
||||||
│ ├── training/ # утилиты обучения
|
│ ├── training/ # утилиты обучения
|
||||||
│ │ ├── dataset.py
|
│ │ ├── dataset.py
|
||||||
@@ -103,11 +104,11 @@ uv run python experiments/hf_integration/generate_with_hf_tools.py
|
|||||||
### Использование в коде
|
### Использование в коде
|
||||||
|
|
||||||
```python
|
```python
|
||||||
from llm.models.gpt import GPT
|
from llm.models.gpt import GPT, GPT2
|
||||||
from llm.tokenizers import BPETokenizer
|
from llm.tokenizers import BPETokenizer
|
||||||
from hf_proxy import HFAdapter, HFTokenizerAdapter
|
from hf_proxy import HFAdapter, HFTokenizerAdapter
|
||||||
|
|
||||||
# Создание модели
|
# Создание GPT модели
|
||||||
config = {
|
config = {
|
||||||
"vocab_size": 50257,
|
"vocab_size": 50257,
|
||||||
"embed_dim": 256,
|
"embed_dim": 256,
|
||||||
@@ -118,6 +119,17 @@ config = {
|
|||||||
}
|
}
|
||||||
model = GPT(config)
|
model = GPT(config)
|
||||||
|
|
||||||
|
# Создание GPT-2 модели (пример)
|
||||||
|
gpt2_config = {
|
||||||
|
"vocab_size": 50257,
|
||||||
|
"embed_dim": 768,
|
||||||
|
"num_heads": 12,
|
||||||
|
"num_layers": 12,
|
||||||
|
"max_position_embeddings": 1024,
|
||||||
|
"dropout": 0.1
|
||||||
|
}
|
||||||
|
gpt2_model = GPT2(gpt2_config)
|
||||||
|
|
||||||
# Генерация текста
|
# Генерация текста
|
||||||
generated = model.generate(
|
generated = model.generate(
|
||||||
input_ids,
|
input_ids,
|
||||||
@@ -190,12 +202,13 @@ dependencies = [
|
|||||||
|
|
||||||
## 🎯 Реализованные возможности
|
## 🎯 Реализованные возможности
|
||||||
|
|
||||||
### Архитектура GPT
|
### Архитектуры GPT и GPT-2
|
||||||
- ✅ Токенные и позиционные эмбеддинги
|
- ✅ Токенные и позиционные эмбеддинги
|
||||||
- ✅ Многоголовое внимание с causal mask
|
- ✅ Многоголовое внимание с causal mask
|
||||||
- ✅ Декодерные блоки с residual connections
|
- ✅ Декодерные блоки с residual connections
|
||||||
- ✅ Layer normalization
|
- ✅ Layer normalization
|
||||||
- ✅ Dropout регуляризация
|
- ✅ Dropout регуляризация
|
||||||
|
- ✅ Отдельные реализации GPT и GPT-2 (различия в масштабе и деталях архитектуры)
|
||||||
|
|
||||||
### Генерация текста
|
### Генерация текста
|
||||||
- ✅ Жадный поиск (greedy decoding)
|
- ✅ Жадный поиск (greedy decoding)
|
||||||
|
|||||||
Reference in New Issue
Block a user