Sergey Penkovsky e5fc85f336 Полная реализация FeedForward
- Основной класс FeedForward
- Тесты для всех функций
- Пример использования с визуализацией
- Документация с блок-схемой
2025-07-20 14:28:18 +03:00
2025-07-08 14:42:24 +03:00
2025-07-11 12:21:33 +03:00

Simple LLM Framework

Python 3.9+ PyTorch 2.0+

Унифицированный фреймворк для NLP, включающий:

  • 🎯 Токенизацию на основе BPE
  • 📊 Векторные представления
  • 🧠 Механизмы внимания (Single/Multi-Head)

Оглавление

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

from simple_llm import SimpleBPE, MultiHeadAttention

# 1. Токенизация
bpe = SimpleBPE().fit(text_corpus)
tokens = bpe.encode("Пример текста")

# 2. Многоголовое внимание
mha = MultiHeadAttention(
    num_heads=8,
    emb_size=256,
    head_size=32
)
output = mha(torch.randn(1, 10, 256))  # [batch, seq_len, emb_size]

Архитектура

graph TD
    A[Текст] --> B(Tokenizer)
    B --> C[Токены]
    C --> D[TokenEmbeddings]
    D --> E[MultiHeadAttention]
    E --> F[Выход модели]

Модули

Токенизация

  • SimpleBPE - базовая реализация BPE
  • OptimizeBPE - оптимизированная версия

Эмбеддинги

  • TokenEmbeddings - обучаемые векторные представления
  • PositionalEmbeddings - позиционное кодирование

Transformer

  • HeadAttention - одно-головое внимание
  • MultiHeadAttention - многоголовое внимание (4-16 голов)

Примеры

# Запуск примеров
python -m example.multi_head_attention_example

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

Установка

git clone https://github.com/pese-git/simple-llm.git
cd simple-llm
pip install -e .

Разработка

# Запуск тестов
pytest tests/ -v

# Проверка стиля кода
flake8 .

# Форматирование
black .
Description
No description provided
Readme MIT 21 MiB
Languages
Python 100%