我的应用程序运行在tomcat实例上的AWS上,带有带有mongodb数据库的Java代码。
我现在需要将它与Facebook信使ChatBot和wit.ai集成起来。
我真的很难开始,我已经找到了一些示例代码,但使用了不同的语言。
我可以运行这个并与运行在Tomcat上的门户集成吗?它应该同时调用Facebook信使和wit。
我需要有更高层次的想法来进行.
发布于 2016-07-21 09:28:31
首先,想想你的机器人应该做什么。它将提供哪些功能,哪些问题将由用户提出,以及您希望如何回应。如果你对你的问题空间有一个大致的想法,你可以开始思考技术上的挑战。
请注意,Messenger平台和wit.ai都是完全独立的产品,它们为其服务提供了HTTP接口。这意味着您可以使用任何您喜欢的语言与这些平台进行交互。您的应用程序充当这些服务的中间人。
首先建立一个与Messenger平台的集成,这样您就能够同时接收和发送消息。为此,您必须创建一个Facebook页面,作为您产品的标识。用户将通过页面的名称在Messenger中找到您。您还需要创建一个Facebook应用程序,在其中订阅您的页面,并指定web钩子设置,以便将消息转发到您自己的后端服务。
这方面的文档非常好,我建议您仔细阅读。你可以找到它,这里。在浏览完这些文档之后,您将很好地了解您可以使用Messenger平台做什么,以及您可以发送和接收哪些类型的消息。
一旦您能够发送和接收消息,您可以开始从中提取一些意义。为此,您可以使用wit.ai,但也可以考虑其他服务。例如,谷歌刚刚发布了自己的NLP平台,提供了类似的功能。请参阅这里,通常也有api.ai,您必须发送接收到的消息到您喜欢的服务,并获得有关用户的意图和提取的值的结构化信息。有了这些信息,你就可以采取相应的行动。
如果您想坚持使用wit.ai,请阅读它们的入门指南和菜谱部分。让我可以使用他们的平台。
我希望这能让您对集成的工作方式有一个大致的了解。这是相当高级别的,并且大部分细节(特别是在NLP方面)取决于您的特定用例。
发布于 2019-07-09 08:10:24
要将wit.ai连接到您的facebook页面,只需使用wit.ai创建一个帐户,然后创建一个新应用程序(或使用默认的起始应用程序)。
然后,您可以转到应用程序的设置,您将看到服务器访问令牌代码。
您需要将该服务器访问代码粘贴到"Integrated“字段中,您将在您的Facebook开发人员帐户中找到该代码,然后在Messenger设置中访问要使用NLP的应用程序。为此,您必须已经创建并配置了信使应用程序,并配置了它的web钩子,我想您已经有了。
一旦完成,自然语言处理(NLP)将作为消息中的另一个字段自动发送到您的服务器。从wit.ai上理解和训练是非常简单的
用户的消息将由wit.ai进行分析,如果它找到任何默认实体或由您从wit.ai培训机器人的实体,则将其发送给信使,此实体将在消息中插入NLP。
因此,您将使用名为NLP的额外字段从信使接收一个普通的JSON消息,该字段将包含类似于以下示例的内容:
"text":"reservar una pista","nlp":{"entities":{"tipo_cita":[{"confidence":0.98398202482107,"value":"pista","_entity":"tipo_cita"}]},"detected_locales":[{"locale":"es_XX","confidence":0.9935}]}}}]我的聊天机器人是西班牙语的,但是有一个例子说明了如何在JSON消息中看到NLP。
我介绍了案文:“预备役活塞”。
它以0.9839的信心认识到了“活塞”的价值。with还检测到西班牙语"es_XX“的自信度为0.9935。
发布于 2016-07-03 18:23:52
您可以使用witai和facebook信使的示例nodejs实现。首先,你必须训练witai的模型来理解表达式和提取实体。然后在fb上设置信使机器人,并将其附加到某个fb页面。一旦您能够从web钩子回调中获得消息,将它们发送到witai。您还必须在代码中定义操作,以便witai执行模型中定义的操作。
https://stackoverflow.com/questions/38171757
复制相似问题