
    h+                        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  S S
KJr  \ R&                  S 5       r\ R&                  S 5       r\ R&                  S 5       r\ R&                  S 5       r\ R&                  S 5       r\ R&                  S 5       r\ R&                  S 5       rS rS rS rS r\ R>                  RA                  SS9S 5       r!\ R>                  RA                  SS9S 5       r"g)    N)Model)registry)ArcEager)DEFAULT_PARSER_MODEL)DEFAULT_TOK2VEC_MODEL)ParserDoc)ExampleVocabc                      [        5       $ Nr        _/home/james-whalen/.local/lib/python3.13/site-packages/spacy/tests/parser/test_neural_parser.pyvocabr      s	    7Nr   c                 \    [         R                  " S/S/S9n[        U R                  U5      $ )NLR)left_labelsright_labels)r   get_actionsstrings)r   actionss     r   	arc_eagerr      s)    ""uC5IGEMM7++r   c                  f    S[         0n [        R                  " U SS9S   nUR                  5         U$ )NmodelTvalidate)r   r   resolve
initialize)cfgtok2vecs     r   r$   r$      s5    )
*CsT27;GNr   c                 j    SSSS.nS[         0n[        R                  " USS9S   n[        X4SU0UD6$ )	NF   d   learn_tokensmin_action_frequpdate_with_oracle_cut_sizer   Tr   moves)r   r   r!   r   )r   r   configr#   r   s        r   parserr.   !   sM     '*F
 (
)CS409E%:i:6::r   c                     S[         0n[        R                  " USS9S   nUR                  S   " X@R                  5        UR                  5         U$ )Nr   Tr   resize_output)r   r   r!   attrsn_movesr"   )r   r$   r   r#   r   s        r   r   r   -   sL    (
)CS409E	KK (9(9:	Lr   c                     [        U / SQS9$ )N)abc)wordsr	   )r   s    r   docr8   6   s    uO,,r   c                     / SQ/ SQS.$ )N)   r:   r:   )r   ROOTr   )headsdepsr   )r8   s    r   goldr>   ;   s    (:;;r   c                 F    [        U R                  [        5      (       d   eg r   )
isinstancer   r   )r.   s    r   test_can_init_nn_parserrA   @   s    fllE****r   c                     SSSS.nS[         0n[        R                  " USS9S   n[        U4X@R                  S.UD6R
                  U l        U R
                  c   eg )	NFr   r'   r(   r   Tr   )r   r,   )r   r   r!   r   r,   r   )r.   r   r-   r#   r   s        r   test_build_modelrC   D   sf    '*F
 (
)CS409E%KuLLKFKQQFL<<###r   c                 T    UR                  U/5      S   Ul        X l        U " U5        g )Nr   )predicttensorr   )r.   r$   r   r8   s       r   test_predict_docrG   P   s%    #'*CJL
3Kr   c                 d    Xl         S n[        R                  " X#5      nU R                  U/US9  g )Nc                     USU-  -  nX4$ NMbP?r   )keyweightsgradients      r   optimize!test_update_doc.<locals>.optimizeY   s    58##  r   sgd)r   r   	from_dictupdate)r.   r   r8   r>   rO   examples         r   test_update_docrV   V   s0    L! *G
MM7)M*r   zNo longer supported)reasonc                      Xl         U " USSS9  g )N    rK   )
beam_widthbeam_density)r   )r.   r   r8   s      r   test_predict_doc_beamr\   a   s    L
32E2r   c                 <    Xl         SS jnU R                  X#4US9  g )Nc                     U SU-  -  n g rJ   r   )rM   rN   rL   s      r   rO   &test_update_doc_beam.<locals>.optimizek   s    58##r   rQ   r   )r   update_beam)r.   r   r8   r>   rO   s        r   test_update_doc_beamra   g   s#    L$ {1r   )#pytest	thinc.apir   spacyr   *spacy.pipeline._parser_internals.arc_eagerr   spacy.pipeline.dep_parserr   spacy.pipeline.tok2vecr    spacy.pipeline.transition_parserr   spacy.tokens.docr
   spacy.trainingr   spacy.vocabr   fixturer   r   r$   r.   r   r8   r>   rA   rC   rG   rV   markskipr\   ra   r   r   r   <module>ro      s-      ? : 8 3   "    , ,
   ; ;   - - < <+	$+ ./3 03
 ./2 02r   