AgentNode picks a model backend via the ModelProvider enum in app/launchpad/core/nodes/agent.py. Switching providers is a one-line change in the node’s get_agent_config(); credentials come from environment variables loaded by python-dotenv at import time.
All providers are reached through pydantic-ai.
AgentConfig.instrument=True (the default) wires each call into Langfuse when enable_tracing=True on the workflow.Supported providers
OpenAI — ModelProvider.OPENAI
Uses OpenAIResponsesModel. Good default for new workflows.
Azure OpenAI — ModelProvider.AZURE_OPENAI
Routes through pydantic-ai’s AzureProvider with OpenAIResponsesModel.
Set
model_name to the Azure deployment name you want to call.
Anthropic — ModelProvider.ANTHROPIC
Google Gemini — ModelProvider.GOOGLE_GEMINI
Uses GoogleModel with the standard GoogleProvider (API-key auth).
Google Vertex AI — ModelProvider.GOOGLE_VERTEX_AI
Uses a service account to authenticate against Vertex AI.
AWS Bedrock — ModelProvider.BEDROCK
Creates a boto3 bedrock-runtime client and passes it to BedrockConverseModel.
Ollama — ModelProvider.OLLAMA
Uses OpenAIChatModel with the pydantic-ai OllamaProvider. Ideal for local development against an ollama serve instance.
Other AgentConfig knobs
AgentConfig forwards common pydantic-ai fields so most tuning happens in one place:
instructions— static system prompt (can be augmented with@self.agent.instructionsfor per-run context).output_type— return a plainstror aBaseModelsubclass for structured output.deps_type— a Pydantic model containing dependencies exposed viaRunContextinside tools and instruction callbacks.tools,builtin_tools— pydantic-ai tool definitions.model_settings— aModelSettingsobject to override temperature, max tokens, etc.retries,output_retries— retry behavior on model errors and validation failures.instrument— defaults toTrue; set toFalseto opt a node out of Langfuse instrumentation even when the workflow has tracing enabled.