pydantic_ai.models.fallback
            FallbackModel
  
      dataclass
  
    
              Bases: Model
A model that uses one or more fallback models upon failure.
Apart from __init__, all methods are private or match those of the base class.
Source code in pydantic_ai_slim/pydantic_ai/models/fallback.py
                20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128  |  | 
__init__
__init__(
    default_model: Model | KnownModelName,
    *fallback_models: Model | KnownModelName,
    fallback_on: (
        Callable[[Exception], bool]
        | tuple[type[Exception], ...]
    ) = (ModelHTTPError,)
)
Initialize a fallback model instance.
Parameters:
| Name | Type | Description | Default | 
|---|---|---|---|
                default_model
             | 
            
                  Model | KnownModelName
             | 
            
               The name or instance of the default model to use.  | 
            required | 
                fallback_models
             | 
            
                  Model | KnownModelName
             | 
            
               The names or instances of the fallback models to use upon failure.  | 
            
                  ()
             | 
          
                fallback_on
             | 
            
                  Callable[[Exception], bool] | tuple[type[Exception], ...]
             | 
            
               A callable or tuple of exceptions that should trigger a fallback.  | 
            
                  (ModelHTTPError,)
             | 
          
Source code in pydantic_ai_slim/pydantic_ai/models/fallback.py
              32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51  |  | 
            request
  
      async
  
request(
    messages: list[ModelMessage],
    model_settings: ModelSettings | None,
    model_request_parameters: ModelRequestParameters,
) -> ModelResponse
Try each model in sequence until one succeeds.
In case of failure, raise a FallbackExceptionGroup with all exceptions.
Source code in pydantic_ai_slim/pydantic_ai/models/fallback.py
              53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78  |  | 
            request_stream
  
      async
  
request_stream(
    messages: list[ModelMessage],
    model_settings: ModelSettings | None,
    model_request_parameters: ModelRequestParameters,
) -> AsyncIterator[StreamedResponse]
Try each model in sequence until one succeeds.
Source code in pydantic_ai_slim/pydantic_ai/models/fallback.py
              80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107  |  |