How to make my chatbot recognise names which where not given in the entity values?

Hi I’m Annamalai, I’m new to rasa. I’m working on flight booking chatbot. I created a bot but when I give new names which where not trained for the bot it is not recognising it? Kindly help me sort out.

Hi @Annamalai,

You could use “PERSON” as an entity type and by including spacy as part of your NLU pipeline, these will be automatically extracted.

domain.yml


entities:
   - PERSON   

config.yml


pipeline:
- name: "SpacyNLP"
  model: "en_core_web_md"
  case_sensitive: False

However, I’d recommend either starting with or incorporate some sort of back off mechanism that will allow the user to input free text, e.g. via the from_text method on a form. Otherwise, some users with unique names will be unable to complete the interaction.

Hi @kearnsw,

Thanks for your reply. I have a another doubt where can I download “SpacyNLP” and “en_core_web_md” and how??

Generally it’s installed via pip:

pip install -U spacy

You can find install instructions for different systems and environments here:

To install that model, you would run:

python -m spacy download en_core_web_md

They have models in a variety of languages and of different sizes. You can experiment with what works for you. Here’s a link to the naming conventions for the models: