Ë
    uPêjü  ã                   óX   — d dl mZmZmZ d dlZd dlmZ d dlmZ d dl	m
Z
  G d„ d«      Zy)é    )ÚAnyÚFinalÚcastN)ÚBaseVideoConfig)Ú VideoCreateOptionalRequestParams)Úfilter_out_litellm_paramsc            	       óV   — e Zd ZdZededededefd„«       Z	edeee
f   defd„«       Zy	)
ÚVideoGenerationRequestUtilsz7Helper utils for constructing video generation requestsÚmodelÚ video_generation_provider_configÚ video_generation_optional_paramsÚreturnc                 óÆ   — |j                  || t        j                  ¬«      }d|v r:|d   }|r!t        |t        «      r|j                  |«       |j                  dd«       |S )a•  
        Get optional parameters for the video generation API.

        Args:
            model: The model name
            video_generation_provider_config: The provider configuration for video generation API
            video_generation_optional_params: The optional parameters for video generation

        Returns:
            A dictionary of supported parameters for the video generation API
        )Úvideo_create_optional_paramsr   Údrop_paramsÚ
extra_bodyN)Úmap_openai_paramsÚlitellmr   Ú
isinstanceÚdictÚupdateÚpop)r   r   r   Úmapped_paramsr   s        úY/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/litellm/videos/utils.pyÚ$get_optional_params_video_generationz@VideoGenerationRequestUtils.get_optional_params_video_generation   so   € ð$  @×QÑQØ)IØÜ×+Ñ+ð  Ró  
ˆð Ð;Ñ;Ø @ÀÑ NˆJÙœj¨´TÔ:à×$Ñ$ ZÔ0à×Ñ˜l¨DÔ1àÐó    Úparamsc                 ó¦  — t        | xs i «      } | j                  di «      }t        |t         «      si }|j                  dd«      }| j                  d«      }| j	                  «       D ��ci c]  \  }}|dvr|�||“Œ }}}t        |¬«      }t        |j	                  «       D ��	ci c]  \  }}	|	€Œ	||	“Œ c}	}¬«      }
i |¥|
¥}i }||fD ]3  }t        |t         «      sŒ|j	                  «       D ]  \  }}|€Œ	|||<   Œ Œ5 |r$t        |¬«      }|r||d<   |j                  |«       |j                  dd«       t        t        |«      S c c}}w c c}	}w )a  
        Filter parameters to only include those defined in VideoCreateOptionalRequestParams.

        Args:
            params: Dictionary of parameters to filter

        Returns:
            VideoCreateOptionalRequestParams instance with only the valid parameters
        Úkwargsr   N>   r   r   Úpromptr   )r   Útimeout)	r   Úgetr   r   Úitemsr   r   r   r   )r   Ú
raw_kwargsÚkwargs_extra_bodyÚtop_level_extra_bodyÚkeyÚvalueÚbase_params_rawÚbase_paramsÚkÚvÚcleaned_kwargsÚoptional_paramsÚmerged_extra_bodyÚextra_body_candidates                 r   Ú-get_requested_video_generation_optional_paramzIVideoGenerationRequestUtils.get_requested_video_generation_optional_param/   s‰  € ô �f’l Ó#ˆà—Z‘Z ¨"Ó-ˆ
Ü˜*¤dÔ+ØˆJà#-§>¡>°,ÀÓ#EÐØ&,§j¡j°Ó&>Ðð %Ÿl™l›n÷"
á��UØÐEÑEÈ%ÐJ[ð �‰Jð"
ˆñ "
ô
 7¸oÔNˆä 9ÐS]×ScÑScÓSe×AwÉ4È1ÈaÐijÑivÀ!ÀQÁ$ÓAwÔ xˆð2
Øð2
àð2
ˆð
 -/ÐØ%9Ð;LÐ$Mò 	7Ð ÜÐ.´Õ5Ø"6×"<Ñ"<Ó">ò 7‘J�C˜ØÑ(Ø16Ð)¨#Ò.ñ7ð	7ñ Ü 9ÐARÔ SÐÙ Ø0A� Ñ-Ø×&Ñ&Ð'8Ô9à×Ñ˜I tÔ,äÔ4°oÓFÐFùó;"
ùó Bxs   Á*EÂ$
E
Â/E
N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚstaticmethodÚstrr   r   r   r   r   r1   © r   r   r
   r
   	   sm   „ ÙAàð Øð à*9ð ð +Kð ð 
ò	 ó ð ðD ð2GØ�S˜#�X‘ð2Gà	)ò2Gó ñ2Gr   r
   )Útypingr   r   r   r   Ú+litellm.llms.base_llm.videos.transformationr   Úlitellm.types.videos.mainr   Úlitellm.utilsr   r
   r8   r   r   ú<module>r=      s%   ðß #Ñ #ã Ý GÝ FÝ 3÷YGò YGr   