Rasa X changes the domain file and slots order in forms

Hi, After run the rasa locally i tried run it on rasa x. But when i train the model on rasa x it rearranged everything in the domain file by their name in alphabetically ascending order as a result all the slots in the form also getting rearranged that causing the problem for me because i never getting the required slots on desired place. So what can i do to stop rasa x rearranging my domain file and also it changes the button format to old version so, buttons are not displaying during conversation.

@rctatman

3 Likes

Hi Rahul,

This is a known issue that is being worked on. Don’t have a release date yet for the fix.

Greg

Hey @stephens Thanks for your response. Hope this will resolved in next rasa x version. Also we already have rasa-sdk 2.1.2 version when will we get rasa 2.1.2 version ?

Please notify me when you resolved this issue. So that i can continue my work on rasa x .

The rasa-sdk and rasa patch versions are not intended to stay in sync. There are more updates to the rasa package.

Is there a github issue tracking this issue? +1 on fixing this.

It would be nice to have access to the formatter on command line to format the yaml files on demand.

rasa data format yaml?

I am also +1 on fixing this issue.

@stephens I am having this issue but maybe differently than being described here. My domain file is not being rearranged, but my form slots are being asked in the wrong order nonetheless. I am running the latest version of rasa-x (0.37) and rasa-sdk (2.3.1). I have also tried overriding required_slots in my FormValidationAction classes but no luck with rasa-x (works fine running locally).

Jay,

Yes, your issue would not be related to the original post. Can you post a new question and you can call me out if you want.

Post the slots from the domain.yml and stories or rules that use the form.

Greg

well, I have to rename all the slots alphabetically ascending order according to their position like for first slot, i set a_firstslot and so on. This may help you until they fix this issue.

1 Like

I have this working now, essentialy following instructions from the original post:

# rasa-x form items out of order workaround
async def required_slots(self, slots_mapped_in_domain: List[Text], dispatcher: CollectingDispatcher, tracker: Tracker, domain: DomainDict, ) -> Optional[List[Text]]:
    		logger.info(slots_mapped_in_domain)
slots_mapped_in_domain_ordered = ['facility_or_physician_mr_slot', 'specific_portion_of_mr_slot', 'address_of_mr_submission_slot', 'contact_name_of_mr_submission_slot', 'corrected_or_new_mr_submission_slot']
return slots_mapped_in_domain_ordered

Again, I am running the latest version of rasa-x (0.37) and rasa-sdk (2.3.1)

I am also +1 on fixing this issue.