Incorrect mapping to Intent

I have some wrong intent mapping and need to understand what could be the issue here -

I have the following intent file -

version: “3.0”

nlu:

  • intent: greet examples: |

    • hey
    • hello
    • hi
    • hello there
    • good morning
    • good evening
    • moin
    • hey there
    • let’s go
    • hey dude
    • goodmorning
    • goodevening
    • good afternoon
  • intent: goodbye examples: |

    • cu
    • good by
    • cee you later
    • good night
    • bye
    • goodbye
    • have a nice day
    • see you around
    • bye bye
    • see you later
  • intent: affirm examples: |

    • yes
    • y
    • indeed
    • of course
    • that sounds good
    • correct
    • resolved
    • thanks for clarification
    • thanks for the link
  • intent: deny examples: |

    • no
    • n
    • never
    • I don’t think so
    • don’t like that
    • no way
    • not really
  • intent: bot_challenge examples: |

    • are you a bot?
    • are you a human?
    • am I talking to a bot?
    • am I talking to a human?
  • intent: tld_block examples: |

    • How to block TLDs
    • How to Block Top Level Domains
    • Block TLDs(.zip and .mov)
    • Block Top level domain
  • intent: ssl_cert_issue examples: |

    • unble to locally verify the issuer’s authority
    • can not verify certificate issued by
    • SSL Certificate error
  • intent: utter_domain_detail examples: |

My domain file is as follows -

version: “3.0”

intents:

  • greet
  • goodbye
  • affirm
  • deny
  • bot_challenge
  • tld_block
  • nlu_fallback
  • ssl_cert_issue
  • utter_domain_detail

entities:

  • domain

slots: domain: type: text mappings: - type: from_entity entity: domain

responses: utter_greet:

  • text: “Welcome to the Self Service Portal on Cisco Secure Service Edge.How can I help you?”

utter_did_that_help:

  • text: “Did that help you?”

utter_goodbye:

  • text: “Bye”

utter_iamabot:

  • text: “I am a bot, powered by Rasa.”

utter_affirm:

  • text: “Great. Glad that your concern is resolved” utter_deny:
  • text: “Ok. It requires deeper root cause analysis. Let me raise a ticket to assist you better”

utter_tld_block_info:

  • text: “Please see our knowledge base {link} for more information on blocking TLD via DNS/SWG”

utter_default:

  • text: " Sorry, I did not get the query. Try again"

utter_ask_for_domain_detail:

  • text: “Could you please provide the domain being reached for SSL error ?”

utter_domain_ack:

  • text: Creating a policy specifically for the department that does not block the category for the domain {domain} will result in resolving the domain correctly

utter_ssl_cert_resolution_info:

  • text: “SSL Error is due to block page IP. Recommendation is to install Cisco Root CA. Instructions can be found at {link}”

actions:

  • action_get_tld_block_info
  • action_get_ssl_issue_resolution

session_config: session_expiration_time: 60 carry_over_slots_to_new_session: true

My story for the execution where I have wrong intent mapping is as follows -

  • story: ssl_issue steps:
    • intent: greet
    • action: utter_greet
    • intent: ssl_cert_issue
    • action: utter_ask_for_domain_detail
    • intent: utter_domain_detail entities:
      • domain
    • action: utter_domain_ack
    • action: action_get_ssl_issue_resolution

What is the issue I am facing - As part of the taking the input for utter_domain_detail, if an invalid entry that is not recognized by the intent intent: utter_domain_detail, then I would like the model to fall back on utter_default:

  • text: " Sorry, I did not get the query. Try again"

Unfortunately it does not happen. Here is the sample output. Could you please provide the domain being reached for SSL error ? Your input → kkkiorrdds
Great. Glad that your concern is resolved

Any reason why the model may be thinking that it is utter_affirm for "kkkiorrdds "

You should read about nlu fallback and determine if your threshold is set appropriately for your training data.

Have you confirmed that this is an NLU fallback issue and not a problem with your rules/stories?

I would avoid long stories like the one above and try to use short rules as much as possible.