Skip to content

Implémentation complète de l’architecture GPT-2 en Python avec PyTorch

Notifications You must be signed in to change notification settings

Antoine0703/My-mini-Gpt-2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

My-mini GPT2 - Architecture du modèle GPT-2

Présentation

Ce projet vise à reproduire l'architecture du modèle GPT-2 small en utilisant PyTorch. L'objectif est de comprendre en profondeur les mécanismes des Transformers, notamment l'attention multi-tête, les embeddings, les connexions résiduelles, et le feed forward networks.

Fonctionnalités

  • Implémentation de l'architecture GPT-2 avec PyTorch.
    • Attention multi-tête
    • Feed forward network
    • Transfomers

Structure du projet

📁 My mini GPT2
|── 📄 main.py
|── 📄 README.md
|── 📄 requirement.txt
|── 📁 src
|   │── 📄 attention.py
|   │── 📄 feed_forward.py
|   │── 📄 gpt2_config.py
|   │── 📄 gpt2_assemble.py
|   │── 📄 head_model.py
|   │── 📄 transformer.py
|── 📁 pre_train_weight
    |── 📄 load_weight.py
    |── 📄 tokeniser.py
    |── 📄txt_generate.py

⚙️ Installation

  1. Cloner le dépôt :

    git clone git@github.com:Antoine0703/My-mini-Gpt-2.git
    cd My-mini-Gpt-2
  2. Installer les dépendances :

    pip install -r requirements.txt

📊 Hyperparamètres principaux

Les principaux paramètres du modèle sont définis dans src/gpt2_config.py :

config = {
   "vocab_size": 50257,
   "n_positions": 1024,
   "n_embd": 768,
   "n_layer": 12,
   "n_head": 12,
   "embd_pdrop"=0.1,
   "attn_pdrop": 0.1,
   "resid_pdrop": 0.1,
   "layer_norm_epsilon"=1e-5,
   "initializer_range": 0.02
   "bos_token_id"=50256,
   "eos_token_id"=50256,
}

Utilisation

Entraînement

Lancer l'entraînement avec :

python train.py --epochs 10 --batch_size 32

Génération de texte

Une fois entraîné, le modèle peut être utilisé pour générer du texte :

python generate.py --prompt "Bonjour, aujourd'hui nous allons parler de"

📖 Ressources

About

Implémentation complète de l’architecture GPT-2 en Python avec PyTorch

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors