开源技术 * IBM 微讲堂:Kubeflow 系列(观看回放 | 下载讲义) 了解详情

构建一个聊天机器人管理员来检测愤怒情绪,理解自然语言,并删除敏感图片

摘要

学习如何构建一个聊天机器人来监测愤怒或不当的消息,以及敏感的图片。本 Code Pattern 将解释如何构建一个监管聊天机器人,然后在 Slack 等聊天室中或允许评论的网站中使用它。

概览

粗鲁的行为。愤怒或不当的消息。敏感的图片。社交媒体平台中每天都在使用所有这些信息。那么如何过滤掉这些问题呢?通过构建一个监测消息和图像的聊天机器人。可以在 Slack 等聊天室或允许评论的网站中运用这种监测功能,它可以删除敏感图片或不当文本。

在本 Code Pattern 中,您将创建一个使用 IBM® Cloud Functions 和 Watson™ 服务的聊天机器人。使用 Watson Visual Recognition 和 Watson Natural Language Understanding 增强该聊天机器人的流程,以便识别和删除敏感图片,并检测愤怒和不当的消息。

完成本 Code Pattern 后,您将掌握如何:

  • 创建一个通过 IBM Cloud Functions 与 Slack 集成的聊天机器人。
  • 使用 Watson Visual Recognition 检测敏感图片(处于测试阶段)。
  • 使用 Watson Natural Understanding 检测对话中的情绪。
  • 使用 Watson Natural Language Understanding 识别实体。

流程

flow

  1. 用户与 Slack 应用程序进行交互,并发送文本或上传图像。
  2. 机器人将 Slack 中使用的文本或图像传递给一个 IBM Cloud Functions API。该 API 是对一个 IBM Function 的调用,IBM Function 根据 Watson Visual Recognition 或 Watson Natural Language Processing 的响应对文本或图像进行分类。
  3. Watson Visual Recognition 使用默认和敏感信息分类器对上传的图像进行分类。
  4. 如果文本是在 Slack 通信过程中发送的,那么 Watson Natural Language Processing 会对文本进行分类。
  5. IBM Cloud Functions 接收响应,如果文本内容不文明,机器人会使用 Slack post message API 向 Slack 用户发送一条更文明的消息。如果使用了被认为不当的图片,IBM Cloud Functions 会使用 Slack files delete API.
  6. 用户与 Slack 应用程序进行交互,并发送文本或上传图像。
  7. 机器人将 Slack 中使用的文本或图像传递给一个 IBM Cloud Functions API。该 API 是对一个 IBM Function 的调用,IBM Function 根据 Watson Visual Recognition 或 Watson Natural Language Processing 的响应对文本或图像进行分类。 删除该图片。

操作说明

请在 README 中了解详细的操作说明。这些步骤解释了如何:

  1. 克隆 GitHub 存储库。
  2. 使用 IBM Cloud 创建 Watson Visual Recognition 和 Natural Language Understanding 服务。
  3. 为工作区创建 Slack 应用程序和机器人。
  4. 将该功能部署到 IBM Cloud。
  5. 使用 Slack 进行测试。

本文翻译自:Build a chatbot moderator for anger detection, natural language understanding, and removal of explicit images(2018-10-03)