pydantic_ai.models.fallback
FallbackModel dataclass
基类: Model
一个在失败时使用一个或多个回退模型的模型。
除了 __init__
之外,所有方法都是私有的或与基类的方法匹配。
源代码在 pydantic_ai_slim/pydantic_ai/models/fallback.py
中
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 |
|
__init__
__init__(
default_model: Model | KnownModelName,
*fallback_models: Model | KnownModelName,
fallback_on: (
Callable[[Exception], bool]
| tuple[type[Exception], ...]
) = (ModelHTTPError,)
)
初始化一个回退模型实例。
参数
名称 | 类型 | 描述 | 默认值 |
---|---|---|---|
default_model
|
Model | KnownModelName
|
要使用的默认模型的名称或实例。 |
必需 |
fallback_models
|
Model | KnownModelName
|
失败时要使用的回退模型的名称或实例。 |
()
|
fallback_on
|
Callable[[Exception], bool] | tuple[type[Exception], ...]
|
一个可调用对象或异常元组,用于触发回退。 |
(ModelHTTPError,)
|
源代码在 pydantic_ai_slim/pydantic_ai/models/fallback.py
中
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,
) -> tuple[ModelResponse, Usage]
按顺序尝试每个模型,直到一个成功。
如果失败,则引发包含所有异常的 FallbackExceptionGroup。
源代码在 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 |
|
request_stream async
request_stream(
messages: list[ModelMessage],
model_settings: ModelSettings | None,
model_request_parameters: ModelRequestParameters,
) -> AsyncIterator[StreamedResponse]
按顺序尝试每个模型,直到一个成功。
源代码在 pydantic_ai_slim/pydantic_ai/models/fallback.py
中
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 |
|