OpenAIChatModel auf Venice aus und nutze den Rest der PydanticAI-API wie gewohnt.
Voraussetzungen
- Python 3.9 oder neuer
- Ein Venice-API-Schlüssel
Einrichtung
Installiere PydanticAI mit OpenAI-Unterstützung:pydantic-ai-Paket installieren, das die OpenAI-Extras enthält.
Füge deinen Venice-API-Schlüssel zur Umgebung hinzu:
Venice als Modell-Provider konfigurieren
Venice spricht die OpenAI Chat Completions API. NutzeOpenAIChatModel mit OpenAIProvider und der Base URL von Venice:
Verwende
OpenAIChatModel (Chat Completions), nicht OpenAIResponsesModel / den openai:-Kurzschreibweise. Venices primärer Kompatibilitätspfad ist /chat/completions. Wenn du Chat Completions festlegst, vermeidest du Responses-spezifisches Verhalten, das OpenAI-Standardmodelle in neueren PydanticAI-Versionen nutzen.Umgebungsvariablen
OpenAIProvider liest auch OPENAI_API_KEY und OPENAI_BASE_URL. So kannst du Venice statt über Argumente im Code konfigurieren:
Einen Agenten ausführen
await agent.run(...):
Eine Antwort streamen
Verwenderun_stream, wenn du Tokens erhalten möchtest, sobald sie eintreffen:
Structured Output
Übergib ein Pydantic-Modell alsoutput_type, um die finale Antwort des Agenten zu validieren:
Tools
Registriere Tools mit@agent.tool_plain (ohne Agent-Kontext) oder @agent.tool (benötigt RunContext):
Venice-spezifische Parameter
Übergib Venice-eigene Optionen überModelSettings.extra_body. Aktiviere zum Beispiel die integrierte Websuche mit venice_parameters:
venice_parameters (Web-Scraping, Zitate, Charaktere, Thinking-Controls und E2EE-Toggles) findest du in der API-Spezifikation.
Empfohlene Modelle
Modell-IDs ändern sich im Laufe der Zeit — verifiziere aktuelle IDs mit
GET /models oder in der Modellübersicht.
Privacy-Vorteil
PydanticAI wird häufig für Agenten eingesetzt, die auf Anwendungsdaten, Nutzerkontext oder interne Tools zugreifen. In Kombination mit Venice bleibt dieser Workflow auf privater, unzensierter Inferenz:- Zero Data Retention bei privaten Modellen — Prompts und Tool-Payloads werden nach der Anfrage nicht gespeichert
- Unzensierte Analyse, wenn Agenten schonungslose Kritik oder Red-Teaming liefern sollen
- OpenAI-kompatible Infrastruktur, sodass du bestehende PydanticAI-Apps migrieren kannst, indem du lediglich Provider-Base-URL und API-Schlüssel änderst
Troubleshooting
Modell nicht gefunden oder unerwartete Endpunkt-Fehler
Modell nicht gefunden oder unerwartete Endpunkt-Fehler
Verwende eine aktuelle Modell-ID von der Modell-Seite. Setze
base_url auf https://api.venice.ai/api/v1 ohne abschließenden Pfad — PydanticAI hängt /chat/completions selbst an.Fehler mit Responses API / openai:-Präfix
Fehler mit Responses API / openai:-Präfix
Bevorzuge
OpenAIChatModel mit einem expliziten OpenAIProvider. Vermeide die einfache openai:-Agent-Kurzschreibweise, die möglicherweise OpenAIs Responses API statt Chat Completions anspricht.Tools oder Structured Output werden ignoriert
Tools oder Structured Output werden ignoriert
Wähle ein Modell, das Function Calling unterstützt, beschreibe in
instructions, wann Tools ausgeführt werden sollen, und halte Tool-Docstrings präzise — PydanticAI erzeugt JSON-Schemas aus Signaturen und Docs.PydanticAI Docs
Agenten, Tools, Abhängigkeiten und Output-Typen
Venice-Modelle
Modelle und unterstützte Funktionen durchsuchen