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 和 encoding 属性下包含版本和编码信息。version 属性存储 ALICE 聊天机器人知识库 (KB) 使用的 AIML 版本。例如,我们使用了 1.0.1 版本。此属性是可选的。

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

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

<category> 标签

<category> 标签是 ALICE 机器人的基本知识单元。每个类别包含:

  • 用户输入,可以是陈述句、疑问句和感叹句等。用户输入可以包含通配符,如*_

  • Alicebot 将要呈现的对用户输入的响应。

  • 可选上下文。

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

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

在这里,如果用户输入Hello Alice,则机器人将回复Hello User

<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”,代表机器人对用户输入的响应。

<template> 标签

<template> 标签代表机器人对用户的响应。它应该是 <category> 标签中的第二个标签。此 <template> 标签可以保存数据、调用其他程序、给出条件答案或委托给其他类别。

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

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

广告
© . All rights reserved.