Тимур Машнин

Создание чат-ботов с Dialogflow, Watson, ChatterBot и Rasa


Скачать книгу

которые можно рассматривать как сущности.

      При заказе пиццы могут указываться такие атрибуты, как количество пицц, начинка, тип корочки, и время доставки.

      Сущности помогают вашему агенту детализировать намерение и решить, как он должен действовать, основываясь на этих деталях.

      Сущности также являются отличным способом добавления персонализации.

      Вы можете использовать сущности, хранящиеся в базе данных, для запоминания подробностей о пользователе, таких как его имя или предпочтения, затем вы можете отобразить эти детали обратно пользователю, превратив простой диалог в дружескую беседу.

      

      Теперь, давайте посмотрим, как мы можем создавать сущности в Dialogflow.

      Чтобы создать новую сущность в Dialogflow, нажмите в правой части Entities, и на этой странице нажмите «Create Entity».

      

      Введите имя сущности.

      И здесь вы увидите две опции: одна – определить синонимы, по умолчанию, а другая – автоматическое расширение.

      Давайте оставим синонимы и определим термины, чтобы описать начинку пиццы.

      Давайте введем сыр.

      Когда вы нажмете ввод, вы увидите, что сыр уже добавлен в качестве синонима.

      Введем другие начинки, по возможности добавляя синонимы.

      И нажмем сохранить Save.

      Теперь, что насчет опции автоматического расширения.

      Разрешить автоматическое расширение – это означает, что мы хотим разрешить агенту принимать термины, которые могут быть сказаны пользователем и изначально не добавлены в список.

      Допустим, пользователь хочет помидоры в пиццу.

      Если установлен флажок «Разрешить автоматическое расширение», то, когда пользователь заказывает пиццу и упоминает помидоры, и хотя этой начинки здесь нет, помидоры будут добавлен в список.

      Но если вы хотите зафиксировать этот список начинок, и не хотите, чтобы новые начинки добавлялись в ваш список, вам не нужно включать эту опцию.

      

      Теперь, мы можем промаркировать наши обучающие фразы намерения сущностью, которую мы только что создали.

      Для этого откроем намерение, и в обучающей фразе дважды щелкнем слово, которое мы хотим промаркировать.

      И в списке выберем нашу сущность.

      

      Теперь термин грибы помечен сущностью pizza_topping.

      Сделаем то же самое с беконом и сыром и с другими начинками.

      

      И в конце не забудем нажать кнопку Сохранить.

      И если мы теперь добавим еще одну обучающую фразу в намерение «Я хотел бы заказать пиццу с говядиной, колбасой и пепперони».

      Как только мы нажмем Enter, вы увидите, что все три сущности, которые присутствуют в обучающей фразе, будут промаркированы как pizza_topping автоматически.

      И так как агент автоматически маркирует соответствующие значения сущностями, имеет смысл создавать сущности перед добавлением обучающих фраз.

      Теперь, когда вы создаете сущность, она может сама содержать атрибуты.

      И одним из способов является использование