Create a Rasa form from a YAML file
Project description
Rasa MetaForm
Rasa MetForm is a small extension of Rasa's rasa-sdk
which introduces a MetaFormAction
, an extended FormAction
. Read more in a blog post.
Problem statement
Forms
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.
Ideal
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
.
Proposal
MetaFormAction
allows to create classes from a YAML file and populates the domain with all the needed information.
Installation
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.
Form YAML file
See the sample.yml
for an example form YAML file.
License
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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.