Resolving ambiguity of similar entities with RASA

I am trying to develop a travel chatbot. It uses a form to ask origin_location, destination_location from the user. I have two intents in nlu.yml , i.e., modify_origin_location and modify_destination_location, both having pure location values. Pasting reference nlu example below:

- intent: modify_origin_location
  examples: |
    - [DEL](requested_origin_location)
    - [NCE](requested_origin_location)

- intent: modify_destination_location
  examples: |
    - [ORD](requested_destination_location)
    - [BOM](requested_destination_location)

*(A lot of examples are there in the NLU, I have just pasted two examples per intent to save text space)

When I train the model and use it with RASA X, then a lot of times I am facing issue where if the form asks for origin, and user enters a location value, it gets extracted as a destination entity.

Can someone please help me resolve this ambiguity issue, and guide how to bind an entity with a specific form slot, so that whenever origin is asked, the value entered by user always fills the origin slot only, and vice versa for destination.

These should be a single intent. Normally, we call this the inform intent.

In the form, you could map a single location entity to separate slots:

slots:
  requested_origin_location:
    type: text
    mappings:
    - type: from_entity
      entity: location
  requested_destination_location:
    type: any
    mappings:
    - type: from_entity
      entity: location
1 Like

Thank you @stephens , it worked for the POC. _/_