Pular para o conteúdo principal
O PydanticAI é um framework de agentes em Python criado pela equipe do Pydantic. Ele oferece dependências tipadas, chamada de ferramentas, saídas estruturadas e streaming sobre provedores de LLM. A Venice funciona como um backend compatível com OpenAI — aponte o OpenAIChatModel para a Venice e continue usando o restante da API do PydanticAI normalmente.

Pré-requisitos

Configuração

Instale o PydanticAI com suporte a OpenAI:
Você também pode instalar o pacote completo pydantic-ai, que já inclui os extras da OpenAI. Adicione sua chave de API da Venice ao ambiente:
Mantenha as chaves de API fora do controle de versão. Prefira variáveis de ambiente ou um gerenciador de segredos em produção.

Configure a Venice como provedor de modelo

A Venice fala a API OpenAI Chat Completions. Use OpenAIChatModel com OpenAIProvider e a base URL da Venice:
Use OpenAIChatModel (Chat Completions), não OpenAIResponsesModel nem o atalho openai:. O principal caminho de compatibilidade da Venice é /chat/completions. Fixar o Chat Completions evita o comportamento exclusivo do Responses que os modelos padrão da OpenAI usam em versões mais recentes do PydanticAI.

Variáveis de ambiente

O OpenAIProvider também lê OPENAI_API_KEY e OPENAI_BASE_URL. Você pode configurar a Venice dessa forma em vez de passar os argumentos no código:

Executar um agente

O uso assíncrono segue o mesmo padrão com await agent.run(...):

Fazer streaming de uma resposta

Use run_stream quando quiser tokens conforme eles chegam:

Saída estruturada

Passe um modelo Pydantic como output_type para validar a resposta final do agente:
Consulte os modelos que suportam respostas estruturadas e chamada de funções antes de depender de saída estruturada baseada em ferramentas em produção.

Ferramentas

Registre ferramentas com @agent.tool_plain (sem contexto do agente) ou @agent.tool (requer RunContext):

Parâmetros específicos da Venice

Passe opções exclusivas da Venice por meio de ModelSettings.extra_body. Por exemplo, habilite a busca web integrada com venice_parameters:
Você também pode sobrescrever as configurações por execução:
Consulte a especificação da API para a lista completa de venice_parameters (web scraping, citações, personagens, controles de thinking e chaves E2EE).

Modelos recomendados

Os IDs de modelo mudam com o tempo — confirme os IDs atuais com GET /models ou na visão geral dos modelos.

Vantagem em privacidade

O PydanticAI é frequentemente usado para agentes que acessam dados da aplicação, contexto do usuário ou ferramentas internas. Combiná-lo com a Venice mantém esse fluxo de trabalho em inferência privada e sem censura:
  • Retenção zero de dados nos modelos privados — prompts e payloads de ferramentas não são armazenados após a requisição
  • Análise sem censura quando os agentes precisam de crítica direta ou red-teaming
  • Infraestrutura compatível com OpenAI para que você possa migrar aplicações PydanticAI existentes apenas alterando a base URL e a chave de API do provedor

Solução de problemas

Confirme que VENICE_API_KEY (ou OPENAI_API_KEY) está definida no processo que executa o agente. Reinicie o shell ou processo após alterar variáveis de ambiente.
Use um ID de modelo atual da página de modelos. Defina base_url como https://api.venice.ai/api/v1 sem caminho no final — o PydanticAI acrescenta /chat/completions.
Prefira OpenAIChatModel com um OpenAIProvider explícito. Evite o atalho de agente openai: sem argumentos, que pode direcionar para a API Responses da OpenAI em vez de Chat Completions.
Escolha um modelo que suporte chamada de funções, descreva em instructions quando as ferramentas devem ser executadas e mantenha as docstrings das ferramentas precisas — o PydanticAI constrói esquemas JSON a partir das assinaturas e da documentação.

Documentação do PydanticAI

Agentes, ferramentas, dependências e tipos de saída

Modelos da Venice

Explore os modelos e capacidades suportadas