| | --- |
| | license: mit |
| | datasets: |
| | - wikimedia/wikipedia |
| | language: |
| | - de |
| | - en |
| | metrics: |
| | - perplexity |
| | base_model: |
| | - dbmdz/german-gpt2 |
| | pipeline_tag: text-generation |
| | library_name: transformers |
| | tags: |
| | - gpt2 |
| | - german |
| | - deutsch |
| | - causal-lm |
| | - language-model |
| | - 24-layers |
| | - expanded-architecture |
| | --- |
| | |
| | # GPT2-24Layers 🇩🇪 |
| |
|
| | Ein erweitertes GPT-2 Modell mit **24 Transformer-Layern** (statt der originalen 12), das auf **deutscher Wikipedia** trainiert wurde. |
| |
|
| | ## Modell-Beschreibung |
| |
|
| | Dieses Modell basiert auf der originalen GPT-2 Architektur von OpenAI, wurde jedoch strukturell erweitert: |
| |
|
| | | Eigenschaft | Original GPT-2 | GPT2-24Layers | |
| | |---|---|---| |
| | | Transformer-Layer | 12 | **24** | |
| | | Attention Heads | 12 | 12 | |
| | | Hidden Size | 768 | 768 | |
| | | Vocab Size | 50,257 | 50,257 | |
| | | Context Window | 1024 | 1024 | |
| | | Parameter (ca.) | ~124M | **~200M** | |
| |
|
| | Die zusätzlichen Layer wurden aus dem originalen GPT-2 dupliziert und anschließend durch ein **Heilungs-Training** auf deutscher Wikipedia stabilisiert, sodass alle Layer kohärent zusammenarbeiten. |
| |
|
| | ## Training |
| |
|
| | ### Phase 1 – Heilungs-Training (Architektur-Stabilisierung) |
| |
|
| | - **Datensatz:** [wikimedia/wikipedia](https://huggingface.co/datasets/wikimedia/wikipedia) (`20231101.de`) – ~2.7M deutsche Wikipedia-Artikel |
| | - **Hardware:** NVIDIA T4 (16 GB VRAM) |
| | - **Precision:** FP16 |
| | - **Lernrate:** 3e-5 |
| | - **Batch Size:** 2 (mit Gradient Accumulation Steps: 6 → effektiv 12) |
| | - **Optimizer:** AdamW (fused) |
| | - **Block Size:** 512 Token |
| | - **Epochen:** 1 |
| |
|
| | ### Trainings-Prozess |
| |
|
| | 1. **Architektur-Erweiterung:** Die Layer 0–11 des originalen GPT-2 wurden dupliziert, um Layer 12–23 zu erzeugen. |
| | 2. **Heilungs-Training:** Das erweiterte Modell wurde auf der deutschen Wikipedia trainiert, damit die duplizierten Layer eigene Repräsentationen lernen und das Modell stabil generiert. |
| |
|
| | ## Verwendung |
| |
|
| | ```python |
| | from transformers import GPT2LMHeadModel, GPT2TokenizerFast |
| | |
| | model = GPT2LMHeadModel.from_pretrained("Atomic-Ai/GPT2-24Layers") |
| | tokenizer = GPT2TokenizerFast.from_pretrained("Atomic-Ai/GPT2-24Layers") |
| | |
| | input_text = "Die Geschichte Deutschlands" |
| | input_ids = tokenizer.encode(input_text, return_tensors="pt") |
| | |
| | output = model.generate( |
| | input_ids, |
| | max_length=200, |
| | temperature=0.8, |
| | top_p=0.9, |
| | top_k=50, |
| | do_sample=True, |
| | no_repeat_ngram_size=3, |
| | ) |
| | |
| | print(tokenizer.decode(output[0], skip_special_tokens=True)) |
| | ``` |
| |
|
| | ## Einschränkungen |
| |
|
| | - **Tokenizer:** Verwendet den originalen GPT-2 Byte-Pair-Encoding Tokenizer, der primär auf englischen Texten trainiert wurde. Deutsche Umlaute (ä, ö, ü, ß) werden daher in mehrere Tokens aufgeteilt, was die Effizienz bei deutschen Texten reduziert. |
| | - **Modellgröße:** Mit ~200M Parametern ist das Modell deutlich kleiner als moderne LLMs und eignet sich eher für Experimente und Forschung als für Produktionsumgebungen. |
| | - **Trainingsdaten:** Ausschließlich auf Wikipedia trainiert – der Schreibstil ist daher eher enzyklopädisch. Konversationelle oder kreative Texte sind nicht die Stärke des Modells. |
| |
|
| | ## Zitierung |
| |
|
| | ```bibtex |
| | @misc{atomic-ai-gpt2-24layers, |
| | title={GPT2-24Layers: An Expanded German GPT-2 Model}, |
| | author={Atomic AI Studios}, |
| | year={2026}, |
| | url={https://huggingface.co/Atomic-Ai/GPT2-24Layers} |
| | } |
| | ``` |
| |
|
| | ## Lizenz |
| |
|
| | MIT |