AIML - <random> 标签



<random> 标签用于获得随机响应。此标签允许 AIML 对相同的输入做出不同的响应。<random> 标签与 <li> 标签一起使用。<li> 标签携带将随机传送到用户的不同响应。

语法

<random>
   <li> pattern1 </li>
   <li> pattern2 </li>
   ...
   <li> patternN </li>
</random>

例如,考虑以下对话。

Human: Hi
Robot: Hello!
Human: Hi
Robot: Hi! Nice to meet you!

示例

C > ab > bots > test > aiml 和 random.aiml.csv 中创建 random.aiml,在 C > ab > bots > test > aimlif 目录中创建 random.aiml.csv。

random.aiml

<?xml version = "1.0" encoding = "UTF-8"?>
<aiml version = "1.0.1" encoding ="UTF-8"?>
   <category>
      <pattern>HI</pattern>
      
      <template>
         <random>
            <li> Hello! </li>
            <li> Hi! Nice to meet you! </li>
         </random>
      </template>
      
   <category>      
</aiml>

random.aiml.csv

0,HI,*,*, <random><li> Hello! </li><li> Hi! Nice to meet you! </li></random>,random.aiml

执行程序

打开命令提示符。转到C > ab > 并键入以下命令 -

java -cp lib/Ab.jar Main bot = test action = chat trace = false

验证结果

您将看到以下输出 -

Human: Hi
Robot: Hi! Nice to meet you!
Human: Hi
Robot: Hello!

此处,响应可能因随机响应而异。

广告
© . All rights reserved.