写点什么

Facebook 想用机器人取代 App

  • 2016-04-17
  • 本文字数:1188 字

    阅读完需:约 4 分钟

Facebook 最近开放了 Messenger Platform 用以集成聊天机器人(chatbot)来完成各种任务。

Facebook 中的 Wit.ai 团队公开发布了他们的机器人引擎(Bot Engine),它是一个用来解析人类语言并转化为结构化可操作的数据的人工智能平台。Facebook 正在 Messenger 上使用它来创建个人的数字助手,该助手能够理解并完成用户的任务。Facebook 想要突破目前 Google Now 和 Siri 能够完成的简单任务,例如语音听写,设定日程以及呼叫他人。在 Facebook M 中,用户可以通过和他们的助手讲话来进行购物,订酒店或者和其他的 IoT(物联网)设备交互。

但是 Facebook 发现这项工程涉及范围太广以至于一家公司很难去完成,所以他们向所有愿意为 Messenger 创建聊天机器人的开发者公开了机器人引擎。类似机器人之前也有过,它们大部分是基于一些规则,能够理解有限的语音指令并给出相应的回应。Wit.ai 的引擎一开始就是通过故事来训练的,就是包含了人类和机器人可能有的对话的一个集合。这些故事也包含了在对话中某些点机器人所要作出的动作,而且不同于规则,故事不会互斥。这些故事是一个起点,开发者在测试机器人的同时,新的对话也会自动的被引擎转化为新的故事,这样就可以逐渐的创建一个模型,其可以被 Wit.ai 的机器学习引擎用来处理和理解真实场景下和用户的对话。

聊天机器人的目标是最终取代应用。用户不再需要在自己的设备上安装各种应用,而是使用 Messenger 来和各种的聊天机器人交互,从而完成各种任务,目前这些任务都是通过触屏界面由各种应用完成的。聊天机器人主要是依赖语音信息以及人工智能来完成指令。

Messenger 的聊天机器人是使用 HTTP API 来访问机器人引擎的。现在已经有对 Node.JS,Python 和 Ruby 的封装。引擎用 JSON 格式回复。下面就是一个例子,其请求处理消息“Turn on the lights in the living room”,可以看到引擎的回复:

复制代码
// request
$.ajax({
url: 'https://api.wit.ai/message',
data: {
'q': 'Turn on the lights in the living room',
'access_token' : 'MY_WIT_TOKEN'
},
dataType: 'jsonp',
method: 'GET',
success: function(response) {
console.log(response);
}
});
复制代码
// response
{
"_text": "Turn on the lights in the living room",
"confidence": 1,
"intent": "lights",
"entities": {
"room": [ { "value": "living room" } ],
"on_off": [ { "value": "on" } ]
}
}

Wit.ai 给出的 demo 应用展示了如何通过语音指令控制房间中各种家电。

Microsoft 在 /BUILD 2016 期间也公布了一个类似的服务,叫做 Bot Framework 。目前是一些技术预览,它将在年底前可用,并会支持 C#和 Node.js。

查看英文原文: Facebook Wants to Replace Apps with Bots


感谢张龙对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2016-04-17 19:002271

评论

发布
暂无评论
发现更多内容

Springboot快速整合JPA实现增删查改(1),java教程视频下载

Java 程序员 后端

最佳实践|放弃 Ceph,Salesforce 使用 Apache BookKeeper 在云中实现最强存储

Apache Pulsar

开源 云原生 存储系统 Apache Pulsar 消息系统 Apache BookKeeper

SpringBoot整合Shiro实现权限管理,rabbitmq原理图

Java 程序员 后端

SpringBoot整合Shiro(完整版),java学习网站

Java 程序员 后端

springboot+mybatis+druid整合笔记,java程序设计案例教程课后答案

Java 程序员 后端

SpringBoot2----拦截器和文件上传功能,源码+原理+手写框架

Java 程序员 后端

SpringBoot整合MybatisPlus实战动态SQL,java编程入门经典

Java 程序员 后端

SpringBoot+Redis基本操作,实现排行榜功能(1),springmvc教程下载

Java 程序员 后端

SpringBoot整合Shiro(完整版)(1),java企业级应用教程视频

Java 程序员 后端

SpringBoot+Redis基本操作,实现排行榜功能,javasql优化面试题

Java 程序员 后端

springboot+Redis+Shiro,java编程技术高级八大类

Java 程序员 后端

SpringBoot2----Web模块的基本注解,美的java面试题

Java 程序员 后端

SpringBoot2----数据访问,实战java虚拟机百度云

Java 程序员 后端

腾讯云原生开源生态专场在武汉召开,洞察开源云原生技术发展趋势和商业化路径

科技热闻

springboot整合thymeleaf及常用标签的使用方法,美的java面试流程

Java 程序员 后端

SpringBoot系列:Spring Boot集成redis,mongodb原理书籍推荐

Java 程序员 后端

Springboot 整合Shiro 轻量级权限框架,从数据库设计开始带你快速上手shiro

Java 程序员 后端

springboot多数据源配合docker部署mysql主从实现读写分离

Java 程序员 后端

Springboot快速整合JPA实现增删查改,linux系统架构和应用技巧

Java 程序员 后端

SpringBoot整合Thymeleaf模板,java技术核心卷二

Java 程序员 后端

dart系列之:dart语言中的特殊操作符

程序那些事

flutter dart 程序那些事 11月日更

SpringBoot使用Aop自定义注解展示日志信息,mysqlsql性能调优的方法

Java 程序员 后端

SpringBoot实战教程(3,mysql集群和主从原理

Java 程序员 后端

六问六答理解ForkJoin原理

华为云开发者联盟

Java 线程 线程池 forkjoin 归并计算

Windows/Mac 安装、使用Python环境+jupyter notebook

老表

python入门 11月日更 Python自动化 运营学Python

springboot中如何使用拦截器,Javaweb资料视频

Java 程序员 后端

云原生领域再添重磅开源项目:腾讯发布 K8s 多集群管理开源项目 Clusternet

科技热闻

springboot入门教程和mysql数据库,java框架面试基础

Java 程序员 后端

Springboot整合ActiveMQ(Queue和Topic两种模式),Java开发者跳槽指

Java 程序员 后端

Springboot整合Mybatis增删查改、连接MYSQL数据库及配置druid连接池

Java 程序员 后端

SpringBoot 实战:优雅的使用枚举参数(原理篇,这一次带你搞懂Spring代理创建过程

Java 程序员 后端

Facebook想用机器人取代App_Meta_Abel Avram_InfoQ精选文章