-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Does Rasa Data Validate not check Rules.yml/Stories.yml? #7799
Comments
I also just confirmed that there is a similar situation when working with custom actions. You can have custom actions in your NLU file with them appearing in the |
It also seems that forms:
name_form:
first_name:
- type: from_text
last_name:
- type: from_text
slots:
first_name:
type: text
last_nam:
type: text Note that |
Just ran into this issue as well -- I've also had to write my own custom validator since it doesn't support the Seems strange to me that the rule validation runs only before a core model is trained, and wasn't included in the data validation script. |
It also seems like
|
So I guess what's "todo" in this issue is:
@koaning does that encompass what's going on here? |
There may be more, I'm mostly just making sure that I collected errors here. |
Hi @koaning could you please share the NLU file, |
I'm using the same data that you get when you run version: "2.0"
rules:
- rule: Say goodbye anytime the user says goodbye
steps:
- intent: goodbye
- action: utter_goodbye
- rule: Say 'I am a bot' anytime the user challenges
steps:
- intent: bot_challenge
- action: utter_iamabot
- rule: Ask Name Again
condition:
- active_loop: name_form
steps:
- slot_was_set:
- requested_slot: name
- action: action_check_name_spelling
- intent: deny
- action: action_clear_name_slot
- active_loop: name_form
The nlu.yml.version: "2.0"
nlu:
- intent: greet
examples: |
- hey
- hello
- hi
- hello there
- good morning
- good evening
- moin
- hey there
- let's go
- hey dude
- goodmorning
- goodevening
- good afternoon
- intent: goodbye
examples: |
- good afternoon
- cu
- good by
- cee you later
- good night
- bye
- goodbye
- have a nice day
- see you around
- bye bye
- see you later
- intent: affirm
examples: |
- yes
- y
- indeed
- of course
- that sounds good
- correct
- intent: deny
examples: |
- no
- n
- never
- I don't think so
- don't like that
- no way
- not really
- intent: mood_great
examples: |
- perfect
- great
- amazing
- feeling like a king
- wonderful
- I am feeling very good
- I am great
- I am amazing
- I am going to save the world
- super stoked
- extremely good
- so so perfect
- so good
- so perfect
- intent: mood_unhappy
examples: |
- my day was horrible
- I am sad
- I don't feel very well
- I am disappointed
- super sad
- I'm so sad
- sad
- very sad
- unhappy
- not good
- not very good
- extremly sad
- so saad
- so sad
- intent: bot_challenge
examples: |
- are you a bot?
- are you a human?
- am I talking to a bot?
- am I talking to a human? If I run |
Speaking about
However, we plan to change the training process in Rasa 3.0 and separate training and processing. It might be that going through actions and checking if actions are part of the domain would become part of the processing step, and this step might become reusable for data validation. If it's the case (requires some more investigation though) then it's better to skip this issue for now and wait for another implementation of training+processing steps. |
It might make more sense to wait for any changes that will happen in 3.0. That said, if we're designing for 3.0 already ... it might be good to think what we might be able to do for the user in terms of "user experience" here. I've always seen |
Rasa version:
Issue:
It seems that not everything is caught with
rasa data validate
. In particular, are we sure it is checkingrules.yml
files? I took arasa init
project and added this rule.Running
rasa data validate
does not give an error if"action_clear_name_slot"
and"action_check_name_spelling"
are missing fromdomain.yml
. Butrasa train
does!The annoying thing here is that the time-consuming training procedure needs to run before the error appears on my retina. It'd be nice if
rasa data validate
can catch this because it might prevent costly training procedures.The text was updated successfully, but these errors were encountered: