SmartApp Framework
English version of the documentation is under development.
SmartApp Framework is a tool that allows the creation of SmartApps that support Salute virtual assistants SmartApp is connected to the assistant via the API provided by the framework. Smartapp behavior is described via JSON configuration, which is further extended by the framework.
The SmartApp Framework is designed to work asynchronously around Apache Kafka and is adapted to work over HTTP. The framework consists of Smart_kit
, Scenarios
and Core
modules written in Python. The project is based on DSL (Domain Specific Language) elements.
Capabilities of the framework
SmartApp Framework has the following key capabilities:
- Extensible DSL for creating dialog scenarios;
- Tools for manual and automated testing;
- Slot filling system for extracting entities from text;
- Embedded text preprocessing module;
- Support of Jaeger and Prometheus to monitor SmartApp work.
Requirements for working with the framework
Linux, Mac OS or Windows (Conda tool installation is required).
Internet for establishing relations.
512 Mb of free memory.
Python 3.6.8 - 3.7.9.
SmartApp Framework of 1.0.7rc4 version and later supports Python 3.6.8 - 3.9.6.
Stages of working with the framework
Working with SmartApp Framework includes the following stages:
- Preparations and launch.
- Creation of the scenario.
- Scenario testing.
You can additionally change the behavior of the base classes by inheriting and setting up the configuration files. These configurations are optional.