Rasa does not recognize domain.yml file

This is something I’ve been struggling with for months now, where for a few days everything will be running as expected, then out of the blue, it’s as if the domain file disappears. When I run rasa train -d domain.yml I get:

“Core training was skipped because no valid domain file was found. Only an NLU-model was created. Please specify a valid domain using the ‘–domain’ argument or check if the provided domain file exists.”

even though domain.yml exists in my main project folder. Every time this happens, I’ve been manually copying every file to a new project folder and that seems to fix it temporarily.

Something else I’ve noticed is that the format and order of my domain file automatically changes by itself, and the version key will also be deleted. I’m the only one working on the project (so it’s not an issue with Git collaboration). I don’t know why/how this is possible, but I wonder if it is related to the first problem.

I am using PyCharm, and additional information about my environment is in this screenshot:

I had this same issue and the problem was that my domain.yml was invalid. This worked with rasa 2.0.8, but not 2.1.0, I guess something changed to how the domain.yml was being validated. I found this by running rasa data validate and searching for “domain”.

$ rasa data validate | grep domain

UserWarning: Loading domain from 'domain.yml' failed. Using empty domain. Error: 'Your form 'note_form' uses an invalid slot mapping of type 'list' for slot 'mention_list'. Please see https://rasa.com/docs/rasa/forms for more information.'

Thanks for your question @alexyuwen! What @gazler described is very much possible. Would you mind sharing your domain here?

@m-vdb I posted my domain file below, although I am no longer experiencing the exact issue described in the original post. However I am experiencing an equally strange issue that seems related. Basically, the domain file automatically reconfigures itself: the slot order in the forms section is changed to alphabetical, long strings in the responses section are broken up into multi-line strings, and every slot in the slots section go from something like this

  type: text
  auto_fill: false

to looking like this:

  type: rasa.shared.core.slots.TextSlot
  initial_value: null
  auto_fill: false
  influence_conversation: true

The version key is deleted, the order of the sections changes, each intent in the intents section gains the line use_entities: true, and more. I’ve attached my domain file, and you can see how weird looking it is. domain.yml (24.8 KB)

Do you have an idea of what could be causing the domain file to restructure itself?

hey @alexyuwen

To clarify - are you using Rasa Open Source or Rasa X?

1 Like

I primarily use Rasa Open Source, but I played around with Rasa X a little. I guess it’s possible Rasa X could have reconfigured my domain. If that’s the case, I’d like to stop it from doing so.

My friend had the same issue. He copied and pasted my domain file, then started running a test using Rasa X. Five minutes later, he found that the order of two of the slots in his domain file had been changed, to be in alphabetical order.