Thanks @ChrisRahme for chiming in here.
Yes, I completely agree that the user should be able to say anything they want to the system. Indeed, they might might say “Hello, I am Rasa”, “Howdie”, “Hi my name’s Bob”, “What’s the weather in Peoria”, “2 + 2 = 52”, etc etc.
But my issue is not really about that. My issue is that I believe the documentation at At Rasa Open Source Documentation is inconsistent. (In other words it is wrong).
This part of the documentation is about how one can post a message to Rasa NLU and get a response from Rasa NLU. It is not about the DM in any way shape or form. Like it says in the docs “This will just retrieve the NLU parse results.”.
Are you with me?
Next, look at the Request Sample. Can you see what the value in the “text” is in in the request sample? (You will see that the value is “Hello, I am Rasa”…right?).
The Rasa NLU service – which is what this part of the API documentation is about – can used by developers in the following way: The developers code can post a message to NLU. That message should contain what the human user just said. In the Response Sample, the authors are showing a situation in which the human user said “Hello, I am Rasa”.
Now, look at “Response samples”. These response samples are supposed to be what is returned by the Rasa NLU standalone service. It should return intents and other data…Just natural language understanding is happening here…Nothing more - no DM, no actions etc (just like the documentation says).
Now, as you can see in the example, the intent returned by the NLU is “greet”. That seems right. (If someone says “Hello I am Rasa”, or “Hello”, or “Hi I’m Bob” etc, all of these are extremely likely to be “greet” intents).
Hopefully you are still strongly agreeing with what I am saying so far. Are you?
However, look at the value in the “text” field in the Response Sample. That value should precisely match character to character what is said in the Request Sample.
Unfortunately, that value does not precisely match what is said in the Request Sample. Thus the documentation is inconsistent or wrong - it is a small typo. It says “Hello!”. But it should not say “Hello!”. It should say “Hello, I am Rasa” because that is what was originally passed into the NLU mode in the Request Sample.
The “text” field in the request indicates what was passed into the NLU. And the “text” field in the response indicates the same thing, i.e. what was passed into the NLU as input.
Do you agree? If you do not agree where is the error in my logic? I you could please help me understand what I am misunderstanding about the documentation or about how Rasa is supposed to work.