What is the best practise to extract 3 different enitites (actually name)?

I am trying to create a chatbot to book an appointment for a doctor. I this scenario i supposed to collect Patient name, doctor name, hospital name and location. I am very confused , do i need to use three different intents and different entities to extract these data or use single intent and 3 different entities?

NLU.md

## intent:PERSON
- My name is [Juste](patient_name)
- I am [Josh](patient_name)
- I'm [Lucy](patient_name)
- People call me [Greg](patient_name)
- It's [David](patient_name)
- Usually people call me [Amy](patient_name)
- My name is [John](patient_name)
- You can call me [Sam](patient_name)
- Please call me [Linda](patient_name)
- Name name is [Tom](patient_name)
- I am [Richard](patient_name)
- [Renjith](doctor_name)
- [Ramjith](doctor_name)
- [Simran](doctor_name)
- [Sara](doctor_name)
- [Abraham](doctor_name)
- [Kiran](doctor_name)
- [Clinton](doctor_name)

doamin.yml

hospital_name:
  type: unfeaturized
doctor_name:
  type: unfeaturized
patient_name:
  type: unfeaturized

config.yml

language: en
pipeline: supervised_embeddings
policies:
  - name: MemoizationPolicy
  - name: KerasPolicy
  - name: MappingPolicy
  - name: FormPolicy

And for the location, do i need to create new intent or can i include in PERSON intent?

I am very confused because all these are name, right?

1 Like