AIML简介

AIML代表人工智能标记语言。 AIML是由Alicebot自由软件社区和Richard S. Wallace博士在1995-2000期间开发。
AIML用于创建或自定义Alicebot,这是一个基于A.L.I.C.E(人工语言互联网计算机实体)聊天框应用程序的免费软件。
AIML是一种基于XML的标记语言,旨在创建人工智能应用程序。
AIML可以创建人机界面,同时保持实现简单易用,易于理解和高度可维护。

AIML标签

以下是AIML文档中常用的重要标签。

编号 标签 描述
1 <aiml> 定义AIML文档的开头和结尾。
2 <category> 定义Alicebot知识库中的知识单元。
3 <pattern> 定义模式以匹配用户可以输入到Alicebot的模式。
4 <template> 定义Alicebot对用户输入的响应。

我们将在AIML基础标签章节中讨论这些标签。
以下是一些其他广泛使用的aiml标签。
我们将在接下来的章节中详细讨论每个标签。

编号 标签 描述
1 <star> 用于匹配<pattern>标签中的通配符*字符
2 <srai> 多用途标签,用于调用/匹配其他类别。
3 <random> 使用<random>获取随机响应。
4 <li> 用于表示多个响应。
5 <set> 用于在AIML变量中设置值。
6 <get> 用于获取存储在AIML变量中的值。
7 <that> AIML中用于根据上下文进行响应。
8 <topic> AIML中用于存储上下文,以便以后可以基于该上下文完成对话。
9 <think> AIML中用于存储变量而不通知用户。
10 <condition> 与编程语言中的switch语句类似。 它有助于ALICE响应匹配输入。

AIML词汇

AIML词汇使用单词,空格和两个特殊字符*_作为外卡。
AIML解释器优先选择具有_的模式而不是具有*的模式。
AIML标记符合XML,模式不区分大小写。

示例

<aiml version = "1.0.1" encoding = "UTF-8"?>
<category>
<pattern> HELLO ALICE </pattern>

<template>
Hello User!
</template>

</category>
</aiml>

以下是需要考虑的要点 -

  • <aiml>标记表示AIML文档的开始。
  • <category>标签定义知识单元。
  • <pattern>标签定义用户要输入的模式。
  • <template>标签,如果用户键入Hello Alice,它定义对用户的响应。

结果

User: Hello Alice
Bot: Hello User