我正在开发语音机器人,它将获取用户语音输入并基于该语音机器人执行任务。我正在使用AIML 1.0。我面临的问题是模式匹配无法正常工作。
<category>
<pattern>OPEN SAP</pattern>
<template>
<random>
<li>Sure thing!</li>
<li>Right away, sir!</li>
<li>On it!</li>
</random>
<system>start saplogon </system>
</template>
</category>
<category>
<pattern>* OPEN SAP</pattern>
<srai> OPEN SAP </srai>
</category>
<category>
<pattern>* SAP *</pattern>
<srai> OPEN SAP </srai>
</category>
当我说“您可以打开SAP”时,它无法识别。上面的代码有什么问题?
最佳答案
我已经复制并确定了您的问题。您忘记了包含<template>
标记。
这是适合您的情况的正确AIML:
<category>
<pattern>OPEN SAP</pattern>
<template>
<random>
<li>Sure thing!</li>
<li>Right away, sir!</li>
<li>On it!</li>
</random>
<system>start saplogon </system>
</template>
</category>
<category>
<pattern>* OPEN SAP</pattern>
<template>
<srai> OPEN SAP </srai>
</template>
</category>
<category>
<pattern>* SAP *</pattern>
<template>
<srai> OPEN SAP </srai>
</template>
</category>
现在它将按预期工作。
希望能帮助到你。
关于python - 为什么AIML模式匹配不起作用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55629898/