Two ideas:
- Do you have the
MappingPolicyat the beginning of yourpoliciesin config.yml? Without it, the mapped triggers won’t work (and as far as I understand, this policy must be at the beginning of yourp policies) - In the slot_mapping, you can also explicitely ignore some intents.
self.from_text(not_intent=["reset"])for example. That can also be achieved with stories I believe but it’s much more annoying to do.
On a side note regarding your numbers problem. We had a similar issue with number of bedrooms and number of bathrooms that could be specified in the same sentence. What I ended up doing was to create two entities bedrooms_count and bathrooms_count and added some training samples:
## intent:chose_apartment
- I need a [1](bedrooms_count) bed [2](bathrooms_count) bath apt
- Looking for a [one](bedrooms_count) bedroom flat
- ...
No idea if it’s best practice but that worked quite well with enough training samples as the CRFEntityExtractor would recognize that the number is followed by a specific word. Then, in our validation functions, we matched the number extracted by Duckling and the one extracted by the bedrooms_count/bathrooms_count entities.
Hope that helps!