Sergey Penkovsky c56a3e80c9 Реализация класса GetData
- Добавлен класс GetData для работы с последовательными данными
- Реализован функционал:
  * Создание датасета из последовательности
  * Автоматическое формирование пар (input, target)
  * Поддержка CPU/GPU
  * Проверка корректности параметров
- Добавлены тесты для проверки функционала
- Создан пример использования в example/
- Добавлена документация с блок-схемой в doc/
- Обновлен README.md с информацией о новом классе
2025-07-22 17:10:28 +03:00
2025-07-08 14:42:24 +03:00
2025-07-11 12:21:33 +03:00

Simple-LLM Framework

Python Version PyTorch Version

Простая и понятная реализация языковой модели GPT-стиля с нуля на PyTorch

🔍 Обзор

Simple-LLM предоставляет:

  • Полную реализацию архитектуры GPT
  • Эффективный токенизатор BPE
  • Модули трансформера (внимание, FFN, эмбеддинги)
  • Гибкую систему генерации текста
  • Примеры использования и документацию

🚀 Быстрый старт

  1. Установите зависимости:
pip install torch numpy tqdm
  1. Запустите пример генерации:
python example/example_gpt.py

🧠 Основные компоненты

Обработка данных

from simple_llm.data.get_data import GetData

dataset = GetData(
    data=[1, 2, 3, 4, 5],  # Входная последовательность
    seq_len=3,             # Длина окна
    device="cuda"          # Устройство (опционально)
)

Модель GPT

from simple_llm.transformer.gpt import GPT

model = GPT(
    vocab_size=10000,
    max_seq_len=512,
    emb_size=768,
    num_heads=12,
    num_layers=6
)

Генерация текста

output = model.generate(
    input_ids,
    max_new_tokens=100,
    temperature=0.9,
    top_k=50,
    top_p=0.9
)

📚 Документация

Полная документация доступна в doc/:

🛠 Тестирование

pytest tests/

🤝 Как внести вклад

  1. Форкните репозиторий
  2. Создайте ветку (git checkout -b feature/AmazingFeature)
  3. Сделайте коммит (git commit -m 'Add some AmazingFeature')
  4. Запушьте ветку (git push origin feature/AmazingFeature)
  5. Откройте Pull Request

📜 Лицензия

Распространяется под лицензией MIT. См. LICENSE

Description
No description provided
Readme MIT 21 MiB
Languages
Python 100%