
    h                        S SK r S SK Jr  S SKJr  \ R                  R                  SS5      r\" SS5       He  r\" \S\ S	3S
5      S\S\S\	S\	S\	4
S j5       r
\" \S\ S3S
5      S\S\	S\	S\S\S\4S j5       r
\" \S\ S3S
5      S\S\	S\	S\	S\4
S j5       r
Mg     \" SS5       H%  r\" \S\ S3S
5      S\S\S\	S \	S\	S\	4S! j5       r
M'     g)"    N)Tensor)impltorchaoIMPL   	   _linear_8bit_act_
bit_weightMetaactivationspacked_weights
group_sizenkc                     U R                  5       S:X  d   eU R                  u  pVXd:X  d   e[        R                  " XSU R                  SS9$ N   metadtypedevicedimshapetorchemptyr   )r   r   r   r   r   mk_s          O/home/james-whalen/.local/lib/python3.13/site-packages/torchao/csrc_meta_ops.py_r       sH      A%%%!!ww{{1{'8'8HH    _embedding_bitpacked_weight_qvalsnum_embeddingsembedding_dimweight_scalesweight_zerosindicesc                     UR                  5       S:X  d   eUR                  S   n[        R                  " Xb[        R                  SS9$ Nr   r   r   r   r   r   r   r   float32)r$   r%   r&   r'   r(   r)   num_outs          r   r    r       s=     {{}!!!--"{{7vVVr!   _shared_embedding_c                     UR                  5       S:X  d   eUR                  S   n[        R                  " XS[        R                  SS9$ r+   r,   )r   r   r   r   r)   r.   s         r   r    r    *   s;    {{}!!!--"{{7U]]6JJr!      _linear_groupwise_bit_weight_with_lutscale_group_sizelut_group_sizec                     U R                  5       S:X  d   eU R                  u  pgXu:X  d   e[        R                  " XdU R                  SS9$ r   r   )r   r   r4   r5   r   r   r   r   s           r   r    r    3   sH      A%%%!!ww{{1{'8'8HHr!   )r   r   torch.libraryr   libraryLibrarytorchao_librangeweight_nbitintr     r!   r   <module>r?      s      mm##Iv6A;K	+*;-zBFK
I
I
I 
I 	
I
 
I L
I 
+[M5v>
W#
W
W 
W 	
W
 
W 
W ?
W 
++K=<fEK& Kc Kc Kc KF K FK; F A;K	++K=8KLfUIII I 	I
 I I VI r!   