
    i                     d    d dl Z d dlmZ d dlmZ d dlmZ d dlmZm	Z	 d dl
mZ d Zd Zd	 Zd
 Zy)    N)registry)EntityRecognizer)DEFAULT_NER_MODEL)DocSpan)Examplec                 l    t        | j                  g d      }dddgi}t        j                  ||      S )N)JoelovesvisitingLondonduringtheweekendwordsentities)r      PERSON)      LOC)r   vocabr   	from_dict)nerdocgolds      r/var/www/vps2.regionflexible.com/Desarrollo/venv/lib/python3.12/site-packages/spacy/tests/doc/test_add_entities.py_ner_exampler   
   s;    
		PC )?;<DS$''    c                 t   g d}t        | |      }dt        i}t        j                  |d      d   }t	        | |      j                  fd        |       dg|_        |D cg c]  }|j                   c}g dk(  sJ d	g|_        |D cg c]  }|j                   c}g d
k(  sJ y c c}w c c}w )NThisisalionr   modelTvalidatec                      t               gS Nr   r   s   r   <lambda>z4test_doc_add_entities_set_ents_iob.<locals>.<lambda>       L-. r    )ANIMALr      )Or2   r2   B)WORDr      )r3   Ir2   r2   )r   r   r   resolver   
initializeentsent_iob_)en_vocabtextr   cfgr'   wr   s         @r   "test_doc_add_entities_set_ents_iobr?      s    &D
hd
#C%
&CS409E
8U
+CNN./H !CH #$1AJJ$(<<<<CH #$1AJJ$(<<<< % %s   )B0B5c                 t   g d}t        | |      }dt        i}t        j                  |d      d   }t	        | |      j                  fd        |       |D cg c]  }|j                   }}t        |j                        |_        |D cg c]  }|j                   c}|k(  sJ yc c}w c c}w )z7Ensure that resetting doc.ents does not change anythingr"   r   r'   Tr(   c                      t               gS r+   r,   r-   s   r   r.   z!test_ents_reset.<locals>.<lambda>*   r/   r    N)	r   r   r   r7   r   r8   r:   listr9   )r;   r<   r   r=   r'   t	orig_iobsr   s          @r   test_ents_resetrE   #   s    &D
hd
#C%
&CS409E
8U
+CNN./H%())I)CHH~CH #$1AJJ$	111 *$s   !B0B5c                 
   g d}t        | |      }t        |ddd      }|g|_        t        |ddd      }t        j                  t
              5  t        |j                        |gz   |_        d d d        y # 1 sw Y   y xY w)	N)	LouisianaOfficeofConservationr   r   r1   i  )label   i  )r   r   r9   pytestraises
ValueErrorrB   )r;   r<   r   entity
new_entitys        r   test_add_overlapping_entitiesrR   1   ss    8D
hd
#C#q!3'FxCHc1as+J	z	" 1>ZL01 1 1s   A99B)rM   spacyr   spacy.pipeliner   spacy.pipeline.nerr   spacy.tokensr   r   spacy.trainingr   r   r?   rE   rR    r    r   <module>rY      s+      + 0 " "(= 21r    