Sprachmodell

01.05.2026 13:22

Definition

Ein Sprachmodell ist ein trainiertes neuronales Netzwerk, das die nächste Sequenz von Text-Token basierend auf vorangegangenen Tokens vorhersagt – die Grundlage für ChatGPT, Claude, Llama und andere generative KI-Systeme. Das Trade-off: je größer das Modell (Parameter-Zahl), desto besser die Qualität und der Fähigkeitsumfang, aber desto höher der Speicher- und Rechenbedarf beim Training und bei der Inference.

Mechanik

Sprachmodelle verwenden Transformer-Architektur mit Attention um Abhängigkeiten zwischen Tokens zu lernen. Während des Trainings wird das Modell auf Milliarden von Text-Tokens optimiert, um beim nächsten Token maximal korrekt zu raten – typischerweise mit Cross-Entropy-Loss. Bei der Inference wird iterativ ein Token nach dem anderen generiert (entweder gierig, Beam Search oder Sampling via Temperature), bis ein Stop-Token oder maximale Länge erreicht ist.

Beispiel

# Minimales Beispiel: Vorhersage des nächsten Tokens
import random

# Simulierte Token-Sequenz: [0, 5, 7] → nächstes Token ist 3
training_data = [
    ([0, 5], 7),
    ([5, 7], 3),
    ([7, 3], 2),
    ([3, 2], 9),
]

# Ein echtes Sprachmodell nutzt Transformer + Backprop auf Milliarden Tokens.
# Hier nur das Konzept: gegeben Context -> predict next token
def predict_next_token(context_tokens):
    # In der Praxis: Embeddings → Transformer-Layers → LogitsDecoding
    # Hier: einfache Frequenz-Basierung
    candidates = [val for ctx, val in training_data if ctx == tuple(context_tokens)]
    return candidates[0] if candidates else random.randint(0, 9)

# Autoregressive Generation
context = [0, 5]
generated = context.copy()
for _ in range(3):
    next_token = predict_next_token(context)
    generated.append(next_token)
    context = generated[-2:]  # sliding window

print("Generated sequence:", generated)
# Output: [0, 5, 7, 3, 2]

Praktisches Beispiel mit echter Inferenz-API:

# Mit Ollama (lokal):
ollama run llama2 "Erkläre Sprachmodelle in einem Satz."

# Mit llama.cpp + Python:
# - Download: Llama-2-7B-GGUF-Quantisierung
# - pip install llama-cpp-python
# - Einfaches Sampling: top_p=0.9, temp=0.7

Quellen