Skip to main content
Agno resolves "openai:gpt-5.4" to OpenAIResponses(id="gpt-5.4") when it initializes the Agent. The string form configures the provider class and model ID without a model-class import. Install the provider integration and set its credentials as you would for the class form. For this example:

Format

Agno splits the string at the first colon, so model IDs can contain colons. For example, "ollama:llama3.1:8b" selects the Ollama class with id="llama3.1:8b". An empty provider, empty model ID, missing colon, or unsupported provider key raises ValueError during initialization. Agno validates the provider key, then passes the model ID to that provider class. It does not validate the ID against a model catalog. An unavailable or misspelled ID fails when the provider handles the request.

Provider Keys and API Variants

The provider key selects a specific Agno class. Similar keys can use different provider APIs and support different features. This table covers common providers and API variants. Use the exact provider key for the class you need, then confirm the model ID in that provider’s documentation. See all model providers for setup, authentication, and the complete canonical key catalog.
Use canonical keys when a provider has multiple implementations. For example, azure:model_id resolves to AzureOpenAI; azure-ai-foundry:model_id selects AzureAIFoundry.
Agno v2.7.2 also accepts these compatibility aliases. Prefer the canonical keys in new configuration:
Model capabilities depend on the resolved class and model ID. String syntax does not make unsupported features available. See Model Compatibility.

String or Model Class

The string form has the same behavior as constructing its resolved class with only id. Additional model constructor parameters require a class instance.

Other Model Fields

Agents and Teams accept model strings for model, reasoning_model, parser_model, and output_model:

Teams

Developer Resources