Passer au contenu principal
PydanticAI est un framework d’agents Python développé par l’équipe Pydantic. Il vous offre des dépendances typées, l’appel d’outils, des sorties structurées et le streaming au-dessus des fournisseurs de LLM. Venice fonctionne comme un backend compatible OpenAI — pointez OpenAIChatModel vers Venice et continuez à utiliser le reste de l’API PydanticAI comme d’habitude.

Prérequis

Installation

Installez PydanticAI avec le support OpenAI :
Vous pouvez également installer le paquet complet pydantic-ai, qui inclut les extras OpenAI. Ajoutez votre clé API Venice à l’environnement :
Gardez les clés API hors du contrôle de source. Préférez les variables d’environnement ou un gestionnaire de secrets en production.

Configurer Venice comme fournisseur de modèle

Venice parle l’API OpenAI Chat Completions. Utilisez OpenAIChatModel avec OpenAIProvider et l’URL de base de Venice :
Utilisez OpenAIChatModel (Chat Completions), et non OpenAIResponsesModel / le raccourci openai:. Le chemin de compatibilité principal de Venice est /chat/completions. Fixer Chat Completions évite le comportement spécifique à Responses que les modèles OpenAI par défaut utilisent dans les versions plus récentes de PydanticAI.

Variables d’environnement

OpenAIProvider lit également OPENAI_API_KEY et OPENAI_BASE_URL. Vous pouvez configurer Venice de cette manière au lieu de passer des arguments dans le code :

Exécuter un agent

L’utilisation asynchrone suit le même schéma avec await agent.run(...) :

Streamer une réponse

Utilisez run_stream lorsque vous souhaitez recevoir les tokens au fur et à mesure :

Sortie structurée

Passez un modèle Pydantic en tant que output_type pour valider la réponse finale de l’agent :
Parcourez les modèles qui prennent en charge les réponses structurées et l’appel de fonctions avant de vous appuyer sur des sorties structurées basées sur des outils en production.

Outils

Enregistrez les outils avec @agent.tool_plain (sans contexte d’agent) ou @agent.tool (nécessite RunContext) :

Paramètres spécifiques à Venice

Passez les options propres à Venice via ModelSettings.extra_body. Par exemple, activez la recherche web intégrée avec venice_parameters :
Vous pouvez également surcharger les paramètres à chaque exécution :
Consultez la spécification de l’API pour la liste complète de venice_parameters (scraping web, citations, personnages, contrôles de réflexion et bascules E2EE).

Modèles recommandés

Cas d’usageModèlePourquoi
Agents généralistesvenice-uncensoredRapide, économique, non censuré
Appel d’outils / sortie structuréezai-org-glm-5-1Solide modèle phare privé pour les agents
Raisonnement complexezai-org-glm-5-1Meilleure planification multi-étapes
Budget / fort volumeqwen3-5-9bFaible coût par token
Agents axés sur le codeqwen3-coder-480b-a35b-instructOptimisé pour le code
Les IDs de modèles évoluent au fil du temps — vérifiez les IDs actuels avec GET /models ou l’aperçu des modèles.

Avantage en matière de confidentialité

PydanticAI est souvent utilisé pour des agents qui touchent aux données applicatives, au contexte utilisateur ou aux outils internes. Le combiner avec Venice maintient ce workflow sur une inférence privée et non censurée :
  • Rétention de données zéro sur les modèles privés — les prompts et les charges utiles des outils ne sont pas conservés après la requête
  • Analyse non censurée lorsque les agents ont besoin d’une critique franche ou de red-teaming
  • Plomberie compatible OpenAI pour que vous puissiez migrer vos applications PydanticAI existantes en changeant simplement l’URL de base du fournisseur et la clé API

Dépannage

Confirmez que VENICE_API_KEY (ou OPENAI_API_KEY) est défini dans le processus qui exécute l’agent. Redémarrez le shell ou le processus après avoir modifié les variables d’environnement.
Utilisez un ID de modèle actuel depuis la page des modèles. Définissez base_url sur https://api.venice.ai/api/v1 sans chemin final — PydanticAI ajoute /chat/completions.
Préférez OpenAIChatModel avec un OpenAIProvider explicite. Évitez le raccourci d’agent openai: seul, qui peut cibler l’API Responses d’OpenAI au lieu de Chat Completions.
Choisissez un modèle qui prend en charge l’appel de fonctions, décrivez dans instructions quand les outils doivent être exécutés, et gardez les docstrings des outils précises — PydanticAI construit les schémas JSON à partir des signatures et des docs.

Docs PydanticAI

Agents, outils, dépendances et types de sortie

Modèles Venice

Parcourez les modèles et les capacités prises en charge