Сущность в Graph — это часть пользовательского запроса, которую можно выделить из фразы в виде каких-то языконезависимых данных.
Например, «Дата-время», «Число», «Номер телефона», «Название города» — все это примеры сущностей, которые Graph может автоматически обнаружить во фразе пользователя.
Для чего нужны сущности
Всякий раз, когда смартап не только должен среагировать на фразу, но и выделить из нее важные данные, нужно использовать сущности.
Какие есть сущности в Graph
В Graph можно использовать системные сущности и системные справочники. Также есть возможность создавать пользовательские сущности.
Как работают сущности
Всякий раз, как смартап реагирует на фразу пользователя, он пытается выделить из нее те сущности, которые указаны во фразе. Как только сущность найдена, смартап создает переменную с именем, соответствующим названию сущности, и сохраняет в нее языконезависимое значение сущности.
Например, если в примере или в шаблоне фразы указано, что во фразе пользователя должно присутствовать число (сущность $NUMBER
), то при срабатывании этой фразы смартап создаст переменную с именем $NUMBER
и сохранит в нее целое число, даже если пользователь произнес его словами, а не написал цифрами.
После этого в сценарии смартапа можно использовать эту переменную так же, как и любую другую. Например, использовать ее в условиях, передать в HTTP-запросе и так далее.
Как использовать сущности
Несколько одинаковых сущностей
Если в рамках одного смартапа нужно оперировать сразу несколькими одинаковыми сущностями, задайте в шаблоне фразы с сущностью отдельную переменную.