写点什么

以 eBay 机器人购物助手为例阐述聊天机器人的可扩展架构

  • 2017-07-17
  • 本文字数:1106 字

    阅读完需:约 4 分钟

来自 eBay 的软件工程师 Robet Enyedi 在 QCon 纽约 2017 会议谈了个人购物助手这款购物机器人应用背后的架构设计。这款购物机器人助手于2016 年发布,是基于 Facebook Messenger 打造的,集成了 AI 组件和 ebay 的用户数据,通过对话的形式来为用户提供购物选择。

Enyedi 认为 AI 技术给商业带来了深远的影响,简洁的、能够提供个性化交互的在线购物体验才能满足当前用户的需求。

开发购物聊天机器人有诸多挑战,例如要解决关联性问题,提供购物会话、信息会话以及售后会话等功能,这可不止是简单的搜索。同时,系统设计上也存在约束,比如用户的输入信息可能比较少,或者由于多次交互导致用户输入信息零散化等问题。要准确理解用户的输入,需要大量的数据作为输入,系统的输出也要能做到用户友好。

第三方机器人框架一般都支持自然语言理解和处理、意图检测(例如天气、航班以及购物等信息)、实体抽取(例如数字、温度等信息)。但是他们在非线性会话和粗粒度机器人记忆功能方面很有限,API、工具和实现方面的可用度和成熟度也千差万别。eBay 团队自己实现了机器人解决方案,其可以提供商务感知的输入分析,这些分析结果又可以通过大规模数据分析、细粒度的长期且存储安全的机器人记忆管理来调整,并且支持非线性多轮次会话。

购物机器人架构一般包含以下几个模块:

  • Facebook Massagener

  • 购物机器人内部组织 (ShopBot Fabric)

  • 购物机器人 AI 系统 (包括输入处理器和对话管理器)

  • 数据存储 (机器人记忆和知识图谱)

购物机器人技术栈基于微服务架构,包括java8、Scala、Python、Play、 Google Cloud BigTable 以及 Spark 机器学习模型训练。部署模型基于 Google 云平台 Docker 以及 Kubernetes

这款应用支持多轮次会话和多模式系统输入等特性。多模式系统输入可以是文本、点击、音频或者这些所有输入的混合。多轮次对话则包含围绕一个话题的对话,这比传统的一维搜索效率更高。

对话管理器是购物机器人应用的核心模块,输入分析、机器人记忆管理、商品检索、搜索 (文本,可视和综合搜索) 以及知识图谱等,都依赖于对话管理器。

购物机器人未来规划包括:在云端提供 eBay 全部的库存详单,在非线性对话交流功能上继续创新以及在可使商务对话更加简洁和快速的 AI 技术上投入研究等。

感兴趣的读者可以在 eBay 网站尝试购物机器人应用

查看英文原文: Scalable Chatbot Architecture with eBay ShopBot Shopping AssistantLike | by Srini Penchikala on Jul 09, 2017. Estimated reading time: 1 minute | Discuss


感谢张卫滨对本文的审校。

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

2017-07-17 19:001824

评论

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

架构师训练营第三周作业 - 学习总结

阿德儿

初步解析 Elasticsearch Document 核心元数据

escray

elastic 七日更 28天写作 死磕Elasticsearch 60天通过Elastic认证考试

架构师训练营第三周作业 -命题作业

阿德儿

【Redis】- Redis Cluser之数据分布

双木之林

Web UI自动化测试之元素定位

行者AI

软件测试 测试 自动化测试

Android经典面试:46道面试题带你了解中高级Android面试,附面试题答案

欢喜学安卓

android 程序员 面试 移动开发

Redis 学习笔记 08:数据结构与对象小结

架构精进之路

redis 七日更 28天写作

蝉联 Apache 最活跃项目,Flink 社区是如何保持高速发展的?

Apache Flink

flink

阿里云 RTC QoS 屏幕共享弱网优化之若干编码器相关优化

阿里云CloudImagine

音视频 WebRTC 网络 RTC 视频会议

2021最新版阿里巴巴Java性能调优速成手册强烈推荐

比伯

Java 编程 架构 面试 架构师

android开发培训!深度解析跳槽从开始到结束完整流程,系列篇

欢喜学安卓

android 程序员 面试 移动开发

《价值》- 护城河(6)

石云升

读书笔记 护城河 28天写作

EXCEL数据太“脏”无从下手?何须用python,ETL一分钟搞定

智分析

Excel ETL

为什么你家的 K8s 应用平台不好用?

孙健波

Kubernetes PaaS KubeVela

阿里开源SpringSecurity:用户+案例+认证+框架

996小迁

Java 程序员 架构 面试 springsecurity

volatile,还可以有这么硬的理解

Java 程序员 线程

Kafka 中的消息存储在磁盘上的目录布局是怎样的?

李尚智

Java kafka 架构 设计模式

第一周作业

Esther

万字带你深入阿里开源的Canal工作原理

大数据老哥

大数据 canal

快了何止100%?阿里巴巴Java性能调优实战(2021华山版)PDF版开源

Java架构追梦

Java 阿里巴巴 架构 性能优化 华山版

认识产品经理(第一节)

让我思考一会儿

图解分布式之:最终一致性,一致只会迟到,但绝不缺席

四猿外

架构 分布式 分布式系统 一致性 数据一致性

新“庖丁解牛”,华为云技术全牛图解

陈泽涛

Hadoop编程实战:HDFS用户Shell详解

罗小龙

hadoop 最佳实践 28天写作 hdfs shell

AQS之ReentrantReadWriteLock精讲分析上篇

伯阳

AQS 读写锁 ReentrantReadWriteLock 多线程与高并发 lock

【Java虚拟机】- Java虚拟机之逃逸分析

双木之林

一文读懂 Serverless,将配置化思想复用到平台系统中

Serverless Devs

Serverless 云原生 PaaS

简单五步:利用Gitstats给代码仓库做一次体检

后台技术汇

28天写作

备忘录1

Vei

区块链数字货币交易所系统软件APP开发

系统开发

吉他谱怎么看?看谱大攻略送上!

懒得勤快

音乐 吉他学习 吉他谱 看谱

以eBay机器人购物助手为例阐述聊天机器人的可扩展架构_大数据_Srini Penchikala_InfoQ精选文章