
    *i              	         S SK Jr  S SKrS SKJrJrJrJrJrJ	r	J
r
JrJr  S SKrS SKJrJrJrJr  S SKJr  S SKJrJr  \(       a  S SKJr  Sr\R4                  R7                  S5      r\cG  \R:                  " \R<                  R?                  \R<                  RA                  \!5      5      5      S	-  O\R:                  " 5       r"\" \\"5      r#\" \#5      r$\" S
\%5      r&\	r' " S S\5      r(\$" S\RR                  \'/\5            SS j5       r*\$" S\'\\
" \5      \/\
" \(5      5                SS j5       r+\$" S\'\\/\
" \(5      5              SS j5       r,\$" S\
" \(5      /S5      SS j5       r-\$" S\RR                  \
" \(5      \\
" \5      /\5                SS j5       r.\$" S\\/\'5            S S j5       r/\$" S\'/S5      S!S j5       r0g)"    )annotationsN)	c_boolc_char_pc_intc_uint8c_floatc_void_pPOINTER_Pointer	Structure)UnionNewTypeOptionalTYPE_CHECKING)load_shared_library"ctypes_function_for_shared_library)CtypesArrayllavaLLAVA_CPP_LIBlib
clip_ctx_pc                  0    \ rS rSrS\" \5      4S\4/rSrg)llava_image_embed<   embedn_image_pos N)	__name__
__module____qualname____firstlineno__r
   r   r   _fields___static_attributes__r       Q/var/www/html/ai-backend/venv/lib/python3.13/site-packages/llama_cpp/llava_cpp.pyr   r   <   s    	''"#	Hr$   r   llava_validate_embed_sizec                   g Nr   )	ctx_llamactx_clips     r%   r&   r&   E        r$   !llava_image_embed_make_with_bytesc                   g r(   r   )r*   	n_threadsimage_bytesimage_bytes_lengths       r%   r,   r,   R   s     r$   $llava_image_embed_make_with_filenamec                   g r(   r   )r*   r.   
image_paths      r%   r1   r1   c   r+   r$   llava_image_embed_freec                   g r(   r   )r   s    r%   r4   r4   p       r$   llava_eval_image_embedc                   g r(   r   )r)   r   n_batchn_pasts       r%   r7   r7   w   s    " r$   clip_model_loadc                   g r(   r   )fname	verbositys     r%   r;   r;      s     r$   	clip_freec                   g r(   r   )ctxs    r%   r?   r?      r6   r$   )r)   llama_cpp.llama_context_pr*   r   returnbool)
r*   r   r.   Union[c_int, int]r/   zCtypesArray[c_uint8]r0   rE   rC   '_Pointer[llava_image_embed]')r*   r   r.   rE   r3   bytesrC   rF   )r   rF   )
r)   rB   r   rF   r9   rE   r:   z'_Pointer[c_int]'rC   rD   )r=   rG   r>   rE   rC   zOptional[clip_ctx_p])rA   r   )1
__future__r   osctypesr   r   r   r   r   r	   r
   r   r   pathlibtypingr   r   r   r   llama_cpp.llama_cpp	llama_cppllama_cpp._ctypes_extensionsr   r   r   _libllava_base_nameenvironget_libllava_override_pathPathpathabspathdirname__file___libllava_base_path	_libllavactypes_functionintr   clip_ctx_p_ctypesr   llama_context_p_ctypesr&   r,   r1   r4   r7   r;   r?   r   r$   r%   <module>r_      s   " 	
 
 
   (
   **..9 ZqZygll277??277??83L#MNQVV  @G  @L  @L  @N    35HI	4Y? \3'
 	  %%'89

(4>	
 'ww/7
  & *	 #
 *x(
%6DI"
 )G4E,F+GN O ((!"	 	((  	 
	" "Xu$57HI. J 0148 9r$   