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> 标签标记 AIML 文档的开始和结束。它包含版本和编码属性下的版本和编码信息。version 属性存储 ALICE chatterbot 知识库 (KB) 使用的 AIML 版本。例如,我们使用了1.0.1版本。该属性是可选的。

编码属性提供文档中使用的字符集。例如,我们使用了 UTF-8。作为一项强制要求,<aiml> 标记必须包含至少一个 <category> 标记。我们可以创建多个 AIML 文件,其中每个 AIML 文件包含一个 <aiml> 标签。每个 AIML 文件的目的是向 ALICE 聊天机器人知识库添加至少一个称为类别的知识单元。

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

<类别>标签

<category>标签是ALICE Bot的基本知识单元。每个类别包含 -

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

  • Alicebot 对用户输入的响应。

  • 可选上下文。

<category>标记必须具有 <pattern><template>标记<pattern>代表用户输入,模板代表机器人的响应。

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

在这里,如果用户输入Hello Alice,那么机器人将响应为Hello User

<模式>标签

<pattern> 标签代表用户的输入。它应该是 <category> 标记中的第一个标记。<pattern> 标签可以包含通配符以匹配用户输入的多个句子。例如,在我们的示例中,<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> 标签代表机器人对用户的响应。它应该是 <category> 标记内的第二个标记。这个<template>标签可以保存数据、调用另一个程序、给出条件答案或委托给其他类别。

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

这里,模板是“Hello User”,代表机器人对用户输入的响应。