What is the difference between utter message template and response

what is the difference between these two dispatcher.utter_message(template=“utter_hi”) and dispatcher.utter_message(response=“utter_hi”)

@athulvingt Heya!

Good and logical question from you side. Why we use template and soon we will use response. I guess before 1.7.X we need to use Template in domain.yml and now we are using responses.

Note: The below information and explanation is my own observations over the period of time, and I can be fully wrong, if you have any doubt please discuss with me or with rasa team.

Template:

Templates are messages the bot will send back to the user. Either automatically by an action with the same name as the utterance or by an action with custom code.

templates:
  utter_greet:
    - text: "hey there {name}!"

Ref: Responses

Response:

Responses are messages that your assistant sends to the user. A response is usually only text, but can also include content like images and buttons.

responses:
  utter_greet:
  - text: "Hi there!"

So summary is this both are same just the representation is changed over the period of time.

Ref: Responses

Change logs:

  • The property templates is deprecated. Use responses instead. It will be removed in Rasa Open Source 3.0.0.

  • #8223: In Rasa 2.4.0, support for using template in utter_message when handling a custom action was wrongly deprecated. Both template and response are now supported, though note that template will be deprecated at Rasa 3.0.0.

  • The terminology template is deprecated and replaced by response. Support for template from the NLG response will be removed in Rasa Open Source 3.0.0. Please see here for more details.

Ref: Rasa Open Source Change Log

I hope this will give you better understanding and clarity. If you agree then please close this thread as solution for others. Good Luck!

1 Like

@athulvingt If it solved you doubt or topic, I’d like to request close this thread or discuss some points.

1 Like

I got a warning to replace template with response, i think in the latest version they are using only response