Ë
    uPêj¾  ã            	      ó¨  — U d Z ddlmZ ddlZddlmZ ddlmZmZm	Z	m
Z
mZ ddlZddlmZ erddlmZmZ  G d„ d	e
«      Z G d
„ de
«      Z G d„ d«      Z e«       Zded<   dd„Z e«       adaded<   daded<   	 deeeeeeedœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„Zdd„Zdd„Zd d„Z	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d!d„Z 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d!d„Z!y)"z3Thin Python wrapper for the native Rust OCR bridge.é    )ÚannotationsN)Ú	Awaitable)ÚTYPE_CHECKINGÚAnyÚFinalÚProtocolÚcast)Útimeout_to_seconds)ÚRustAmessagesÚRustMessagesc                  ó8   — e Zd Z	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„Zy)ÚRustOcrc	                ó   — t         ‚©N©ÚNotImplementedError©	ÚselfÚmodelÚdocumentÚapi_keyÚapi_baseÚcustom_llm_providerÚextra_headersÚoptional_paramsÚtimeout_secondss	            ú\/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/litellm/rust_bridge/ocr.pyÚ__call__zRustOcr.__call__   ó
   € ô "Ð!ó    N)r   Ústrr   údict[str, object]r   ú
str | Noner   r#   r   r#   r   údict[str, object] | Noner   r"   r   úfloat | NoneÚreturnr"   ©Ú__name__Ú
__module__Ú__qualname__r   © r    r   r   r      s_   „ ð"àð"ð $ð"ð ð	"ð
 ð"ð (ð"ð 0ð"ð +ð"ð &ð"ð 
ô"r    r   c                  ó8   — e Zd Z	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„Zy)ÚRustAocrc	                ó   — t         ‚r   r   r   s	            r   r   zRustAocr.__call__!   r   r    N)r   r!   r   r"   r   r#   r   r#   r   r#   r   r$   r   r"   r   r%   r&   zAwaitable[dict[str, object]]r'   r+   r    r   r-   r-       s_   „ ð"àð"ð $ð"ð ð	"ð
 ð"ð (ð"ð 0ð"ð +ð"ð &ð"ð 
&ô"r    r-   c                  ó   — e Zd Zy)Ú_UnsetN)r(   r)   r*   r+   r    r   r0   r0   /   s   „ Ør    r0   zFinal[_Unset]Ú_UNSETc                 ój   — t        j                  dd«      j                  «       j                  «       dv S )NÚLITELLM_USE_RUST_OCRÚ >   Ú1ÚonÚyesÚtrue)ÚosÚgetenvÚstripÚlowerr+   r    r   Ú_env_enables_rust_ocrr=   6   s3   € Ü�9‰9Ð+¨RÓ0×6Ñ6Ó8×>Ñ>Ó@ð Eð ð r    úRustOcr | NoneÚ_rust_ocr_implúRustAocr | NoneÚ_rust_aocr_impl)ÚocrÚaocrÚmessagesÚ	amessagesÚresponses_websocketÚtranscriptionÚatranscriptionc               óV  — t        |t        «       xs t        |t        «       }t        |t        «       xs t        |t        «       }	t        |t        «       }
t        |t        «       xs t        |t        «       }|s|	s|
s| at        |t        «      s|at        |t        «      s|a|rddlm}  || ||¬«       |	s|
sy |	rTddlm} t        |t        «      st        |t        «      s |||¬«       n#t        |t        «      s
 ||¬«       n	 ||¬«       |
rddl	m
}  ||¬	«       y y )
Nr   )Úconfigure_rust_transcription)ÚenabledrG   rH   )Úset_rust_messages)rD   rE   )rD   )rE   )Úset_rust_responses_websocket)Ú
connection)Ú
isinstancer0   Ú_rust_ocr_enabledr?   rA   Ú!litellm.rust_bridge.transcriptionrJ   Úlitellm.rust_bridge.messagesrL   Ú'litellm.rust_bridge.responses_websocketrM   )rK   rB   rC   rD   rE   rF   rG   rH   Úconfiguring_ocrÚconfiguring_messagesÚconfiguring_responses_websocketÚconfiguring_transcriptionrJ   rL   rM   s                  r   Úuse_litellm_rustrX   D   s  € ô ",¨C´Ó!8Ð8ÒXÄ
È4ÔQWÓ@XÐ<X€OÜ&0°¼6Ó&BÐ"BÒ"gÌ*ÐU^Ô`fÓJgÐFgÐÜ1;Ð<OÔQWÓ1XÐ-XÐ#Ü+5°mÄVÓ+LÐ'LÒ'vÔT^Ð_mÔouÓTvÐPvÐÙÑ3Ñ<[Ø#ÐÜ�cœ6Ô"ØˆÜ�dœFÔ#ØˆÙ ÝRá$ØØ'Ø)õ	
ñ
  Ñ(GØÙÝBä˜(¤FÔ+´J¸yÌ&Ô4QÙ x¸9ÖEÜ˜H¤fÔ-Ù xÖ0á¨	Õ2Ù&ÝXá$Ð0CÖDð 'r    c                 ó   — t         S r   )rP   r+   r    r   Úrust_ocr_enabledrZ   s   s   € ÜÐr    c                 ón   — t         �t         S ddlm}   | «       }|€y t        t        |j
                  «      S )Nr   ©Úget_native_bridge)r?   Úlitellm.rust_bridger]   r	   r   rB   ©r]   Únative_bridges     r   Úload_rust_ocrra   w   s5   € ÜÐ!ÜÐÝ5á,Ó.€MØÐØÜ”˜×*Ñ*Ó+Ð+r    c                 óp   — t         �t         S ddlm}   | «       }|€y t        t        t        |dd «      «      S )Nr   r\   rC   )rA   r^   r]   r	   r-   Úgetattrr_   s     r   Úload_rust_aocrrd   ‚   s8   € ÜÐ"ÜÐÝ5á,Ó.€MØÐØÜ”œ' -°¸Ó>Ó?Ð?r    c                óN   — t        «       }|€y  || ||||||t        |«      ¬«      S ©N)r   r   r   r   r   r   r   r   )ra   Ú_timeout_to_seconds)	r   r   r   r   r   r   r   ÚtimeoutÚrust_ocrs	            r   rB   rB   �   s>   € ô $“o€HØÐØÙØØØØØ/Ø#Ø'Ü+¨GÓ4ô	ð 	r    c              ƒ  ój   K  — t        «       }|€y  || ||||||t        |«      ¬«      ƒ d {  –—† S 7 Œ­wrf   )rd   rg   )	r   r   r   r   r   r   r   rh   Ú	rust_aocrs	            r   rC   rC   §   sM   è ø€ ô &Ó'€IØÐØÙØØØØØ/Ø#Ø'Ü+¨GÓ4ô	÷ 	ð 	ð 	ús   ‚*3¬1­3)r&   Úbool)T)rK   rl   rB   zRustOcr | None | _UnsetrC   zRustAocr | None | _UnsetrD   zRustMessages | None | _UnsetrE   zRustAmessages | None | _UnsetrF   úAny | None | _UnsetrG   rm   rH   rm   r&   ÚNone)r&   r>   )r&   r@   )r   r!   r   r"   r   r#   r   r#   r   r#   r   r$   r   r"   rh   zfloat | httpx.Timeout | Noner&   r$   )"Ú__doc__Ú
__future__r   r9   Úcollections.abcr   Útypingr   r   r   r   r	   ÚhttpxÚlitellm.rust_bridge.timeoutsr
   rg   rR   r   r   r   r-   r0   r1   Ú__annotations__r=   rP   r?   rA   rX   rZ   ra   rd   rB   rC   r+   r    r   ú<module>rv      sË  ðÚ 9å "ã 	Ý %ß <Õ <ã å RáßHô"ˆhô "ô"ˆxô "÷	ñ 	ñ ›€ˆÓ  óñ *Ó+Ð Ø!%€�Ó %Ø#'€�Ó 'ð ð,Eð $*Ø%+Ø-3Ø/5Ø/5Ø)/Ø*0ñ,EØð,Eð 
!ð,Eð #ð	,Eð
 +ð,Eð -ð,Eð -ð,Eð 'ð,Eð (ð,Eð 
ó,Eó^ó,ó@ðàðð  ðð ð	ð
 ðð $ðð ,ðð 'ðð *ðð óð4àðð  ðð ð	ð
 ðð $ðð ,ðð 'ðð *ðð ôr    