nlp - 如何为本地解决方案实现像 WIT.AI 这样的 BOT 引擎?

标签 nlp opennlp

我想为客户服务应用构建一个聊天机器人。我尝试了 Wit.Ai、Motion.Ai、Api.Ai、LUIS.ai 等 SaaS 服务。这些认知服务在接受训练时会找到“意图”和“实体”与典型的交互模型。

我需要为本地解决方案构建聊天机器人,而不使用任何这些 SaaS 服务。

例如典型的对话如下-

    Can you book me a ticket?
    Is my ticket booked?
    What is the status of my booking BK02?
    I want to cancel the booking BK02.
    Book the tickets

StandFord NLP 工具包看起来很有前途,但存在许可限制。因此我开始尝试使用 OpenNLP。我假设涉及两个 OpenNLP 任务 -

  1. 使用“文档分类器”找出意图
  2. 使用“命名实体识别”找出实体

识别上下文后,我将调用我的应用程序 API 来构建响应。

  • 这是正确的方法吗?
  • OpenNLP 在解析文本方面有多好?
  • 我可以使用 Facebook FASTTEXT 库进行意图识别吗?
  • 是否有任何其他开源库可以帮助构建 BOT?
  • SyntaxNet”对我的冒险有用吗?

我更喜欢用 Java 来做这件事。但也对节点或 python 解决方案开放。

PS - 我是 NLP 新手。

最佳答案

看看这个。它说它是一种用于机器人的开源语言理解,是流行的 NLP 工具(如 wit.ai、api.ai 或 LUIS)的直接替代品

https://rasa.ai/

关于nlp - 如何为本地解决方案实现像 WIT.AI 这样的 BOT 引擎?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39472347/

相关文章:

python - 在 Python 中使用 NLTK 的短语索引

java - 如何为用户提供的国家名称预测正确的国家名称?

android - 在 Android 中读取 POS 标签模型

java - 在 R 中安装 R 包 openNLP

lucene - 使用免费工具进行实体提取/识别,同时提供 Lucene 索引

java - 如何在 Eclipse 中设置 OpenNLP 模型二进制文件路径?

nlp - Smalltalk和tf-idf算法

python - Spacy NER - 训练仅具有实体集合的模型

python - 获得英语单词的基本形式

python - 为 OOV 词添加新向量的正确方法