Android 如何让api.ai代理动态地学习一些东西?

Android 如何让api.ai代理动态地学习一些东西?,android,json,nlp,artificial-intelligence,dialogflow-es,Android,Json,Nlp,Artificial Intelligence,Dialogflow Es,我目前正在使用api.ai来创建代理来执行特定任务,但有一个问题我没有答案,那就是,我可以让它在聊天时学习一些东西吗,意思是我说我的名字是“John Cena”,她应该存储它,然后每当我再次问她时,机器人应该回答我。我知道有一种方法可以做到这一点,那就是登录到api.aiweb并手动添加条目,但这不会有任何帮助,是否有任何编程或自动解决方法?我用来练习的文件在中给出。这里是工作你的机器人基本上需要“学习”事实。有许多不同的方法可以实现这一点,但最近最常见的方法是将知识排列成语义“三元组”,并将知

我目前正在使用api.ai来创建代理来执行特定任务,但有一个问题我没有答案,那就是,我可以让它在聊天时学习一些东西吗,意思是我说我的名字是“John Cena”,她应该存储它,然后每当我再次问她时,机器人应该回答我。我知道有一种方法可以做到这一点,那就是登录到api.aiweb并手动添加条目,但这不会有任何帮助,是否有任何编程或自动解决方法?我用来练习的文件在中给出。这里是工作

你的机器人基本上需要“学习”事实。有许多不同的方法可以实现这一点,但最近最常见的方法是将知识排列成语义“三元组”,并将知识存储到图形库中(如Neo4j、Titan、Spark Graph等)。在您的示例中,“我的名字是约翰·塞纳”将被翻译成类似三元组(“anubava”、“name”、“John Cena”)。这样,下次您以anubhava身份登录并询问“我叫什么名字?”时,它将转换为返回“John Cena”的图形搜索。需要注意的是,实现这一点并非微不足道,需要进行大量的微调。有关更多信息,您可以查看和

最后,据我所知,最完整的解决方案是服务器端解决方案。如果您希望整个知识库都驻留在您的移动设备中,您可能会将其中的资源用作灵感,并使用嵌入式数据库构建您自己的链接数据存储库


希望这有帮助。祝您好运。

要存储和调用用户名,您需要设置一个具有一些基本数据持久性功能的webhook。任何数据库或键值存储都可以正常工作

以下是分类:

  • 为捕获用户名的意图实现webhook实现。webhook应该存储名称以及唯一的标识ID,您应该在
    会话ID
    中从前端提供该ID,或者在调用
    /query
    时将其作为上下文参数
  • 为读取用户名的目的实现webhook实现。webhook应该按ID查找名称,并返回一个告诉用户其名称的响应
  • 用于编写履行webhook的高级文档如下: