terms.teach not showing contextual words

Hi,
I am having issues with terms.teach recipe.

I'm not getting contextual words for my seed terms. Initially, I thought it was because of the words I was using based on my project. Then, I checked the seed terms used in demo and examples (programming languages and drugs). It didn't work on those as well. I am getting random words.

I tried reinstalling in a new environment as well but didn't work. Not sure what went wrong.

I have Spacy 2.3 and Prodigy 1.10 running on virtual environment.

For instance, the below command started showing me words with low scores as shown in the snapshot.
prodigy terms.teach prog_lang_terms en_vectors_web_lg --seeds Python,C++,Ruby

Thanks for the report! We can replicate this problem and we're looking into it.

Some differences in how lexemes are stored in v2.2 vs v2.3 models lead to this problem. We'll fix this in the next release, but if you'd like to patch your terms.teach recipe in the meanwhile, you can add the following around line 56 right after nlp = spacy.load(vectors) in recipes/terms.py:

    for s in nlp.vocab.vectors:
        nlp.vocab[s]
3 Likes

Just released v1.10.1, which includes the above fix out-of-the-box :slightly_smiling_face:

2 Likes