textcat.teach vs correct wh

Both recipes are indeed similar. The difference are explained in more detail in the textcat.correct docs and the textcat.teach docs but the main difference is that in the base behaviour the teach recipe has a model in the loop that updates as you give it labels while the correct recipe does not.

That said, you can configure textcat.correct to also allow the model to update and you can configure a --threshold to tune how examples are pre-selected for annotation. The textcat.teach recipe, on the other, allows for a --patterns parameter. This allows you to supply a path to match patterns file to filter out examples containing terms and phrases. The matched spans are also highlighted when labelling.