English· Español· Deutsch· Nederlands· Français· 日本語· ქართული· 繁體中文· 简体中文· Português· Русский· العربية· हिन्दी· Italiano· 한국어· Polski· Svenska· Türkçe· Українська· Tiếng Việt· Bahasa Indonesia

un

Gast
1 / ?

Was ein Sprachmodell vorhersagt

Ein probabilistischer Fortsetzungs-Engine

Ein Sprachmodell nimmt eine Sequenz von Tokens & weist eine Wahrscheinlichkeitsverteilung darüber zu, welches Token als Nächstes kommt. Füttern Sie es mit the cat sat on the & es gibt Wahrscheinlichkeiten über das gesamte Vokabular aus: hohe Masse auf mat, floor, couch; niedrige Masse auf xylophone, Tuesday.


Durch Sampling dieser Verteilung, Anhängen eines Tokens & Zurückfüttern: Diese Schleife erzeugt Text Token für Token. Autoregressive Generierung, benannt, weil jeder Schritt auf seiner eigenen vorherigen Ausgabe regressiert.


Drei Zahlen definieren ein Sprachmodell


Vokabulargröße (V). Wie viele unterschiedliche Token ein Modell erzeugen kann. ANDREA-12M verwendete 4.353 Token; ANDREA-120M verwendet 8.449.


Kontextfenster (T). Wie viele Token in einen Forward-Pass passen. ANDREA-Modelle verwenden T = 1.024.


Parameteranzahl (P). Wie viele gelernte Gewichte darin enthalten sind. 12M, 120M & 480M benennen eine Familie nach P.


Eine Familie aus Drei


Varianted_modelKöpfeSchichtenKontextParameter
ANDREA-12M384126102412,8M
ANDREA-120M76812121024~120M
ANDREA-480M153624161024~480M

Drei Skalenparameter: d_model (Breite jedes internen Vektors), n_layer (Tiefe der gestapelten Transformer-Blöcke), n_head (parallele Attention-Projektionen). Vokabular & Kontext bleiben in der Familie fest.

Die Family-Tabelle lesen

Vergleiche ANDREA-12M (d_model=384, 6 Schichten, 12 Köpfe) mit ANDREA-120M (d_model=768, 12 Schichten, 12 Köpfe). Nenne zwei architektonische Achsen, die von 12M zu 120M skaliert werden, & eine, die konstant bleibt. Ein ein-Satz-Grund für jede Skalierungsentscheidung hilft.

Warum Klein wichtig ist

Zwang als Befreiung

Große Sprachmodelle mit Hunderten von Milliarden Parametern erfordern Tausende von GPUs, proprietäre Datensätze und Unternehmensbudgets. Wenige Menschen können eines trainieren. Wenige Menschen können eines reparieren.


Ein kleines Sprachmodell auf einer GPU kehrt das um. Jeder mit einer 4090 (oder einer 3060) kann ANDREA aus offenen Daten reproduzieren. Das Trainingsrezept dient gleichzeitig als Modellkarte. Offener Code, offene Gewichte, offene Daten; volle Herkunftsnachverfolgung in 72 Stunden Rechenzeit.


Kapazität vs. Qualität

Kleinere Modelle können ihren Trainingskorpus nicht auswendig lernen. ANDREA-12M mit 12,8 Mio. Parametern fehlt die Kapazität, faktenbasierten Inhalt zu speichern; es lernt Gesprächsstruktur, Vokabelverteilung und Antwortform. ANDREA-120M mit 10× Kapazität lernt faktenbasiertes Abrufen, mehrabsatzige Kohärenz und Fachbreite (verifiziert durch externe Bewertung mit 9,5/10 bei Biologie- und Signalverarbeitungsproben).


Die wichtigste Erkenntnis: Die Kapazität setzt eine Obergrenze. Der Lehrplan entscheidet, ob diese Obergrenze erreicht wird. Aktivitäten 14-23 decken den Lehrplan ab. [TITLE decoder_only/]

Drei Transformer-Varianten

Encoder, Decoder, Beides

Der ursprüngliche Transformer (Vaswani et al., 2017) enthielt einen Encoder & einen Decoder, die für Übersetzungen zusammengefügt wurden. Drei architektonische Linien stammen aus diesem Paper ab:


Encoder-only (BERT-Linie). Bidirektionale Attention, keine kausale Maske. Optimiert für Klassifikation, nicht für Generierung. Ein Token sieht während des Trainings sowohl seine Vergangenheit als auch seine Zukunft.


Encoder-Decoder (T5, BART). Der Encoder liest den Input; der Decoder generiert den Output und verwendet Cross-Attention auf den Encoder. Verwendet für Übersetzung, Zusammenfassung.


Decoder-only (GPT, ANDREA). Causale Maske: Jedes Token sieht nur seine Vergangenheit. Trainiert, das nächste Token vorherzusagen. Generierung ist kostenlos; Training & Inferenz teilen denselben Forward-Pass.


Warum Decoder-Only auf einer GPU gewinnt

Drei Gründe:


1. Einzelnes Ziel. Next-Token-Vorhersage funktioniert mit jedem Text. Kein gepaartes Quell-/Zielmaterial nötig.

2. Symmetrie bei Training & Inference. Gleicher Forward-Pass, keine spezielle Generierungslogik.

3. Einfachheit des Speichers. Keine Cross-Attention; ein Stack von Layern; ein Aktivierungsfluss.


ANDREA erbt die decoder-only-Wahl von microGPT, die von nanoGPT geerbt wurde, die von GPT-2 geerbt wurde. Die Linie bleibt standard; was sich ändert, liegt in Tokenization, Training-Infrastruktur & Curriculum.

Warum Decoder-Only für ANDREA

Nenne einen Grund aus Sicht der Trainingsdaten & einen Grund aus Sicht des Inference-Verhaltens, warum ANDREA einen decoder-only Transformer statt eines Encoder-Decoder wie T5 verwendet.

Was passt in 24 GB

Bytes pro Parameter

Eine RTX 4090 wird mit 24 GB VRAM ausgeliefert. Das Training von ANDREA-12M benötigte 1,4 GB. ANDREA-120M benötigte deutlich mehr. Der Unterschied ergibt sich aus einer einfachen Bilanzierungsübung: Jedes Parameter erscheint mehrmals im Speicher während des Trainings.


Für jeden Parameter hält das Training:

- Das Gewicht selbst (1× Gewicht)

- Adam erstes Moment (m): gleiche Form wie Gewicht (1× Gewicht)

- Adam zweites Moment (v): gleiche Form wie Gewicht (1× Gewicht)

- Gradienten: gleiche Form wie Gewicht (1× Gewicht)

- Aktivierungen & Temporäre: ~2-4× Gewicht (variiert mit Batch & Kontext)


Gesamt: ~6-8× die Gewichtsanzahl, in Bytes bestimmt durch Präzision.


Präzision multipliziert alles


PräzisionBytes/ParamGesamt für 120M GewichteHinweise
FP324480 MBBasislinie; sicherste, langsamste
FP162240 MBcuBLAS, halber Speicher
FP8 E4M31120 MBTensor-Kerne, NaN-Risiko

Multipliziere mit 6-8× für den vollständigen Trainings-Fußabdruck. ANDREA-120M trainiert bequem in FP16 (~2 GB für Gewichte + Optimizer + Grads); FP8 E4M3 halbiert die Trainingszeit auf RTX 4090 Tensor-Kernen.


Aktivität 13 (grow_a_language_model_precision) beleuchtet die FP-Präzisions-Kompromisse im Detail.

Größe des Optimizer-States von ANDREA-120M

ANDREA-120M hat ~120.000.000 Parameter. Jedes FP32-Gewicht belegt 4 Bytes. AdamW speichert zwei zusätzliche Optimizer-State-Floats pro Gewicht (m, v). Berechnen Sie: (a) nur Gewichte in FP32, in MB; (b) Gewichte + Optimizer-State in FP32, in MB; (c) Gewichte + Optimizer-State in FP16, in MB. Zeigen Sie Ihre Rechenoperationen.

Fünfundzwanzig Aktivitäten

Zwei Hälften

Dieser Kurs teilt sich klar. Die erste Hälfte behandelt, was microGPT dem Fachgebiet beigebracht hat: ein Transformer, der auf einer GPU läuft. Die zweite Hälfte behandelt ANDREA's tatsächlichen Beitrag: ein Curriculum, das lernt.


Hälfte 1: Ein Transformer auf einer GPU (Aktivitäten 2-13)


#AktivitätMeilenstein
2Harris-Morphem-Tokenizerdistributionelle Segmentierung, 256+N+1 Vokabular
3Tokenizer-Diät-AusrichtungSättigungspunkt, warum 12M 63,6 % verschwendet
4Embeddings & Positiongelernte Token- + Positionsnachschlage
5Skalierte Dot-Product-AufmerksamkeitQ·Kᵀ/√d, kausale Maske, Softmax
6Multi-Head-AufmerksamkeitHead-Aufteilungen, parallele Projektionen
7Transformer-BlockMLP, Residuums, Layer-Norm
8Kreuzentropie & PerplexitätLog-Wahrscheinlichkeit, SMMA-Verlust
9Backprop in custom CUDAKettenregel über microgpt_cuda.cu
10AdamWentkoppelte Gewichtszerfall; warum vanilla Adam starb
11LR-Warmup + Cosinus-Abfall2000-Schritt-Rampe; warum sofortiger Peak 120M zerstört
12Gradienten-Clippingglobaler L2-Norm; 3 CUDA-Kernel
13FP32 / FP16 / FP8 E4M3Präzisionsabwägungen; Tensor-Cores

Hälfte 2: Ein Curriculum, das lernt (Aktivitäten 14-24)


#AktivitätBeat
14Multi-armed BanditsUCB1, Exploration vs. Ausbeutung
15Phasenbasierte Würfelsteuerung7/14/21/28/42 Phasen, 1d3/1d4 Würfel
16Belohnungszuordnung & EMApro-Quelle-Verlust-EMA, 1000× Skalierung
17Quellenböden & Epochenstrafe1/(1+epochs) verhindert Memorierung
18Abdeckungsbonusdokumentenweites Tracking, 1.3× Frische
19Curriculum-Aufwärmphase7 Chat-/Prosaquellen erste 20K Schritte
20Filterung nach Form, nicht Zeichenhas_system_prompt_shape()
21Kohärenz-gesteuertes frühes Stoppenbigram/trigram/word/char auto-halt
22Checkpoint, Fortsetzen, SignaleFormat, SIGTERM/SIGUSR1, loss.json Kontinuität
23Stichproben-Audit & externe BewertungAuslesen eines Laufs, 9,5/10 Bereich
24Von microGPT zu ANDREA-120Mv1 Kollaps, v2 Korrekturen, v2.5 Patch, v3 Politur

Plus ein Begleiter: geometry_of_andrea betrachtet jede Schicht als Geometrie (Einbettungsraum, Attention als Projektion, Verlustoberfläche, Bandit als Spaziergang auf einem diskreten Simplex).


Empfohlene Reihenfolge

Aktivitäten 2-13 bauen einen funktionsfähigen Transformer auf. Springe vor zu Teil 2, wenn du bereits Transformers trainiert hast; kehre zurück, wenn die Neugier zuschlägt.


Jede Aktivität steht möglichst für sich. Mathematische Verweise nennen frühere Aktivitäten beim Namen (siehe Aktivität 5: scaled dot-product attention). Code-Verweise zeigen auf microgpt/microgpt_cuda.cu & microgpt/training_proxy.py in ~/git/uncloseai-cli/.

Wo wirst du anfangen?

Schau dir die 24 Aktivitäten + Geometrie-Beilage an und nenne eine Aktivität, mit der du starten möchtest, & einen Grund: Wissenslücke, berufliche Relevanz oder pure Neugier. Es gibt keine falsche Antwort; der Weg durch den Kurs gehört dir.