
    h                     T    S SK JrJr  SSKJr  SSKJr  S\" 5       4S jrS r	SS
 jr
g	)    )Modelnoop   )registry   )ParserStepModelg?c                     Uc  Sn[        5       nOSn[        S[        SU R                  S5      0XU/XUS.[        U[        U5      US.S9$ )z(Set up a stepwise transition-based modelFTparser_modelnI)tok2veclowerupper)	has_upperunseen_classesresize_output)nameforwarddimslayersrefsinitattrs)r   r   r   maybe_get_dimr   set)r   r   r   r   dropoutr   r   s          O/home/james-whalen/.local/lib/python3.13/site-packages/spacy/ml/tb_framework.pyTransitionModelr      sf     }		G))$/0& 5A"!.1*
     c                 ~    [        UU R                  U R                  S   UU R                  S   S9nX3R                  4$ )Nr   r   )r   trainr   )r   r   r   finish_steps)modelXis_train
step_models       r   r   r       sC     	{{#34++k*J ....r   Nc                 >   U R                  S5      R                  US9  U R                  S5      nUR                  5         U R                  S   (       aJ  U R                  R	                  SUR                  S5      5      nU R                  S5      R                  US9  g g )Nr   )r#   r   r   r   nOr   )get_ref
initializer   opsalloc2fget_dim)r"   r#   Yr   	statevecss        r   r   r   ,   s    	MM)''!',MM'"E	{{;II%%at)<=	g))I)6  r   )NN)	thinc.apir   r   utilr   r
   r   r   r   r   r    r   r   <module>r2      s&    !  ) 36ce2	/7r   