from enum import Enum


class OpenAIModel(Enum):
    """Enum class for OpenAI models."""
    GPT5_4 = "gpt-5.4"
    GPT5_4_PRO = "gpt-5.4-pro"
    GPT5_4_MINI = "gpt-5.4-mini"
    GPT5_4_NANO = "gpt-5.4-nano"
    GPT5 = "gpt-5"
    GPT5_PRO = "gpt-5-pro"
    GPT5_MINI = "gpt-5-mini"
    GPT5_NANO = "gpt-5-nano"
    GPT5_2 = "gpt-5.2"
    GPT5_2_PRO = "gpt-5.2-pro"
    GPT5_1 = "gpt-5.1"
    GPT5_CHAT = "gpt-5-chat-latest"
    GPT4_1 = "gpt-4.1"
    GPT_4_1_MINI = "gpt-4.1-mini"
    GPT_4_1_NANO = "gpt-4.1-nano"
    GPT_4O = "gpt-4o"
    GPT_4O_MINI = "gpt-4o-mini"
    GPT_4O_SEARCH = "gpt-4o-search-preview"
    GPT_4O_MINI_SEARCH = "gpt-4o-mini-search-preview"
    GPT_O4 = "gpt-4o-2024-08-06"
    O4_MINI = "o4-mini"
    O4_MINI_DEEP_RESEARCH = "o4-mini-deep-research"
    O3 = "o3"
    O3_MINI = "o3-mini"
    O3_PRO = "o3-pro"
    O3_DEEP_RESEARCH = "o3-deep-research"
    GPT4_TURBO = "gpt-4-turbo"
    GPT4 = "gpt-4"
    GPT3_5_TURBO = "gpt-3.5-turbo"
    GPT_IMAGE_1_5 = "gpt-image-1.5"
    CHATGPT_IMAGE_LATEST = "chatgpt-image-latest"
    GPT_IMAGE_1 = "gpt-image-1"
    GPT_IMAGE_1_MINI = "gpt-image-1-mini"
