Ë
    uPêj  ã                   ó^   — U d dl mZmZ d dlmZ d dlmZ ddlmZ dZ	ee
d<    G d„ d	e«      Zy
)é    )ÚFinalÚLiteral)Úget_secret_str)ÚAllMessageValuesé   )ÚOpenAILikeChatConfigzhttps://inference.do-ai.runÚGRADIENT_AI_SERVERLESS_ENDPOINTc            %       ó¸  ‡ — e Zd ZU dZedz  ed<   dZee   dz  ed<   dZ	e
dz  ed<   dZedz  ed<   dZe
dz  ed<   dZe
dz  ed<   dZe
dz  ed<   dZe
dz  ed	<   dZed
   dz  ed<   	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d&dedz  dedz  dedz  dedz  dedz  deee   z  dz  de
dz  dedz  dedz  dedz  dee   dz  de
dz  dedz  de
dz  de
dz  de
dz  d	e
dz  ddf$d„Zeˆ fd„«       Zdedefd„Z	 	 d'dededee   dedededz  dedz  fd„Z	 d(dedz  dedz  dededede
dz  defd „Zdedz  dedz  deedz  edz  f   fd!„Z	 	 d)d"ededed#e
d$e
defd%„Zˆ xZS )*ÚGradientAIConfigNÚkÚ
kb_filtersÚ#filter_kb_content_by_query_metadataÚinstruction_overrideÚinclude_functions_infoÚinclude_retrieval_infoÚinclude_guardrails_infoÚprovide_citations)ÚrewriteÚ	step_backÚsub_queriesÚnoneÚretrieval_methodÚfrequency_penaltyÚ
max_tokensÚmax_completion_tokensÚpresence_penaltyÚstopÚstreamÚtemperatureÚtop_pÚreturnc                 ó¤   — t        «       j                  «       }|j                  «       D ]%  \  }}|dk7  sŒ|€Œt        | j                  ||«       Œ' y )NÚself)ÚlocalsÚcopyÚitemsÚsetattrÚ	__class__)r#   r   r   r   r   r   r   r   r   r    r   r   r   r   r   r   r   r   Úlocals_ÚkeyÚvalues                        úq/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/litellm/llms/gradient_ai/chat/transformation.pyÚ__init__zGradientAIConfig.__init__   sF   € ô(  ›Ÿ™›ˆØ!Ÿ-™-›/ò 	4‰JˆC�Ø�f‹} Ñ!2Ü˜Ÿ™¨¨UÕ3ñ	4ó    c                 ó    •— t         ‰| �  «       S ©N)ÚsuperÚ
get_config)Úclsr(   s    €r,   r2   zGradientAIConfig.get_config2   s   ø€ ä‰wÑ!Ó#Ð#r.   Úmodelc                 ó   — g d¢}|S )N)r   r   r   r   r   r   Ústream_optionsr   r    r   r   r   r   r   r   r   r   r   © )r#   r4   Úsupported_paramss      r,   Úget_supported_openai_paramsz,GradientAIConfig.get_supported_openai_params6   s   € ò#
Ðð*  Ðr.   ÚheadersÚmessagesÚoptional_paramsÚlitellm_paramsÚapi_keyÚapi_basec                 ó`   — |xs t        d«      }|€t        d«      ‚|€i }d|› �|d<   d|d<   |S )NÚGRADIENT_AI_API_KEYzGradientAI API key not foundzBearer ÚAuthorizationzapplication/jsonzContent-Type)r   Ú
ValueError)r#   r:   r4   r;   r<   r=   r>   r?   s           r,   Úvalidate_environmentz%GradientAIConfig.validate_environmentN   sO   € ð ÒBœ^Ð,AÓBˆØˆ?ÜÐ;Ó<Ð<Øˆ?ØˆGØ%,¨W¨IÐ#6ˆ�Ñ Ø"4ˆ�ÑØˆr.   c                 ór   — t        d«      }t        › d�}|r|t        k7  r|› d�}|S |r|t        k7  r|› d�}|S )NÚGRADIENT_AI_AGENT_ENDPOINTz/v1/chat/completionsz/api/v1/chat/completions©r   r	   )	r#   r?   r>   r4   r<   r=   r   Úgradient_ai_endpointÚcomplete_urls	            r,   Úget_complete_urlz!GradientAIConfig.get_complete_urla   s`   € ô '5Ð5QÓ&RÐÜ9Ð:Ð:NÐOˆá˜Ô$CÒCØ&˜ZÐ'?Ð@ˆLð Ðñ "Ð&:Ô>]Ò&]Ø2Ð3Ð3KÐLˆLàÐr.   c                 ó`   — t        d«      }|s	|st        }n|xs |}|xs t        d«      }||fS )NrF   rA   rG   )r#   r?   r>   rH   Údynamic_api_keys        r,   Ú$_get_openai_compatible_provider_infoz5GradientAIConfig._get_openai_compatible_provider_infot   sA   € ô '5Ð5QÓ&RÐáÑ 4Ü6‰HàÒ7Ð#7ˆHà!(Ò!Q¬NÐ;PÓ,QˆØ˜Ð(Ð(r.   Únon_default_paramsÚdrop_paramsÚ-replace_max_completion_tokens_with_max_tokensc                 óš   — | j                  |¬«      }|j                  «       D ]%  \  }}||v r|||<   Œ|rŒddlm}	  |	dd|› d�¬«      ‚ |S )N)r4   r   )ÚUnsupportedParamsErrori�  z'GradientAI does not support parameter 'z6'. To drop unsupported params, set `drop_params=True`.)Ústatus_codeÚmessage)r9   r&   Úlitellm.utilsrR   )
r#   rN   r<   r4   rO   rP   Úsupported_openai_paramsÚparamr+   rR   s
             r,   Úmap_openai_paramsz"GradientAIConfig.map_openai_params�   sz   € ð *.×)IÑ)IÐPUÐ)IÓ)VÐØ.×4Ñ4Ó6ò 		‰LˆE�5ØÐ/Ñ/Ø).� Ò&Ú Ý@á,Ø #ØEÀeÀWð  MCð  Dôð ð		ð Ðr.   )NNNNNNNNNNNNNNNNN)NNr0   )FF)Ú__name__Ú
__module__Ú__qualname__r   ÚintÚ__annotations__r   ÚlistÚdictr   Úboolr   Ústrr   r   r   r   r   r   Úfloatr-   Úclassmethodr2   r9   r   rD   rJ   ÚtuplerM   rX   Ú__classcell__)r(   s   @r,   r   r      s0  ø… Ø€A€sˆT�zÓØ$(€J��T‘
˜TÑ!Ó(Ø7;Ð'¨°©Ó;Ø'+Ð˜# ™*Ó+Ø*.Ð˜D 4™KÓ.Ø*.Ð˜D 4™KÓ.Ø+/Ð˜T D™[Ó/Ø%)Ð�t˜d‘{Ó)ØVZÐ�gÐKÑLÈtÑSÓZð +/Ø!%Ø,0Ø)-Ø'+Ø'+Ø"Ø$(Ø"ØØ(,Ø;?Ø+/Ø.2Ø.2Ø/3Ø)-ñ%4à  4™<ð4ð ˜$‘Jð4ð  # T™zð	4ð
   $™,ð4ð  ™*ð4ð �D˜‘I‰o Ñ$ð4ð �t‘ð4ð ˜T‘\ð4ð �t‰|ð4ð �‰:ð4ð ˜‘J Ñ%ð4ð .2°D©[ð4ð " D™jð4ð !% t¡ð4ð  !% t¡ð!4ð" "&¨¡ð#4ð$   $™;ð%4ð& 
ó'4ð2 ó$ó ð$ð °ð  ¸ó  ð> #Ø#ñàðð ðð Ð'Ñ(ð	ð
 ðð ðð �t‘ðð ˜‘*óð4 #ñà˜‘*ðð �t‘ðð ð	ð
 ðð ðð �t‘ðð 
óð&)Ø˜d™
ð)Ø-0°4©Zð)à	ˆs�T‰z˜3 ™:Ð%Ñ	&ó)ð$ "Ø>Cñà ðð ðð ð	ð
 ðð 8<ðð 
÷r.   r   N)Útypingr   r   Úlitellm.secret_managers.mainr   Úlitellm.types.llms.openair   Úopenai_like.chat.transformationr   r	   r]   r   r7   r.   r,   ú<module>rj      s6   ðß !Ð !å 7õõ Dð *GÐ  Ó FôGÐ+õ Gr.   