
    .h4                    ,   d dl mZ d dlmZmZmZmZmZmZm	Z	m
Z
 d dlmZmZ d dlmZmZ d dlZd dlmZ ddlmZmZ  ed	      Z ed
ej.                        Zej2                  j5                  d      Zerd1dZd2dZd3dZd4dZd5dZ d6dZ!d6dZ"n+erd dl#mZmZm Z m"Z"m!Z! d dl$mZmZ nddl%mZmZm Z mZm"Z"mZm!Z! erd dlm&Z& nerdZ&nd dlm&Z& d7dZ'd8dZ(d9dZ)d9dZ*d:dZ+d;dZ,ddd<d Z-dd!d=d"Z.dddd#d$d%	 	 	 	 	 	 	 	 	 	 	 	 	 d>d&Z/d?d'Z0d@d(Z1dAd)Z2er G d* d+ej.                        Z3nFer/d dl4Z G d, d+ejj                  jf                  ej.                        Z3n G d- d+ej.                        Z3ere6Z7 G d. d/ee         Z8yd d0l9m7Z7 e7Z8y)B    )annotations)TYPE_CHECKINGAnyUnionGenericTypeVarCallablecastoverload)datedatetime)SelfLiteralN)	FieldInfo   )IncExStrBytesIntFloat_T_ModelT)boundz1.c                     y N values    O/var/www/html/axiom-chatbot/venv/lib/python3.12/site-packages/openai/_compat.py
parse_dater              c                     y r   r   r   s    r   parse_datetimer!      r   r   c                     y r   r   ts    r   get_argsr%      r   r   c                     y r   r   )tps    r   is_unionr(   !   r   r   c                     y r   r   r#   s    r   
get_originr*   $   r   r   c                     y r   r   type_s    r   is_literal_typer.   '   r   r   c                     y r   r   r,   s    r   is_typeddictr0   *   r   r   )r%   r(   r*   r0   r.   )r   r!   )r%   r(   r*   r   r0   r!   r.   )
ConfigDictc                n    t         rt        t        | j                  |            S | j	                  |      S r   )PYDANTIC_V1r
   r   	parse_objmodel_validate)modelr   s     r   r4   r4   P   s,    GU__U344##E**r   c                F    t         r| j                  S | j                         S r   )r3   requiredis_requiredfields    r   field_is_requiredr<   W   s    ~~r   c                N    | j                         }t        r|S ddlm} ||k(  ry |S )Nr   )PydanticUndefined)get_defaultr3   pydantic_corer>   )r;   r   r>   s      r   field_get_defaultrA   ]   s,    E/!!Lr   c                >    t         r| j                  S | j                  S r   )r3   outer_type_
annotationr:   s    r   field_outer_typerE   h   s       r   c                >    t         r| j                  S | j                  S r   )r3   
__config__model_configr6   s    r   get_model_configrJ   n       r   c                >    t         r| j                  S | j                  S r   )r3   
__fields__model_fieldsrI   s    r   get_model_fieldsrO   t   rK   r   Fdeepc               V    t         r| j                  |      S | j                  |      S )NrP   )r3   copy
model_copy)r6   rQ   s     r   rT   rT   z   s*    zztz$$&&r   indentc               V    t         r| j                  |      S | j                  |      S )NrU   )r3   jsonmodel_dump_json)r6   rV   s     r   
model_jsonrZ      s*    zzz((   //r   Tpython)excludeexclude_unsetexclude_defaultswarningsmodec                   t         rt        | d      r#| j                  ||||t         rd      S |      S t        d| j	                  |||            S )N
model_dumpT)r`   r\   r]   r^   r_   dict[str, Any])r\   r]   r^   )r3   hasattrrb   r
   dict)r6   r\   r]   r^   r_   r`   s         r   rb   rb      sy     GE<8'-(T   
 	
 /7   
 	
 

'- 	 	
 r   c                R    t         r| j                  |      S | j                  |      S r   )r3   r4   r5   r6   datas     r   model_parseri      s%    t$$%%r   c                R    t         r| j                  |      S | j                  |      S r   )r3   	parse_rawmodel_validate_jsonrg   s     r   model_parse_jsonrm      s%    t$$$$T**r   c                N    t         r| j                         S | j                         S r   )r3   schemamodel_json_schemarI   s    r   rp   rp      s     ||~""$$r   c                      e Zd ZyGenericModelN__name__
__module____qualname__r   r   r   rs   rs          r   rs   c                      e Zd Zyrr   rt   r   r   r   rs   rs      rx   r   c                      e Zd Zyrr   rt   r   r   r   rs   rs      rx   r   c                  l    e Zd ZU ded<   ded<   ddZeddd       Zeddd       Zddd	Zdd
ZddZy)typed_cached_propertyCallable[[Any], _T]funcz
str | Noneattrnamec                     y r   r   )selfr~   s     r   __init__ztyped_cached_property.__init__       r   Nc                     y r   r   r   instanceowners      r   __get__ztyped_cached_property.__get__       SVr   c                     y r   r   r   s      r   r   ztyped_cached_property.__get__   r   r   c                    t               r   )NotImplementedErrorr   s      r   r   ztyped_cached_property.__get__   s    %''r   c                     y r   r   )r   r   names      r   __set_name__z"typed_cached_property.__set_name__   r   r   c                     y r   r   )r   r   r   s      r   __set__ztyped_cached_property.__set__   r   r   )r~   r}   returnNoner   )r   r   r   type[Any] | Noner   r   )r   objectr   r   r   r   )r   r   r   r   r   z	_T | Self)r   	type[Any]r   strr   r   )r   r   r   r   r   r   )	ru   rv   rw   __annotations__r   r   r   r   r   r   r   r   r|   r|      s>    !!B	V 
V	V 
V	( 	I 	Dr   r|   )cached_property)r   zdate | StrBytesIntFloatr   r   )r   z!Union[datetime, StrBytesIntFloat]r   r   )r$   r   r   ztuple[Any, ...])r'   r   r   bool)r$   r   r   r   )r-   r   r   r   )r6   type[_ModelT]r   r   r   r   )r;   r   r   r   )r;   r   r   r   )r6   type[pydantic.BaseModel]r   r   )r6   r   r   zdict[str, FieldInfo])r6   r   rQ   r   r   r   )r6   pydantic.BaseModelrV   z
int | Noner   r   )r6   r   r\   zIncEx | Noner]   r   r^   r   r_   r   r`   zLiteral['json', 'python']r   rc   )r6   r   rh   r   r   r   )r6   r   rh   zstr | bytesr   r   )r6   r   r   rc   ):
__future__r   typingr   r   r   r   r   r	   r
   r   r   r   typing_extensionsr   r   pydanticpydantic.fieldsr   _typesr   r   r   	BaseModelr   VERSION
startswithr3   r   r!   r%   r(   r*   r.   r0   pydantic.typingpydantic.datetime_parse_utilsr1   r4   r<   rA   rE   rJ   rO   rT   rZ   rb   ri   rm   rp   rs   pydantic.genericsgenericspropertyr   r|   	functoolsr   r   r   <module>r      s   " X X X # +  % +T]
)8#5#5
6 ))$/
 	
 	
 	gf	
 	
 	
 1
5+ 05 ' CG 0 !"&.  	
   $ 8&+% /x))/  S8,,998;M;MS
 	48--3 OD D( =+r   