KI

Siehe auch

KI, Künstliche Intelligenz, AI, Artificial Intelligence, GPT, Sprachmodelle usw… ein kleiner Überblick.

Im Oktober 2018 veröffentlichte Google einen Preprint des BERT-Aufsatzes und startete so den KI-Hype.

Die Technik von beispielsweise Chat-Bots wie ChatGPT und anderen text-basierten KI-Applikationen basiert auf Large Language Models (LLMs). In der KI ist ein Transformer eine Methode, mit der ein Computer eine Zeichenfolge in eine andere Zeichenfolge übersetzen kann. Dies kann z. B. zur Übersetzung von Text aus einer Sprache in eine andere verwendet werden. Mithilfe von Selbstaufmerksamkeit (Self-Attention) lernt eine Transformer-Architektur, welche Teile einer Eingabesequenz für die nächste Vorhersage relevant sind. Transformer bilden das Rückgrat aller grossen Sprachmodelle (LLMs).

Tokens sind die kleinsten Einheiten, in die Text zerlegt wird. Ein Token kann einem Wort, einem Wortteil oder sogar einem einzelnen Zeichen entsprechen. Beliebte Tokenizer-Verfahren:

  • Byte-Pair Encoding (BPE)

  • SentencePiece / Unigram

  • WordPiece

Ein Tokenizer wandelt Rohtext in eine Sequenz von Token-IDs um, die das Modell nachher weiterverarbeitet.

Jeder Token wird durch einen Vektor (Embedding) repräsentiert. Diese Einbettungen bilden die Grundlage für alle weiteren Transformationen im Modell.

Beim Pre-Training lernt ein Modell allgemeine Sprachmuster an riesigen, ungekennzeichneten Textkorpora - vor dem Training für die eigentliche Aufgabe findet also zunächst ein Training mit beliebigen Texten aus dem Internet statt. Diese müssen vorher nicht aufwendig manuell annotiert werden. Hier hört man immer wieder von der Anzahl der „Parameter“, die bei den grössten Modellen bei mehreren hundert Milliarden liegt. Die Optimierung von Milliarden (bis hin zu einigen hundert Milliarden) Parametern erfordert enorme Rechenressourcen und Kosten (Schätzungen für Top-Modelle liegen im Bereich von mehreren hundert Millionen Euro). Die LLMs entwickeln hier bereits eine Art allgemeines Sprachgefühl, können also schon ordentliche Sätze bilden.

Bemerkung

Beim Pre-Training domiert das Framework PyTorch das Ökosystem (über 150 000 Modelle bei Hugging Face), gefolgt von JAX/Flax und TensorFlow.

Ein LLM wird dann für den vorgesehenen Einsatzzweck (z.B. für den Einsatz in einem Chatbot, der Fragen beantwortet) nachtrainiert. Man spricht hier von „Finetuning“. Dieses ist deutlich weniger aufwendig und kann mit moderater Rechenleistung in wenigen Stunden oder Tagen durchgeführt werden. Typische Aufgaben sind Übersetzen, Fragen beantworten oder Kundenfeedback als positiv oder negativ zu klassifizieren:

  • Parameter-Efficient Fine-Tuning (PEFT): Adapter, LoRA, QLoRA - feine Anpassungen an wenigen Parametern für schnellere Ergebnisse.

  • Retrieval-Augmented Generation (RAG): Dynamische Anbindung externer Wissensdatenbanken zur Verbesserung der Antwortgenauigkeit.

  • RLHF (Reinforcement Learning from Human Feedback): Optimierung anhand menschlicher Rückmeldungen und Belohnungssignale.

  • Supervised Fine-Tuning (SFT): Training mit kuratierten, annotierten Beispielen.

Inference bezeichnet den Einsatz eines fertigen Modells zur Textgenerierung oder -analyse. Gängige Tools:

  • GPT4All (lokale, quantisierte Modelle für Low-End-Hardware)

  • llama.cpp (CPU-Inference, LLaMA-Modelle)

  • Ollama (CLI/Desktop, lokale Container-Deployments)

  • text-generation-inference (Skalierbarer GPU-Server von Hugging Face)

Quantisierung reduziert Modellgrößen und Rechenaufwand:

  • GPTQ (3–4 bit)

  • Int8 / Int4

  • QLoRA: Q-formate plus LoRA-Adapter

  • GGUF: Von GGML weiterentwickeltes Containerformat mit Metadaten

Die so genannten „Foundation Models“ sind die Basis für spätere Anwendungen. Bis vor kurzem (2023) gab es keine guten Open Source Foundation Models: ChatGPT und Bing verwenden das nicht-offene Sprachmodell „GPT-4“ der Firma OpenAI. Ein weiteres nicht-offenes LLM ist „PaLM 2“ von Google, die Basis des früheren Chatbots „Bard“, heute „Gemini“. Seit Meta sein (aktuell (2023) zu GPT-4 nicht konkurrenzfähiges) LLM „LLaMA“ für nicht-kommerzielle Zwecke freigegeben hat, entwickeln sich aber darauf basierende Anwendungen rasant.

Foundation Models („Basismodelle“):

  • BLOOM von Stability AI (176 B Parameter; Apache 2.0)

  • Falcon 7B, Falcon 40B von Hugging Face

  • Gen-2 von Runway (Videogenerierung)

  • GPT-3, GPT-4 von OpenAI (Text, proprietär)

  • GPT-J, GPT-NeoX von EleutherAI (Apache 2.0)

  • LLaMA 2 von Meta (7 B, 13 B, 70 B Parameter; Open Use License; Text; wurde mit PyTorch trainiert)

  • Midjourney von Midjourney (Bildgenerierung)

  • Mistral 7B, Mixtral von Mistral(Open-Source, leistungsstark)

  • MoLFormer-XL von IBM (z.B. zur Entwicklung von mRNA-Medikamenten)

  • PaLM 2 von Google (Text, proprietär)

  • Qwen-7B, Qwen-14B von Alibaba

Auf LLaMA basierende LLMs:

  • vicuna

  • l13b-snoozy

Echte Open Source LLMs, auch für den kommerziellen Einsatz - aber deutlich schlechter:

  • Cerebras-GPT von Cerebras

  • ChatGLM (bilingual)

  • Gemma (Anthropic, nicht offen)

  • GPT-J von EleutherAI (Apache2-Lizenz)

  • mosaic MPT von MosaicML

  • MPT (MosaicML)

  • Open Assistent

  • Stable Diffusion (Bildgenerierung)

  • StableLM (3 B, 7 B Parameter)

  • Vicuna, Alpaca, Koala (Feintunings auf LLaMA 2)

File-Formate für LLMs:

  • .pt / .bin (PyTorch)

  • Checkpoint (Hugging Face Snapshots)

  • GGML (GPT-Generated Model Language): Dateformat und gleichzeitig ein Quantisierungsmechanismus

  • GGUF (GPT-Generated Unified Format): neu, Nachfolger von GGML

  • Safetensors (schnell, sicher)

Chat-Schnittstellen/Anwendungen zu einem LLM:

  • llama.cpp (Kommandozeile)

  • AutoGPT, BabyAGI (autonome Agenten orchestrieren)

  • GPT4All

  • LangChain, LlamaIndex (Agenten, RAG-Pipelines)

  • Ollama

  • OpenLLM (Deployment-Abstraktion für lokale Modelle)

  • text-generation-inference

Begriffe

  • BERT: Biderectional Encoder Representations from Transformers

  • Checkpoint: Gespeicherte Model-Version, die deployed werden kann.

  • Emergente Fähigkeiten: Unerwartete Kompetenzen in speziellen Tasks.

  • Few-Shot-Learning: Die Fragestellung darf keine Beispiele enthalten, aus denen die KI ableiten könnte, wie die Aufgabe korrekt gelöst wird.

  • GPT: Generative Pre-trained Transformer

  • Hugging Face: Zentrale Repos für Entwickler, die mit offenen KI-Modellen arbeiten.

  • Inferencing: Einsatz/Verwendung eines schon trainierten Sprachmodells.

  • Maximum Length: Maximale Antwortlänge in Token.

  • Parameter: Eine Variable, die ein LLM während des Trainings gelernt hat.

  • Prompt Batch Size: Amount of prompt tokens to process at once. Higher values can speed up reading prompts but will use more RAM.

  • Prompt Engineering: Kunst, effektive Eingaben zu formulieren.

  • Quantisierung: Vorgang, ein Modell so umzubauen, dass es mit kurzen Ganzzahlen rechnet.

  • RAG: Dokumenten-Retrieval kombiniert mit generativer Antwort.

  • Repeat Penalty Tokens: How far back in output to apply repeat penalty.

  • Repeat Penalty: Bestrafung von Wiederholungen.

  • RLHF: Reinforcement Learning from Human Feedback. Verstärkendes Lernen aus menschlichem Feedback.

  • Temperature: Steuerung der Kreativität / Zufälligkeit.

  • Token: Entspricht ungefähr einem Wort.

  • Top-K / Top-P (Nucleus Sampling): Sampling-Strategien für nächste Token. Top K = Only the top K most likely tokens will be chosen from. Top P = Only the most likely tokens up to a total probability of top_p can be chosen. Prevents choosing highly unlikely tokens, aka Nucleus Sampling.

  • Transformer: Eine bestimmte, von Google entwickelte Architektur neuronaler Netze. Damit kann ein Computer eine Zeichenfolge in eine andere Zeichenfolge übersetzen.

  • Zero-Shot / Few-Shot: Anfragen, für die die KIs kein Finetuning bekommen haben. Werden zum Testen der KI verwendet (Ausführung ohne bzw. mit sehr wenigen Beispielen).

Training - Grundlagen

Während grosse Sprachmodelle wie GPT (Generative Pre-trained Transformer) durch Vortraining mit grossen Datenmengen allgemeine Sprachmuster erlernen können, kann die Feinabstimmung mit spezifischen Daten deren Leistung bei speziellen Aufgaben weiter verbessern.

Um Textnachrichten zu trainieren, allgemein wie folgt vorgehen:

  1. Daten sammeln: Repräsentative Textkorpora sammeln. Alle relevanten Textnachrichten, die Informationen oder Fragen zu einem bestimmten Thema oder einer bestimmten Fragestellung enthalten, sammeln. Darauf achten, dass diese Texte ein breites Spektrum an Beispielen und Variationen abdecken, damit das Modell effektiv aus ihnen lernen kann.

  2. Data Preprocessing: Tokenisierung, Normalisierung, Bereinigung. Sobald der Datensatz zur Verfügung steht, alle Inkonsistenzen in der Formatierung bereinigen (z. B. zusätzliche Leerzeichen entfernen), den gesamten Text in Klein- oder Grossbuchstaben umwandeln und Abkürzungen und Akronyme standardisieren. Dies hilft dem Modell, die Texte besser zu verstehen.

  3. Annotation: Labeling für spezialisierte Tasks. Für jedes Beispiel im Datensatz eine Bezeichnung angeben, die beschreibt, worum es geht (z. B. „How to“, „Wie“, „What is“, „Was ist“, „Why“, „Warum“ usw.). Diese Beschriftungen können bei Bedarf als Tags zum Organisieren und Durchsuchen des Trainingssatzes verwendet werden.

  4. Training / Finetuning: Pre-Training oder PEFT je nach Ziel und Ressourcen. Sobald der Datensatz vorverarbeitet und beschriftet ist, wird das KI-Modell trainiert. Auf diese Weise kann es den Kontext dieser Texte besser verstehen und genauere Antworten geben.

  5. Evaluation: Automatisierte Benchmarks und menschliches Feedback. Nachdem das Modell mit den Daten trainiert wurde, Fragen stellen, die auf Beispielen aus dem Datensatz basieren, und anschliessend notwendige Anpassungen oder Verbesserungen am Modell vornehmen.

  6. Deployment: Auswahl geeigneter Inferenz-Engine und Quantisierungsstrategie.

Plattformen wie https://huggingface.co/ unterstützen bei diesem Prozess.

Built on 2025-07-14