2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

以 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:002001

评论

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

2022年15款实用有趣的小程序推荐

FN0

小程序 小程序商城 小程序模版

模块七--王者荣耀商城异地多活架构设计

闲人Eric

架构实战营

爆竹声响又是一年春节到 归心似箭阖家团圆享美食

极客天地

火出圈的《中国奇谭》,如果浪浪山的小妖怪们也用WorkPlus

BeeWorks

荣誉+1,OpenMLDB 荣获 InfoQ 2022 年度杰出开源运营团队

第四范式开发者社区

人工智能 机器学习 数据库 开源 特征

HummerRisk V0.9.0:增加RBAC 拓扑图,云检测、漏洞、主机等模块增加规则

HummerCloud

开源 云原生安全

华为云发布CodeArts Check代码检查服务,守护软件质量和安全

IT科技苏辞

简述JavaScript异步函数 async/await

devpoint

JavaScript Async await es7

华为云服务治理 | 服务治理的一般性原则

与时俱进的时代

DTSE Tech Talk 第18期丨统计信息大揭秘,数仓SQL执行优化之密钥

华为云开发者联盟

数据库 sql 后端 华为云 企业号 1 月 PK 榜

软件测试/测试开发 | 接口测试中如何使用Json 来进行数据交互 ?

测试人

json 软件测试 自动化测试 接口测试 测试开发

KaiwuDB 首席解决方案专家 金宁:1.0 时序数据库核心功能解读

KaiwuDB

时序数据库 海量数据高吞吐 复杂查询

【表面缺陷检测】表面缺陷检测数据集汇总

机器不学习我学习

软件测试/测试开发 | 接口自动化测试如何搞定 json 响应断言?

测试人

json 软件测试 自动化测试 接口测试 测试开发

2022年度 FinClip 扩展SDK推荐!

FN0

小程序 sdk SDK 教程

华为云代码检查插件(CloudIDE版本)使用指南

与时俱进的时代

Volcano 社区 v1.7.0 版本正式发布 | 云原生批量计算

华为云开发者联盟

云计算 云原生 华为云 Volcano 企业号 1 月 PK 榜

中冶赛迪*IoTDB | 多项目全流程以IoTDB为时序数据处理方案,预计写入查询效率提升一倍

Apache IoTDB

国产时序数据库

SAST-静态应用安全测试

以数据赋能AI量产落地,澳鹏团队在浦东AI智能创新应用大赛斩获佳绩

澳鹏Appen

人工智能 数据标注

华为云服务治理 | 微服务常见故障模式

IT科技苏辞

软件测试/测试开发 | 接口自动化测试中,如何做断言验证?

测试人

软件测试 自动化测试 接口测试 测试开发

别忘记我:通过局部-全局内容建模进行文本擦除方法

合合技术团队

图像识别 图像处理 文本 图像擦除

一个专科生的 2022 年终总结——默默努力,成为更好的自己

程序人生 年终总结 成长感悟 自学之路

软件测试/测试开发 | 接口自动化测试中如何对xml 格式做断言验证?

测试人

软件测试 自动化测试 接口测试 测试开发 接口自动化

90%开发都会忽略的性能调优点:针对返回大数据量的接口,10分钟内找到提升带宽瓶颈的突破口

KINDLING

Java 性能调优 响应时间 ebpf 排障

光神经网络ONN:直接对光信号进行神经网络处理

Zilliz

ING国际银行基于Volcano的大数据分析平台应用实践

华为云开发者联盟

云计算 云原生 后端 华为云 企业号 1 月 PK 榜

技术人职场系列-务虚与务实

CatTalk

技术人生 职场发展

数据中心的浪浪山

脑极体

高效节能 | 智慧灯杆综合管理解决方案

AIRIOT

物联网 智慧灯杆

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