Использование <that> с * в AIML
Я пытаюсь заставить своего бота задавать вопросы и отвечать в зависимости от ответа. Вопрос случайный, заканчивающийся словами "как дела?".
<aiml version = "1.0.1" encoding = "UTF-8">
<category>
<pattern>HI</pattern>
<template>
<random>
<li>Hi! How are you?</li>
<li>Hello there. How are you?</li>
<li>Greeings. And how are you?</li>
</random>
</template>
</category>
<category>
<pattern>GOOD</pattern>
<that>* how are you?</that>
<template>Happy to hear that.</template>
</category>
<category>
<pattern>*</pattern>
<template>Can you rephrase that?</template>
</category>
</aiml>
Если я отвечу "Хорошо", бот не поймет и ответит "Можете ли вы перефразировать это?".
1 ответ
Попробуйте удалить знак вопроса из текста внутри вашего that
тег. В версии AIML 1 для всех шаблонов и тегов 'that' следует использовать только символы подчеркивания звездочки (*) (_) или текст в верхнем регистре. Верхний регистр - это скорее соглашение, чем фактическое требование.