I am getting 2 different response on typing query ; Do we have Chinese restaurant in Assam?
where I have 2 entity nodes declared for city “Assam” and restaurant “Chinese”
when typing query getting
response as :
Yes, we have Chinese restaurant available in Chinese.
&
test
and this is like keep changing on every new query search… how this is working,
The Problem
Your entity configuration is overlapping / conflicting:
- “Chinese” can be matched as both restaurant and city entity.
- Since you set
"test"
as the default value for City, sometimes the bot falls back to that instead of extracting correctly.
So the bot doesn’t consistently give the output:
“Yes, we have Chinese restaurant available in Assam.”
How to Fix It
Here’s how you can solve:
1. Fix Entity Definitions
- City Entity (restaurantCityEntity):
Only allow valid city names (e.g., Assam, Delhi, Bangalore).
Do not include “Chinese” or cuisines here.
- Restaurant Entity (restaurantEntity):
Only include cuisines/types (e.g., Chinese, Italian, Indian, Continental).
This way, “Chinese” can only map to Restaurant, and “Assam” can only map to City → no confusion.
2. Add Disambiguation ( only if needed )
If NLP is still confused, add a clarification step:
Bot: Did you mean Chinese (Cuisine) or Chinese (Location)?
(But ideally not needed if entities are cleanly defined.)
3. Correct the Message Node
Right now your RestaurantMessage uses something like:
Yes, we have {{context.entities.restaurantEntity}} restaurant available in {{context.entities.restaurantEntity}}
That’s why it’s printing “Chinese” twice!
You should change it to:
Yes, we have {{context.entities.restaurantEntity}} restaurant available in {{context.entities.restaurantCityEntity}}
so for your refrence i am sharing the screenshot of mine which is working this may help you
Final Expected Output
Bot:
Yes, we have Chinese restaurant available in Assam.