Error in teaching model trained with manual annotation

Hi, I have a model that I batch trained after doing manual annotations. The model works reasonably well. Now I am trying to improve the model by using it in the ner.teach recipe with my custom entity.

On doing so, I am receiving an error. I am able to do a print-stream with the model and see the entity being tagged. Am I doing something wrong in the process ?

ERROR: Can't find label 'PRODUCT' in model product_ner 
ner.teach will only show entities with one of the specified labels.

Hi! So just to make sure I understand the problem correctly: Your product_ner model was trained with data containing annotations for PRODUCT and predicts PRODUCT, but when you run it with ner.teach, you see this error? This is indeed very strange :thinking:

All the recipe really does here is check the NER component's labels (which include all labels that the model can predict). If you run the following, what does it return?

import spacy

nlp = spacy.load("product_ner")  # path to your model here
ner = nlp.get_pipe("ner")
print(ner.labels)

Hi @ines I was able to figure out the issue, I had used one of the labels with - (hyphen) in the name. I believe hyphen got split into two tags C and PRODUCT instead of using C-PRODUCT as one label. Thanks for helping out.