
    i_                     D    d dl mZ ddlmZ efdededefdZded	efd
Zy)    )Model   )LOWER
ngram_sizeattrreturnc                 b    t        dt              }| |j                  d<   ||j                  d<   |S )Nextract_ngramsr   r   )r   forwardattrs)r   r   models      h/var/www/vps2.regionflexible.com/Desarrollo/venv/lib/python3.12/site-packages/spacy/ml/extract_ngrams.pyr
   r
      s0    )73E *EKKEKKL    r   is_trainc                 `   g }g }|D ]  }| j                   j                  |j                  | j                  d   g            }|g}t	        d| j                  d   dz         D ]-  }|j                  | j                   j                  ||             / | j                   j                  j                  |      }	| j                   j                  j                  |	d      \  }	}
|j                  |	       |j                  |
        | j                   j                  |D cg c]  }|j                  d    c}d	      }| j                   j                  j                  |      }| j                   j                  | j                   j                  j                  |      d
	      }d }|||f|fS c c}w )Nr   r   r      T)return_countsr   int32)dtypefc                     g S )N )dYs    r   backpropzforward.<locals>.backprop   s    	r   )opsasarrayto_arrayr   rangeappendngramsxpconcatenateuniqueshape)r   docsr   
batch_keys
batch_valsdocunigramsr    nkeysvalsarrlengthsr   s                 r   r   r      sr   JJ  99$$S\\5;;v3F2G%HIq%++l3a78 	9AMM%))**1h78	9yy||''/YY\\((T(B
d$$  ii D#1 DGTG))*5J""599<<#;#;J#Gs"SJ 
G,h66 !Es   F+N)	thinc.apir   r   r   intr
   boolr   r   r   r   <module>r2      s=      16 s # % 75 7$ 7r   