§
     @gn	  ã                   óŽ  — d dl Z d dlmZ d dl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  ej        d¦  «        Ze                      ej        ¦   «         ¦  «          ej        d	¦  «        Z ej        d
¦  «        Z ej        d¦  «        Z e j        d¬¦  «        Ze                     deddd¬¦  «         e                     deddd¬¦  «         e                     deedd¬¦  «         e                     deedd¬¦  «         e                     deedd¬¦  «         e                     deddd¬¦  «         e                     ¦   «         Z  e
e j!        ¬¦  «        Z"ed efd!„¦   «         Z# ee#ddd¬"¦  «        Z$ ee j%        e"j&        ¬#¦  «        Z'e' (                    e$¦  «          ee j)        e"j&        ¬#¦  «        Z*e* (                    e$¦  «          ee j+        e"j&        ¬#¦  «        Z,e, (                    e$¦  «         e -                    d$e› �¦  «          ej.        e$e j/        e j0        ¬%¦  «         dS )&é    N)Úasynccontextmanager)ÚFastAPI)ÚAccessLogWorkerÚ__version__)ÚChatGPTProxy)ÚClaudeProxy)ÚGeminiProxyÚaiproxyÚOPENAI_API_KEYÚANTHROPIC_API_KEYÚGOOGLE_API_KEYzAIProxy usage)Údescriptionz--hostz	127.0.0.1Fzhostname or ipaddress)ÚtypeÚdefaultÚrequiredÚhelpz--portÚ8000zport numberz--openai_api_keyzOpenAI API Keyz--anthropic_api_keyzAnthropic API Keyz--google_api_keyzGoogle API Keyz--connection_strzsqlite:///aiproxy.dbzDatabase connection string)Úconnection_strÚappc                ó¶   K  — t          j        t          j        d¬¦  «                             ¦   «          d W V — t          j                             d ¦  «         d S )NT)ÚtargetÚdaemon)Ú	threadingÚThreadÚworkerÚrunÚstartÚqueue_clientÚput)r   s    úD/var/www/piapp/venv/lib/python3.11/site-packages/aiproxy/__main__.pyÚlifespanr!   $   sT   è è € õ Ô�FœJ¨tÐ4Ñ4Ô4×:Ò:Ñ<Ô<Ð<Ø	€E€E€E€Eå
Ô×Ò˜DÑ!Ô!Ð!Ð!Ð!ó    )r!   Údocs_urlÚ	redoc_urlÚopenapi_url)Úapi_keyÚaccess_logger_queuezStart AI Proxy version )ÚhostÚport)1ÚargparseÚ
contextlibr   ÚloggingÚosr   ÚuvicornÚfastapir   r
   r   r   Úaiproxy.chatgptr   Úaiproxy.anthropic_clauder   Úaiproxy.geminir	   Ú	getLoggerÚloggerÚ
addHandlerÚNullHandlerÚgetenvÚenv_openai_api_keyÚenv_anthropic_api_keyÚenv_google_api_keyÚArgumentParserÚparserÚadd_argumentÚstrÚintÚ
parse_argsÚargsr   r   r!   r   Úopenai_api_keyr   Úchatgpt_proxyÚ	add_routeÚanthropic_api_keyÚclaude_proxyÚgoogle_api_keyÚgemini_proxyÚinfor   r(   r)   © r"   r    ú<module>rK      sY  ðØ €€€Ø *Ð *Ð *Ð *Ð *Ð *Ø €€€Ø 	€	€	€	Ø Ð Ð Ð Ø €€€Ø Ð Ð Ð Ð Ð Ø 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ø (Ð (Ð (Ð (Ð (Ð (Ø 0Ð 0Ð 0Ð 0Ð 0Ð 0Ø &Ð &Ð &Ð &Ð &Ð &à	ˆÔ	˜9Ñ	%Ô	%€Ø × Ò Ð%�'Ô%Ñ'Ô'Ñ (Ô (Ð (ð �R”YÐ/Ñ0Ô0Ð Ø!˜œ	Ð"5Ñ6Ô6Ð Ø�R”YÐ/Ñ0Ô0Ð ð 
!ˆÔ	 ¨_Ð	=Ñ	=Ô	=€Ø × Ò �H 3°ÀeÐRiÐ Ñ jÔ jÐ jØ × Ò �H 3°ÀÈ]Ð Ñ [Ô [Ð [Ø × Ò Ð&¨SÐ:LÐW\ÐcsÐ Ñ tÔ tÐ tØ × Ò Ð)°Ð=RÐ]bÐi|Ð Ñ }Ô }Ð }Ø × Ò Ð&¨SÐ:LÐW\ÐcsÐ Ñ tÔ tÐ tØ × Ò Ð&¨SÐ:PÐ[`ð  hDÐ ñ  Eô  Eð  Eà×ÒÑÔ€ð 
ˆ¨Ô(;Ð	<Ñ	<Ô	<€ð ð"˜ð "ð "ð "ñ Ôð"ð €g�x¨$¸$ÈDÐQÑQÔQ€ð �ØÔØÔ+ðñ ô €ð × Ò ˜Ñ Ô Ð ð ˆ{ØÔ"ØÔ+ðñ ô €ð × Ò �sÑ Ô Ð ð ˆ{ØÔØÔ+ðñ ô €ð × Ò �sÑ Ô Ð à ‡‚Ð3 kÐ3Ð3Ñ 4Ô 4Ð 4à €„ˆC�d”i d¤iÐ 0Ñ 0Ô 0Ð 0Ð 0Ð 0r"   