AIML - 改变机器人属性

时间:2016-10-04 18:34:00

标签: aiml

我找到了bot.aiml文件here,它使用<bot name="genus"/>之类的内容。我认为这与<get name="name"/>类似,可以获得客户端的名称。那么,我如何为机器人设置genus等属性,以便我可以这样检索它?

2 个答案:

答案 0 :(得分:0)

假设机器人问你的名字,当你说'我的名字是JACOB&#34;时,你想让机器人说'#34;我会记住你的名字是JACOB&#34;,并设置变量&#34; clientname&#34;的值到&#34; JACOB&#34;。

将这些行添加到您的AIML文件中:

<category>
    <pattern>MY NAME IS *</pattern>
    <template>I will remember that your name is </star><think><set name="clientname"></star></set></template>
</category>

在此,</star>标记表示您将在*(在这种情况下为JACOB)的位置输入的内容。

答案 1 :(得分:0)

我认为最初的问题是关于机器人的属性,而不是用户属性。

在AIML v1(和v2)中,使用<bot name="name"/>(例如)检索bot属性以获取机器人的名称。使用<get name="name"/>检索用户属性,并使用<set name="name">Fred</set>进行更新(例如)。我不认为标准AIML在装载机器人之后有任何更新机器人属性的方法。