在本教學中,我們來討論和學習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聊天機器人知識庫,表示使用的AIML版本。 例如,我們使用了1.0.1
版本。 此屬性是可選的。
Encoding
屬性提供要在文件中使用的字元集。 例如,使用UTF-8
。 強制性要求<aiml>
標記必須至少包含一個<category>
標記。 可以建立多個AIML檔案,其中每個AIML檔案包含一個<aiml>
標記。 每個AIML檔案的目的是將至少一個名為category
的知識單元新增到ALICE聊天機器人知識庫。
<aiml version = "1.0.1" encoding = "UTF-8"?>
...
</aiml>
<category>
標籤<category>
標籤是ALICE機器人的基本知識單元。每個類別包含 -
*
和_
這樣的萬用字元。Alicebot
提供的使用者輸入。<category>
標記必須具有<pattern>
和<template>
標記。 <pattern>
表示使用者輸入,<template>
表示Alicebot
的響應。如下範例 -
<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」
,表示機器人對使用者輸入的響應。