Pydantic AI v2.64.0 Introduces Sticky Model Fallback Feature
The latest Pydantic AI v2.64.0 update introduces an opt-in sticky model fallback feature designed to maintain conversation continuity.
Pydantic AI v2.64.0 Introduces Sticky Model Fallback Feature
The latest Pydantic AI v2.64.0 update introduces an opt-in sticky model fallback feature designed to maintain conversation continuity.

Understanding the New Sticky Model Fallback Feature
The release of Pydantic AI v2.64.0 on October 30, 2026, introduces an opt-in sticky setting for ModelFallback, as detailed in official release notes and pull request #11330. This new update brings the sticky model fallback capability to help maintain conversation continuity when primary models experience issues. By enabling this configuration, builders can alter default model selection logic to respect the recent failure history of a specific conversation.
According to forkast.news, the feature is disabled by default to ensure existing agent behavior remains unchanged unless developers explicitly opt into it. The scope of this stickiness remains strictly limited to individual conversations. When enabled, the selected model persists through message history, even when that history is passed across different processes or handled via durable execution.
Operational Mechanics and Wraparound Logic
The rationale behind this implementation addresses the behavior of primary models during periods of downtime or rate limiting. Without the sticky setting enabled, each step whose primary model is down or rate-limited waits for the primary to fail, spends retries, and switches providers back and forth. These repeated switches can result in the loss of prefix caching, making conversation continuity difficult to maintain.
The mechanism features a defined wraparound logic to handle potential failures of the sticky model itself. If the sticky model fails, the system attempts to use models listed after it in the fallback chain, followed by the step's own model, and finally any models that appeared before the sticky model in the sequence. Each model in this chain is attempted at most once, allowing the system to recover when the sticky model becomes unavailable.
Developer Considerations and Design Tradeoffs
A critical aspect of this design is the absence of an expiry timer. The system does not automatically recheck the primary model after a set interval, meaning recovery depends entirely on the fallback chain successfully producing an answer or the primary model being reached during the wraparound process.
Existing model selection mechanisms maintain their priority over this new setting. Explicit instructions, such as those provided via run(model=…), override(model=…), or SelectModel, continue to take precedence over the sticky behavior.