Two slots of same entity type

I am facing a problem regarding slot filling. For example: I am building a travel bot and I have two intents: inform_source_city and inform_destination_city. During training I am required to input 2 different cities for each intents. This also means I have two slots to fill source_city and destination_city which will require similar types of input. When I input London for inform_source_city, the entity recognition fails to detect London as a source_city and it rather displays [London] (destination_city). The intent recognition is correct but however I am forced to change the slot to [London] (source_city). What is the procedure to differentiate two slots with same type of input as different inputs. My prefered order is to input source and then destination.

@akelad A little help?

I would also like to know if I can request two terms of the same slot type in the same user utterance.

Hi, I faced a very similar problem as yours, my solution was to get only one entity and several slots, in your case it could be city, and the solts source_city and destinaiton_city. Then, in a custom action you could fill them and decide which one is which by means of analyzing the previous user intention, or bot utterance.

Hi, How can Iu define custom action here?


Hi! I know is a bit far in time from where you posted your question. Now you can try to use something like this NLU Training Data to detect same entities by having different roles, and so you wont have to work around similar intents :slight_smile: I hope it helps!