diff --git a/src/openai/resources/responses/responses.py b/src/openai/resources/responses/responses.py index 8e80f6793b..78423ff0a8 100644 --- a/src/openai/resources/responses/responses.py +++ b/src/openai/resources/responses/responses.py @@ -1573,6 +1573,8 @@ def compact( "gpt-4o-audio-preview-2025-06-03", "gpt-4o-mini-audio-preview", "gpt-4o-mini-audio-preview-2024-12-17", + "gpt-audio-mini", + "gpt-audio-mini-2025-04-01", "gpt-4o-search-preview", "gpt-4o-mini-search-preview", "gpt-4o-search-preview-2025-03-11", @@ -3191,6 +3193,8 @@ async def compact( "gpt-4o-audio-preview-2025-06-03", "gpt-4o-mini-audio-preview", "gpt-4o-mini-audio-preview-2024-12-17", + "gpt-audio-mini", + "gpt-audio-mini-2025-04-01", "gpt-4o-search-preview", "gpt-4o-mini-search-preview", "gpt-4o-search-preview-2025-03-11", diff --git a/src/openai/types/responses/response_compact_params.py b/src/openai/types/responses/response_compact_params.py index 657c6a0764..8753b4c5c9 100644 --- a/src/openai/types/responses/response_compact_params.py +++ b/src/openai/types/responses/response_compact_params.py @@ -59,6 +59,8 @@ class ResponseCompactParams(TypedDict, total=False): "gpt-4o-audio-preview-2025-06-03", "gpt-4o-mini-audio-preview", "gpt-4o-mini-audio-preview-2024-12-17", + "gpt-audio-mini", + "gpt-audio-mini-2025-04-01", "gpt-4o-search-preview", "gpt-4o-mini-search-preview", "gpt-4o-search-preview-2025-03-11", diff --git a/src/openai/types/shared/chat_model.py b/src/openai/types/shared/chat_model.py index 8223b81bef..b2aa4db1cf 100644 --- a/src/openai/types/shared/chat_model.py +++ b/src/openai/types/shared/chat_model.py @@ -50,6 +50,8 @@ "gpt-4o-audio-preview-2025-06-03", "gpt-4o-mini-audio-preview", "gpt-4o-mini-audio-preview-2024-12-17", + "gpt-audio-mini", + "gpt-audio-mini-2025-04-01", "gpt-4o-search-preview", "gpt-4o-mini-search-preview", "gpt-4o-search-preview-2025-03-11", diff --git a/src/openai/types/shared_params/chat_model.py b/src/openai/types/shared_params/chat_model.py index c1937a8312..25b5e912a1 100644 --- a/src/openai/types/shared_params/chat_model.py +++ b/src/openai/types/shared_params/chat_model.py @@ -52,6 +52,8 @@ "gpt-4o-audio-preview-2025-06-03", "gpt-4o-mini-audio-preview", "gpt-4o-mini-audio-preview-2024-12-17", + "gpt-audio-mini", + "gpt-audio-mini-2025-04-01", "gpt-4o-search-preview", "gpt-4o-mini-search-preview", "gpt-4o-search-preview-2025-03-11", diff --git a/tests/test_chat_model_types.py b/tests/test_chat_model_types.py new file mode 100644 index 0000000000..4c4a968bfe --- /dev/null +++ b/tests/test_chat_model_types.py @@ -0,0 +1,38 @@ +"""Tests for ChatModel type definitions. + +Verifies that the ChatModel type includes correct model names. +Relates to issue #2761: gpt-audio-mini is missing from the ChatModel list +""" + +import pytest +from typing import get_args + +from openai.types.shared import ChatModel + + +class TestChatModelTypes: + """Test ChatModel type definitions.""" + + def test_gpt_audio_mini_exists(self) -> None: + """Verify gpt-audio-mini is in ChatModel (fixes #2761).""" + valid_models = get_args(ChatModel) + + assert "gpt-audio-mini" in valid_models, ( + "gpt-audio-mini should be in ChatModel" + ) + assert "gpt-audio-mini-2025-04-01" in valid_models, ( + "gpt-audio-mini-2025-04-01 should be in ChatModel" + ) + + def test_audio_models_exist(self) -> None: + """Verify audio-related models are present.""" + valid_models = get_args(ChatModel) + + expected_audio_models = [ + "gpt-4o-audio-preview", + "gpt-4o-mini-audio-preview", + "gpt-audio-mini", + ] + + for model in expected_audio_models: + assert model in valid_models, f"{model} should be in ChatModel"