<aiml>
- 定义aimL文档的开头和结尾。<category>
- 定义Alicebot
知识库中的知识单元。<pattern>
- 定义模式以匹配用户可以输入到Alicebot
的模式。<template>
- 定义Alicebot
对用户输入的响应。
<?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>
1. <aiml>
标签
<aiml>
标记标记aimL文档的开头和结尾。 它包含版本和编码属性下的版本和编码信息。 version
属性存储ALICE聊天机器人知识库,表示使用的aimL版本。 例如,我们使用了1.0.1
版本。 此属性是可选的。
Encoding
属性提供要在文档中使用的字符集。 例如,使用UTF-8
。 强制性要求<aiml>
标记必须至少包含一个<category>
标记。 可以创建多个aimL文件,其中每个aimL文件包含一个<aiml>
标记。 每个aimL文件的目的是将至少一个名为category
的知识单元添加到ALICE聊天机器人知识库。
<aiml version = 1.0.1 encoding = UTF-8?>
...
</aiml>
2. <category>
标签
<category>
标签是ALICE机器人的基本知识单元。每个类别包含 -
<category>
标记必须具有<pattern>
和<template>
标记。 <pattern>
表示用户输入,<template>
表示Alicebot
的响应。如下示例 -
<category>
<pattern> HELLO ALICE </pattern>
<template>
Hello User
</template>
</category>
在这里,如果用户输入Hello Alice
,那么机器人将使用Hello User
作为回复。
3. <pattern>
标签
<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”
,表示机器人对用户输入的响应。
4. <template>
标签
<template>
标签表示机器人对用户的响应。 它是<category>
标记中的第二个标记。 此<template>
标记可以保存数据,调用另一个程序,提供条件答案或委托给其他类别。
<category>
<pattern> HELLO ALICE </pattern>
<template>
Hello User
</template>
</category>
这里,模板是“Hello User”
,表示机器人对用户输入的响应。