0
我試圖向A.L.I.C.E添加一些文件。 AIML chatbot(我目前使用AIML v1.0.0的Python解釋器)。現在我陷入了一個問題:我在模式上使用了兩個通配符,而單詞TO將它們分開。現在的一點是,第一個通配符還可以包含字,所以它使我的錯誤:aiml - 最後一次出現的單詞
<category>
<pattern>SAY * TO *</pattern>
<template>Ok, I will say "<star />" to "<star index="2" />"</template>
</category>
一個正常的對話可能是:
-Client: Say Hi to mom
-Bot: Ok, I will say "Hi" to "mom"
但這其他的談話讓我的錯誤:
-Client: Say I have to go shopping to mom
-Bot: Ok, I will say "I have" to "go shopping to mom"
(請注意,在機器人的答案引號是沒有的,我只是把他們在這裏,所以你可以清楚地看到我的意思)
右擊在寫完這篇文章之後,我意識到我可以用一些標誌標記該TO來識別它。我試過這些模式:
<pattern>SAY * "TO *</pattern>
<pattern>SAY * "TO" *</pattern>
<pattern>SAY * TO" *</pattern>
<pattern>SAY * -TO *</pattern>
<pattern>SAY * -TO- *</pattern>
<pattern>SAY * TO- *</pattern>
但它們都不起作用,無論是解釋器還是aiml本身都不能識別字符。
有什麼辦法可以正確地匹配這些通配符嗎?有什麼建議麼?
非常感謝。