通过Wit.ai运行MySQL查询

在将Wit.ai集成到网站时,是否有办法执行数据库查询,因为用户问题的答案需要从数据库中获取,而这些内容无法训练给聊天机器人。


回答:

正如你在教程中看到的,你可以在wit.ai中定义动作,这些动作可以涉及发送给用户的变量作为响应。因此,你应该在你定义的动作中对数据库进行查询,如果你还没有定义这些动作,那么就去定义吧,因为这是你可以实现逻辑的地方。另外,请注意,你可能需要处理对数据库的非同步请求,那么你应该实现一个阻塞机制,以便在每次查询完成后立即返回上下文。

我知道你想用Python进行实现,但我已经有了一个Node.js的实现,所以这里是我的示例代码。

  getFullName({sessionId, context, entities}) {    let session;    let fbid = sessionId.split("-")[0];    return fbTypingOn(fbid)      .then(() => {        return model.getSesion(fbid);      })      .then(sesion => {        session = sesion;        return callFbUserAPI(session);      })      .then(first_name => {        session.context.fullNameGreeting = utilsBot.buildGreeting(session);        return model.setSesion(session);      })      .then( sesion => {        return session.context;      })      .catch( error => {        console.log("Error in getFullName " + error);        session.context.fullNameGreeting = "Hola";        return context;      });  }

请确保阅读官方页面上的所有文档,因为如果缺少某些内容,那么你就应该自己去实现。另外,我想已经有一个Python 2的实现了。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注