Your FallbackClassifier needs a IntentClassifier, which further needs a Featurizer, and a Featurizer requires a Tokenizer.
So the easiest way of making your FallbackClassifier to work is to take the config.yml file from when you run rasa init
on your CLI. Copy paste the config.yml code and remove all the "#" comment lines from the properties of "pipeline".
So your code for pipeline should look like this:
language: en
pipeline:
# # No configuration for the NLU pipeline was provided. The following default pipeline was used to train your model.
# # If you'd like to customize it, uncomment and adjust the pipeline.
# # See https://rasa.com/docs/rasa/tuning-your-model for more information.
- name: WhitespaceTokenizer
- name: RegexFeaturizer
- name: LexicalSyntacticFeaturizer
- name: CountVectorsFeaturizer
- name: CountVectorsFeaturizer
analyzer: char_wb
min_ngram: 1
max_ngram: 4
- name: DIETClassifier
epochs: 100
constrain_similarities: true
- name: EntitySynonymMapper
- name: ResponseSelector
epochs: 100
constrain_similarities: true
- name: FallbackClassifier
threshold: 0.7
ambiguity_threshold: 0.1
Now your FallbackClassifier should work like a charm!