
    U th{                       d dl mZ d dlZd dlZd dlZd dlmZmZmZm	Z	 d dl
mZ d dlZd dlZd dlZddlmZ ddlmZmZ dd	lmZ dd
lmZ ddlmZmZ ddlmZmZmZ ddlmZ ddl m!Z!  ej"                    Z# ej$        d          Z% ej&        ej'                  Z(e()                    e%           e#*                    e(            G d de          Z+ddZ,ddZ-ddZ.d dZ/e0dk    r ej1         e-                       dS dS )!    )annotationsN)AnyListTypeOptional)ClassVar   )_tools   )_ApiType__version__)register_commands)can_use_http2)CLIErrordisplay_error)PYDANTIC_V2
ConfigDictmodel_parse)	BaseModel)APIErrorz[%(asctime)s] %(message)sc                      e Zd ZU er ed          Zded<   n G d dej                  Z	ded<   d	Z
d
ed<   d
ed<   d
ed<   d
ed<   ded<   d	Zded<   d	Zd
ed<   d	Zd
ed<   d	Zd
ed<   d	Zded<   g Zded<   dZded<   d	S )	Argumentsignore)extrazClassVar[ConfigDict]model_configc                  2    e Zd ZU ej        j        Zded<   dS )Arguments.Configr   r   N)__name__
__module____qualname__pydanticExtrar   r   __annotations__     c/var/www/html/mycamper/aliexpress-site/backend/venv/lib/python3.11/site-packages/openai/cli/_cli.pyConfigr   %   s(         !.E......r%   r'   int	verbosityNzOptional[str]versionapi_keyapi_baseorganizationzOptional[List[str]]proxyzOptional[_ApiType]api_typeapi_versionazure_endpointazure_ad_tokenzOptional[Type[BaseModel]]
args_modelz	List[str]unknown_argsFboolallow_unknown_args)r   r   r    r   r   r   r#   r!   
BaseConfigr'   r*   r/   r0   r1   r2   r3   r4   r6   r$   r%   r&   r   r      sC         /-7Z.
 .
 .
 	
 	
 	
 	
 	

	/ 	/ 	/ 	/ 	/X( 	/ 	/ 	/ NNN!G!!!!#'H''''!%K%%%% %)N(((($(N(((( -1J0000 !L    $$$$$$$r%   r   returnargparse.ArgumentParserc                 :   t          j        d d                              dddddd	                               d
dd                               ddd                               dddd                               ddd                               ddt          dd                               dd                               d d!                               d"d#                               d$d%d&d't          z   (           d1fd+}                     | ,                                           }|                    d-d.          }t          |           |                    d/d0          }t          j        ||           S )2Nopenai)descriptionprogz-vz	--verbosecountr)   r   zSet verbosity.)actiondestdefaulthelpz-bz
--api-basezWhat API base url to use.)rB   z-kz	--api-keyzWhat API key to use.z-pz--proxy+zWhat proxy to use.)nargsrB   z-oz--organizationzRWhich organization to run as (will use your default organization if not specified)z-tz
--api-type)r;   azurez4The backend API to call, must be `openai` or `azure`)typechoicesrB   z--api-versionzvThe Azure API version, e.g. 'https://learn.microsoft.com/en-us/azure/ai-services/openai/reference#rest-api-versioning'z--azure-endpointz<The Azure endpoint, e.g. 'https://endpoint.openai.azure.com'z--azure-ad-tokenzyA token from Azure Active Directory, https://www.microsoft.com/en-us/security/business/identity-access/microsoft-entra-idz-Vz	--versionr*   z	%(prog)s )r?   r*   r8   Nonec                 0                                       d S N)
print_help)parsers   r&   rB   z_build_parser.<locals>.helpn   s    r%   )funcapizDirect API callstoolsz!Client side tools for conveniencer8   rH   )
argparseArgumentParseradd_argumentstrr   set_defaultsadd_subparsers
add_parserr   r
   )rB   
subparserssub_api	sub_toolsrL   s       @r&   _build_parserr[   >   s8   $HEEEF
     l1LMMM
k0FGGG
is9MNNN
a    
 #C      F     K      I     k)	          T"""&&((J##E0B#CCGg%%g4W%XXI
Y
333Mr%   r(   c                     	 t                       nd# t          t          t          j        f$ r} t          |            Y d } ~ dS d } ~ wt          $ r# t          j        	                    d           Y dS w xY wdS )Nr	   
r   )
_mainr   r   r!   ValidationErrorr   KeyboardInterruptsysstderrwrite)errs    r&   mainre   ~   s    h 89   cqqqqq   
qq 1s    A2A,A21A2rL   /tuple[argparse.Namespace, Arguments, list[str]]c                   dt           j        v rHt           j                            d          }t           j        d|         }t           j        |d          }nt           j        dd          }g }|                     |          \  }}|                    |           t          t          t          |                    }|j        s| 	                                 |||fS )Nz--r	   )
ra   argvindexparse_known_argsextendr   r   varsr6   
parse_args)rL   idx
known_argsr4   parsedremaining_unknownargss          r&   _parse_argsrs      s    sxhnnT""Xae_
x~Xabb\
 & 7 7
 C CF \***y$v,,//D"  	4***r%   rH   c            
        t                      } t          |           \  }}}|j        dk    rt          j                            d           i }|j        v|j        D ]n}|                    d          rdnd}||v rt          d| d          t          j
        t          j        t          j        |                              ||<   ot          j        |pd t                      	          }|t          _        |j        r|j        t          _        |j        r|j        t          _        |j        r|j        t          _        |j        |j        t          _        |j        |j        t          _        |j        |j        t          _        |j        |j        t          _        	 |j        rX|                    t7          |j        i d
 t9          |                                          D             d|i                     n|                                 	 |                                 d S # t>          $ r Y d S w xY w# 	 |                                 w # t>          $ r Y w w xY wxY w)Nr   z)Warning: --verbosity isn't supported yet
httpszhttps://zhttp://z	Multiple z0 proxies given - only the last one would be used)r.   )mountshttp2c                    i | ]
\  }}|||S rJ   r$   ).0keyvalues      r&   
<dictcomp>z_main.<locals>.<dictcomp>   s0        !+U$0  000r%   r4   ) r[   rs   r)   ra   rb   rc   r.   
startswithr   httpxHTTPTransportProxyURLClientr   r;   http_clientr-   r+   r,   base_urlr/   r1   r0   r2   r3   rM   r   rl   itemsclose	Exception)rL   rp   rr   unknownproxiesr.   rz   r   s           r&   r^   r^      s   __F'//FD'~
EFFF.0GzZ 	T 	TE % 0 0 9 9H**yCg~~`3```aaa .U[5AQAQ5R5RSSSGCLL,$oo  K %F 0"/| &} (- } -& $ 3#!-& $ 3? 	KKO	  /36ll.@.@.B.B	  	 '	 	      KKMMM	 	 	 	DD		 	 	 	D	sC   $A3H? H. .
H<;H<?I&II&
I# I&"I##I&__main__)r8   r9   )r8   r(   )rL   r9   r8   rf   rP   )2
__future__r   ra   loggingrQ   typingr   r   r   r   typing_extensionsr   r~   r!   r;    r
   r   r   _apir   _utilsr   _errorsr   r   _compatr   r   r   _modelsr   _exceptionsr   	getLoggerlogger	Formatter	formatterStreamHandlerrb   handlersetFormatter
addHandlerr   r[   re   rs   r^   r   exitr$   r%   r&   <module>r      s>   " " " " " " 



   , , , , , , , , , , , , & & & & & &          $ $ $ $ $ $ $ $ # # # # # # ! ! ! ! ! ! , , , , , , , , : : : : : : : : : :       " " " " " "				G9::	
'


+
+   Y      '   % % % % %	 % % %@= = = =@	 	 	 	+ + + +0C C C CL zCHTTVV r%   