我正在从事休闲的AIML项目,遇到了pandorabots。我想知道是否有一种方法可以将用户输入中的变量解析为其他语言(在本例中为python)或框架,以便我们可以通过任何模板通过其他第三方API进行进一步的处理?
例如,我想从用户那里获取一个日期,然后将其输入到Google日历API中。有没有一种方法可以提取“日期”变量并将其解析为Python(或其他任何语言)的Google Calendar API?
<category><pattern># 1 MAY 2016 #</pattern>
<think>{{ date }}</think> #is there a way to parse "1 May 2016" as a
#variable date in python?
<template>...
</template>
</category>
最终,我要实现的目标是进行如下对话:
User: Hi bot, could you check if I am available on 1 May 2016?
Bot: Nope, you have a gathering at Mike's! #(<--- Response rendered after
checking user's schedule on 1 May via google calendar )
我探索了像胡子一样的模板引擎,但显然它与AIML(或xml)没有联系。是否有人可以为我提供一个可以帮助我入门的好例子/教程?
ps:我正在使用pandorabots API和python2.7
最佳答案
在pyAIML API中,查找关键字“ predicates”:
kernel.getPredicate('date')
kernel.getBotPredicate('dat')
它返回使用设置的谓词
<set name="date"><star/></set>
然后,您可以使用python轻松解析它。
但这使我更接近问题:我需要AIML做什么? AIML在这里有什么附加值?