Проверьте 2 значения в файле прицеливания
Как я могу проверить 2 значения в состоянии или с другими тегами? Я хочу проверить, совпадает ли имя пользователя с неизвестным значением пользователя, но я не знаю, как я могу это сделать.
1 ответ
Решение
Предположим, у вас есть имя пользователя, хранящееся в глобальном свойстве (предикате) с именем user, используя <set name="user">George</set>
Вы можете проверить имя пользователя с помощью категории AIML, например:
<category>
<pattern>WHAT IS MY NAME</pattern>
<template>
<condition>
<li name="user" value="unknown">You haven't told me your name</li>
<li name="user" value="">You haven't told me your name</li>
<li>Hello <get name="user"/>!</li>
</condition>
</template>
<category>
Это работает следующим образом:
- Вы создали категорию, которая отвечает на ввод пользователя "Как меня зовут"
<li>
элементы в<condition>
проверить свойство name на наличие неизвестного и пустого. В этом случае AI отвечает, что пользователь не сказал нам свое имя.- Финал
<li>
Элемент запускается, если у нас есть имя, и он отвечает "Hello", за которым следует имя пользователя.
Я не проверял это с программой O, но это стандарт AIML и должен работать нормально. Я успешно закодировал подобные категории в своем собственном AI.