
    hy                         S SK JrJrJ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Jr  \R$                  S	 5       rS
 rS rg)    )CallableIterableIteratorN)Config)English)Language)Example)train)load_model_from_configregistryc                      g)Na  
    [nlp]
    lang = "en"
    pipeline = ["sentencizer","assert_sents"]
    disabled = []
    before_creation = null
    after_creation = null
    after_pipeline_creation = null
    batch_size = 1000
    tokenizer = {"@tokenizers":"spacy.Tokenizer.v1"}

    [components]

    [components.assert_sents]
    factory = "assert_sents"

    [components.sentencizer]
    factory = "sentencizer"
    punct_chars = null

    [training]
    dev_corpus = "corpora.dev"
    train_corpus = "corpora.train"
    annotating_components = ["sentencizer"]
    max_steps = 2

    [corpora]

    [corpora.dev]
    @readers = "unannotated_corpus"

    [corpora.train]
    @readers = "unannotated_corpus"
     r       g/home/james-whalen/.local/lib/python3.13/site-packages/spacy/tests/pipeline/test_annotates_on_update.py
config_strr      s    !r   c            	      6  ^ [         R                  " S0 S9U4S j5       n  " S S5      m[        5       nUR                  S5        UR                  S5        U" S5        / nS H3  nUR	                  [        UR                  U5      U" U5      5      5        M5     U H%  nUR                  R                  S	5      (       d  M%   e   [        R                  " [        5         UR                  U5        S S S 5        UR                  US/S
9  g ! , (       d  f       N = f)Nassert_sents)default_configc                    > T" U5      $ Nr   )nlpnameAssertSentss     r   r   .test_annotates_on_update.<locals>.assert_sents5   s    4  r   c                   2    \ rS rSrS rS rSSSS.S jrSrg)	-test_annotates_on_update.<locals>.AssertSents9   c                     Xl         g r   r   )selfr   cfgs      r   __init__6test_annotates_on_update.<locals>.AssertSents.__init__:   s
    Ir   c                 H    UR                  S5      (       d  [        S5      eU$ N
SENT_STARTzNo sents)has_annotation
ValueError)r    docs     r   __call__6test_annotates_on_update.<locals>.AssertSents.__call__>   s#    %%l33 ,,Jr   g        N)dropsgdlossesc                n    U H.  nUR                   R                  S5      (       a  M%  [        S5      e   0 $ r%   )	predictedr'   r(   )r    examplesr,   r-   r.   examples         r   update4test_annotates_on_update.<locals>.AssertSents.updateC   s5    #((77EE$Z00 $ Ir   r   )__name__
__module____qualname____firstlineno__r"   r*   r3   __static_attributes__r   r   r   r   r   9   s    		
 ,/D 	 	r   r   sentencizerzThis is a sentence.za azb bzc cr&   )	annotates)r   factoryr   add_pipeappendr	   make_docr0   r'   pytestraisesr(   r3   )r   r   r1   textr2   r   s        @r   test_annotates_on_updaterD   3   s    nR8! 9!   )CLLLL  H%T 2CI>? & $$33LAAAA  
z	"

8 
# JJxM?J3	 
#	"s   D


Dc                   ^ [         R                  " S5      S[        [        /[        [
           4   4U4S jj5       n " S S5      m[        5       R                  U 5      n[        USSS9nUR                  S   S	   S
/:X  d   e[        U5        / UR                  S   S	'   [        R                  " [        5         [        U5        S S S 5        g ! , (       d  f       g = f)Nunannotated_corpusreturnc                     > T " 5       $ r   r   )UnannotatedCorpuss   r   create_unannotated_corpusItest_annotating_components_from_config.<locals>.create_unannotated_corpus`   s     ""r   c                   ,    \ rS rSrS\S\\   4S jrSrg)Atest_annotating_components_from_config.<locals>.UnannotatedCorpusd   r   rG   c              3   Z   #    S H!  nUR                  U5      n[        X35      v   M#     g 7f)Nr;   )r@   r	   )r    r   rC   r)   s       r   r*   Jtest_annotating_components_from_config.<locals>.UnannotatedCorpus.__call__e   s(     -ll4(c'' .s   )+r   N)	r5   r6   r7   r8   r   r   r	   r*   r9   r   r   r   rI   rM   d   s    	( 	(Xg-> 	(r   rI   T)	auto_fillvalidatetrainingannotating_componentsr:   )r   readersr   r   r   r	   r   from_strr   configr
   rA   rB   r(   )r   rJ   orig_configr   rI   s       @r   &test_annotating_components_from_configrY   _   s    *+#x
HW<M0M'N # ,#( ( (##J/K
 t
LC::j!"9:}oMMM	#J68CJJz23	z	"c
 
#	"	"s   <C
C)typingr   r   r   rA   	thinc.apir   spacy.lang.enr   spacy.languager   spacy.trainingr	   spacy.training.loopr
   
spacy.utilr   r   fixturer   rD   rY   r   r   r   <module>rb      sD    / /   ! # " % 7 " "J)4Xr   