diff options
Diffstat (limited to '.venv/lib/python3.12/site-packages/litellm/llms/openai/image_variations/transformation.py')
-rw-r--r-- | .venv/lib/python3.12/site-packages/litellm/llms/openai/image_variations/transformation.py | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/litellm/llms/openai/image_variations/transformation.py b/.venv/lib/python3.12/site-packages/litellm/llms/openai/image_variations/transformation.py new file mode 100644 index 00000000..96d1a302 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/litellm/llms/openai/image_variations/transformation.py @@ -0,0 +1,82 @@ +from typing import Any, List, Optional, Union + +from aiohttp import ClientResponse +from httpx import Headers, Response + +from litellm.llms.base_llm.chat.transformation import BaseLLMException +from litellm.llms.base_llm.image_variations.transformation import LiteLLMLoggingObj +from litellm.types.llms.openai import OpenAIImageVariationOptionalParams +from litellm.types.utils import FileTypes, HttpHandlerRequestFields, ImageResponse + +from ...base_llm.image_variations.transformation import BaseImageVariationConfig +from ..common_utils import OpenAIError + + +class OpenAIImageVariationConfig(BaseImageVariationConfig): + def get_supported_openai_params( + self, model: str + ) -> List[OpenAIImageVariationOptionalParams]: + return ["n", "size", "response_format", "user"] + + def map_openai_params( + self, + non_default_params: dict, + optional_params: dict, + model: str, + drop_params: bool, + ) -> dict: + optional_params.update(non_default_params) + return optional_params + + def transform_request_image_variation( + self, + model: Optional[str], + image: FileTypes, + optional_params: dict, + headers: dict, + ) -> HttpHandlerRequestFields: + return { + "data": { + "image": image, + **optional_params, + } + } + + async def async_transform_response_image_variation( + self, + model: Optional[str], + raw_response: ClientResponse, + model_response: ImageResponse, + logging_obj: LiteLLMLoggingObj, + request_data: dict, + image: FileTypes, + optional_params: dict, + litellm_params: dict, + encoding: Any, + api_key: Optional[str] = None, + ) -> ImageResponse: + return model_response + + def transform_response_image_variation( + self, + model: Optional[str], + raw_response: Response, + model_response: ImageResponse, + logging_obj: LiteLLMLoggingObj, + request_data: dict, + image: FileTypes, + optional_params: dict, + litellm_params: dict, + encoding: Any, + api_key: Optional[str] = None, + ) -> ImageResponse: + return model_response + + def get_error_class( + self, error_message: str, status_code: int, headers: Union[dict, Headers] + ) -> BaseLLMException: + return OpenAIError( + status_code=status_code, + message=error_message, + headers=headers, + ) |