FormAction is not registered

Hello,

I’ve installed rasa by creating a new environment with python 3.8.15 and ‘pip3 install rasa’. Rasa version is 3.4.

I am unable to register this FormAction with the action server:

from rasa.core.actions.forms import FormAction

class ExecutiveSummaryForm(FormAction):
    def name(self):
        return "executive_summary_form"

    @staticmethod
    def required_slots(tracker):
        return ["purpose", "products", "customers", "uniqueness", "goals"]

    def slot_mappings(self):
        return {
            "purpose": self.from_entity(intent="purpose"),
            "products": self.from_text(intent="products"),
            "customers": self.from_text(intent="customers"),
            "uniqueness": self.from_text(intent="uniqueness"),
            "goals": self.from_text(intent="goals"),
        }

    def submit(self, dispatcher, tracker, domain):
        purpose = tracker.get_slot("purpose")
        products = tracker.get_slot("products")
        customers = tracker.get_slot("customers")
        uniqueness = tracker.get_slot("uniqueness")
        goals = tracker.get_slot("goals")

        executive_summary = f"Our business, {purpose}, offers {products} to {customers}. {uniqueness} Our long-term goal is to {goals}."

        dispatcher.utter_template("utter_executive_summary", tracker, executive_summary=executive_summary)

The action is registered in the domain.yml:

actions:
- executive_summary_form
- utter_greet
- utter_executive_summary

Error:

2022-12-31 14:55:16 DEBUG    rasa_sdk.executor  - Received request to run 'executive_summary_form'
2022-12-31 14:55:16 ERROR    rasa_sdk.endpoint  - No registered action found for name 'executive_summary_form'.

When you start the action server, it lists all of the registered actions. Are you sure the action server process is running and that it lists executive_summary_form as a registered action when it starts?

ActionForms don’t work in Rasa 3.0, FormValidation is the way to go.

1 Like