KeyError: 'label' when running textcat.teach

Thanks for the report – this is very strange! For some reason, an annotated example that came back from the web app seems to not have a 'label' key present – which should never happen in text classification mode. Did you notice anything strange in the UI, like a question without a label? And how did your textcat.teach command look?

If you still have your browser with Prodigy open, your latest batch of annotations will still be there (if a request fails, the app will move the batch back to the “outbox” and try again next time). So you could try and stop the server and add a print statement to the give_answers function in prodigy/app.py that outputs the batch of examples Prodigy receives back:

def give_answers(answers=[]):
    print(answers)
    # etc.

You can then re-start the server and hit the “save” button again (don’t reload the browser, though!). You’ll likely still come across the same error when the annotations hit the text classification model, but the /give_answers endpoint should have printed the batch it received back. This will hopefully make it easier to debug what’s going on!