diff --git a/pydantic_ai_slim/pydantic_ai/models/openai.py b/pydantic_ai_slim/pydantic_ai/models/openai.py index bb8aadcf92..997928f158 100644 --- a/pydantic_ai_slim/pydantic_ai/models/openai.py +++ b/pydantic_ai_slim/pydantic_ai/models/openai.py @@ -116,6 +116,13 @@ class OpenAIModelSettings(ModelSettings, total=False): See [OpenAI's safety best practices](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids) for more details. """ + openai_service_tier: Literal['auto', 'default', 'flex'] + """The service tier to use for the model request. + + Currently supported values are `auto`, `default`, and `flex`. + For more information, see [OpenAI's service tiers documentation](https://platform.openai.com/docs/api-reference/chat/object#chat/object-service_tier). + """ + class OpenAIResponsesModelSettings(OpenAIModelSettings, total=False): """Settings used for an OpenAI Responses model request. @@ -298,6 +305,7 @@ async def _completions_create( logprobs=model_settings.get('openai_logprobs', NOT_GIVEN), top_logprobs=model_settings.get('openai_top_logprobs', NOT_GIVEN), user=model_settings.get('openai_user', NOT_GIVEN), + service_tier=model_settings.get('openai_service_tier', NOT_GIVEN), extra_headers=extra_headers, extra_body=model_settings.get('extra_body'), )