Rasa MetForm is a small extension of Rasa's rasa-sdk
which introduces a MetaFormAction
, an extended FormAction
. Read more in a blog post.
Creating Forms in Rasa requires defining a class for each form, inheriting from FormAction
, specifying few methods, as well as in domain.yml
, with matching slots and templates.
Form would be specified in a single, human-readable, easy to edit file. From this file we would populate domain.yml
with all the necessary instances of forms
, slots
and templates
, as well as define a new FormAction
class, which will implement all the necessary methods, including name
, required_slots
(following the logic in the form file), slot_mappings
, all validate_{slot}
and submit
.
MetaFormAction
allows to create classes from a YAML file and populates the domain with all the needed information.
The easiest way to install the package is through PyPI.
pip install rasa-metaform
However you might find it more useful to clone the repository and edit the MetaFormAction
class for your form(s). We will extend the functionality with additional validation methods.
See the sample.yml
for an example form YAML file.
Licensed under the Apache License, Version 2.0. Copyright 2019 Magnet S Coop. Copy of the license.
A list of the Licenses of the dependencies of the project can be found at the bottom of the Libraries Summary.