AIML - 基本标签

在本教程中,我们将讨论AIML的基本标签.

  • < aiml> : 定义AIML文档的开头和结尾.

  • < category> : 在Alicebot的知识库中定义知识单元.

  • < pattern> : 定义模式以匹配用户可以输入到Alicebot的模式.

  • < template> : 定义Alicebot对用户输入的响应.

以下AIML文件已作为参考使用.

<?xml version = "1.0" encoding = "UTF-8"?>
<aiml version = "1.0.1" encoding = "UTF-8"?>
   <category>
      <pattern> HELLO ALICE </pattern>
      
      <template>
         Hello User
      </template>
      
   </category>
</aiml>


< aiml>标签

< aiml> tag标记AIML文档的开头和结尾.它包含版本和编码属性下的版本和编码信息. version属性存储ALICE chatterbot Knowledge Base,KB使用的AIML版本.例如,我们使用了1.0.1版本.此属性是可选的.

编码属性提供要在文档中使用的字符集.例如,我们使用了UTF-8.作为强制性要求,< aiml>标签必须包含至少一个< category>标签.我们可以创建多个AIML文件,其中每个AIML文件包含一个< aiml>标签.每个AIML文件的目的是将至少一个名为category的知识单元添加到ALICE chatterbot KB.

<aiml version = "1.0.1" encoding = "UTF-8"?>
   ...
</aiml>


< category>标签

< category> tag是ALICE Bot的基础知识单元.每个类别包含 :

  • 句子形式的用户输入,可以是断言,问题和惊叹号等用户输入可以包含通配符,如 * _ .

  • 对用户输入的响应由Alicebot提供.

  • 可选上下文.

A < category> 标记必须包含< pattern> < template> 标记. < pattern> 表示用户输入,模板表示机器人的响应.

<category>
   <pattern> HELLO ALICE </pattern>
   
   <template>
      Hello User
   </template>
   
</category>


在这里,如果用户输入 Hello Alice ,那么机器人将作为 Hello用户回复.

< pattern>标签

< pattern> tag表示用户的输入.它应该是< category>中的第一个标记.标签. <模式&GT;标签可以包含通配符,以匹配多个句子作为用户输入.例如,在我们的示例中,< pattern>包含HELLO ALICE.

AIML不区分大小写.如果用户输入Hello Alice,hello alice,HELLO ALICE等,所有输入都是有效的,机器人将与HELLO ALICE匹配.

<category>
   <pattern> HELLO ALICE </pattern>
   
   <template>
      Hello User
   </template>
   
</category>


此处,模板为"Hello User",表示机器人对用户输入的响应.

< template>标签

< template> tag表示机器人对用户的响应.它应该是< category>中的第二个标记.标签.这个<模板>标签可以保存数据,调用另一个程序,给出条件答案或委托给其他类别.

<category>
   <pattern> HELLO ALICE </pattern>
   
   <template>
      Hello User
   </template>
   
</category>


此处,模板为"Hello User",表示机器人对用户输入的响应.