我如何让我的AIML机器人仅做出一个回应?

时间:2019-04-16 19:49:41

标签: bots chatbot aiml

我是编码聊天机器人的新手,出于娱乐目的。我目前正在使用PandoraBots作为主机。

如您所知,如果您在聊天机器人中键入多个句子,则默认设置是该机器人以与句子相同的消息数量进行响应。这使该机器人看起来不像我想要的那样“真实”。

例如,假设我想谈一谈我的胃痛。

  

用户:我感觉不太好。一定是我吃的东西。 gh。

一个真实的人会回应这些词组的一般概念,并且可能会回应一条消息。

  

用户:我感觉不太好。一定是我吃的东西。 gh。

     

朋友:大声笑,你不应该吃那些墨西哥胡椒汽水

     

用户:哦,闭嘴。

但是,僵尸程序会在检测到的每一次完全停止后都会给出一条消息。

  

用户:我感觉不太好。一定是我吃的东西。 gh。

     

BOT:生病没有乐趣。休息一下!

     

BOT:我喜欢吃饼干!

     

BOT:那好吧。

     

用户:现在我的沉浸感完全消失了。非常感谢,机器人。

     

BOT:如果迷路了,请拔出地图!

     

BOT:不客气,我的朋友。

由于我的机器人中已经有一些程序设计,我希望他随机地只响应第一句话或最后一句话,以便进行更自然的对话,例如:

  

用户:我感觉不太好。一定是我吃的东西。 gh。

     

BOT:生病没有乐趣。休息一下!

     

用户:哇,真是令人难以置信的有趣互动!好机器人!

     

BOT:很高兴您认为我做得很好。

通过Pandorabots是否有可能做到这一点?如果是这样,它的代码是什么?谢谢!

1 个答案:

答案 0 :(得分:0)

这是设计使然,因为聊天机器人不会自动知道应该将用户输入的重点放在哪一部分。例如,在您的输入中,如果机器人仅处理了“ UGH”,而忽略了句子的其余部分,那将没有太大意义。

机器人将输入作为单个单元处理的唯一方法是从机器人的属性文件中删除句子分隔符。