LLM-Anwendungen mit Python entwickeln
Sprachmodelle zuverlässig in Python-Anwendungen integrieren
01 Intro
02 Trainingsprogramm
Inhalte
Architektur einer LLM-Anwendung
- Benutzer oder aufrufendes System
- Application Layer
- Model Client
- Prompt und Kontext
- Modell
- klare Verantwortlichkeiten
Python-Projekt und Modellzugriff
- Projektstruktur
- virtuelle Umgebung
- Abhängigkeiten
- Konfiguration
- API Credentials
- reproduzierbares Setup
Modellwahl und API-Abstraktion
- Sprachmodell und Anwendung unterscheiden
- Modell als externe Komponente
- probabilistische und deterministische Software
- typische LLM-Anwendungen
- Textverarbeitung
- Grenzen geeigneter Anwendungsfälle
Prompts und Templates im Code
- System Instructions
- Benutzerinput
- Anwendungskontext
- klare Aufgabenbeschreibung
- gewünschtes Ausgabeformat
- Prompt Engineering nicht mit Anwendungsarchitektur verwechseln
Strukturierte Ausgaben und Validierung
- Freitext gegenüber strukturierten Ergebnissen
- JSON
- Schemas
- typisierte Python-Objekte
- Enums
- maschinenlesbare Antworten
Fehlerbehandlung, Retry und Streaming
- API nicht erreichbar
- Timeout
- Rate Limit
- ungültige Modellantwort
- abgeschnittene Antwort
- kontrollierte Fehlerzustände
Asynchrone Aufrufe und Conversation State
- einzelne Anfrage
- mehrstufiger Dialog
- Conversation History
- relevante Nachrichten
- Systemkontext
- Anwendung kontrolliert den Zustand
Kontextmanagement und Persistenz
- begrenztes Kontextfenster
- relevante Informationen auswählen
- Gesprächsverlauf
- Anwendungsdaten
- unnötigen Kontext entfernen
- Kontext nicht unbegrenzt wachsen lassen
Mehrstufige LLM-Workflows
- mehrere Modellaufrufe
- Ausgabe eines Schritts als Eingabe des nächsten
- Analyse und Generierung trennen
- deterministische Zwischenschritte
- Validierung zwischen Schritten
- nicht automatisch einen Agenten bauen
Function Calling und sichere Tools
- Modell erzeugt strukturierten Tool-Aufruf
- Tool-Auswahl
- Parameter
- Validierung
- Python-Funktion ausführen
- Anwendung behält Kontrolle
RAG, MCP und Agenten integrieren
- Agent als externe oder interne Komponente
- Auftrag übergeben
- Status
- Ergebnisse
- Fehler
- Agent Engineering bleibt Gegenstand des Agentenkurses
Dokumentverarbeitung und Information Extraction
- Entitäten
- Attribute
- Klassifikation
- Beziehungen
- strukturierte Daten aus Text
- Confidence nicht erfinden
Klassifikation, Transformation und Multimodalität
- Kategorien
- Label
- Few-Shot-Beispiele
- strukturierte Antwort
- unbekannte Kategorie
- klassische Verfahren als Alternative
Halluzinationen, Input und Output absichern
- Modellantwort klingt plausibel
- erfundene Fakten
- erfundene Quellen
- fehlende Informationen
- Unsicherheit
- Anwendung muss mit Fehlern rechnen
Datenschutz, Secrets und Prompt Injection
- Benutzer versucht Instruktionen zu verändern
- indirekte Prompt Injection
- Dokumente
- Webseiten
- externe Daten
- Auswirkungen auf Tools begrenzen
Tests, Evaluation und Regression
- Model Gateway abstrahieren
- Test Doubles
- gespeicherte Antworten
- deterministische Tests
- Validierungslogik
- Modelltests separat durchführen
Model Gateway, Fallback und Caching
- Providerzugriff kapseln
- einheitliche Anwendungsschnittstelle
- Modellwahl
- Konfiguration
- Fehlerbehandlung
- Testbarkeit
Performance, Kosten und Observability
- Latenz
- Time-to-first-token
- Modellgeschwindigkeit
- Netzwerk
- Parallelisierung
- Benutzererwartungen
Deployment, CI/CD und Praxisarchitektur
- Konfiguration
- Umgebungen
- Container
- Secrets
- Skalierung
- Modellprovider als externe Abhängigkeit
03 Durchführung
Rahmen und Organisation
Inhouse-Schulungen
04 Zielgruppe
Für wen ist der Kurs gedacht?
Der Kurs richtet sich an Python-Entwickler, Softwareentwickler, AI Engineers und technische Consultants, die Sprachmodelle in eigene Anwendungen, Services und Geschäftsprozesse integrieren möchten.
Er eignet sich insbesondere für Entwickler, die über einzelne API-Aufrufe und experimentelle Skripte hinaus wartbare, testbare und produktionsfähige LLM-Anwendungen entwickeln wollen.
Voraussetzungen
05 Lernziele
Was Sie nach dem Kurs können
- LLMs sauber in Python-Anwendungen integrieren
- Modellzugriffe von der Anwendungslogik entkoppeln
- Prompts und Templates strukturiert verwalten
- strukturierte Modellantworten definieren und validieren
- robuste Fehler- und Retry-Strategien entwickeln
- Streaming und asynchrone Modellaufrufe einsetzen
- Conversation State und Kontext kontrollieren
- mehrstufige LLM-Workflows entwickeln
- Function Calling sicher integrieren
- RAG-, MCP- und Agentenkomponenten über klare Schnittstellen anbinden
- LLM-Ausgaben als nicht vertrauenswürdige Eingaben behandeln
- Prompt-Injection- und Datenschutzrisiken berücksichtigen
- deterministische Komponenten unabhängig vom Modell testen
- LLM-Komponenten systematisch evaluieren
- Regressionen bei Prompt- und Modelländerungen erkennen
- Kosten, Performance und Modellwahl berücksichtigen
- Logging und Tracing integrieren
- LLM-Anwendungen als Services bereitstellen
- eine Python-LLM-Anwendung vom Prototyp zur produktionsnahen Architektur weiterentwickeln
06 FAQ
Häufige Fragen
Was unterscheidet diesen Kurs vom RAG-Kurs?
Der RAG-Kurs konzentriert sich auf Wissenssysteme: Ingestion, Chunking, Embeddings, Retrieval, Ranking, Quellen und Evaluation des Wissenszugriffs.
Dieser Kurs behandelt die umgebende Python-Anwendung. Ein RAG-System kann angebunden werden, seine Entwicklung ist aber nicht Gegenstand dieses Kurses.
Was unterscheidet ihn vom Agentenkurs?
Hier stehen überwiegend explizit gesteuerte Anwendungen und Workflows im Mittelpunkt. Die Python-Anwendung entscheidet, wann ein Modell aufgerufen wird und welche Verarbeitungsschritte folgen.
Der Agentenkurs behandelt Systeme, in denen ein Agent selbst über weitere Arbeitsschritte und Tool-Aufrufe entscheidet. Agentische Autonomie ist deshalb bewusst kein Schwerpunkt dieses Kurses.