
    h                        S SK r S SKr S SKrS SKrS SKJr  S SKJr  S SKJ	r	  S SK
Jr  S SKJr  S SKJr  S SKJr  S S	KJr  \R(                  " S
S9S 5       r\R(                  " S
S9S 5       r\R(                  " S
S9S 5       r\R(                  " S
S9S 5       r\R(                  S 5       r\R(                  S 5       r\R(                  " S
S9S 5       r\R(                  " S
S9S 5       r\R(                  " / SQS9S 5       r\R(                  S 5       r\R(                  S 5       r\R(                  S 5       r S r!S r"S r#S r$\ RJ                  " \ RL                  RO                  5       S9S 5       r(g)     N)ndarrays_of_shape)Language)	BeamBatch)ArcEager
StateClassDoc)ExampleVocabmodule)scopec                      [        5       $ Nr        Y/home/james-whalen/.local/lib/python3.13/site-packages/spacy/tests/parser/test_nn_beam.pyvocabr      s	    7Nr   c                 v   [        U R                  0 5      nUR                  SS5        UR                  SS5        UR                  SS5        UR                  SS5        UR                  SS5        UR                  SS5        UR                  S	S
5        UR                  SS5        UR                  SS5        U$ )Nr          nsubjpunctaux	nsubjpass   dobj   ROOT)r   strings
add_action)r   aeagers     r   movesr%      s    emmR(F
a
a
a!
a!
a
a%
a 
a
a Mr   c                 .    [        U / SQ/ SQ/ SQ/ SQS9/$ )N)Ratsbitethings)r   r   r   )r   r!   r   )TFF)wordsheadsdepssent_startsr	   )r   s    r   docsr.   $   s%     	,*,	
 r   c                 `    U  Vs/ s H  n[        XR                  5       5      PM     sn$ s  snf r   )r   copyr.   docs     r   examplesr3   1   s%    045GC$555s   #+c                 D    U  Vs/ s H  n[        U5      PM     sn$ s  snf r   r   r1   s     r   statesr5   6   s    '+,tJsOt,,,s   c                     / nU  HT  n[         R                  R                  SS[        U5      U45      nUR	                  [         R
                  " U5      5        MV     U$ )N皙皙?)numpyrandomuniformlenappendasarray)r.   vector_sizeoutputr2   vecs        r   tokvecsrB   ;   sN    Fll""4s3x.EFemmC()  Mr   c                     [        U 5      $ r   r<   )r.   s    r   
batch_sizerE   D   s    t9r   c                      g)Nr    r   r   r   r   
beam_widthrG   I       r   )        g      ?      ?)paramsc                     U R                   $ r   )param)requests    r   beam_densityrO   N   s    ==r   c                      g)N   r   r   r   r   r?   r?   S   rH   r   c                 @    U R                  U5      u  p4n[        XXBSS9$ )NrI   widthdensity)init_gold_batchr   )r%   r3   rG   r5   golds_s         r   beamrY   X   s&    ,,X6F1UESIIr   c                     [         R                  " [         R                  " [        U5       Vs/ s H/  n[         R                  R                  SSX R                  45      PM1     sn5      SS9$ s  snf )Nr7   r8   float32)dtype)r9   r>   concatenateranger:   r;   n_moves)r%   rE   rG   rX   s       r   scoresr`   ^   sg    == z**A $$T3]]0KL*	
  s   6A.c                     g r   r   )rY   s    r   test_create_beamrb   k   s    r   c                 &    U R                  U5        g r   )advance)rY   r`   s     r   test_beam_advancere   o   s    LLr   c                     [        S U  5       5      nUS U n[        R                  " [        5         U R	                  US S 5        S S S 5        g ! , (       d  f       g = f)Nc              3   8   #    U  H  n[        U5      v   M     g 7fr   rD   .0rY   s     r   	<genexpr>3test_beam_advance_too_few_scores.<locals>.<genexpr>t        -#d))   )sumpytestraises
IndexErrorrd   )rY   r`   n_states      r    test_beam_advance_too_few_scoresrt   s   sH    ---GHWF	z	"VCR[! 
#	"	"s   A
Ac                    ^  [        5       nUR                  S5      nXR                  S'   UR                  S5        UR	                  U 4S j5        UR                  S5      nU" U5        g )Nbeam_parserrG   r   c                     > T $ r   r   )r3   s   r   <lambda>!test_beam_parse.<locals>.<lambda>   s    hr   zAustralia is a country)r   add_pipecfg	add_label
initializemake_doc)r3   rG   nlpparserr2   s   `    r   test_beam_parser   z   sW    
*C\\-(F)JJ|
W
&'
,,/
0C
3Kr   )hypc           
         [        UR                  [        R                  R	                  SSSS95      5      nU R                  U5      u  pVn[        XXbUS9n[        S U 5       5      n	UR                  [        XR                  45      5      n
UR                  U
5        U H2  nUR                  nUR                  U:X  d   eUS   US   U-  :  a  M2   e   g )	NrI   rJ       )rT   rS   c              3   8   #    U  H  n[        U5      v   M     g 7fr   rD   rh   s     r   rj   $test_beam_density.<locals>.<genexpr>   rl   rm   rn   r   )floatdraw
hypothesis
strategiesfloatsrV   r   ro   r   r_   rd   probsmin_density)r%   r3   rG   r   rO   r5   rW   rX   rY   rs   r`   b
beam_probss                r   test_beam_densityr      s    *"7"7">">sCr">"RSTL,,X6F1UE\RD---GXX'--(@ABFLLWW
}},,,"~A!==== r   ))r   hypothesis.strategiesr9   rp   thinc.tests.strategiesr   spacy.languager   ,spacy.pipeline._parser_internals._beam_utilsr   *spacy.pipeline._parser_internals.arc_eagerr   +spacy.pipeline._parser_internals.stateclassr   spacy.tokensr
   spacy.trainingr   spacy.vocabr   fixturer   r%   r.   r3   r5   rB   rE   rG   rO   r?   rY   r`   rb   re   rt   r   givenr   datar   r   r   r   <module>r      s       4 # B ? B  "  h   h   h	  	 h6  6 - -   h   h   ' (   J J
 	 		" j++0023
> 4
>r   