Generative KI-Systeme entwickeln - Chip Huyen - E-Book

Generative KI-Systeme entwickeln E-Book

Chip Huyen

0,0
43,90 €

-100%
Sammeln Sie Punkte in unserem Gutscheinprogramm und kaufen Sie E-Books und Hörbücher mit bis zu 100% Rabatt.

Mehr erfahren.
Beschreibung

Von der Idee zur KI-Anwendung – praxisnah und fundiert - Ein Leitfaden für alle wesentlichen Aspekte der Entwicklung generativer KI-Systeme, inklusive Prompt Engineering, RAG, Finetuning und Agenten - Das Buch bietet ein Framework für den Einsatz von KI in realen Anwendungen - Es deckt den kompletten Entwicklungszyklus von KI-Systemen ab, von der Modellentwicklung bis zum produktiven Betrieb   In diesem Praxishandbuch beschreibt Bestsellerautorin Chip Huyen die Werkzeuge des KI-Engineerings und den Prozess der Erstellung von KI-Anwendungen mithilfe generativer Foundation Models. Das Buch deckt den kompletten Entwicklungszyklus von KI-Systemen ab, von der Modellentwicklung bis zum produktiven Betrieb. Entwickler und Entwicklerinnen von KI-Anwendungen erfahren, wie sie sich in der KI-Landschaft zurechtfinden – bei Modellen, Datensätzen, Bewertungs-Benchmarks und der scheinbar unendlichen Zahl von möglichen Anwendungsmustern. Das Buch bietet damit einen praxisorientierten Rahmen für die Entwicklung produktionsreifer generativer KI-Systeme – mit klarem Fokus auf aktuellen Tools, Herausforderungen und Potenzialen im KI-Engineering. - Erfahren Sie, was KI-Engineering ist und wie es sich vom traditionellen Machine-Learning-Engineering unterscheidet - Machen Sie sich mit dem Prozess der KI-Anwendungsentwicklung vertraut und lernen Sie die typischen Herausforderungen sowie mögliche Lösungsansätze kennen - Erkunden Sie verschiedene Techniken zur Modellanpassung wie Prompt Engineering, RAG, Finetuning, Agenten und Dataset Engineering und verstehen Sie deren Funktionsweise - Untersuchen Sie die Engpässe hinsichtlich Latenz und Kosten bei der Bereitstellung von Foundation Models und lernen Sie, wie Sie diese überwinden können - Wählen Sie das passende Modell und die richtigen Metriken, Daten und Entwicklungsmuster für Ihre Anforderungen aus  

Das E-Book können Sie in Legimi-Apps oder einer beliebigen App lesen, die das folgende Format unterstützen:

EPUB
MOBI

Seitenzahl: 884

Veröffentlichungsjahr: 2025

Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.



Stimmen zum Buch Generative KI-Systeme entwickeln

Dieses Buch ist ein umfassender und gut strukturierter Leitfaden durch die wichtigsten Aspekte beim Bau generativer KI-Systeme. Es ist Pflichtlektüre für alle Experten und Expertinnen, die KI unternehmensweit einsetzen wollen.

– Vittorio Cretella, ehemaliger globaler CIO bei P&G und Mars

Chip Huyen versteht generative KI. Zudem ist sie eine ausgezeichnete Lehrerin und Autorin, deren Arbeiten Teams dabei geholfen haben, KI produktiv einzusetzen. Generative KI-Systeme entwickeln schöpft aus ihrem umfangreichen Wissen und dient als umfassender und ganzheitlicher Ratgeber, der meisterhaft auf alles eingeht, was zum Designen und Deployen generativer KI-Anwendungen in Produktivumgebungen erforderlich ist.

– Luke Metz, Mitschöpfer von ChatGPT, ehemaliger Research Manager bei OpenAI

Alle KI-Entwicklerinnen und -Entwickler, die reale Anwendungen bauen, sollten dieses Buch lesen. Es ist ein wichtiger Ratgeber für das Designen von KI-Systemen vom Anfang bis zum Ende – von der Modellentwicklung und -evaluation bis hin zum Deployment und zum Betrieb im großen Maßstab.

– Andrei Lopatenko, Director Search and AI, Neuron7

Dieses Buch ist ein unverzichtbarer Leitfaden für das Bauen von KI-Produkten, die auch im großen Maßstab funktionieren. Anders als andere Bücher, die sich auf Tools oder aktuelle Trends konzentrieren, die sich fortlaufend ändern, erhalten Sie bei Chip zeitloses Grundlagenwissen. Egal, ob Sie Produktmanager oder Entwicklerin sind – dieses Buch sorgt für eine effektive Zusammenarbeit zwischen funktionsübergreifenden Teams, weshalb es eine Pflichtlektüre für alle in der KI-Entwicklung ist.

– Aileen Bui, AI Product Operations Manager, Google

Dies ist die definitive Einführung in die KI-Entwicklung von einer der größten ML-Entwicklerinnen! Chip hat erfolgreich Projekte in jedem Stadium einer Firma begleitet und Erfahrungen gesammelt. Jetzt hat sie ihre Expertise erstmalig für neue KI-Entwicklerinnen und -Entwickler zusammengefasst, die in den Bereich einsteigen.

– swyx, Kurator, AI.Engineer

Generative KI-Systeme entwickeln ist ein praxisnaher Ratgeber, der die aktuellsten Informationen zur KI-Entwicklung bietet und der für Einsteiger wie für Expertinnen gleichermaßen hilfreich ist. Dieses Buch ist eine wichtige Quelle für alle, die robuste und skalierbare KI-Systeme bauen wollen.

– Vicki Reyzelman, Chief AI Solutions Architect, Mave Sparks

Generative KI-Systeme entwickeln ist ein umfassender Ratgeber, der als wichtige Referenz zum Verstehen und Implementieren von KI-Systemen in der Praxis dient.

– Han Lee, Director Data Science, Moody’s

Generative KI-Systeme entwickeln ist ein wichtiger Begleiter für alle, die Software mit generativer KI bauen! Es entmystifiziert die Technologie, hebt die Wichtigkeit der Evaluation hervor und zeigt, was getan werden sollte, um eine gute Qualität zu erreichen, bevor mit dem kostenintensiven Finetuning begonnen wird.

– Rafal Kawala, Senior AI Engineering Director, 16 Jahre Erfahrung in einem Fortune-500-Unternehmen

Hinweise zur Benutzung

Dieses E-Book ist urheberrechtlich geschützt. Mit dem Erwerb des E-Books haben Sie sich verachtet, pflichtet, die Urheberrechte anzuerkennen und einzuhalten. Sie sind berechtigt, dieses E-Book für persönliche Zwecke zu nutzen. Sie dürfen es auch ausdrucken und kopieren, aber auch dies nur für den persönlichen Gebrauch. Die Weitergabe einer elektronischen oder gedruckten Kopie an Dritte ist dagegen nicht erlaubt, weder ganz noch in Teilen. Und auch nicht eine Veröffentlichung im Internet oder in einem Firmennetzwerk.

Copyright-Vermerk

Das vorliegende Werk ist in all seinen Teilen urheberrechtlich geschützt. Alle Nutzungs- und Verwertungsrechte liegen bei den Autor*innen und beim Rheinwerk Verlag, insbesondere das Recht der Vervielfältigung und Verbreitung, sei es in gedruckter oder in elektronischer Form.

© Rheinwerk Verlag GmbH, Bonn 2026

Nutzungs- und Verwertungsrechte

Sie sind berechtigt, dieses E-Book ausschließlich für persönliche Zwecke zu nutzen. Insbesondere sind Sie berechtigt, das E-Book für Ihren eigenen Gebrauch auszudrucken oder eine Kopie herzustellen, sofern Sie diese Kopie auf einem von Ihnen alleine und persönlich genutzten Endgerät speichern.

Zu anderen oder weitergehenden Nutzungen und Verwertungen sind Sie nicht berechtigt.

So ist es insbesondere unzulässig, eine elektronische oder gedruckte Kopie an Dritte weiterzugeben. Unzulässig und nicht erlaubt ist des Weiteren, das E-Book im Internet, in Intranets oder auf andere Weise zu verbreiten oder Dritten zur Verfügung zu stellen. Eine öffentliche Wiedergabe oder sonstige Weiterveröffentlichung und jegliche den persönlichen Gebrauch übersteigende Vervielfältigung des E-Books ist ausdrücklich untersagt. Das vorstehend Gesagte gilt nicht nur für das E-Book insgesamt, sondern auch für seine Teile (z. B. Grafiken, Fotos, Tabellen, Textabschnitte).

Urheberrechtsvermerke, Markenzeichen und andere Rechtsvorbehalte dürfen aus dem E-Book nicht entfernt werden.

Die automatisierte Analyse des Werkes, um daraus Informationen insbesondere über Muster, Trends und Korrelationen gemäß § 44b UrhG (»Text und Data Mining«) zu gewinnen, ist untersagt.

Markenschutz

Die in diesem Werk wiedergegebenen Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. können auch ohne besondere Kennzeichnung Marken sein und als solche den gesetzlichen Bestimmungen unterliegen.

Haftungsausschluss

Ungeachtet der Sorgfalt, die auf die Erstellung von Text, Abbildungen und Programmen verwendet wurde, können weder Verlag noch Autor*innen, Herausgeber*innen oder Übersetzer*innen für mögliche Fehler und deren Folgen eine juristische Verantwortung oder irgendeine Haftung übernehmen.

Generative KI-Systeme entwickeln

KI-Engineering für die Praxis – vom Prompt Engineering bis zu RAG und Agenten

Chip Huyen

Übersetzung von Thomas Demmig

Wir hoffen, dass Sie Freude an diesem Buch haben und sich Ihre Erwartungen erfüllen. Falls Sie Anregungen, Wünsche und Kommentare haben, lassen Sie es uns wissen: [email protected].

Informationen zu unserem Verlag und Kontaktmöglichkeiten finden Sie auf unserer Verlagswebsite www.dpunkt.de. Dort können Sie sich auch umfassend über unser aktuelles Programm informieren und unsere Bücher und E-Books bestellen.

Autorin: Chip Huyen

Übersetzung: Thomas Demmig

Lektorat: Alexandra Follenius

Buchmanagement: Friederike Demmig

Copy-Editing: Sibylle Feldmann, www.richtiger-text.de

Satz: III-satz, www.drei-satz.de

Herstellung: Stefanie Weidner

Covergestaltung: Karen Montgomery, Michael Oréal, www.oreal.de

Das vorliegende Werk ist in all seinen Teilen urheberrechtlich geschützt. Alle Rechte vorbehalten, insbesondere das Recht der Übersetzung, des Vortrags, der Reproduktion, der Vervielfältigung auf fotomechanischen oder anderen Wegen und der Speicherung in elektronischen Medien.

Ungeachtet der Sorgfalt, die auf die Erstellung von Text, Abbildungen und Programmen verwendet wurde, können weder Verlag noch Autor*innen, Herausgeber*innen oder Übersetzer*innen für mögliche Fehler und deren Folgen eine juristische Verantwortung oder irgendeine Haftung übernehmen.

Die in diesem Werk wiedergegebenen Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. können auch ohne besondere Kennzeichnung Marken sein und als solche den gesetzlichen Bestimmungen unterliegen.

Die automatisierte Analyse des Werkes, um daraus Informationen insbesondere über Muster, Trends und Korrelationen gemäß § 44b UrhG (»Text und Data Mining«) zu gewinnen, ist untersagt.

Bibliografische Information der Deutschen Nationalbibliothek:

Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über http://dnb.dnb.de abrufbar.

ISBN Print: 978-3-96009-276-6

ISBN PDF: 978-3-96010-949-5

ISBN ePub: 978-3-96010-950-1

1. Auflage 2026

Authorized German translation of the English edition of AI Engineering: Building Applications with Foundation Models, ISBN 978-1-098-16630-4 © 2025 Developer Experience Advisory LLC. This translation is published and sold by permission of O’Reilly Media, Inc., which owns or controls all rights to publish and sell the same.

Dieses Buch erscheint in Kooperation mit O’Reilly Media, Inc. unter dem Imprint »O’REILLY«. O’REILLY ist ein Markenzeichen und eine eingetragene Marke von O’Reilly Media, Inc. und wird mit Einwilligung des Eigentümers verwendet.

Translation Copyright für die deutschsprachige Ausgabe © Rheinwerk Verlag, Bonn 2026

Rheinwerk Verlag GmbH • Rheinwerkallee 4 • 53227 Bonn

[email protected]

Inhalt

Vorwort

1

Einführung in das Bauen von KI-Anwendungen mit Foundation Models

Der Aufstieg des AI Engineering

Von Sprachmodellen zu Large Language Models

Von Large Language Models zu Foundation Models

Von Foundation Models zum AI Engineering

Anwendungsfälle für Foundation Models

Coding

Bild- und Videoproduktion

Texten

Lernen

Dialog-Bots

Informationsaggregation

Datenorganisation

Workflow-Automation

KI-Anwendungen planen

Evaluation des Anwendungsfalls

Erwartungen setzen

Meilensteinplanung

Wartung

Der AI-Engineering-Stack

Drei Schichten des KI-Stacks

AI Engineering versus ML Engineering

AI Engineering versus Full-Stack Engineering

Zusammenfassung

2

Foundation Models verstehen

Trainingsdaten

Mehrsprachige Modelle

Domänenspezifische Modelle

Modellieren

Modellarchitektur

Modellgröße

Post-Training

Supervised Finetuning

Preference Finetuning

Sampling

Grundlagen des Samplings

Sampling-Strategien

Test Time Compute

Strukturierte Ausgaben

Die statistische Natur der KI

Zusammenfassung

3

Evaluierungsmethoden

Herausforderungen beim Evaluieren von Foundation Models

Die Metriken von Sprachmodellen verstehen

Entropie

Kreuzentropie

Bits-per-Character und Bits-per-Byte

Perplexität

Interpretation und Anwendungsfälle für die Perplexität

Exakte Evaluation

Funktionale Korrektheit

Ähnlichkeitsmessung gegen Referenzdaten

Einführung in Embeddings

AI-as-a-Judge

Warum AI-as-a-Judge?

Wie Sie AI-as-a-Judge verwenden

Grenzen eines AI-as-a-Judge

Welche Modelle können als AI Judges agieren?

Modelle durch vergleichende Evaluation einstufen

Herausforderungen der vergleichenden Evaluation

Die Zukunft der vergleichenden Evaluierung

Zusammenfassung

4

KI-Systeme evaluieren

Evaluierungskriterien

Domänenspezifische Fähigkeiten

Generierungsfähigkeiten

Fähigkeit zum Befolgen von Anweisungen

Kosten und Latenz

Modellauswahl

Modellauswahl-Workflow

Modell bauen oder kaufen?

Öffentliche Benchmarks nutzen

Ihre Evaluierungs-Pipeline entwerfen

Schritt 1: Alle Komponenten in einem System evaluieren

Schritt 2: Eine Evaluierungsrichtlinie erstellen

Schritt 3: Methoden und Daten zur Evaluation definieren

Zusammenfassung

5

Prompt Engineering

Einführung in das Prompting

In-Context Learning: Zero-Shot und Few-Shot

System-Prompt und User-Prompt

Kontextlänge und Kontexteffizienz

Best Practices beim Prompt Engineering

Klare und explizite Anweisungen schreiben

Ausreichend Kontext bereitstellen

Komplexe Aufgaben in einfachere Unteraufgaben aufteilen

Dem Modell Zeit zum Denken geben

Über Ihre Prompts iterieren

Evaluieren Sie Prompt-Engineering-Tools

Prompts organisieren und versionieren

Defensive Prompt Engineering

Proprietäre Prompts und Reverse Prompt Engineering

Jailbreaking und Prompt Injection

Informationsextraktion

Verteidigung gegen Prompt-Angriffe

Zusammenfassung

6

RAG und Agenten

Rag

RAG-Architektur

Retrieval-Algorithmen

Retrieval-Optimierung

RAG für mehr als Texte

Agenten

Überblick über Agenten

Tools

Planung

Fehlerzustände von Agenten und deren Evaluation

Memory

Zusammenfassung

7

Optimieren

Überblick über das Optimieren

Wann man optimiert

Gründe für das Optimieren

Gründe gegen das Optimieren

Optimieren und RAG

Speicherengpässe

Backpropagation und trainierbare Parameter

Speichermathematik

Numerische Repräsentationen

Quantisierung

Optimierungstechniken

Parametereffizientes Optimieren

Model Merging und Multi-Task Finetuning

Optimierungstaktiken

Zusammenfassung

8

Dataset Engineering

Kuratieren von Daten

Datenqualität

Datenabdeckung

Datenquantität

Datenbeschaffung und Datenannotation

Datenaugmentation und Datensynthese

Warum Datensynthese?

Klassische Techniken der Datensynthese

KI-gestützte Datensynthese

Modelldestillation

Datenverarbeitung

Daten inspizieren

Daten deduplizieren

Daten bereinigen und filtern

Daten formatieren

Zusammenfassung

9

Inferenzoptimierung

Inferenzoptimierung verstehen

Überblick über die Inferenz

Metriken zur Inferenzperformance

KI-Beschleuniger

Inferenzoptimierung

Modelloptimierung

Optimieren des Inferenzservice

Zusammenfassung

10

Architektur beim AI Engineering und User-Feedback

Architektur beim AI Engineering

Schritt 1: Kontext erweitern

Schritt 2: Leitplanken installieren

Schritt 3: Router und Gateways für das Modell hinzufügen

Schritt 4: Latenz durch Caches verringern

Schritt 5: Agenten-Patterns hinzufügen

Monitoring und Observability

KI-Pipeline-Orchestrierung

User-Feedback

Dialog-Feedback extrahieren

Feedback-Design

Grenzen des Feedbacks

Zusammenfassung

Epilog

Index

Vorwort

Als ChatGPT herauskam, war ich, wie viele meiner Kollegen und Kolleginnen, verwirrt. Für mich überraschend war weder die Größe des Modells noch seine Fähigkeiten. Seit mehr als einem Jahrzehnt wusste die KI-Community, dass ein Modell besser wird, wenn man es größer macht. Im Jahr 2012 stellten die Autoren von AlexNet in ihrem bahnbrechenden Artikel fest, dass »… alle unsere Experimente zeigen, dass sich unsere Ergebnisse allein dadurch verbessern lassen, dass wir auf schnellere GPUs und die Verfügbarkeit größerer Datensätze warten.« (https://oreil.ly/XG3mv).1, 2

Überraschend für mich war die schiere Menge an Anwendungen, die dieser Fähigkeitsschub ermöglichte. Ich dachte, eine kleine Verbesserung in den Metriken der Modellqualität würde auch nur zu einer kleinen Verbesserung bei den Anwendungen führen. Stattdessen führte es zu einer Explosion neuer Möglichkeiten.

Diese neuen KI-Fertigkeiten steigerten nicht nur den Bedarf an KI-Anwendungen, sie senkten auch die Einstiegshürde bei der Entwicklung. Es ist so einfach geworden, mit dem Bauen von KI-Anwendungen loszulegen. Es ist sogar möglich, eine Anwendung zu erstellen, ohne eine einzige Zeile Code zu schreiben. Dieser Wechsel hat die KI von einer spezialisierten Disziplin in ein leistungsfähiges Entwicklungstool transformiert, das jeder nutzen kann.

Obwohl der Einsatz von KI heutzutage als neu erscheint, baut er auf Techniken auf, die es schon eine ganze Weile gibt. Artikel über die Modellierung von Sprache erschienen schon in den 1950er-Jahren. Anwendungen mit Retrieval-Augmented Generation (RAG) bauen schon auf Retrieval-Technologien auf, die die Grundlage für Systeme zum Suchen und Empfehlen bildeten, als der Begriff RAG noch gar nicht geprägt war. Die Best Practices zum Deployen klassischer Anwendungen zum maschinellen Lernen – systematische Experimente, rigorose Evaluation, fortlaufende Optimierung für schnellere und günstigere Modelle – haben weiterhin Gültigkeit, wenn Sie mit Anwendungen arbeiten, die Foundation Models nutzen.

Die Vertrautheit und die Einfachheit vieler KI-Engineering-Techniken können die Menschen zu der irrigen Annahme führen, es gäbe bei der KI-Entwicklung nichts Neues zu beachten. Auch wenn viele Prinzipien für das Bauen von KI-Anwendungen bestehen bleiben, sorgen die Größe und die verbesserten Fähigkeiten von KI-Modellen für Möglichkeiten und Herausforderungen, für die neue Lösungen erforderlich sind.

Dieses Buch behandelt den kompletten Prozess der Verwendung von Foundation Models zum Lösen realer Probleme vom Anfang bis zum Ende. Es kommen erprobte Techniken aus anderen Entwicklungsbereichen zum Einsatz, aber auch Techniken, die erst mit Foundation Models entstanden sind.

Ich wollte dieses Buch schreiben, weil ich etwas lernen wollte – und ich habe sehr viel gelernt. Ich habe aus den Projekten gelernt, an denen ich arbeitete, aus den gelesenen Artikeln und von den Personen, mit denen ich Gespräche geführt habe. Während des Schreibens dieses Buchs habe ich Notizen aus über 100 Unterhaltungen und Interviews verwendet, unter anderen mit Forschenden aus großen KI-Labs (OpenAI, Google, Anthropic …), Personen aus der Framework-Entwicklung (NVIDIA, Meta, Hugging Face, Anyscale, LangChain, LlamaIndex …), Führungskräften und KI-/Datenverantwortlichen in Firmen unterschiedlichster Größe, Produktmanagern, Community-Forschenden sowie unabhängigen Anwendungsentwicklerinnen und -entwicklern (siehe den Abschnitt »Danksagung« auf Seite 21).

Insbesondere von Leserinnen und Lesern früherer Versionen des Manuskripts habe ich gelernt. Sie stellten meine Annahmen auf die Probe, zeigten mir andere Perspektiven und konfrontierten mich mit neuen Problemen und Ansätzen. Einige Abschnitte dieses Buchs haben zudem Tausende von Kommentaren aus der Community erhalten, nachdem ich sie in meinem Blog geteilt habe (https://huyenchip.com/blog/). Dort fand ich oft andere Sichtweisen oder aber auch die Bestätigung von Hypothesen.

Ich hoffe, dass bei mir dieser Lernprozess nicht endet, nachdem Sie das Buch in Ihren Händen hatten – schließlich haben auch Sie Erfahrungen und Perspektiven, die einmalig sind. Ich freue mich sehr über Feedback zu diesem Buch – über X (https://x.com/chipro), LinkedIn (https://www.linkedin-com/in/chiphuyen) oder per E-Mail an [email protected].

Worum es in diesem Buch geht

Dieses Buch bietet einen Rahmen für das Anpassen von Foundation Models – zu denen sowohl Large Language Models (LLMs) als auch Large Multimodal Models (LMMs) gehören – an spezifische Anwendungen.

Es gibt viele verschiedene Wege, um eine Anwendung zu bauen. In diesem Buch wird eine Reihe von Lösungen umrissen, und auch Fragen werden vorgestellt, die Sie sich stellen können, um die beste Lösung für Ihre Anforderungen zu finden. Zu diesen vielen Fragen, bei deren Beantwortung Ihnen dieses Buch helfen kann, gehören unter anderem:

Sollte ich diese KI-Anwendung bauen?

Wie evaluiere ich meine Anwendung? Kann ich KI nutzen, um KI-Ausgaben zu bewerten?

Was führt zu Halluzinationen? Wie erkenne und vermeide ich Halluzinationen?

Was sind die Best Practices für das Prompt Engineering?

Wie funktioniert RAG? Was für Strategien kommen zum Einsatz?

Was ist ein Agent? Wie baue und evaluiere ich einen Agenten?

Wann optimiere ich ein Modell? Wann tue ich das nicht?

Wie viele Daten brauche ich? Wie bewerte ich die Qualität meiner Daten?

Wie mache ich mein Modell schneller, günstiger und sicher?

Wie erschaffe ich eine Feedback-Schleife, um meine Anwendung fortlaufend zu verbessern?

Dieses Buch wird Ihnen auch dabei helfen, sich in der ausufernden KI-Landschaft zurechtzufinden: Sie erfahren etwas über die Arten von KI-Modellen, über Evaluations-Benchmarks und über eine anscheinend unendliche Zahl von Anwendungsfällen und Applikationsmustern.

Der Inhalt dieses Buchs wird durch Fallstudien illustriert, an denen ich zum größeren Teil selbst gearbeitet habe und die durch viele Referenzen ergänzt und durch Expertinnen und Experten unterschiedlichsten Hintergrunds umfassend begutachtet wurden. Auch wenn dieses Buch zwei Jahre zum Entstehen brauchte, greift es auf meine Erfahrungen bei der Arbeit mit Sprachmodellen und ML-Systemen aus dem letzten Jahrzehnt zurück.

Wie schon mein früheres O’Reilly-Buch Designing Machine Learning Systems (DMLS) konzentriert sich dieses Buch auf die Grundlagen der KI-Entwicklung und nicht auf spezifische Tools oder APIs. Tools veralten schnell, aber die Grundlagen sollten länger gültig sein.3

Generative KI-Systeme entwickeln zusammen mit Designing Machine Learning Systems lesen

Das vorliegende Buch Generative KI-Systeme entwickeln (englisch AI Engineering, AIE) kann eine gute Ergänzung zu Designing Machine Learning Systems (DMLS) sein. DMLS konzentriert sich auf das Bauen von Anwendungen, die auf klassischen ML-Modellen aufbauen. Dafür sind mehr Annotationen an Datentabellen, Feature Engineering und Modelltraining erforderlich. AIE fokussiert sich darauf, Anwendungen zu bauen, die auf Foundation Models basieren – das beinhaltet notwendigerweise mehr Prompt Engineering, das Schaffen von Kontext und ein parametereffizientes Optimieren. Beide Bücher können für sich genutzt werden, und beide sind modular aufgebaut, sodass Sie sie unabhängig voneinander lesen können.

Da Foundation Models ML-Modelle sind, gibt es einige Konzepte, die für beide relevant sind. Ist ein Thema für AIE wichtig, wurde aber ausführlich in DMLS behandelt, werden Sie es trotzdem hier finden, wenn auch weniger umfangreich, dafür aber mit Verweisen auf relevanten Ressourcen.

Beachten Sie, dass viele Themen in DMLS, aber nicht in AIE behandelt werden – und umgekehrt. Das erste Kapitel dieses Buchs geht auch auf die Unterschiede zwischen klassischem ML Engineering und KI Engineering ein. Ein reales System beinhaltet oft sowohl klassische ML-Modelle als auch Foundation Models, daher ist meist Wissen über beides erforderlich.

Es ist oft eine Herausforderung, zu erkennen, ob etwas von Dauer sein wird. Ich verlasse mich da auf drei Kriterien. So bestimme ich für ein Problem, ob es das Ergebnis der grundlegenden Beschränkungen des Vorgehens von KI ist oder ob es mit besseren Modellen verschwinden wird. Ist ein Problem grundlegend, analysiere ich die Herausforderungen und mögliche Lösungen dazu. Ich fange gern erst mal einfach an, daher lege ich bei vielen Problemen mit der einfachsten Lösung los und steigere mich zu komplexeren Lösungen, wenn die Herausforderungen größer werden.

Dann tauche ich in ein umfassendes Netzwerk aus Forscherinnen und Entwicklern ein, die klüger sind als ich, und versuche, herauszufinden, was ihrer Meinung nach die wichtigsten Probleme und Lösungen sind.

Gelegentlich verlasse ich mich auch auf Lindy’s Law (https://en.wikipedia.org/wiki/Lindy_effect), das besagt, dass die restliche zu erwartende Lebensspanne einer Technologie proportional zu ihrem Alter ist. Gibt es also etwas schon eine Weile, gehe ich davon aus, dass es auch noch länger vorhanden sein wird.

In dieses Buch habe ich aber vereinzelt auch Konzepte aufgenommen, die meiner Meinung nach nur temporär sind, weil sie für die Anwendungsentwicklung manchmal direkt Nutzen bringen oder weil sie einen interessanten Lösungsansatz illustrieren.

Was dieses Buch nicht ist

Dieses Buch ist kein Tutorial. Wenn es spezifische Tools erwähnt und Pseudocodeschnipsel enthält, um bestimmte Konzepte zu illustrieren, erfahren Sie dadurch nicht, wie Sie ein Tool verwenden. Stattdessen bietet es einen Rahmen für das Auswählen von Tools. Sie finden hier viele Erläuterungen zu den Vor- und Nachteilen verschiedener Lösungen und Fragen, die Sie sich stellen sollten, wenn Sie eine Lösung bewerten. Wollen Sie ein Tool einsetzen, ist es im Allgemeinen einfach, Tutorials dafür online zu finden. KI-Chatbots sind ebenfalls ziemlich gut darin, Ihnen beim Einstieg in verbreitete Tools zu helfen.

Dieses Buch ist kein Buch zur ML-Theorie. Es erklärt nicht, was ein neuronales Netz ist oder wie Sie ein Modell von Grund auf bauen und trainieren. Es geht zwar auf viele theoretische Konzepte ein, die für das Buch direkt relevant sind, aber das Buch ist ein Praxisbuch, das sich darauf konzentriert, Ihnen beim Bauen erfolgreicher KI-Anwendungen zum Lösen realer Probleme zu helfen.

Es ist zwar möglich, ohne ML-Wissen Anwendungen zu bauen, die auf Foundation Models beruhen, aber Basiswissen über ML und Statistik kann dabei helfen, bessere Anwendungen zu erstellen und unnötige Probleme zu umgehen. Sie können dieses Buch ohne ML-Hintergrund lesen. Aber Sie werden beim Bauen von KI-Anwendungen effektiver sein, wenn Sie folgende Konzepte kennen:

Wahrscheinlichkeitskonzepte wie Sampling, Determinismus und Verteilung.

ML-Konzepte wie überwachtes und selbstüberwachtes Lernen, Log-Wahrscheinlichkeit, das Gradientenverfahren, Backpropagation, die Verlustfunktion und das Optimieren von Hyperparametern.

Die verschiedenen Architekturen neuronaler Netze, unter anderem Feedforward, Rekurrent und Transformer.

Metriken wie Originaltreue, F1, Präzision, Recall, Kosinus-Ähnlichkeit und Kreuzentropie.

Ist Ihnen all das noch nicht bekannt, müssen Sie sich keine Sorgen machen – in diesem Buch finden Sie entweder kurze Erläuterungen dazu oder Verweise auf Ressourcen, bei denen Sie sich schlaumachen können.

Für wen dieses Buch gemacht ist

Dieses Buch ist für alle, die mithilfe von Foundation Models reale Probleme lösen wollen. Es handelt sich um ein technisches Buch, daher richtet sich die Sprache an technische Rollen: KI-Entwickler, ML Engineers, Data Scientists, Entwicklungsmanagerinnen und an das technische Produktmanagement. Dieses Buch ist etwas für Sie, wenn Sie sich in einem der folgenden Szenarien wiederfinden:

Sie bauen oder optimieren eine KI-Anwendung – entweder von Anfang an, oder Sie wollen die Demophase hinter sich lassen und sie produktiv nutzen können. Eventuell haben Sie Probleme mit Halluzinationen, mit der Sicherheit, der Latenz oder den Kosten und brauchen zielgerichtete Lösungen.

Sie wollen den KI-Entwicklungsprozess Ihres Teams vereinfachen, ihn systematischer, schneller und zuverlässiger machen.

Sie wollen verstehen, wie Ihre Organisation Foundation Models nutzen kann, um den Gewinn zu steigern, und wie Sie dafür ein Team aufbauen können.

Sie profitieren auch dann von dem Buch, wenn Sie zu einer der folgenden Gruppen gehören:

Toolentwickler, die unterversorgte Bereiche der KI-Entwicklung erkennen wollen, um ihr Produkt dort platzieren zu können.

Forscherinnen, die Anwendungsfälle für die KI besser verstehen wollen.

Jobkandidaten, die sich darüber informieren wollen, welche Fähigkeiten notwendig sind, um eine Karriere als AI Engineer starten zu können.

Alle, die die Fähigkeiten und Grenzen der KI und ihren Einfluss auf die verschiedenen Rollen besser verstehen möchten.

Ich durchschaue Dinge gern vollständig, daher gehen einige Abschnitte vielleicht aus technischer Sicht etwas weiter. Viele Leserinnen und Leser früherer Versionen des Manuskripts freuten sich zwar über die vielen Details, aber eventuell ist das nicht für jeden etwas. Ich werde Ihnen einen Überblick geben, bevor es zu technisch wird. Sie können den folgenden Abschnitt dann gern überspringen, wenn Ihnen der ein bisschen zu weit geht!

Wie Sie sich im Buch zurechtfinden

Dieses Buch ist so strukturiert, dass es den typischen Prozess beim Entwickeln einer KI-Anwendung nachzeichnet. Im Folgenden beschreibe ich, wie dieser typische Prozess aussieht und wie jedes Kapitel in den Prozess passt. Weil das Buch modular aufgebaut ist, können Sie gern Abschnitte überspringen, mit denen Sie schon vertraut oder die für Sie nicht so relevant sind.

Bevor Sie sich dafür entscheiden, eine KI-Anwendung zu bauen, ist es erforderlich, zu verstehen, was zu diesem Prozess gehört, und sich folgende Fragen zu stellen: Ist diese Anwendung notwendig? Wird KI gebraucht? Muss ich die Anwendung selbst bauen? Das erste Kapitel des Buchs hilft Ihnen dabei, diese Fragen zu beantworten. Sie finden hier auch eine Reihe hilfreicher Anwendungsfälle, mit denen Sie ein Gefühl dafür bekommen können, was mit Foundation Models möglich ist.

Wissen im Bereich des maschinellen Lernens ist zwar nicht notwendig, um KI-Anwendungen zu bauen, aber es hilft, zu verstehen, wie ein Foundation Model hinter den Kulissen funktioniert, um das Beste aus ihm herauszuholen. In Kapitel 2 werden das Entstehen eines Foundation Model und die Designentscheidungen analysiert, die signifikanten Einfluss auf die darauf aufbauenden Anwendungen haben. Dazu gehören die Rezepte für die Trainingsdaten, die Modellarchitekturen und Größenordnungen und wie das Modell trainiert wird, damit es die menschlichen Anforderungen erfüllt. Dann berichte ich davon, wie ein Modell eine Antwort generiert. Das hilft dabei, scheinbar rätselhafte Verhaltensweisen wie Inkonsistenzen oder Halluzinationen zu erklären. Das Ändern der Generierungseinstellungen eines Modells ist zudem oft eine günstige und einfache Möglichkeit, dessen Performance deutlich zu verbessern.

Haben Sie sich dazu entschieden, eine Anwendung mit Foundation Models zu bauen, wird die Evaluation ein integraler Bestandteil jedes folgenden Schritts sein. Evaluation ist eine der schwersten – wenn nicht die schwerste – Herausforderung beim Entwickeln generativer KI-Systeme. Dieses Buch widmet ganze zwei Kapitel, die Kapitel 3 und 4, dem Erforschen verschiedener Evaluationsmethoden und deren Einsatz beim Erstellen einer zuverlässigen und systematischen Evaluations-Pipeline für Ihre Anwendung.

Bei einer gegebenen Anfrage hängt die Qualität der Antwort des Modells von den folgenden Aspekten ab (abgesehen von den Generierungseinstellungen des Modells):

von den Anweisungen dazu, wie sich das Modell verhalten soll,

dem Kontext, den das Modell nutzen kann, um auf die Anfrage zu reagieren, sowie

vom Modell selbst.

Die nächsten drei Kapitel des Buchs fokussieren sich darauf, wie man jeden dieser Aspekte optimiert, um die Performance eines Modells für eine Anwendung zu verbessern. In Kapitel 5 geht es um Prompt Engineering. Hier wird erklärt, was ein Prompt ist, warum Prompt Engineering funktioniert und welche Best Practices es dafür gibt. Außerdem geht es darum, wie böswillige Akteure Ihre Anwendung durch Prompt-Angriffe missbrauchen können und wie Sie Ihre Anwendung dagegen schützen.

In Kapitel 6 schauen wir uns an, warum der Kontext zum Generieren akkurater Antworten für ein Modell so wichtig ist. Dabei geht es vor allem um zwei relevante Anwendungs-Patterns für das Aufbauen eines Kontexts: RAG und agentenbasiert. Das RAG-Pattern ist besser verstanden, und es hat sich auch schon in Produktivumgebungen als erfolgreich erwiesen. Das agentenbasierte Pattern verspricht hingegen, leistungsfähiger zu sein, es ist aber komplexer und auch noch nicht ganz erforscht.

In Kapitel 7 geht es darum, wie Sie ein Modell an eine Anwendung anpassen, indem Sie es durch Optimieren verändern. Aufgrund der Größenordnung von Foundation Models ist das native Optimieren des Modells sehr speicherintensiv, und es wurden viele Techniken entwickelt, um mit weniger Speicherbedarf Modelle zu optimieren. Das Kapitel stellt unterschiedliche Ansätze beim Optimieren vor, ergänzt durch einen weiteren, eher experimentellen Ansatz – das Model Merging. Außerdem finden Sie hier einen mehr technisch ausgerichteten Abschnitt, der zeigt, wie Sie den Speicherbedarf eines Modells berechnen.

Aufgrund der Verfügbarkeit vieler Optimierungs-Frameworks ist der Optimierungsprozess selbst oft nicht kompliziert. Aber es ist schwierig, Daten dafür zu erhalten. Im nächsten Kapitel geht es daher um Daten – deren Beschaffen, Annotieren, Synthetisieren und Verarbeiten. Viele der Themen aus Kapitel 8 sind auch über das Optimieren hinaus relevant – unter anderem die Frage, was Datenqualität bedeutet und wie Sie die Qualität Ihrer Daten bewerten können.

Geht es in den Kapiteln 5 bis 8 um das Verbessern der Modellqualität, dreht es sich in Kapitel 9 darum, das Inferieren oder Schlussfolgern des Modells günstiger und schneller zu machen. Hier wird vorgestellt, wie Sie auf Ebene des Modells und des Inferenzservice Optimierungen vornehmen können. Nutzen Sie eine Modell-API – zum Beispiel weil jemand anderes Ihr Modell für Sie hostet –, wird diese API sehr wahrscheinlich die Inferenzoptimierung für Sie übernehmen. Aber wenn Sie Ihr Modell selbst hosten – entweder ein Open-Source-Modell oder ein selbst entwickeltes Modell –, werden Sie viele der in diesem Kapitel vorgestellten Techniken implementieren müssen.

Das letzte Kapitel des Buchs führt die verschiedenen im Buch vorgestellten Konzepte zusammen, um eine Anwendung vom Anfang bis zum Ende zu bauen. Der zweite Teil des Kapitels fokussiert sich mehr auf das Produkt. Hier geht es darum, wie Sie ein System zum Benutzer-Feedback designen, das Ihnen dabei hilft, nützliches Feedback zu erhalten und für eine gute User Experience zu sorgen.

Hinweis

In diesem Buch verwende ich oft das »wir«, mit dem ich mich auf Sie (als Leserin oder Leser) und mich beziehe. Das ist eine alte Angewohnheit aus meiner Zeit als Dozentin, in der ich das Schreiben als gemeinsame Lernerfahrung für die Autorin und die Leser betrachtet habe.

In diesem Buch genutzte Konventionen

Die folgenden typografischen Konventionen werden in diesem Buch genutzt:

Kursiv

Für neue Begriffe, URLs, E-Mail-Adressen, Dateinamen und Dateierweiterungen.

Nichtproportionalschrift

Für Programmlistings, aber auch für Codefragmente in Absätzen, wie zum Beispiel Variablen- oder Funktionsnamen, Datenbanken, Datentypen, Umgebungsvariablen, Anweisungen und Schlüsselwörter.

Fette Nichtproportionalschrift

Für Befehle und anderen Text, der genau so vom Benutzer eingegeben werden sollte.

Kursive Nichtproportionalschrift

Für Text, der vom Benutzer durch eigene Werte ersetzt werden sollte.

Dieses Symbol steht für einen Tipp oder Vorschlag.

Dieses Symbol steht für eine allgemeine Anmerkung.

Dieses Symbol steht für eine Warnung oder Vorsichtsmaßnahme.

Verwendung von Codebeispielen

Zusätzliches Material (Codebeispiele, Übungen und so weiter) finden Sie zum Herunterladen unter https://github.com/chiphuyen/aie-book. Das Repository enthält auch zusätzliche Ressourcen zum Entwickeln generativer KI-Systeme, unter anderem wichtige Artikel und nützliche Tools. Außerdem werden hier Themen behandelt, die den Rahmen des Buchs sprengen würden. Wer am Prozess des Schreibens dieses Buchs interessiert ist, findet in diesem GitHub-Repository zudem Informationen und Statistiken, die hinter die Kulissen schauen.

Dieses Buch soll Ihnen bei Ihrer Arbeit helfen. Ganz allgemein gilt: Wenn in diesem Buch Beispielcode angeboten wird, können Sie ihn in Ihren Programmen und Dokumentationen verwenden. Sie müssen sich dafür nicht unsere Erlaubnis einholen, es sei denn, Sie reproduzieren einen großen Teil des Codes. Schreiben Sie zum Beispiel ein Programm, das mehrere Teile des Codes aus diesem Buch nutzt, brauchen Sie keine Erlaubnis. Verkaufen oder vertreiben Sie Beispiele aus O’Reilly-Büchern, brauchen Sie eine Erlaubnis. Beantworten Sie eine Frage, indem Sie dieses Buch und Beispielcode daraus zitieren, benötigen Sie keine Erlaubnis. Binden Sie einen großen Anteil des Beispielcodes aus diesem Buch in die Dokumentation Ihres Produkts ein, brauchen Sie eine Erlaubnis.

Wir freuen uns über eine Erwähnung, verlangen sie aber nicht. Eine Erwähnung enthält üblicherweise Titel, Autor, Verlag und ISBN, zum Beispiel: »Generative KI-Systeme entwickeln von Chip Huyen (O’Reilly). Copyright 2026 Rheinwerk Verlag GmbH, ISBN 978-3-96009-276-6.«

Falls Sie befürchten, zu viele Codebeispiele zu verwenden oder die oben genannten Befugnisse zu überschreiten, kontaktieren Sie uns unter [email protected].

Danksagung

Dieses Buch hätte in seiner Entstehung viel länger gebraucht, und viele wichtige Themen würden fehlen, wenn mir nicht so viele wunderbare Menschen dabei geholfen hätten.

Weil der Zeitrahmen für das Projekt knapp war – zwei Jahre für ein Buch mit 150.000 Wörtern, das so viele Themen abdeckt –, bin ich den technischen Reviewern dankbar, die sich ihre wertvolle Zeit genommen haben, um dieses Buch so schnell zu begutachten.

Luke Metz ist ein toller Gesprächspartner, der meine Annahmen überprüft und mich davon abgehalten hat, den falschen Weg einzuschlagen. Han-Chung Lee – immer auf dem neuesten Stand bei KI und der Community-Entwicklung – wies mich auf Ressourcen hin, die ich übersehen hatte. Luke und Han waren die ersten, die meine Entwürfe zu sehen bekamen, bevor ich sie an die nächste Runde technischer Reviewer schickte, und ich stehe für immer in ihrer Schuld, weil sie meine Irrungen und Wirrungen ausgehalten haben.

Vittorio Cretella und Andrei Lopatenko haben schon KI-Innovationen in Fortune-500-Unternehmen geleitet und konnten mir sehr wertvolles Feedback liefern, das tiefes technisches Wissen und Einblicke aus der Führungsebene kombinierte. Vicki Reyzelman hat mir dabei geholfen, meine Inhalte zu erden und sie für Lesende mit Softwareentwicklungshintergrund relevant zu halten.

Eugene Yan, ein guter Freund und ausgezeichneter angewandter Forscher, unterstützte mich technisch und emotional. Shawn Wang (swyx) lieferte einen wichtigen Stimmungscheck, der mir dabei half, mehr Vertrauen in mein Buch zu haben. Sanyam Bhutani, einer der besten Lernenden und einer der bescheidensten Menschen, die ich kenne, gab mir nicht nur sorgsam geschriebenes schriftliches Feedback, er nahm auch Videos auf, um sein Feedback zu erläutern.

Kyle Kranen ist ein ausgezeichneter Tutor, der seine Kollegen interviewt hat und mir eine wunderbare Zusammenfassung ihres Optimierungsprozesses zukommen ließ, die einen Leitfaden für das Optimierungskapitel lieferte. Mark Saroufim, ein neugieriger Geist, der immer seine Finger am Puls der interessantesten Probleme hat, lieferte mir tolle Ressourcen zur Effizienz. Sowohl Kyles als auch Marks Feedback waren entscheidend für die Kapitel 7 und 9.

Kittipat »Bot« Kampa hat nicht nur viele meiner Fragen beantwortet, sondern mir auch detailliert visualisiert, wie er über KI-Plattformen denkt. Ich freue mich über Denys Linkovs systematischen Ansatz zur Evaluation und zur Plattformentwicklung. Chetan Tekur lieferte tolle Beispiele, die mir dabei halfen, KI-Anwendungs-Patterns zu strukturieren. Auch möchte ich Shengzhi (Alex) Li und Hien Luu für ihr durchdachtes Feedback zu meinem Entwurf zur KI-Architektur danken.

Aileen Bui ist ein Schatz – sie hat wunderbares Feedback und Beispiele aus Sicht einer Produktmanagerin beigetragen. Todor Markov gab mir einen direkt umsetzbaren Rat für das Kapitel zu RAG und Agenten. Und Tal Kachman ist in letzter Minute eingesprungen, um das Kapitel zu Optimierungen ins Ziel zu bringen.

Es gibt so viele wunderbare Menschen, deren Gesellschaft und Gespräche mir Ideen für den Inhalt dieses Buchs lieferten. Ich habe mein Bestes versucht, alle Namen mit aufzunehmen, aber aufgrund der inhärenten Fehlerhaftigkeit des menschlichen Gehirns sind zweifelsohne viele nicht aufgeführt. Wenn ich vergessen habe, einen Namen zu erwähnen, dann liegt das nicht daran, dass ich den Beitrag nicht geschätzt habe. Bringen Sie sich bitte in Erinnerung, sodass ich das so schnell wie möglich nachholen kann!

Andrew Francis, Anish Nag, Anthony Galczak, Anton Bacaj, Balázs Galambosi, Charles Frye, Charles Packer, Chris Brousseau, Eric Hartford, Goku Mohandas, Hamel Husain, Harpreet Sahota, Hassan El Mghari, Huu Nguyen, Jeremy Howard, Jesse Silver, John Cook, Juan Pablo Bottaro, Kyle Gallatin, Lance Martin, Lucio Dery, Matt Ross, Maxime Labonne, Miles Brundage, Nathan Lambert, Omar Khattab, Phong Nguyen, Purnendu Mukherjee, Sam Reiswig, Sebastian Raschka, Shahul ES, Sharif Shameem, Soumith Chintala, Teknium, Tim Dettmers, Undi95, Val Andrei Fajardo, Vern Liang, Victor Sanh, Wing Lian, Xiquan Cui, Ying Sheng und Kristofer.

Ich möchte auch all den Leserinnen und Lesern früher Versionen des Manuskripts danken, die mir Feedback gegeben haben. Douglas Bailley ist ein Super-Leser, der so viel wertvolles Feedback lieferte. Dank auch an Nutan Sahoo, die einen eleganten Weg für das Erläutern von Perplexität vorgeschlagen hat.

Ich habe aus den Onlinediskussionen mit so vielen Menschen sehr viel gelernt. Vielen Dank an alle, die meine Fragen beantwortet, meine Posts kommentiert oder mir eine E-Mail mit ihren Gedanken geschickt haben.

Natürlich hätte sich das Buch nicht ohne das Team von O’Reilly umsetzen lassen, insbesondere mit meinen Development Editors (Melissa Potter, Corbin Collins, Jill Leonard) und meinem Production Editor (Elizabeth Kelly). Liz Wheeler ist die scharfsichtigste Korrektorin, mit der ich je zusammengearbeitet habe. Nicole Butterfield war die Kraft, die das Buch von der Idee bis zum finalen Produkt begleitet hat. Dieses Buch ist letztendlich eine Kumulation unschätzbarer Lektionen, die ich im Laufe meiner Karriere gelernt habe. Diese Lektionen verdanke ich meinen außerordentlich kompetenten und geduldigen aktuellen und ehemaligen Kolleginnen und Kollegen. Von jeder Person, mit der ich zusammengearbeitet habe, lernte ich etwas Neues über ML und dessen Einsatz.

1

Ilya Sutskever, einer der Autoren des AlexNet-Artikels, begründete später OpenAI mit und setzte dieses Wissen dann mit GPT-Modellen in die Realität um.

2

Selbst mein kleines Projekt aus dem Jahr 2017 (

https://x.com/chipro/status/937384141791698944

), bei dem ein Sprachmodell zum Bewerten der Qualität von Übersetzungen genutzt wurde, kam zu dem Schluss, dass wir »ein besseres Sprachmodell brauchten«.

3

Das Unterrichten eines Kurses zum Einsatz von TensorFlow im Jahr 2017 hat mir schmerzhaft gezeigt, wie schnell Tools und Tutorien veralten.

KAPITEL1Einführung in das Bauen von KI-Anwendungen mit Foundation Models

Dürfte ich nur ein Wort nutzen, um die KI nach 2020 zu beschreiben, wäre es Größe. Die KI-Modelle hinter Anwendungen wie ChatGPT, Google Gemini und Midjourney sind so groß, dass sie einen nicht vernachlässigbaren Anteil am weltweiten Stromverbrauch haben (https://oreil.ly/J0IyO) und es das Risiko gibt, dass es bald nicht mehr genug öffentlich verfügbare Internetdaten gibt, um sie zu trainieren (https://arxiv.org/abs/2211.04325).

Das Hochskalieren von KI-Modellen hat zwei bedeutende Konsequenzen. Erstens werden KI-Modelle immer leistungsfähiger, und sie können mehr Aufgaben erledigen, was zu mehr Anwendungsmöglichkeiten führt. Mehr Personen und Teams nutzen KI, um ihre Produktivität zu steigern, ökonomischen Wert zu schaffen und die Lebensqualität zu verbessern.

Zweitens sind für das Trainieren von Large Language Models (LLMs) Daten, Computerressourcen und spezialisierte Talente erforderlich, die sich nur ein paar wenige Organisationen leisten können. Das hat zum Entstehen von Model-as-a-Service geführt: Modelle, die von diesen wenigen Organisationen entwickelt werden, stehen anderen als Service zur Verfügung. Jeder, der Anwendungen mithilfe von KI bauen möchte, kann diese Modelle nun nutzen, ohne vorab in das Erstellen solch eines Modells investieren zu müssen.

Kurz gesagt, ist der Bedarf nach KI-Anwendungen gewachsen, während die Einstiegshürde für das Bauen dieser Anwendungen niedriger wurde. Das hat das AI Engineering – das Schaffen von Anwendungen, die auf fertig verfügbaren Modellen aufbauen – zu einer der am schnellsten wachsenden Entwicklungsdisziplinen gemacht. Das Bauen von Anwendungen, die auf Machine-Learning-(ML-)Modellen basieren, ist nicht neu. Lange bevor LLMs so bekannt wurden, hat KI schon viele Anwendungen unterfüttert, unter anderem Produktempfehlungen, Betrugserkennung und Abwanderungsvorhersagen. Viele Prinzipien beim produktiven Einsatz von KI-Anwendungen bleiben zwar bestehen, aber die neue Generation sehr großer, direkt verfügbarer Modelle bringt neue Möglichkeiten und Herausforderungen mit sich, die den Fokus dieses Buchs ausmachen.

Dieses Kapitel beginnt mit einem Überblick über Foundation Models – die entscheidende Komponente hinter der Explosion des AI Engineering. Dann werde ich eine Reihe erfolgreicher KI-Anwendungsfälle vorstellen, die alle zeigen, worin KI gut ist – und worin nicht. Da die Fähigkeiten von KI täglich wachsen, wird es zunehmend schwieriger, zukünftige Möglichkeiten vorherzusagen. Aber bestehende Anwendungs-Patterns können dabei helfen, aktuelle Chancen zu erkennen und Hinweise darauf zu erhalten, wie KI in der Zukunft eingesetzt werden könnte.

Am Ende des Kapitels erhalten Sie noch einen Überblick über den neuen KI-Stack sowie darüber, was sich durch Foundation Models geändert hat, was gleich bleibt und wie sich die Rolle eines AI Engineer heutzutage von der eines klassischen ML Engineer unterscheidet.1

Der Aufstieg des AI Engineering

Foundation Models sind aus Large Language Models entstanden, die wiederum normale Sprachmodelle als Vorgänger hatten. Anwendungen wie ChatGPT und GitHub Copilot scheinen zwar aus dem Nichts gekommen zu sein, aber sie sind das Ergebnis von Dekaden technologischen Fortschritts, wobei die ersten Sprachmodelle in den 1950er-Jahren entstanden. Dieser Abschnitt verfolgt die zentralen Durchbrüche, die die Evolution von Sprachmodellen zu AI Engineering möglich gemacht haben.

Von Sprachmodellen zu Large Language Models

Es gibt Sprachmodelle zwar schon eine ganze Weile, aber sie konnten erst durch selbstüberwachtes Lernen (Self-Supervision) so groß werden, wie sie heute sind. Dieser Abschnitt vermittelt Ihnen einen kurzen Überblick über Sprachmodelle und was selbstüberwachtes Lernen bedeutet. Sind Sie damit schon vertraut, können Sie ihn gern überspringen.

Sprachmodelle

Ein Sprachmodell codiert statistische Informationen über eine oder mehrere Sprachen. Intuitiv gesagt, teilt uns diese Information mit, wie wahrscheinlich ein Wort in einem gegebenen Kontext erscheinen wird. Beim Kontext »My favorite color is ____« wird ein Sprachmodell, das Englisch codiert, beispielsweise »blue« häufiger als »car« vorhersagen.

Die statistische Natur von Sprachen wurde schon vor Jahrhunderten erkannt. In der Geschichte »Die tanzenden Männchen« aus dem Jahr 1905 nutzt Sherlock Holmes einfache statistische Informationen zur englischen Sprache, um Sequenzen mysteriöser Strichmännchen zu entschlüsseln. Da der am häufigsten vorkommende Buchstabe im Englischen das E ist, folgert Holmes, dass das am häufigsten eingesetzte Strichmännchen für ein E stehen muss.

Später hat Claude Shannon ausgefeiltere Statistiken genutzt, um feindliche Nachrichten im Zweiten Weltkrieg zu entschlüsseln. Seine Arbeit zum Modellieren der englischen Sprache wurde in seinem bahnbrechenden Artikel »Prediction and Entropy of Printed English« aus dem Jahr 1951 veröffentlicht (https://oreil.ly/G_HBp). Viele in diesem Artikel erstmals vorgestellten Konzepte – einschließlich der Entropie – werden auch heute noch zur Sprachmodellierung verwendet.

Damals beinhaltete ein Sprachmodell eine Sprache. Heutzutage kann ein Sprachmodell aber mehrere Sprachen enthalten.

Die Basiseinheit eines Sprachmodells ist das Token. Ein Token kann ein Zeichen, ein Wort oder ein Teil eines Worts sein (wie -tion), und zwar abhängig vom Modell.2 So teilt beispielsweise GPT-4 – ein Modell hinter ChatGPT – die Phrase »I can’t wait to build awesome AI applications« in neun Tokens auf, wie Sie in Abbildung 1.1 sehen können. Beachten Sie, dass das Wort »can’t« in diesem Beispiel in die zwei Tokens can und ’t unterteilt wird. Auf der OpenAI-Website (https://oreil.ly/0QI91) können Sie sehen, wie unterschiedlich die verschiedenen OpenAI-Modelle Text in Tokens umwandeln.

Abbildung

1.1

: Ein Beispiel für das Tokenisieren einer Phrase durch GPT-4

Der Prozess des Aufteilens des Texts in Tokens wird als Tokenisierung bezeichnet. Bei GPT-4 hat ein Token im Durchschnitt die Länge eines Dreiviertelworts (https://oreil.ly/EYccr). 100 Tokens sind also ungefähr 75 Wörter.

Die Menge aller Tokens, mit denen ein Modell arbeiten kann, wird als dessen Vokabular bezeichnet. Sie können mit wenigen Tokens eine große Anzahl an unterschiedlichen Wörtern aufbauen – genau so, wie Sie mit den vergleichsweise wenigen Buchstaben des Alphabets viele Wörter erschaffen können. Das Modell Mixtral 8x7B (https://oreil.ly/bxMcW) besitzt eine Vokabulargröße von 32.000 Tokens. Die Vokabulargröße von GPT-4 beträgt 100.256 Tokens (https://github.com/openai/tiktoken/blob/main/tiktoken/model.py). Die Tokenisierungsmethode und die Größe des Vokabulars werden von den Entwicklerinnen und Entwicklern des Modells festgelegt.

Warum nutzen Sprachmodelle Tokens statt Wörter oder Buchstaben als Einheit? Dafür gibt es drei zentrale Gründe:

Verglichen mit Zeichen, erlauben Tokens dem Modell, Wörter in Komponenten mit Bedeutung aufzuteilen. So lässt sich »cooking« beispielsweise in »cook« und »ing« aufteilen – beides Komponenten mit einer Bedeutung für das ursprüngliche Wort.

Weil es weniger unterschiedliche Tokens als unterschiedliche Wörter gibt, verringert sich die Größe des Modellvokabulars. Das macht das Modell effizienter (wie in

Kapitel 2

besprochen).

Tokens können dem Modell dabei helfen, unbekannte Wörter zu verarbeiten. Ein ausgedachtes Wort wie »chatgpting« könnte beispielsweise in »chatgpt« und »ing« unterteilt werden, sodass das Modell die Struktur verstehen kann. Tokens sind ein Mittelweg zwischen weniger Einheiten als Wörtern und dem Beibehalten der Bedeutung im Vergleich zu einzelnen Zeichen.

Es gibt zwei Haupttypen von Sprachmodellen: maskierte Sprachmodelle und autoregressive Sprachmodelle. Sie unterscheiden sich darin, welche Informationen sie nutzen können, um ein Token vorherzusagen:

Maskierte Sprachmodelle

Ein maskiertes Sprachmodell wird darauf trainiert, fehlende Tokens irgendwo in einer Sequenz vorherzusagen, wobei der Kontext vor und nach den fehlenden Tokens zum Einsatz kommt. Im Prinzip wird ein maskiertes Sprachmodell also darauf trainiert, Lücken zu füllen. Ist der Kontext beispielsweise »My favorite is blue«, sollte ein maskiertes Sprachmodell diese Lücke also sehr wahrscheinlich mit »color« vorhersagen. Ein bekanntes Beispiel für ein maskiertes Sprachmodell ist Bidirectional Encoder Representations from Transformers bzw. BERT (Devlin et al., 2018, https://arxiv.org/abs/1810.04805).

Aktuell kommen maskierte Sprachmodelle häufig für nicht generative Aufgaben wie Sentimentanalyse und Textklassifikation zum Einsatz. Sie sind außerdem nützlich, wenn ein Verständnis des gesamten Kontexts erforderlich ist, etwa beim Debuggen von Code, wo ein Modell sowohl den vorherigen wie auch den folgenden Code verstehen muss, um Fehler erkennen zu können.

Autoregressive Sprachmodelle

Ein autoregressives Sprachmodell ist darauf trainiert, das nächste Token in einer Sequenz vorherzusagen und dabei nur die vorherigen Tokens zu berücksichtigen. Es sagt vorher, was in »My favorite color is ___« als Nächstes kommt.3 Ein autoregressives Modell kann fortlaufend ein Token nach dem anderen generieren. Heutzutage sind autoregressive Sprachmodelle die Modelle der Wahl, wenn es um das Generieren von Text geht, daher sind sie auch viel verbreiteter als maskierte Sprachmodelle.4

In Abbildung 1.2 sehen Sie diese beiden Arten von Sprachmodellen.

Abbildung

1.2

: Autoregressive und maskierte Sprachmodelle

In diesem Buch beziehe ich mich bei Sprachmodell immer auf ein autoregressives Modell, sofern nicht anders erwähnt.

Die Ausgaben von Sprachmodellen haben ein offenes Ende. Ein Sprachmodell kann sein festes, abgeschlossenes Vokabular nutzen, um unendlich viele mögliche Ausgaben zu erzeugen. Ein Modell, das Ausgaben mit offenem Ende generieren kann, wird als generativ bezeichnet, daher der Begriff generative KI.

Sie können sich ein Sprachmodell als Vervollständigungsmaschine vorstellen: Mit einem gegebenen Text (Prompt) versucht es, diesen Text zu vervollständigen. Hier ein Beispiel:

Prompt (vom User): "To be or not to be"

Vervollständigung (vom Sprachmodell): ", that is the question."

Es ist wichtig, sich darüber im Klaren zu sein, dass Vervollständigungen Vorhersagen sind, die auf Wahrscheinlichkeiten basieren, aber es gibt keine Garantie dafür, dass sie korrekt sind. Diese statistische Natur von Sprachmodellen macht ihren Einsatz gleichermaßen spannend wie frustrierend. Wir werden darauf genauer in Kapitel 2 eingehen.

So einfach sie klingt, so unglaublich mächtig ist die Vervollständigung auch. Viele Aufgaben – unter anderem Übersetzungen, Zusammenfassungen, Coding und das Lösen mathematischer Probleme – lassen sich als Vervollständigungsaufgaben verpacken. So würde beispielsweise ein Sprachmodell mit dem Prompt »Wie geht es dir auf Französisch ist …« diesen mit »Comment ça va« vervollständigen und damit aus einer in eine andere Sprache übersetzen können.

Ein weiteres Beispiel: Den Prompt

Frage: Ist diese E-Mail eventuell Spam? Dies ist die E-Mail: <E-Mail-Inhalt> Antwort:

könnte ein Sprachmodell mit »Vermutlich Spam« vervollständigen, was es in einen Spam-Klassifikator verwandeln würde.

Vervollständigung ist zwar mächtig, aber nicht das Gleiche wie die Teilnahme an einem Dialog. Stellen Sie beispielsweise einer Vervollständigungsmaschine eine Frage, kann sie das von Ihnen Gefragte durch eine weitere Frage ergänzen, statt die Frage zu beantworten. Abschnitt »Post-Training« auf Seite 100 in Kapitel 2 geht darauf ein, wie Sie ein Modell dazu bringen können, passend auf die Anfrage eines Users zu reagieren.

Selbstüberwachtes Lernen

Ein Sprachmodell ist nur einer von vielen ML-Algorithmen. Es gibt auch Modelle zur Objekterkennung, zur Themenmodellierung, für Empfehlungssysteme, zur Wettervorhersage, zur Vorhersage von Aktienwerten und so weiter. Was ist dann so besonders an Sprachmodellen, dass sie im Mittelpunkt des enormen Wachstums stehen, den das ChatGPT-Momentum ausgelöst hat?

Die Antwort ist, dass sich Sprachmodelle per selbstüberwachtes Lernen trainieren lassen, während für viele andere Modelle eine Überwachung erforderlich ist. Überwachen bezieht sich auf das Trainieren von ML-Algorithmen mithilfe gelabelter Daten, bei denen das Beschaffen teuer und langwierig sein kann. Selbstüberwachtes Lernen kann dabei helfen, den Flaschenhals des Auszeichnens von Daten zu überwinden, sodass größere Datensätze zum Anlernen der Modelle erstellt werden können – was letztendlich größere Modelle erlaubt. Den Grund dafür erfahren Sie gleich.

Beim Überwachen zeichnen Sie Beispiele mit Labels aus, um dem Modell zu zeigen, was für ein Ergebnis Sie sich wünschen. Dann trainieren Sie das Modell mit diesen Beispielen. Ist das Modell trainiert, kann es auf neue Daten angewendet werden. Um beispielsweise ein Modell zur Betrugserkennung zu trainieren, nutzen Sie Beispiele von Transaktionen, die jeweils mit »Betrug« oder »Kein Betrug« gelabelt sind. Hat das Modell aus diesen Beispielen gelernt, können Sie es nutzen, um vorherzusagen, ob eine Transaktion betrügerisch ist.

Der Erfolg von KI-Modellen in den 2010er-Jahren liegt in der Überwachung. Alex-Net, das Modell, das die Deep-Learning-Revolution auslöste (Krizhevsky et al., 2012, https://oreil.ly/WEQFj), hat überwacht gelernt. Es war darauf trainiert, zu lernen, wie es über eine Million Bilder im ImageNet-Datensatz klassifiziert. Es teilte jedes Bild in eine von 1.000 Kategorien wie »Car«, »Balloon« oder »Monkey« ein.

Ein Nachteil des überwachten Lernens ist das Auszeichnen der Daten – es ist teuer und zeitaufwendig. Wenn es eine Person 5 Cent kostet, ein Bild auszuzeichnen, würde es 50.000 US-Dollar kosten, eine Million Bilder für ImageNet auszuzeichnen.5 Wollen Sie zwei verschiedene Personen jedes Bild auszeichnen lassen – um die Labelqualität überprüfen zu können –, würde das auch doppelt so viel kosten. Weil es auf der Welt viel mehr als 1.000 Objekte gibt, müssten Sie zum Erweitern der Modellfähigkeiten für die Arbeit mit mehr Objekten Labels mit mehr Kategorien hinzufügen. Um auf eine Million Kategorien zu wachsen, würden die Labeling-Kosten auf 50 Millionen US-Dollar ansteigen.

Die meisten Personen können alltägliche Objekte mit Labels versehen, ohne dafür eine Schulung absolvieren zu müssen. Daher lässt sich das recht günstig umsetzen. Aber nicht alle Labeling-Aufgaben sind so einfach. Das Erzeugen von lateinischen Übersetzungen für ein Englisch-nach-Latein-Modell ist teurer. Das Versehen von CT-Aufnahmen mit der Information, ob sie Anzeichen von Krebs zeigen, wäre astronomisch teuer.

Selbstüberwachtes Lernen hilft, den Flaschenhals des Auszeichnens von Daten zu überwinden. Dabei sind keine expliziten Labels erforderlich, stattdessen kann das Modell Labels aus den Eingabedaten ableiten. Sprachmodellierung geschieht per selbstüberwachtes Lernen, weil jede Eingabesequenz die Labels (vorherzusagende Tokens) und den Kontext, mit dem das Modell diese Label vorhersagen kann, mitbringt. So liefert beispielsweise der Satz »Ich liebe Street Food.« sechs Training-Samples, wie Sie in Tabelle 1.1 sehen können.

Eingabe (Kontext)

Ausgabe (nächstes Token)

<BOS>

Ich

<BOS>, Ich

liebe

<BOS>, Ich, liebe

Street

<BOS>, Ich, liebe, Street

Food

<BOS>, Ich, liebe, Street, Food

.

<BOS>, Ich, liebe, Street, Food,.

<EOS>

Tabelle1.1: Training-Samples aus dem Satz »Ich liebe Street Food.« für die Sprachmodellierung

In Tabelle 1.1 markieren <BOS> und <EOS> den Anfang und das Ende einer Sequenz. Diese Marker sind für ein Sprachmodell erforderlich, um mit mehreren Sequenzen arbeiten zu können. Jeder dieser Marker wird normalerweise vom Modell als spezielles Token behandelt. Der End-of-Sequence-Marker ist besonders wichtig, da er Sprachmodellen dabei hilft, zu wissen, wann sie ihre Antwort beenden.6

Selbstüberwachtes Lernen ist etwas anderes als unüberwachtes Lernen. Bei selbstüberwachtem Lernen werden Labels aus den Eingabedaten inferiert. Bei unüberwachtem Lernen brauchen Sie keine Labels.

Selbstüberwachtes Lernen bedeutet, dass Sprachmodelle aus Textsequenzen lernen können, ohne dass Labels erforderlich sind. Weil es überall Textsequenzen gibt – in Büchern, Blogposts, Artikeln und Reddit-Kommentaren –, ist es möglich, eine riesige Menge an Trainingsdaten zu erstellen, wodurch Sprachmodelle wachsen und zu LLMs werden können.

Der Begriff LLM ist allerdings nur wenig wissenschaftlich. Wie groß muss ein Sprachmodell sein, damit es als Large angesehen werden kann? Was heute groß ist, wird morgen vielleicht schon als winzig betrachtet. Die Größe eines Modells wird typischerweise über die Anzahl der Parameter gemessen. Ein Parameter ist eine Variable in einem ML-Modell, die durch den Trainingsprozess aktualisiert wird.7 Es ist zwar nicht immer ganz korrekt, aber im Allgemeinen gilt: Je mehr Parameter ein Modell hat, desto größer ist seine Fähigkeit, ein gewünschtes Verhalten zu lernen.

Als das erste Generative-Pre-trained-Transformer-(GPT-)Modell von OpenAI im Juni 2018 veröffentlicht wurde, besaß es 117 Millionen Parameter, und das wurde als groß angesehen. Im Februar 2019 hat OpenAI GPT-2 mit 1,5 Milliarden Parametern vorgestellt, und 117 Millionen waren jetzt eher klein. Aktuell wird ein Modell mit 100 Milliarden Parametern als groß betrachtet. Vielleicht wird das eines Tages auch nicht mehr erwähnenswert sein.

Bevor wir uns dem nächsten Abschnitt zuwenden, möchte ich noch auf eine Frage zu sprechen kommen, deren Antwort normalerweise klar zu sein scheint: Warum brauchen größere Modelle mehr Daten? Größere Modelle haben mehr Kapazitäten zum Lernen, und mehr Trainingsdaten würden damit ihre Performance maximieren.8 Sie können ein großes Modell auch mit einem kleinen Datensatz trainieren, aber das wäre eine Verschwendung von Rechenleistung. Sie könnten ähnliche oder bessere Ergebnisse für diesen Datensatz mit kleineren Modellen erreichen.

Von Large Language Models zu Foundation Models

Sprachmodelle können zwar erstaunliche Aufgaben erledigen, aber sie sind auf Text beschränkt. Als Menschen nehmen wir die Welt aber nicht nur per Sprache wahr, sondern auch über Sehen, Hören, Fühlen und andere Sinne. Um in der realen Welt agieren zu können, muss KI also mehr als Text verarbeiten können.

Aus diesem Grund werden Sprachmodelle erweitert, um auch andere Daten berücksichtigen zu können. GPT-4V und Claude 3 können Bilder und Texte verstehen. Manche Modelle verstehen sogar Videos, 3-D-Assets, Proteinstrukturen und so weiter. Das Einbinden von mehr Datenmodalitäten in Sprachmodelle macht sie noch leistungsfähiger. OpenAI hat im Jahr 2023 in seiner GPT-4V System Card beschrieben, dass »das Einbinden zusätzlicher Modalitäten (wie Bildeingaben) in LLMs von manchen als Schlüsseltechnologie für die KI-Forschung und -Entwicklung angesehen wird« (https://oreil.ly/NoGX7).

Auch wenn viele Menschen Gemini und GPT-4V als LLMs bezeichnen, ist der treffendere Begriff Foundation Models (https://arxiv.org/abs/2108.07258). Das Wort Foundation zeigt gleichzeitig die Wichtigkeit dieser Modelle in KI-Anwendungen und die Tatsache, dass man auf ihnen für unterschiedliche Anforderungen aufbauen kann.

Foundation Models stellen für die klassische Struktur der KI-Forschung einen Durchbruch dar. Lange Zeit war die KI-Forschung nach Datenmodalitäten aufgeteilt. Natural Language Processing (NLP) kümmert sich nur um Text. Bei Computer Vision geht es nur um Bilder und Videos. Reine Textmodelle können für Aufgaben wie das Übersetzen oder die Spam-Erkennung genutzt werden. Reine Bildmodelle kommen bei der Objekterkennung und der Bildklassifikation zum Einsatz. Reine Audiomodelle können sich um Spracherkennung (Speech-to-Text oder STT) und Sprachsynthese (Text-to-Speech oder TTS) kümmern.

Ein Modell, das mit mehr als einer Datenmodalität arbeiten kann, wird auch als multimodales Modell bezeichnet. Ein generatives multimodales Modell nennt man dann Large Multimodal Model (LMM). Während ein Sprachmodell das nächste Token nur abhängig von Texttokens generiert, erzeugt ein multimodales Modell das nächste Token abhängig von Text- oder Image-Tokens – oder was auch immer für Modalitäten vom Modell unterstützt werden (siehe Abbildung 1.3).

Abbildung

1.3

: Ein multimodales Modell kann das nächste Token mit Informationen aus Text- und visuellen Tokens generieren.

Wie Sprachmodelle brauchen auch multimodale Modelle Daten, um größer werden zu können. Selbstüberwachtes Lernen funktioniert ebenfalls für multimodale Modelle. So hat beispielsweise OpenAI eine Variante des selbstüberwachten Lernens namens Natural Language Supervision genutzt, um ihr Sprache-Bild-Modell CLIP zu trainieren (OpenAI, 2021, https://oreil.ly/zcqdu). Statt manuell Labels für jedes Bild zu erzeugen, fanden sie (Bild, Text)-Paare, die gemeinsam im Internet erschienen. So konnten sie einen Datensatz mit 400 Millionen (Bild, Text)-Paaren erzeugen, der 400-mal größer als ImageNet war – ganz ohne Kosten für das Labeling. Dieser Datensatz ermöglichte CLIP, das erste Modell zu werden, das für mehrere Bildklassifizierungsaufgaben generalisiert werden konnte, ohne zusätzliches Training zu benötigen.

Dieses Buch nutzt den Begriff Foundation Models, um sich sowohl auf Large Language Models als auch auf Large Multimodal Models zu beziehen.

Beachten Sie, dass CLIP kein generatives Modell ist – es wurde nicht darauf trainiert, Ausgaben mit offenem Ende zu generieren. Bei CLIP handelt es sich um ein Embedding-Modell, das darauf trainiert ist, gemeinsame Embeddings aus Text und Bildern zu erzeugen. In Abschnitt »Einführung in Embeddings« auf Seite 155 in Kapitel 3 gehe ich genauer auf Embeddings ein. Bis dahin können Sie sich Embeddings als Vektoren vorstellen, die versuchen, die Bedeutung der ursprünglichen Daten abzubilden. Multimodale Embedding-Modelle wie CLIP sind das Rückgrat generativer multimodaler Modelle wie Flamingo, LLaVA oder Gemini (ehemals Bard).

Foundation Models markieren außerdem den Übergang von aufgabenspezifischen Modellen hin zu allgemein nutzbaren Modellen. Zuvor wurden Modelle oft für spezifische Aufgaben entwickelt, wie zum Beispiel zur Sentimentanalyse oder für Übersetzungen. Ein Modell, das für die Sentimentanalyse trainiert wurde, könnte keine Übersetzungen durchführen und umgekehrt.

Foundation Models sind dank der Art und Weise ihres Trainings für eine große Zahl von unterschiedlichen Aufgaben geeignet.

Ohne Anpassung funktionieren solche allgemein nutzbaren Modelle für viele Aufgaben ziemlich gut. Ein LLM kann sowohl Sentimentanalysen wie auch Übersetzungen durchführen. Oft können Sie aber solch ein Modell noch optimieren, um seine Leistung bei einer spezifischen Aufgabe zu maximieren.

In Abbildung 1.4 sehen Sie die Aufgaben, die von der Super-NaturalInstructions-Benchmark verwendet werden, um Foundation Models zu evaluieren (Wang et al., 2022, https://arxiv.org/abs/2204.07705). So erhalten Sie eine Idee von der Art der Aufgaben, die ein Foundation Model ausführen kann.

Stellen Sie sich vor, Sie arbeiten mit einem Händler zusammen, um eine Anwendung zu bauen, die Produktbeschreibungen für seine Website generiert. Ein fertiges Modell wird exakte Beschreibungen generieren können, aber Probleme damit haben, die Markenbegrifflichkeiten zu verwenden oder die Idee hinter der Marke hervorzuheben. Die generierten Beschreibungen sind zudem vielleicht voll mit Marketing-Sprech und mit Klischees.

Abbildung

1.4

: Das Feld an Aufgaben in der Super-NaturalInstructions-Benchmark (Wang et al., 2022)

Es gibt eine Reihe von Techniken, mit denen Sie das Modell dazu bringen können, das von Ihnen Gewünschte zu generieren. So können Sie beispielsweise genaue Anweisungen schreiben, die Beispiele der gewünschten Produktbeschreibungen enthalten. Dieser Ansatz folgt dem Prompt Engineering. Sie können das Modell mit einer Datenbank verbinden, die Kunden-Reviews enthält, mit denen das Modell bessere Beschreibungen generieren kann. Der Einsatz einer Datenbank zum Unterstützen der Anweisungen wird als Retrieval-Augmented Generation (RAG) bezeichnet. Außerdem ist es möglich, das Modell zu optimieren – weiterzutrainieren – und dazu einen Datensatz mit qualitativ hochwertigen Produktbeschreibungen zu verwenden.

Prompt Engineering, RAG und Optimieren sind drei sehr verbreitete KI-Engineering-Techniken, mit denen Sie ein Modell an Ihre Bedürfnisse anpassen können. Im Verlauf des Buchs werden wir alle drei genauer kennenlernen.

Das Anpassen eines bestehenden leistungsfähigen Modells an Ihre Aufgabe ist im Allgemeinen viel einfacher, als ein Modell für Ihre Aufgabe von Grund auf zu erstellen – zum Beispiel zehn Beispiele und ein Wochenende im Vergleich zu einer Million Beispiele und sechs Monaten. Foundation Models machen das Entwickeln von KI-Anwendungen günstiger und verringern die Time to Market. Es hängt von der verwendeten Technik ab, wie viele Daten genau erforderlich sind, um ein Modell anzupassen. Dieses Buch wird auch auf diese Frage eingehen, wenn wir uns um jede Technik kümmern. Aber auch aufgabenspezifische Modelle haben immer noch viele Vorteile – so sind sie möglicherweise viel kleiner, was ihren Einsatz schneller und günstiger macht.

Ob Sie Ihr eigenes Modell bauen oder ein bestehendes verwenden, ist eine klassische Buy-or-Build-Frage, die Teams für sich selbst beantworten müssen. Die Informationen in diesem Buch können Ihnen bei dieser Entscheidung helfen.

Von Foundation Models zum AI Engineering

AI Engineering bezieht sich auf den Prozess des Bauens von Anwendungen, die auf Foundation Models aufsetzen. Es werden schon seit über einem Jahrzehnt KI-Anwendungen gebaut. Dieser Prozess wird meist als ML Engineering oder MLOps (kurz für ML Operations) bezeichnet. Warum reden wir dann hier über AI Engineering?

Geht es beim klassischen ML Engineering um das Entwickeln von ML-Modellen, nutzt AI Engineering bestehende aus. Die Verfügbarkeit und die Erreichbarkeit leistungsfähiger Foundation Models führen zu drei Faktoren, die gemeinsam die idealen Bedingungen für das schnelle Wachstum des AI Engineering als Disziplin schaffen:

Faktor 1: Fähigkeiten allgemein nutzbarer KI

Foundation Models sind nicht nur so leistungsfähig, weil sie bestehende Aufgaben besser erledigen können, sie sind außerdem dazu in der Lage, mehr Aufgaben zu erledigen. Anwendungen, die zuvor als nicht möglich angesehen wurden, sind jetzt umsetzbar, und es gibt Anwendungen, an die niemand zuvor gedacht hat. Selbst Anwendungen, die heute als nicht möglich betrachtet werden, könnten morgen Realität werden. Das macht KI für mehr Aspekte im Leben nützlicher, was die Userbasis und den Wunsch nach KI-Anwendungen deutlich ansteigen lässt.

Da KI zum Beispiel mittlerweile so gut wie ein Mensch schreiben kann – manchmal sogar besser –, kann sie jede Aufgabe, ganz oder teilweise, automatisieren, für die Kommunikation erforderlich ist, was so gut wie immer der Fall ist. KI kommt zum Einsatz, um E-Mails zu schreiben, auf Kundenfragen zu reagieren und komplexe Verträge zu erläutern. Jeder mit einem Computer hat Zugriff auf Tools, die sofort individuelle, qualitativ hochwertige Bilder und Videos erzeugen können, die dabei helfen, Marketingmaterialien zu erstellen, professionell Porträtfotos zu bearbeiten, Kunstkonzepte zu visualisieren, Bücher zu illustrieren und so weiter. Mit KI lassen sich sogar Trainingsdaten synthetisieren, Algorithmen entwickeln und Code schreiben, womit dann wiederum noch leistungsfähigere Modelle in der Zukunft trainiert werden können.

Faktor 2: Gestiegene KI-Investitionen

Der Erfolg von ChatGPT hat für einen starken Anstieg der Investitionen in KI gesorgt – sowohl von Risikokapitalanlegern als auch von Unternehmen. Da sich KI-Anwendungen günstiger bauen und schneller auf den Markt bringen lassen, wird der Return on Investment für KI attraktiver. Firmen beeilen sich, KI in ihre Produkte und Prozesse einzubinden. Matt Ross, ein leitender Manager für angewandte Forschung bei Scribd, erzählte mir, dass die geschätzten KI-Kosten für seinen Anwendungsfall von April 2022 bis April 2023 um zwei Größenordnungen gefallen sind.

Goldman Sachs Research hat geschätzt, dass KI-Investitionen bis zum Jahr 2025 in den USA 100 Milliarden US-Dollar und global 200 Milliarden US-Dollar erreichen können (https://oreil.ly/okMw6).9 KI wird oft als Wettbewerbsvorteil genannt. FactSet hat recherchiert, dass eines von drei S&P-500-Unternehmen KI in ihren Earnings Calls für das zweite Quartal 2023 aufgeführt hat – dreimal mehr als ein Jahr zuvor (https://oreil.ly/tgm-a). In Abbildung 1.5 sehen Sie die Zahl der S&P-500-Unternehmen, die KI in ihren Earnings Calls der Jahre 2018 bis 2023 erwähnt haben.

Abbildung

1.5

: Die Anzahl der S&P-500-Unternehmen, die KI in ihren Earnings Calls erwähnen, hat 2023 eine Rekordhöhe erreicht. Zahlen von FactSet.

Laut WallStreetZen sind die Aktienwerte bei Firmen, die KI in ihren Earnings Calls erwähnten, mehr gestiegen als bei denen, die das nicht getan haben: eine durchschnittliche Steigerung von 4,6% im Vergleich zu 2,4% (https://oreil.ly/fK5uh). Es ist unklar, ob das Kausalität ist (KI macht diese Firmen erfolgreicher) oder Korrelation (Firmen sind erfolgreich, weil sie sich schnell an neue Technologien anpassen).

Faktor 3: Niedrige Einstiegshürde für das Bauen von KI-Anwendungen

Der Model-as-a-Service-Ansatz, der von OpenAI und anderen Modellprovidern populär gemacht wurde, erleichtert den Einsatz von KI, um Anwendungen zu bauen. Bei diesem Vorgehen werden Modelle über APIs verfügbar gemacht, die Useranfragen empfangen und die Ausgabe des Modells zurückgeben. Ohne diese APIs würden Sie zum Verwenden eines KI-Modells die Infrastruktur zum Hosten und Erreichen dieses Modells benötigen. Mit den APIs erhalten Sie Zugriff auf leistungsfähige Modelle über einzelne API-Aufrufe.

Zudem ermöglicht KI das Bauen von Anwendungen mit sehr wenig Code. Zum einen kann KI Code für Sie schreiben, sodass auch Personen ohne Erfahrung in der Softwareentwicklung ihre Ideen schnell in Code umwandeln und ihren Usern anbieten können. Zum anderen können Sie mit diesen Modellen in natürlicher Sprache interagieren, statt eine Programmiersprache nutzen zu müssen. Jeder – und ich meine wirklich jeder – kann jetzt KI-Anwendungen entwickeln.

Aufgrund der Ressourcen, die zum Entwickeln von Foundation Models erforderlich sind, ist dieser Prozess vermutlich nur für große Unternehmen (Google, Meta, Microsoft, Baidu, Tencent), Regierungen (Japan [https://oreil.ly/r86Qz], die VAE [https://oreil.ly/IUcVg]) und ambitionierte, mit ausreichend Geld ausgestattete Startups (OpenAI, Anthropic, Mistral) möglich. In einem Interview sagte Sam Altman, CEO von OpenAI, im September 2022, dass die beste Möglichkeit für den Großteil der Menschen das Anpassen dieser Modelle an spezifische Anwendungen sein wird (https://oreil.ly/D9QBM).