SmartApp Framework — это фреймворк, который позволяет создавать смартапы с поддержкой виртуальных ассистентов Салют.
Project description
SmartApp Framework
SmartApp Framework - это Python-фреймворк, который позволяет создавать смартапы для виртуальных ассистентов Салют.
Оглавление
Конфигурация
Фреймворк и смартапы
Смартап - это приложение для виртуального ассистента Салют. С помощью смартапов пользователи могут вызвать такси, узнать погоду, управлять устройствами умного дома, записаться в салон красоты и совершить прочие действия, которые можно доверить ассистенту.
Виртуальный ассистент понимает текущие намерения пользователя и для каждой его реплики подбирает соответствующий запрос на выполнение (интент). Поведение смартапа для различных интентов описывается с помощью сценариев. Интенты и сценарии связываются через смартапы, написанные на SmartApp Framework.
Инструменты фреймворка
Фреймворк содержит следующие инструменты:
- инструменты для создания сценариев;
- решения для автоматического тестирования;
- демо-приложение для просмотра примеров реализации;
- готовые механизмы для слот-филлинга и извлечения сущностей из текста.
Рекомендованные требования
- Linux, Mac OS или Windows (необходима установка Conda).
- 512 МБ свободной памяти.
- Python 3.6.8 - 3.7.9.
Настройка фреймворка
Установка проекта
Для установки проекта выполните в терминале следующую команду:
python3 -m pip install git+https://github.com/sberdevices/smart_app_framework@main
Создание проекта
Для создания проекта выполните в терминале следующую команду:
python3 -m smart_kit create_app <YOUR_APP_NAME>
После этого в текущей директории появится каталог с проектом. Он уже содержит в себе всё необходимое для запуска минимального приложения, включая базовый сценарий hello_scenario. Описание сценариев и форм можно найти в <YOUR_APP_NAME>/static/references/.
Тестирование онлайн
Для тестирования онлайн вам понадобится мобильное приложение Сбер Салют или собственное устройство, на котором будет запускаться смартап. Для такого тестирования:
- Запустите в терминале dev сервер:
python3 manage.py run_app
- Передайте в интернет порт. Для этого потребуется внешний IP-адрес. Если у вас его нет, воспользуйтесь специальными сервисами (например, Ngrok).
- Зарегистрируйтесь в кабинете разработчика - SmartApp Studio.
- Создайте в SmartApp Studio свой смартап.
- Перейдите в настройки смартапа и укажите в поле "Настройки вебхука" адрес вашего сервера. Сохраните изменения.
- Запустите свой смартап с помощью фразы "Запусти <имя приложения>".
В терминале должны появиться записи о входящем сообщении, а ассистент ответит приветствием согласно сценарию hello_scenario.
Тестирование офлайн
Ниже представлен пример команды для терминала при тестировании офлайн и пример ответа, который выводится на экране:
localhost:~$ python <YOUR_APP_NAME>/manage.py local_testing
Текущий сценарий: hello_scenario
Привет! Введите help или ? для вызова списка команд.
> set intent run_app // смена интента на другой. По умолчанию имя сценария совпадает с именем интента
intent = run_app
> Привет
pronounceText: Как тебя зовут?
Документация
Вы можете ознакомиться с подробной документацией по работе со SmartApp Framework в справочнике разработчика.
Обратная связь
C вопросами и предложениями пишите нам по адресу developer@sberdevices.ru или вступайте в наш Telegram канал - SmartApp Studio Community.
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.
Source Distribution
Built Distribution
Hashes for smart_app_framework-1.0.3rc8.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 793b3a2f5299372513e63f00f764036319ce0ec1aa12d78fec38cdce59fb87e3 |
|
MD5 | 74575b4e54f123b194a674f5e5f79074 |
|
BLAKE2b-256 | 6129d29c226a80f85f3ea45dfb84b1a871ce3de0ab83316495c3cdfa9e9f30a5 |
Hashes for smart_app_framework-1.0.3rc8-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 61e440bfe94101cce7a309fa83b1ea85cf74e8ae44ce9924c355938a60db0a78 |
|
MD5 | 8fca3ee4c565cb8842032658a29b1eda |
|
BLAKE2b-256 | 40ac4ad4ab03dc83c764f0ab7fc3418ca79525cccfa338a73636a49d8fd1fcde |