MiniTransformer / README.md
pierjoe's picture
Update README.md
f2757bc verified
|
Raw
History Blame Contribute Delete
1.86 kB
---
language:
- en
- it
license: mit
tags:
- text-generation
- educational
- transformer
- pytorch
- safetensors
pipeline_tag: text-generation
datasets:
- roneneldan/TinyStories
---
# MiniTransformer v3
A small educational transformer model trained from scratch for text generation tasks.
## Model Description
MiniTransformer is a compact transformer architecture designed for educational purposes and experimentation. The model is trained on question-answer pairs with various system prompts to demonstrate fundamental transformer capabilities.
**This is an educational model** - it's designed to help understand transformer architectures and training processes, not for production use.
## Architecture
- **Parameters:** 43.9M
- **Architecture:** Decoder-only transformer
- **Embedding Dimension:** 512
- **Attention Heads:** 4
- **Layers:** 4
- **Context Length:** 128 tokens
- **Vocabulary:** BERT tokenizer (30,522 tokens)
## Training Details
### Training Data
- Generic question-answer pairs with diverse system prompts
- Trained using sliding window approach with stride of 32
- Train/test split: 90/10
### Training Procedure
- **Optimizer:** AdamW (fused, learning rate: 3e-4)
- **Batch Size:** 128
- **Epochs:** 50
- **Mixed Precision:** FP16 (AMP enabled)
- **Hardware:** NVIDIA A10 GPU
- **Final Train Loss:** 0.0024
### Framework
- PyTorch 2.0+ with `torch.compile()` optimization
- Transformers library tokenizer
## Usage
```python
import torch
from transformers import AutoTokenizer
# Load tokenizer
tokenizer = AutoTokenizer.from_pretrained("bert-base-uncased")
# Load model (you'll need to download the checkpoint)
# model = MiniTransformer(...)
# model.load_state_dict(torch.load("checkpoint.pt"))
# Generate text
input_text = "Your prompt here"
input_ids = tokenizer.encode(input_text, return_tensors="pt")
# Generation code here