# coding: utf-8

"""
    Mixpeek API

    This is the Mixpeek API, providing access to various endpoints for data processing and retrieval.

    The version of the OpenAPI document: 0.81.1
    Contact: info@mixpeek.com
    Generated by OpenAPI Generator (https://openapi-generator.tech)

    Do not edit the class manually.
"""  # noqa: E501


from __future__ import annotations
import json
from enum import Enum
from typing_extensions import Self


class GoogleModel(str, Enum):
    """
    Google Gemini model identifiers for LLM generation.  Gemini models excel at multimodal understanding with best-in-class video support. All models support text, images, video, audio, and PDFs.  Values:     GEMINI_2_5_FLASH: Gemini 2.5 Flash model (recommended)         - Use for: Fastest generation, highest quality multimodal         - Context: 1M tokens         - Multimodal: Text, images, video (up to 2hr), audio, PDFs         - Cost: $0.15/1M input, $0.60/1M output         - When to use: Default choice for all Gemini use cases      GEMINI_2_5_PRO: Gemini 2.5 Pro model         - Use for: Higher quality reasoning, complex tasks         - Context: 1M tokens         - Cost: $1.25/1M input, $10.00/1M output  Note: Gemini 2.0 and 1.5 models are deprecated. Use GEMINI_2_5_FLASH instead.
    """

    """
    allowed enum values
    """
    GEMINI_MINUS_2_DOT_5_MINUS_FLASH = 'gemini-2.5-flash'
    GEMINI_MINUS_2_DOT_5_MINUS_PRO = 'gemini-2.5-pro'

    @classmethod
    def from_json(cls, json_str: str) -> Self:
        """Create an instance of GoogleModel from a JSON string"""
        return cls(json.loads(json_str))


