Agent-Frameworks · Foto: m4rlonj, CC BY 2.0
pydantic_model.py
Zuletzt aktualisiert:
Typ
Code-Beispiel
Lizenz
MIT
Quelle
Anwendungsfeld
Pydantic AI
Der 30-Sekunden-Einstieg — das Kernkonzept in ~25 Zeilen.
Voraussetzungen
- Grundkenntnisse in Python und idealerweise Pydantic
- Installierte Pakete für Pydantic/PydanticAI
- Zugang zu einem LLM-Anbieter, der von PydanticAI angesprochen wird
Minimalbeispiel strukturierter Output: LLM-Antwort wird direkt in ein Pydantic-Modell gegossen und validiert.
Für wen: Der 30-Sekunden-Einstieg — das Kernkonzept in ~25 Zeilen.
Im Detail
Ein rund 25-zeiliges Minimalbeispiel aus dem offiziellen pydantic-ai-Repository, das das Kernprinzip strukturierter LLM-Ausgaben zeigt: Statt Freitext zu parsen, gibt man dem Modell ein Pydantic-Modell als Zielschema vor, und die Antwort wird automatisch validiert und in ein typisiertes Python-Objekt umgewandelt – inklusive Fehlermeldung, falls das Modell ein Feld vergisst oder einen falschen Typ liefert. Das ist der schnellste Weg zu verlässlichen, weiterverarbeitbaren LLM-Antworten, etwa für Formulare oder APIs, ohne eigenes JSON-Parsing oder Regex-Gefrickel zu schreiben. Idealer erster Anlaufpunkt, bevor man sich komplexere Beispiele wie Tool-Aufrufe oder mehrstufige Agenten ansieht.
Schritt für Schritt
- Das Beispielmodell durch ein eigenes Pydantic-Modell mit den gewünschten Zielfeldern ersetzen.
- Prompt bzw. Eingabetext so formulieren, dass die erwarteten Felder daraus beantwortbar sind.
- LLM-Zugang in der Konfiguration hinterlegen.
- Skript ausführen und prüfen, ob die Antwort korrekt ins Modell validiert wird.
- Mit einer absichtlich unpassenden Eingabe testen, ob der automatische Retry bei ungültigem Output greift.
Beispiel aus der Praxis
Ein Pydantic-Modell mit Feldern für Name und Alter wird als Zielstruktur übergeben; das LLM antwortet in Fließtext, und die Bibliothek ordnet die Angaben automatisch den Feldern zu. Liefert das LLM ein Format, das nicht ins Modell passt, fordert PydanticAI die Antwort automatisch erneut an, statt abzubrechen.
Praxis-Tipp
Das Beispiel 1:1 kopieren und das Pydantic-Modell durch eigene Felder ersetzen, etwa für die Extraktion von Namen und Betrag aus einer Rechnung.
Stolperfallen
Zu vage oder mehrdeutige Feldbeschreibungen im Pydantic-Modell führen dazu, dass das LLM auch nach mehreren Retries kein passendes Format liefert - klar benannte, eng gefasste Felder vermeiden das. Wer sich blind auf die automatischen Retries verlässt, ohne das Ergebnis am Ende zu prüfen, übersieht leicht Fälle, in denen die Validierung zwar formal gelingt, der Inhalt aber trotzdem falsch ist.
Siehe auch
Lizenz & Quelle
- Lizenz: MIT
- Quelle: pydantic/pydantic-ai
Inhalt ansehen (pydantic_model.py)
Lade …
Erfahrungen & Kommentare.
Funktioniert der Code-Beispiel bei Ihnen? Tipps, Stolperfallen, Varianten — teilen Sie es mit der Community.
Lade Kommentare …
Passt dazu.
bank_support.py
Das Vorzeige-Beispiel: Support-Agent einer Bank mit Dependency Injection (Kundendaten-"DB"), Tool-Aufruf und typisiertem Ergebnis (inkl. Risiko-Score).
weather_agent.py
Agent mit mehreren Tools (Geocoding + Wetter-API), die das LLM verkettet aufruft, um Fragen wie "Wetter in London und Wiltshire?" zu beantworten.
sql_gen.py
SQL-Generierung mit echter Validierung: erzeugtes SQL wird per EXPLAIN gegen PostgreSQL geprüft; bei Fehlern korrigiert sich der Agent selbst (Retry).
