CN110785970B - 使网页的机器人创建自动化的技术 - Google Patents
使网页的机器人创建自动化的技术 Download PDFInfo
- Publication number
- CN110785970B CN110785970B CN201780092202.5A CN201780092202A CN110785970B CN 110785970 B CN110785970 B CN 110785970B CN 201780092202 A CN201780092202 A CN 201780092202A CN 110785970 B CN110785970 B CN 110785970B
- Authority
- CN
- China
- Prior art keywords
- page
- message
- web page
- bot
- robot
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/02—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
- G06F40/35—Discourse or dialogue representation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/214—Monitoring or handling of messages using selective forwarding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/52—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/216—Handling conversation history, e.g. grouping of messages in sessions or threads
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Transfer Between Computers (AREA)
Abstract
一种方法可以包括:从网页接收机器人创建控制指令;从模板实例化页面机器人;授权页面机器人访问网页的内容;将页面机器人与网页相关联;以及使页面机器人能够对发送到网页的消息做出响应。该方法还可以包括:在页面机器人处接收来自客户端设备的消息;从自然语言处理部件请求消息的含义;根据消息的含义来识别与页面机器人相关联的网页中的字段;从所识别的字段检索数据;创作包括检索到的数据的消息响应;以及向客户端设备发送消息响应。描述并要求保护了其他实施例。
Description
相关申请
本申请根据35 U.S.C.§119(e)要求2017年4月17日提交的、代理人案卷号为1360F0173的标题为“Techniques to Automate Bot Creation for Web Pages”的美国专利申请号15/489,354的优先权利益,该美国专利申请要求2017年4月14日提交的、代理人案卷号为1360F0173Z的标题为“Techniques to Automate Bot Creation for Web Pages”的美国临时专利申请号62/485,450的优先权,这两个专利申请特此通过引用以其整体并入。
背景
企业、公众人物和其他服务可以通过网页提供信息和联系机会。一些形式的联系可以是交互式的,并且被实时地执行。相对于可用来进行响应或重复地接收相同查询的工作人员的数量来说,具有大量联系的网页可能在响应用户消息时受益于某种自动化。
概述
下面提出了简化的概述,以便提供对本文描述的一些新颖实施例的基本理解。该概述不是详尽的综述,且并不意欲识别关键/重要要素或描绘其范围。一些概念以简化形式被呈现,作为稍后呈现的更详细描述的前序。
各种实施例大体上涉及用于使网页的机器人(bot)的创建自动化的技术。一些实施例特别地涉及用于使机器人的创建自动化的技术,该机器人可以通过消息而将网页上的信息传递给用户,而不需要网页管理员的编程经验。在一个实施例中,例如,一种方法可以包括:从网页接收机器人创建控制指令;从模板实例化页面机器人;授权页面机器人访问网页的内容;将页面机器人与网页相关联;以及使页面机器人能够对发送到网页的消息做出响应。该方法还可以包括在页面机器人处接收来自客户端设备的消息;从自然语言处理部件请求消息的含义;根据消息的含义来识别与页面机器人相关联的网页中的字段;从所识别的字段检索数据;创作包括检索到的数据的消息响应;以及向客户端设备发送消息响应。描述并要求保护其他实施例。
为了实现前述和相关目的,在本文结合下面的描述和附图描述了某些说明性方面。这些方面指示本文公开的原理可以被实践的各种方式,并且其所有方面和等同物被规定为在所要求保护的主题的范围内。其他优点和新颖特征当结合附图被考虑时将从下面的详细描述中变得明显。
附图简述
图1示出了用户请求通信系统的实施例。
图2示出了可以与页面机器人相关联的网页的实施例。
图3示出了由用户请求通信系统执行的页面机器人创建的实施例。
图4示出了由用户请求通信系统执行的用户与机器人的对话的实施例。
图5示出了由用户请求通信系统执行的用户与机器人的对话的实施例。
图6示出了用户客户端的用户界面。
图7示出了图1的系统的逻辑流程的实施例。
图8示出了图1的系统的第二逻辑流程的实施例。
图9示出了用于图1的系统的集中式系统的实施例。
图10示出了用于图1的系统的分布式系统的实施例。
图11示出了计算架构的实施例。
图12示出了通信架构的实施例。
图13示出了无线电设备架构的实施例。
详细描述
具有对其顾客和客户可访问的网页的企业和服务可以提供联系企业或服务(在本文被统称为“服务”)的几种方式。除了提供电话号码和电子邮件地址之外,许多服务还提供通过类似即时消息的界面来与人类代理通信的方式。然而,为了实时通信而配备一个或更多个人类代理对于较小的服务可能是过分昂贵的。
一些人类代理交互可以由被称为机器人的软件应用执行。为了帮助用户通过消息传送上下文来与服务交互,服务可以被表示为在消息传送系统中的消息传送机器人。消息传送机器人可以是网络可访问服务的自动化前端,其可以被表示为在消息线程内的参与者。在一些情况下,消息传送机器人可以与明确包括该消息传送机器人的消息线程(例如在特定用户和消息传送机器人之间的一对一消息线程)相对应。在其他情况下,消息传送机器人可以与其中消息传送机器人不是定期参与者的消息线程对应,该消息传送机器人出于与服务交互的目的而成为在消息线程中的临时参与者。消息传送机器人可以作为临时参与者被包括在任何其他线程中,无论是在两个用户之间的一对一线程还是在多个用户之间的组线程(group thread)。机器人可以访问自然语言处理部件、机器学习部件、数据库、规则和其他资源,这些资源可以允许机器人理解人类用户请求、选择适当的响应或动作并与人类用户交互,就好像机器人是人类一样。
为服务创建机器人照惯例需要开发者编写机器人的程序代码或指令。此外,人类开发者可能需要生成机器人要使用的训练数据或规则集。机器人可能需要被托管在平台上。此外,对于一些服务,这些元件可能是过分昂贵的。
许多服务存在于社交网络系统内和/或存在于消息传送系统内。例如,服务可以在社交网络系统和/或消息传送系统中具有账户,其允许系统的其他用户查看关于服务的信息和/或利用消息进行交互。对于一些服务,服务所有者或管理员可用于对消息做出响应的时间或注意力有限,且许多消息可能解决相同类型的疑问或问题。
当服务具有网页时,通过消息传送交互接收的许多问题可以根据网页上的信息而得到回答。因此,托管网页的系统可以为服务所有者或管理员提供自动生成关于网页的机器人的方式,并且可以使机器人能够接收消息、访问网页上的信息以及用该信息对消息做出响应。特别地,生成机器人可能不需要来自网页所有者或管理员的编程或开发经验。
现在参考附图,其中相似的参考数字用于始终指相似的元件。在下面的描述中,为了解释的目的,阐述了许多特定的细节,以便提供其彻底理解。然而可能明显的是,可以在没有这些特定细节的情况下实践新颖实施例。在其他实例中,以框图形式示出了众所周知的结构和设备,以便于描述这些结构和设备。意图是涵盖与所要求保护的主题一致的所有修改、等同物和替代方案。
值得注意的是,如在本文使用的“a”、“b”和“c”以及类似的指示符被规定为表示任何正整数的变量。因此例如,如果一个实现设置a=5的值,那么被示为部件122-1至122-a的完整的一组部件122可以包括部件122-1、122-2、122-3、122-4和122-5。实施例在这个上下文中并不被限制。
图1示出了用户请求通信系统100的框图。在一个实施例中,用户请求通信系统100可以包括具有软件应用的计算机实现的系统,软件应用包括一个或更多个部件。尽管图1所示的用户请求通信系统100在某一拓扑中具有有限数量的元件,但可以认识到,如对于给定实现所期望地,用户请求通信系统100可以在替代拓扑中包括更多或更少的元件。
可能多个机器人应用中的机器人应用可以在包括消息传送系统的网络环境中操作,该消息传送系统准许消息和其他信息的交换。页面机器人190可以包括在计算机系统上执行的软件应用。页面机器人190可以使用消息传送系统来交换包括用户消息和机器人消息的消息。用户消息可以包括用户请求以及澄清和详述用户请求的消息。机器人消息可以澄清对与用户请求相关的信息和与用户请求相关的业绩信息(performance information)的请求。在一些情况下,消息传送系统可以包括也用于其他消息的通用消息传送系统。在其他情况下,消息传送系统可以包括专用于与机器人应用例如页面机器人190通信的消息传送系统。
消息传送服务器110可以包括由消息传送系统操作的一个或更多个消息传送服务器,作为用户请求通信系统100的一部分。消息传送服务器可以包括互联网可访问的服务器,其中网络120连接用户请求通信系统100的至少部分地包括互联网的各种设备。
用户可以拥有并操作智能电话设备150。智能电话设备150可以包括设备、设备、设备或符合智能电话形式的任何其他移动计算设备。智能电话设备150可以是能够使用蜂窝信号135经由小区系统(cell system)130连接到网络120的蜂窝设备。在一些实施例中并且在一些情况下,智能电话设备150可以另外或可替代地使用Wi-Fi或其他联网技术来连接到网络120。智能电话设备150可以执行消息传送客户端、web浏览器或其他本地应用以访问消息传送服务器110。
同一用户可以拥有和操作平板设备160。平板设备160可以包括设备、平板设备、Kindle设备或符合平板形式的任何其他移动计算设备。平板设备160可以是能够使用Wi-Fi信号145经由Wi-Fi接入点140连接到网络120的Wi-Fi设备。在一些实施例中并且在一些情况下,平板设备160可以另外或可替代地使用蜂窝或其他联网技术来连接到网络120。平板设备160可以执行消息传送客户端、web浏览器或其他本地应用以访问消息传送服务器110。
同一用户可以拥有并操作个人计算机设备170。个人计算机设备170可以包括Mac设备、设备、设备或运行另一操作系统的其他计算机设备。个人计算机设备170可以是能够通过以太网连接来连接到网络120的以太网设备。在一些实施例中且在一些情况下,个人计算机设备170可以另外或可替代地对网络120使用蜂窝、Wi-Fi或其他联网技术。个人计算机设备170可以执行消息传送客户端、web浏览器172或其他本地应用以访问消息传送服务器110。
同一用户可以拥有和操作个人家庭助理设备(未示出)。个人家庭助理设备可以包括例如AMAZON ECHO设备或GOOGLE HOME设备或者被配置成接收人类话音请求和命令并响应于其而访问各种网络服务的任何其他设备。个人家庭助理设备可以访问消息传送服务器110,并且可以与页面机器人190交互。
用户可以通过任何示例设备特别是通过与网页180相关联的页面机器人190而与网页180交互。网页180可以包括关于企业、政府机构、网络可访问的服务、产品、社区组织、公众人物、旅游胜地等的信息。网页180可以被托管在例如社交网络服务中,或者可以从其他服务器或服务被托管。虽然网页180可以例如用web浏览器172或者在客户端应用例如社交网络客户端应用内被查看,但网页180上的信息也可以是通过消息传送格式可访问的。用户可以向网页180发送消息。例如,在社交网络中的网页可以包括在网页上的行为召唤(call-to-action)元件,其允许用户开始并参与和网页实体的消息传送对话。当由第三方托管时,网页可以包括消息传送服务的插件。页面机器人190可以代表网页180或者代表网页180的人类所有者或管理员来对消息做出响应。与特定网页180相关联的页面机器人190可能够访问网页180上的信息,以便适当地对消息做出响应。由网页180表示的实体可以被表示为社交网络页面,其中社交网络页面用社交网络页面标识符来识别,该社交网络页面标识符唯一地识别实体及其关于社交网络系统的页面。网页180可以具有消息传送标识,以便使网页180能够通过消息传送系统的用户被发送消息。具有消息标识的网页可以另外具有与它们相关联的消息传送标识符,其将网页唯一地识别为消息传送系统的消息接收者。可替代地或另外,网页可以具有与它们相关联的一个或更多个页面机器人190。每个页面机器人190具有识别页面机器人的唯一机器人标识符。机器人标识符与网页180的页面标识符相关联以将页面机器人与页面相关联。在一些实施例中,机器人标识符也可以用于识别用于消息传送的页面机器人。在其他实施例中,每个页面机器人可以具有用于识别用于消息传送的机器人的不同的机器人标识符。在消息传送系统中,消息线程(例如参与消息传送对话的消息接收者的特定分组)可以与线程标识符相关联,该线程标识符唯一地识别关于消息传送系统的消息线程。机器人可以被授权例如临时授权以通过在机器人标识符和消息线程标识符之间的关联来访问消息线程,该关联也可以是临时的。
消息传送客户端可以是专用消息传送客户端。专用消息传送客户端可以特别与管理包括消息传送服务器110的消息传送系统的消息传送提供商相关联。专用消息传送客户端可以是操作来与多个不同的消息传送提供商——包括管理包括消息传送服务器110的消息传送系统的消息传送提供商——一起工作的通用客户端。消息传送客户端可以准许对机器人应用的访问以用于服务的执行,例如其中机器人应用是通过消息传送服务器110可访问的多个端点和/或服务之一。
消息传送客户端可以是提供额外功能的应用的部件。例如,社交网络服务可以提供在移动设备上使用的用于访问和使用社交网络服务的社交网络应用。社交网络服务可以包括例如可以由消息传送服务器110提供的消息传送功能。将认识到,消息传送服务器110可以是用于社交网络服务的计算设备的一个部件,其中计算设备提供社交网络服务的额外功能。类似地,社交网络应用可以提供消息传送功能和额外功能。
用户请求通信系统100可以使用从用户之间的交互产生的知识。用户请求通信系统100可以包括社交网络系统的部件,并且可以使用从社交网络系统的更广泛的交互产生的知识。因此,为了保护用户请求通信系统100和更大的社交网络系统的用户的隐私,用户请求通信系统100可以包括授权服务器(或其他合适的部件),其允许用户例如通过设置合适的隐私设置来选择加入或选择退出使他们的动作被用户请求通信系统100记录或与其他系统(例如,第三方系统)共享。用户的隐私设置可以确定与用户相关联的什么信息可以被记录、与用户相关联的信息可以如何被记录、与用户相关联的信息何时可以被记录、谁可以记录与用户相关联的信息、与用户相关联的信息可以与谁共享以及与用户相关联的信息可以为了什么目的而被记录或共享。授权服务器或其他授权部件可用于视情况通过阻拦(blocking)、数据散列、匿名化或其他适当的技术来实施用户请求通信系统100和社交网络系统的其他元件的用户的一个或更多个隐私设置。
图2示出了网页280的实施例。网页280可以是网页180的示例。网页280可以由网页280将代表的实体的人类所有者或管理员(在本文被称为管理员)创建。在创建时,管理员可以选择在网页280上的要包括的一个或更多个页面字段200。管理员还可以选择页面简档(page profile)图像和/或页面封面图像以在视觉上表示实体。管理员可以输入或链接一些页面字段的信息,并且可以使其他页面字段能够从用户接收信息。
可以根据什么信息是实体可采用的和什么信息对实体是适合的来选择呈现在网页上的页面字段200。字段可以包括关于字段(about field)202。关于字段202可以包括以某种方式描述该实体的文本,例如什么服务被提供、谁是所有者、实体已经存在了多长时间或可以将该实体与其他类似实体区分开的任何其他信息。
页面字段可以包括照片字段204。照片字段204可以包括与实体相关的一张或更多张照片或其他图像。例如,如果实体是产品创建实体,则照片可以包括产品的照片。如果实体是名人,则照片可以包括名人的照片。照片字段204可以包含由管理员、由其他用户或两者上传到页面的照片。
页面字段可以包括评论字段206。当被使用时,评论字段206可以包括实体的一个或更多个客户评论,包括评级和意见。
页面字段可以包括视频字段208。类似于照片字段,视频字段208可以包括视频,例如产品演示、公众人物表演、教学视频等。视频可以由管理员、由其他用户或两者上传到页面。
页面字段可以包括网站字段210。例如,如果网页280被托管在社交网络系统内,则网站字段210可以包括到该实体的公共可访问的网站的链接。
页面字段可以包括工作字段212。工作字段212可以包括关于与实体相关的任何就业机会的信息,并且可以包括到工作申请或关于工作的额外信息的链接。
页面字段可以包括页面类型字段214。页面类型字段214可以包括对由网页280所表示的实体进行分类的信息。例如,页面类型可包括:企业、政府机构、艺术家、名人、餐馆、慈善机构、国家公园等。
页面字段可以包括位置字段216。位置字段216可以包括实体的街道或邮寄地址或者地理位置坐标。位置字段216可以包括地图视图或到地图视图的链接。
页面字段可以包括营业时间(hours of operation)字段218。营业时间字段218可以包括当实体在营业中时的一周中的天和一天中的时间。
页面字段可以包括帖子字段220。帖子字段220可以包括管理员和/或其他用户已经添加到网页280的没有被包括在其他字段中的消息、文本、图像或其他信息。帖子字段220可以显示一些有限数量的最近帖子。较旧的帖子可以例如通过在帖子字段220中向下滚动或者通过选择用于查看较旧的帖子的控制特征而可查看。
页面字段可以包括商店字段222。当实体从事任何种类的销售时,商店字段222可以包括到在线店面的链接。到在线店面的链接可以链接到提供销售功能的第三方服务。
页面字段可以包括被赞(liked by)字段224。当网页280被托管在社交网络服务中时,被赞字段224可以显示已经指明他们“赞”网页280的社交网络服务的一定数量的用户。在一些实施例中,当社交网络服务的用户查看网页280时,被赞字段224可以优先显示赞过该页面的用户,该用户与查看用户也具有联系。
页面字段200可以包括更多、更少或其他字段,并且不限于所示的示例。
一旦管理员选择了要对网页280使用的一个或更多个页面字段,管理员就可以用控制指令选择创建机器人控制元件230。创建机器人控制元件230可以是对页面管理员可见的行为召唤按钮。行为召唤按钮可以包括通过相关的视觉表示来准许访问特定行为的控件,从而邀请用户参与该行为。一旦网页280被创建,管理员就可以选择在任何时间使用创建机器人控制元件230来创建机器人。在创建机器人控制元件230处接收到控制指令可以使页面机器人190从模板产生,如将在下面进一步描述的。
图3示出了由用户请求通信系统100执行的页面机器人创建的实施例。
页面机器人的创建可以由机器人服务器300执行。机器人服务器300可以通信地耦合到一个或更多个网页180。在一些实施例中,机器人服务器300和托管网页180的一个或更多个服务器可以由同一实体例如社交网络服务拥有或控制。在其他实施例中,机器人服务器300和托管网页180的一个或更多个服务器可以由不同的实体拥有或控制。
创建页面机器人的过程可以在用户例如网页管理员通过用户客户端设备320发布机器人创建控制指令322以创建页面机器人时开始。例如,管理员可以选择网页180上的创建机器人控制元件230。
接收机器人创建控制指令322可以使网页180将机器人创建控制指令324传递到机器人服务器300。机器人创建控制指令324可以指示机器人服务器为网页180创建页面机器人。机器人创建控制指令324可以是函数调用、执行脚本的请求或使机器人服务器300创建页面机器人的任何其他通信。机器人创建控制指令324可以包括识别哪个网页180请求页面机器人的创建的信息(例如PageID)、识别网页管理员的管理员账户的信息等。
机器人创建部件310可以从页面机器人模板312实例化新的页面机器人。页面机器人模板312可以包括软件指令,该软件指令允许实例化的页面机器人390接收定向到网页的消息,理解该消息,从网页检索与该消息的含义相关的信息,并对该消息做出响应。当被实例化时,页面机器人的实例可以例如在有与请求页面机器人的创建的网页180的关联的情况下通过完成各种字段和/或给变量分配值来完成页面机器人模板312。例如,机器人服务器300可以接收唯一机器人标识符和用于消息传送的消息传送机器人标识符,机器人创建部件可以使用这些标识符来填充页面机器人模板。另外,实例化页面机器人可以包括例如用授权令牌授权页面机器人访问网页的内容。一旦创建了页面机器人模板,就可能不需要另外的开发者时间,且任何数量的网页管理员可以将页面机器人与其网页相关联而不需要管理员本身的编程经验。
页面机器人的实例化还可以包括使页面机器人能够对定向到网页的消息做出响应。例如,页面机器人标识符和/或消息传送机器人标识符可以与网页180的消息传送标识符和/或PageID相关联。当与网页的消息传送对话开始时,消息传送机器人标识符可以与对话线程的线程ID相关联。值得注意的是,网页的管理员也可以查看定向到网页的消息并对这些消息做出响应。因此,两个不同的响应实体——页面机器人和管理员账户——可能够看到被发送到网页的消息并对这些消息做出响应。在实施例中,管理员账户和页面机器人两者可能看起来是同一个实体,换句话说,用户可能不知道是两个不同的实体产生响应。在另一个实施例中,管理员和页面机器人可以表现为两个独立的实体,使得用户可以知道一个响应来自页面机器人,而另一响应来自管理员。消息传送系统可以具有与同一网页相关联的两个不同实体。
在实施例中,由机器人创建部件310创建的所有页面机器人可以从同一个页面机器人模板312被实例化。在其他实施例中,多个页面机器人模板可以存在,并且可以根据各种因素被选择用于使用。例如,对于不同的页面类型和/或企业可以运营于的不同商业领域,可以有不同的页面机器人模板312。例如,航空公司可以作为企业与航空商业相关联,并且因此可以向其提供信息和功能以帮助执行与航空工业相关的操作。因此,商业实体例如企业可以对应于商业类型,例如与服装类型、零售类型、服装零售类型等相关联的服装经纪人。不同的页面机器人模板可用于不同的商业类型。
商业类型可以包括本地旅游商业类型、出行共享商业类型、航空商业类型、旅馆商业类型、零售商业类型或任何其他商业类型。例如,航空商业类型可以由用于传递航空信息(例如,到达时间、出发时间、登机口规范、行李认领规范、衔接航班规范、航班延迟更新)的航空公司特定页面机器人模板、用于提供航空运输信息(例如,机票收据、登机牌、行李认领票)的航空公司特定附件类型、用于配置航空运输服务(例如,订票、重新安排机票、办理登机、安置检查过的行李)的航空公司特定表格以及其他航空公司特定模板来支持。不同的页面机器人模板可以包括文本、图像、标题、副标题和行为召唤(CTA)按钮的不同组合。
可以有对于不同的支付金额可用的不同的页面机器人模板。例如,基本的页面机器人模板的使用可以是免费的或者与极少的费用相关联,而提供更多特征或定制特征的页面机器人模板的使用可以与更高的费用相关联。
一旦页面机器人被实例化,它就可以与其他实例化的页面机器人390一起存储在机器人服务器300上或者在与机器人服务器300通信的单独的服务器或存储设备上。一旦被实例化,页面机器人390就可以准备好并且能够接收发送到它的相关网页180的消息,确定消息的含义,并且根据从相关网页180访问的信息生成消息响应。
图4示出了由用户请求通信系统100执行的用户与机器人的对话的实施例。
用户与机器人的对话可以由实例化的页面机器人490进行。实例化的页面机器人490可以耦合到消息传送系统的消息传送服务器110。消息传送服务器110可以在实例化的页面机器人490和用户客户端420之间执行消息的发送和接收。消息传送服务器110可以在实例化的页面机器人490和网页180之间执行信息的发送和接收,或者机器人应用前端可以被使用。
用户客户端420可以包括消息传送客户端、用于访问实例化的页面机器人490的专用客户端或者包括消息传送功能的任何其他客户端。用户客户端420可以在客户端设备上执行。用户客户端420可以使用客户端通信部件440经由实例化的页面机器人490来参与和网页180的用户消息交换430。客户端通信部件440可以向实例化的页面机器人490提供客户端前端,其可以由消息传送系统进行的消息传输来介导(mediated)。用户消息交换430可以包括用户创作的消息从用户客户端420到实例化的页面机器人490的发送以及消息响应从实例化的页面机器人490到用户客户端420的发送。
网页关联402可以与实例化的页面机器人一起被存储。例如,在与NLP部件450通信时可以使用网页关联402来识别与页面机器人的实例相关联的网页。
交互处理部件460可以与自然语言处理(NLP)部件450接口连接以在用户消息交换430中获得消息的含义410。交互处理部件460可以使用含义410来生成机器人响应,包括消息响应和机器人动作。交互处理部件460可以充当在客户端通信部件440和机器人应用接口部件480之间的媒介物。机器人动作可以包括执行软件任务而不是从页面字段检索数据。机器人动作可以包括例如与零售应用交互或者调用另一个应用。
可以使用已知的自然语言处理技术来实现NLP部件450。例如,实例化的页面机器人490的交互处理部件460可以在有对含义的请求的情况下将接收到的消息转发到NLP部件450或以其他方式使接收到的消息对NLP部件450变得可用。NLP部件450可以使用基本的页面机器人NLP模型来解析消息并识别可能由消息指示的一种或更多种含义。基本的页面机器人NLP模型可以用于所有实例化的页面机器人390。如果不同的页面机器人模板312是可用的,则每个模板可以具有它自己相关联的基本的页面机器人NLP模型。基本的页面机器人NLP模型可以例如包括将各种用户提供的词与可以映射到页面字段的含义相关联的规则。例如,与时间或日期相关联的词可以均映射到“营业时间”的含义。在一些实施例中,含义410可以直接指示响应应该来自哪个页面字段。
其他机器人NLP模型可以使用故事来定义机器人的行为。故事是示例对话。除了用户消息和机器人消息之外,故事还可以包含执行由机器人提供的服务的机器人动作。故事也可以用机器人应该从用户消息提取的信息的示例来注释,从而教机器人学什么和怎么学。可以根据假想用户和消息传送机器人之间的所注释的示例对话来配置机器人,该示例对话说明可以如何进行交互。开发者可以编写多个示例对话,其中每个对话代表消息传送机器人的场景。开发者向自然语言机器学习部件提交示例交互储存库(repository),并作为响应从自然语言机器学习部件接收序列模型。机器人服务器然后可以基于序列模型来执行用户与机器人的对话。在实施例中,NLP部件450可以包括其他机器人NLP模型。例如,与由网页表示的实体相关联的第三方网络可访问的服务可以提供NLP模型以允许对它们的服务的访问。例如,当实体是零售企业时,该实体可以具有与第三方在线店面服务的关联以实现产品的在线订购。在线店面服务的NLP模型可以使网页的页面机器人能够与在线店面服务通信,使得用户可以例如浏览产品、请求或搜索产品信息或下订单。在一些实施例中,多个NLP部件可以是可用的,每个NLP部件具有不同的机器人NLP模型。
实例化的页面机器人490可以通过机器人应用接口部件480来参与和网页180的机器人信息交换490。机器人应用接口部件480可以充当机器人服务器300和/或机器人应用的消息传送系统的前端。机器人信息交换490可以包括访问网页180的内容和从网页180检索数据。交互处理部件460可以使用含义410来确定要访问哪个页面字段。机器人应用接口部件480可以使用网页授权404来访问在网页180的识别出的页面字段中的内容。网页授权404可以包括例如访问令牌、密码或允许页面机器人490从网页180访问和检索数据的任何其他授权机制。
交互处理部件460可以创作包括从所识别的字段检索的一些或全部数据的消息响应。消息响应可以被传输到用户客户端420作为用户消息交换430的一部分。
在实施例中,在来自用户客户端的初始消息之后,交互处理部件460可以从网页上的一组字段生成菜单,并且可以向用户客户端呈现该菜单。例如,菜单可以列出什么类型的信息可以被请求。交互处理部件可以从用户客户端接收菜单项的选择,这可以代替接收自然语言用户消息。交互处理部件460然后可以如所讨论的继续从与选择相关联的字段检索数据;创作包括检索到的数据的消息响应;以及向客户端设备发送消息响应。
在一些实施例中,实例化的页面机器人490可以具有关联的角色(persona)。在一些情况下,角色可以直接与页面机器人相关联,并且可以由网页管理员选择。在其他情况下,角色可以由NLP部件选择并传送到实例化的页面机器人490,例如以反映从来自管理员的先前通信例如从评论、帖子、消息检测到的语调。例如,管理员的先前通信可以被收集到语料库中,该语料库可以用于学习和表征特定管理员的语调。在页面具有多于一个的管理员的情况下,每个管理员可以有其自己的语调。角色可以导致对不同的相似词的选择以表达语调或情感。例如,角色可以传达正式或非正式的讲话、俚语或友好的语调。
图5示出了由用户请求通信系统100执行的用户与机器人的对话的实施例。特别是,当在图4中所示的系统接收到用户消息——其含义不能被确定——时,在图5中描绘的用户与机器人的对话可发生。
如图5所示,交互部件460可能在有对含义的请求的情况下将来自用户消息交换430的接收到的消息转发到NLP部件450或以其他方式使得来自用户消息交换430的接收到的消息变得对NLP部件450可用。NLP部件450也许不能够确定消息的含义。基本的页面机器人NLP模型可能没有任何规则或逻辑来理解消息中的词。例如,这种情况可能在消息包括对在网页上不可用的信息(例如“谁在那里工作?”或者“你是轮椅可进入的吗?”)的请求时发生。在一些情况下,含义可以被确定,但是以低于某个阈值的置信度评级确定的。当含义根本不能被确定或者没有以足够的置信度确定时,NLP部件450可以返回含义错误512。含义错误512可以包括代码、关键字、空值或指示没有含义被确定的任何其他手段。
当交互处理部件460接收到含义错误512时,来自用户消息交换430的消息可以被逐步传送(escalated)到网页180的管理员。例如,该消息可以被发送到管理员账户502。管理员账户502可以是由用户请求通信系统100使用的消息传送系统中的账户。管理员账户502可以是与网页180的主机服务器相关联的消息传送账户或者电子邮件账户。实施例不限于这些示例。
管理员可能够读取引起含义错误的消息,并且可以创作消息响应514。消息响应514可以被返回给页面机器人490,以用于传送到用户客户端420。消息响应514也可以被提供到NLP部件450。NLP部件450可以使用消息和消息响应514来更新用于确定消息的含义的模型。在实施例中,消息到管理员的逐步传送可以包括“接力棒传递(Baton passing)”,其中从页面机器人到管理员的过渡看起来对用户是无缝的。也就是说,管理员消息响应看起来是在与去往页面机器人和来自页面机器人的较早消息相同的对话中,并且对于用户来说,看起来好像他们仍然在与同一实体通信一样。接力棒传递提供了在保持与同一个页面机器人的对话的同时转换操作员的能力。在实施例中,保存对话的消息历史,使得新操作员访问对话上下文。接力棒传递在2017年4月17日提交的代理人案卷号为1360F0195Z的标题为“Bots for Groups,Music,and Message Threads”的美国临时专利申请号62/486,115中被进一步描述,该专利申请通过引用以其整体并入本文。
图6示出了用户客户端的用户界面600。用户界面(UI)200可以呈现在客户端设备620上。客户端设备620可以没有限制地对应于智能电话设备150、个人计算机设备180、平板设备160、个人家庭助理设备或任何其他形式的客户端设备。UI 600可以通过web浏览器被显示,例如可以在智能电话设备150、平板设备160、个人计算机设备180或其他设备上执行。UI 600可以显示在消息传送应用中,例如可以在智能电话设备150、平板设备160、个人计算机设备180或其他设备上执行。UI 600可以显示在自动化的机器人服务应用中,例如可以在智能电话设备150、平板设备160、个人计算机设备180或其他设备上执行。当与个人家庭助理设备一起被使用时,UI 600可以不在视觉上呈现,但可以替代地由音频数据例如来自用户的口头消息和来自页面机器人的文本到语音的音频数据来表示。可以使用各种技术——不限于在这里列出的示例——来呈现UI 600。
用户界面600可以包括消息交互显示610。消息交互显示610可以包括在客户端设备620的用户和页面机器人190之间交换的一系列消息。消息交互显示610可以包括多个用户消息中的用户消息616。用户消息可以与用户的化身(avatar)相关联地显示。消息交互显示610可以包括多个机器人消息中的机器人消息617。机器人消息可以与网页的化身相关联地被显示为对应于页面机器人190。在一些情况下,例如由于客户端设备620的有限屏幕空间,消息交互显示610可以仅可见地包括用户消息和机器人消息的一部分。
客户端设备620可以包括用于操作用户界面600的控件。控件可以包括为了创作基于文本的消息而准许文本的输入的文本输入控件622。控件可以包括硬件控件。在一些实施例中,控件可以是基于触摸屏的控件。
如所示,用户消息例如用户消息616可以包括对信息的问题或请求,其可以用与参与消息交互的页面机器人190相关联的网页180上可用的信息来回答。机器人消息例如机器人消息617可以包括从网页180检索的信息。例如,在用户消息616中,用户希望知道与网页和页面机器人相关联的实体是否在周日营业。响应于该消息,页面机器人可以使用NLP部件来确定消息含义与周日的营业时间相关,并且可能已经从营业时间字段218检索数据。然后,页面机器人使用检索到的数据来创作消息响应,并发送消息响应作为机器人消息617。
其他用户消息可以包括“告诉我关于你自己的情况”的请求,其可以使页面机器人从关于字段202检索信息。请求评论的用户消息可以使页面机器人从评论字段206检索信息。在一些实施例中,页面机器人可以检索数据并创作消息而没有对数据的任何改变。例如,如果营业时间数据将一周的每天的营业时间列为“星期日:上午10点-下午6点”,则机器人消息617可以替代地说“星期日:上午10点-下午6点”。在其他实施例中,可以创作更具对话式的消息响应,例如将“是,我们的时间是”添加到营业时间字段218中的数据。
除了呈现文本之外,页面机器人还可以生成包括例如小web浏览器视图、轮播视图(carousel view)、嵌入的视频或在消息传送界面内的地图视图的消息响应,所述轮播视图包括多个图像。
本文包括表示用于执行所公开的架构的新颖方面的示例性方法的一组流程图。尽管为了解释的简单的目的在本文例如以流程图或程序框图的形式示出的一个或更多个方法被示出和描述为一系列动作,但应当理解和认识到,这些方法不被动作的顺序限制,因为一些动作可以按照此以与在本文示出和描述的顺序不同的顺序和/或与其他动作同时出现。例如,本领域中的技术人员将理解和认识到,方法可以可替代地被表示为例如在状态图中的一系列相互关联的状态或事件。此外,对于新颖的实现方式,并非在方法中示出的所有动作都可能是需要的。
图7示出了逻辑流程700的一个实施例。逻辑流程700可以代表由本文描述的一个或更多个实施例执行的一些或所有操作。
在图7中示出的所示实施例中,逻辑流程700可以在块702从网页接收机器人创建控制指令。例如,网页管理员可以选择网页上的创建机器人控制元件,其可以使机器人创建控制指令被发送到机器人服务器300。
逻辑流程700可以在块704从模板页面机器人实例化新的页面机器人。例如,机器人创建部件310可以从页面机器人模板312创建页面机器人的实例。
逻辑流程700可以在块706授权页面机器人访问网页的内容。例如,机器人创建部件310可以从网页请求和获得例如以许可、授权令牌、cookie等的形式的授权。该授权可以允许页面机器人的实例访问页面上的信息,并代表该网页对发送到该网页的消息做出响应。
逻辑流程700可以在块708将页面机器人与网页相关联。关联402可以与页面机器人的实例一起被存储。例如,关联402可以在与NLP部件450通信时用于识别与页面机器人的实例相关联的网页。
逻辑流程700可以在块710使页面机器人能够对发送到网页的消息做出响应。例如,机器人创建部件310可以将消息传送系统注册、关联、通知或以其他方式连接到页面机器人的实例和相关网页。特别地,发送到网页的消息可以由页面机器人的实例访问或接收。
实施例不限于这个示例。
图8示出了逻辑流程800的一个实施例。逻辑流程800可以代表由本文描述的一个或更多个实施例执行的一些或所有操作。
在图8中示出的所示实施例中,逻辑流程800可以在块802在页面机器人处接收来自客户端设备的消息。例如,实例化的页面机器人490可以从用户客户端420接收消息作为用户消息交换430的一部分。
逻辑流程800可以在块804从自然语言处理部件请求消息的含义。例如,实例化的页面机器人490的交互处理部件460可以在有对含义的请求的情况下将接收到的消息转发到NLP部件450或以其他方式使接收到的消息对NLP部件450变得可用。NLP部件450然后可以向交互处理部件460返回含义410。
逻辑流程800可以在块806使用该含义来识别与页面机器人相关联的网页的字段。
逻辑流程800可以在块808从所识别的字段检索数据。
逻辑流程800可以在块810创作包括检索到的数据的消息响应。例如,交互处理部件460可以从页面字段检索文本,并且可以生成包括该文本的消息响应。交互处理部件460可以从页面字段检索图像,并且可以生成包括轮播的消息响应,该轮播以允许用户在与消息显示的方向垂直的方向上滚动浏览多个图像的方式呈现图像。交互处理部件460可以检索到网页或到从另一个网站或应用提供的数据的链接,并且可以生成包括检索到的信息的消息响应,作为在消息传送应用界面内的小web视图。
逻辑流程800可以在块812向客户端设备发送消息响应。
图9示出了集中式系统900的框图。集中式系统900可以在单个计算实体中例如完全在单个集中式服务器设备920中实现用户请求通信系统100的一些或全部结构和/或操作。
集中式服务器设备920可以包括能够接收、处理和发送用户请求通信系统100的信息的任何电子设备。电子设备的示例可以没有限制地包括超移动设备、移动设备、个人数字助理(PDA)、移动计算设备、智能电话、电话、数字电话、蜂窝电话、电子书阅读器、手持送受话机、单向寻呼机、双向寻呼机、消息传送设备、计算机、个人计算机(PC)、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、手持计算机、平板计算机、服务器、服务器阵列或服务器群(server farm)、web服务器、网络服务器、互联网服务器、工作站、小型计算机、大型计算机、超级计算机、网络装置、web装置、分布式计算系统、多处理器系统、基于处理器的系统、消费电子产品、可编程消费电子产品、游戏设备、电视机、数字电视机、机顶盒、无线接入点、基站、用户站、移动用户中心、无线电网络控制器、路由器、集线器、网关、网桥、交换机、机器或其组合。实施例并不限制于该上下文。
集中式服务器设备920可以使用处理部件930来执行用户请求通信系统100的处理操作或逻辑。处理部件930可以包括各种硬件元件、软件元件或两者的组合。硬件元件的示例可以包括设备、逻辑设备、部件、处理器、微处理器、电路、处理器电路、电路元件(例如晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑设备(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、存储器单元、逻辑门、寄存器、半导体设备、芯片、微芯片、芯片组等。软件元件的示例可以包括软件部件、程序、应用、计算机程序、应用程序、系统程序、软件开发程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、功能、方法、过程、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号或其任何组合。确定实施例是否使用硬件元件和/或软件元件来实现可以如给定实现所需要地根据任何数量的因素例如期望计算速率、功率水平、耐热性、处理周期预算、输入数据速率、输出数据速率、存储器资源、数据总线速度和其他设计或性能约束而变化。
集中式服务器设备920可以使用通信部件940来执行用户请求通信系统100的通信操作或逻辑。通信部件940可以实现任何公知的通信技术和协议,例如适合于供分组交换网络(例如,公共网络(例如互联网)、专用网络(例如企业内联网)等)、电路交换网络(例如,公共交换电话网络)或分组交换网络和电路交换网络(具有合适的网关和转换器)的组合使用的技术。通信部件940可以包括各种类型的标准通信元件,例如一个或更多个通信接口、网络接口、网络接口卡(NIC)、无线电装置、无线发射机/接收机(收发机)、有线和/或无线通信介质、物理连接器等。作为示例而不是作为限制,通信介质912包括有线通信介质和无线通信介质。有线通信介质的示例可以包括电线、电缆、金属引线、印刷电路板(PCB)、背板、交换结构(switch fabrics)、半导体材料、双绞线、同轴电缆、光纤、传播信号线等。无线通信介质的例子可以包括声学、射频(RF)频谱、红外和其他无线介质。
集中式服务器设备920可以经由通信部件940使用通信信号914通过通信介质912来与其他设备通信。设备可以如给定实现所需要地处于集中式服务器设备920的内部或外部。集中式服务器设备920可以实现机器人服务器300、自然语言处理部件440和页面机器人190。这可以包括其中页面机器人190由消息传送系统执行的实施例。在一些实施例中,集中式服务器设备920可以与由机器人提供商执行的页面机器人190一起被使用。集中式服务器设备920可以与多个用户客户端设备925通信,每个用户客户端设备执行用户客户端520。
图10示出了分布式系统1000的框图。分布式系统1000可以跨越多个计算实体分配用户请求通信系统100的结构和/或操作的部分。分布式系统1000的示例可以没有限制地包括客户端-服务器架构、3层(tier)架构、N层架构、紧密耦合或聚集的架构、对等(peer-topeer)架构、主从架构、共享数据库架构以及其他类型的分布式系统。实施例并不限制于该上下文。
分布式系统1000可以包括多个消息传送服务器设备1010、机器人服务器设备1050和自然语言处理服务器设备1060。一般来说,服务器设备1010、1050和1060可以与参考图9描述的集中式服务器设备920相同或相似。例如,服务器设备1010、1050和1060可以每个包括分别与参考图9所述的处理部件930和通信部件940相同或相似的处理部件1030和通信部件1040。在另一例子中,服务器设备1010、1050和1060可以经由通信部件1040使用通信信号1014来通过通信介质1012通信。
消息传送服务器设备1010可以包括或采用一个或更多个程序,其操作来根据所描述的实施例来执行各种方法。在一个实施例中,例如消息传送服务器设备1010可以实现多个消息传送服务器1015。
机器人服务器设备1050可以包括或采用一个或更多个程序,其操作来执行根据所描述的实施例的各种方法。在一个实施例中,例如机器人服务器设备1050可以实现多个机器人服务器300。
自然语言处理(NLP)服务器设备1060可以包括或采用一个或更多个程序,其操作来执行根据所描述的实施例的各种方法。在一个实施例中,例如NLP服务器设备1060可以实现多个NLP部件450。
服务器设备1010、1050和1060可以与多个页面机器人1090通信。多个页面机器人1090中的每一个可以提供不同的自动化服务,尽管也可能存在例如可以提供竞争的自动化服务的复制。服务器设备1010、1050和1060可以与多个用户客户端设备1025通信,每个用户客户端设备执行用户客户端420。服务器设备1010、1050和1060可以与由网页180的管理员操作的多个管理员设备1026通信。
图11示出了适合于实现如前所述的各种实施例的示例性计算架构1100的实施例。在一个实施例中,计算架构1100可以包括电子设备或者被实现为电子设备的一部分。电子设备的示例可以尤其包括参考图11、10描述的那些电子设备。实施例并不限制于该上下文。
如在本申请中使用的,术语“系统”和“部件”意欲指计算机相关实体,或者是硬件、硬件和软件的组合、软件、或者在执行中的软件,其示例由示例性计算架构1100提供。例如,部件可以是但不限于在处理器上运行的进程、处理器、硬盘驱动器、多个(光和/或磁存储介质的)存储驱动器、对象、可执行文件、执行线程、程序和/或计算机。作为例示,在服务器上运行的应用和服务器都可以是部件。一个或更多个部件可以驻留在执行的进程和/或线程中,并且部件可以位于一台计算机上和/或分布在两台或更多台计算机之间。此外,部件可以通过各种类型的通信介质通信地耦合到彼此以协调操作。协调可以涉及信息的单向或双向交换。例如,部件可以传递以通过通信介质传递的信号的形式的信息。该信息可以被实现为分配给各种信号线的信号。在这样的分配中,每个消息是信号。然而,另外的实施例可以可替代地使用数据消息。这种数据消息可以跨越各种连接被发送。示例性连接包括并行接口、串行接口和总线接口。
计算架构1100包括各种常见的计算元件,例如一个或更多个处理器、多核处理器、协处理器、存储器单元、芯片组、控制器、外围设备、接口、振荡器、定时设备、视频卡、音频卡、多媒体输入/输出(I/O)部件、电源等。然而,实施例不限于由计算架构1100实现。
如图11所示,计算架构1100包括处理单元1104、系统存储器1106和系统总线1108。处理单元1104可以是各种市场上可买到的处理器中的任何一种,没有限制地包括和处理器;应用、嵌入式和安全处理器;和和处理器;IBM和Cell处理器;Core(2)和处理器;以及类似的处理器。双微处理器、多核处理器和其他多处理器架构也可以用作处理单元1104。
系统总线1108为系统部件——包括但不限于系统存储器1106——提供到处理单元1104的接口。系统总线1108可以是几种类型的总线结构中的任何一种,总线结构可以使用各种市场上可买到的总线架构中的任何一种进一步互连到存储器总线(在有或没有存储器控制器的情况下)、外围总线和本地总线。接口适配器可以通过插槽架构连接到系统总线1108。示例插槽架构可以没有限制地包括加速图形端口(AGP)、卡总线、(扩展)工业标准架构((E)ISA)、微通道架构(MCA)、NuBus、外围部件互连(扩展)(PCI(X))、PCI Express、个人计算机存储卡国际协会(PCMCIA)设备等。
计算架构1100可以包括或实现各种制造物品。制造物品可以包括计算机可读存储介质以存储逻辑。计算机可读存储介质的示例可以包括能够存储电子数据的任何有形介质,包括易失性存储器或非易失性存储器、可移动或不可移动存储器、可擦除或不可擦除存储器、可写或可重写存储器等。逻辑的示例可以包括使用任何合适类型的代码例如源代码、编译代码、解释代码、可执行代码、静态代码、动态代码、面向对象的代码、视觉代码等实现的可执行计算机程序指令。实施例也可以至少部分地被实现为在非暂时性计算机可读介质中或上包含的指令,其可以由一个或更多个处理器读取和执行以实现本文描述的操作的执行。
系统存储器1106可以包括以一个或更多个较高速度存储器单元的形式的各种类型的计算机可读存储介质,例如只读存储器(ROM)、随机存取存储器(RAM)、动态RAM(DRAM)、双数据速率DRAM(DDRAM)、同步DRAM(SDRAM)、静态RAM(SRAM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪存、聚合物存储器(例如铁电聚合物存储器)、双向存储器(ovonic memory)、相变或铁电存储器、硅-氧化物-氮化物-氧化物-硅(SONOS)存储器、磁卡或光卡、设备的阵列(例如独立磁盘冗余阵列(RAID)驱动器)、固态存储器设备(例如,USB存储器、固态驱动器(SSD))和适合于存储信息的任何其他类型的存储介质。在图11中示出的所示实施例中,系统存储器1106可以包括非易失性存储器1110和/或易失性存储器1112。基本输入/输出系统(BIOS)可以存储在非易失性存储器1110中。
计算机1102可以包括以一个或更多个较低速度存储器单元的形式的各种类型的计算机可读存储介质,包括内部(或外部)硬盘驱动器(HDD)1114-a(114-b)、从可移动磁盘1118读取或写到可移动磁盘1118的磁性软盘驱动器(FDD)1116以及从可移动光盘1122(例如,CD-ROM或DVD)读取或写到可移动光盘1122的光盘驱动器1120。HDD 1114、FDD 1116和光盘驱动器1120可以分别通过HDD接口1124、FDD接口1126和光学驱动器接口1128连接到系统总线1108。用于外部驱动器实现的HDD接口1124可以包括通用串行总线(USB)和IEEE 1394接口技术中的至少一种或两种。
驱动器和相关计算机可读介质提供数据、数据结构、计算机可执行指令等的易失性和/或非易失性存储。例如,多个程序模块——包括操作系统1130、一个或更多个应用程序1132、其他程序模块1134和程序数据1136——可以存储在驱动器和存储器单元1110、1112中。在一个实施例中,一个或更多个应用程序1132、其他程序模块1134和程序数据1136可以包括例如用户请求通信系统100的各种应用和/或部件。
用户可以通过一个或更多个有线/无线输入设备(例如键盘1138和定点设备(例如鼠标1140))来将命令和信息输入到计算机1102内。其他输入设备可以包括麦克风、红外(IR)遥控器、射频(RF)遥控器、游戏板、手写笔、读卡器、软件狗、指纹读取器、手套、绘图板、操纵杆、键盘、视网膜读取器、触摸屏(例如电容式、电阻式等)、轨迹球、触控板、传感器、触笔等。这些和其他输入设备常常通过耦合到系统总线1108的输入设备接口1142连接到处理单元1104,但可以通过其他接口(例如并行端口、IEEE 1394串行端口、游戏端口、USB端口、IR接口等)而被连接。
监视器1144或其他类型的显示设备也通过接口(例如视频适配器1146)连接到系统总线1108。监视器1144可以在计算机1102的内部或外部。除了监视器1144之外,计算机通常还包括其他外围输出设备,例如扬声器、打印机等。
计算机1102可以使用经由到一个或更多个远程计算机(例如远程计算机1148)的有线和/或无线通信的逻辑连接来在联网环境中操作。远程计算机1148可以是工作站、服务器计算机、路由器、个人计算机、便携式计算机、基于微处理器的娱乐装置、对等设备或其他公共网络节点,并且通常包括相对于计算机1102描述的许多或所有元件,尽管为了简洁的目的,只有存储器/存储设备1150被示出。所描绘的逻辑连接包括到局域网(LAN)1152和/或更大的网络例如广域网(WAN)1154的有线/无线连接。这种LAN和WAN联网环境在办公室和公司中是常见的,并且便于企业范围的计算机网络(例如内联网),所有这些网络都可以连接到全球通信网络(例如互联网)。
当在LAN联网环境中被使用时,计算机1102通过有线和/或无线通信网络接口或适配器1156连接到LAN 1152。适配器1156可以促进与LAN1152的有线和/或无线通信,LAN1152还可以包括布置在其上的无线接入点,用于使用适配器1156的无线功能进行通信。
当在WAN联网环境中被使用时,计算机1102可以包括调制解调器1158,或者连接到WAN 1154上的通信服务器,或者具有用于通过WAN1154例如借助于互联网建立通信的其他装置。调制解调器1158——其可以是内部或外部的和有线和/或无线设备——通过输入设备接口1142连接到系统总线1108。在联网环境中,相对于计算机1102描述的程序模块或其部分可以存储在远程存储器/存储设备1150中。将认识到,所示的网络连接是示例性的,并且在计算机之间建立通信链路的其他手段可以被使用。
计算机1102可操作来与使用IEEE 802系列标准的有线和无线设备或实体(例如操作地布置在无线通信中的无线设备(例如,IEEE 802.11空中调制技术))通信。这至少包括Wi-Fi(或无线保真)、WiMax和BluetoothTM无线技术等等。因此,通信可以是如同传统网络一样的预定义结构,或者仅仅是在至少两个设备之间的自组织(ad hoc)通信。Wi-Fi网络使用被称为IEEE 802.9x(a、b、g、n等)的无线电技术来提供安全、可靠、快速的无线连接。Wi-Fi网络可用于将计算机连接到彼此、连接到互联网和连接到有线网络(其使用与IEEE 802.3相关的媒介和功能)。
图12示出了适合于实现如前所述的各种实施例的示例性通信架构1200的框图。通信架构1200包括各种常见的通信元件,例如发射机、接收机、收发机、无线电装置、网络接口、基带处理器、天线、放大器、滤波器、电源等。然而,实施例不限于由通信架构1200实现。
如图12所示,通信架构1200包括一个或更多个客户端1202和服务器1204。客户端1202可以实现一个或更多个用户客户端320、420。服务器1204可以实现一个或更多个机器人服务器300、一个或更多个自然语言机器学习部件450和/或一个或更多个消息传送服务器110。客户端1202和服务器1204操作地连接到可用于存储相应的客户端1202和服务器1204本地的信息(例如cookies和/或相关联的上下文信息)的一个或更多个相应的客户端数据储存器1208和服务器数据储存器1210。
客户端1202和服务器1204可以使用通信框架1206在彼此之间传递信息。通信框架1206可以实现任何众所周知的通信技术和协议。通信框架1206可以被实现为分组交换网络(例如,公共网络(例如互联网)、专用网络(例如企业内联网)等)、电路交换网络(例如,公共交换电话网络)或者分组交换网络和电路交换网络(具有合适的网关和转换器)的组合。
通信框架1206可以实现被布置成接受通信网络、与通信网络通信和连接到通信网络的各种网络接口。网络接口可以被视为输入输出接口的一种特殊形式。网络接口可以采用连接协议,没有限制地包括直接连接、以太网(例如,粗、细双绞线12/100/1000Base T等)、令牌环、无线网络接口、蜂窝网络接口、IEEE 802.11a-x网络接口、IEEE 802.16网络接口、IEEE802.20网络接口等。此外,多个网络接口可以用于与各种通信网络类型建立联系。例如,可以采用多个网络接口来允许通过广播、多播和单播网络进行通信。如果处理要求规定了更大的速度和容量,分布式网络控制器架构可以类似地被采用以池化、负载平衡或以其他方式增加客户端1202和服务器1204所需的通信带宽。通信网络可以是有线和/或无线网络的任一个和组合,没有限制地包括直接互连、安全的定制连接、专用网络(例如企业内联网)、公共网络(例如互联网)、个人区域网(PAN)、局域网(LAN)、城域网(MAN)、作为互联网上的节点操作任务(OMNI)、广域网(WAN)、无线网络、蜂窝网络和其他通信网络。
图13示出了用于在多载波OFDM系统(例如用户请求通信系统100)中使用的设备1300的实施例。设备1300可以实现例如参考用户请求通信系统100和/或逻辑电路1335描述的软件部件1360。逻辑电路1335可以包括物理电路以执行针对用户请求通信系统100描述的操作。如图13所示,设备1300可以包括无线电接口1310、基带电路1320和计算平台1350,尽管实施例不限于这种配置。
设备1300可以在单个计算实体中例如完全在单个设备中实现用户请求通信系统100和/或逻辑电路1335的一些或全部结构和/或操作。可替代地,设备1300可以使用分布式系统架构(例如客户端-服务器架构、3层架构、N层架构、紧密耦合或聚集的架构、对等架构、主从架构、共享数据库架构和其他类型的分布式系统)跨越多个计算实体来分布用户请求通信系统100和/或逻辑电路1335的结构和/或操作的部分。实施例并不限制于该上下文。
在一个实施例中,无线电接口1310可以包括适合于传输和/或接收单载波或多载波调制信号(例如,包括补码键控(CCK)和/或正交频分复用(OFDM)符号)的部件或部件的组合,尽管实施例不限于任何特定的空中接口或调制方案。无线电接口1310可以包括例如接收机1312、发射机1316和/或频率合成器1314。无线电接口1310可以包括偏置控件、晶体振荡器和/或一个或更多个天线1318。在另一个实施例中,无线电接口1310可以根据需要使用外部压控振荡器(VCO)、表面声波滤波器、中频(IF)滤波器和/或RF滤波器。由于潜在RF接口设计的多样性,其扩展描述被省略。
基带电路1320可以与无线电接口1310通信以处理接收和/或发射信号,并且可以包括例如用于向下转换所接收的信号的模数转换器1322、用于向上转换信号以用于传输的数模转换器1324。此外,基带电路1320可以包括基带或物理层(PHY)处理电路1356,以用于对相应的接收/发射信号进行PHY链路层处理。基带电路1320可以包括例如用于媒体访问控制(MAC)/数据链路层处理的处理电路1328。基带电路1320可以包括存储器控制器1332,该存储器控制器用于例如通过一个或更多个接口1334与处理电路1328和/或计算平台1350通信。
在一些实施例中,PHY处理电路1326可以包括与附加电路(例如缓冲存储器)相结合的帧构建和/或检测模块,以构造和/或解构通信帧(例如无线电帧)。可替代地或此外,MAC处理电路1328可以共享对这些功能中的某些功能的处理,或者独立于PHY处理电路1326而执行这些过程。在一些实施例中,MAC和PHY处理可以集成到单个电路中。
计算平台1350可以为设备1300提供计算功能。如所示,计算平台1350可以包括处理部件1340。除基带电路1320之外或者作为基带电路1320的替代物,设备1300可以使用处理部件1340来执行用户请求通信系统100和逻辑电路1335的处理操作或逻辑。处理部件1340(和/或PHY 1326和/或MAC 1328)可以包括各种硬件元件、软件元件或两者的组合。硬件元件的示例可以包括设备、逻辑设备、部件、处理器、微处理器、电路、处理器电路、电路元件(例如晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、存储器单元、逻辑门、寄存器、半导体设备、芯片、微芯片、芯片组等。软件元件的示例可以包括软件部件、程序、应用、计算机程序、应用程序、系统程序、软件开发程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、功能、方法、过程、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号或其任何组合。如对于给定实现所需的,确定实施例是否使用硬件元件和/或软件元件来实现可以根据任何数量的因素(例如期望计算速率、功率水平、耐热性、处理周期预算、输入数据速率、输出数据速率、存储器资源、数据总线速度和其他设计或性能约束)而变化。
计算平台1350还可以包括其他平台部件1362。其他平台部件1362包括公共计算元件,例如一个或更多个处理器、多核处理器、协处理器、存储器单元、芯片组、控制器、外围设备、接口、振荡器、定时设备、视频卡、音频卡、多媒体输入/输出(I/O)部件(例如数字显示器)、电源等。存储器单元的示例可以没有限制包括以一个或更多个较高速度存储器单元的形式的各种类型的计算机可读和机器可读存储介质,例如只读存储器(ROM)、随机存取存储器(RAM)、动态RAM(DRAM)、双数据速率DRAM(DDRAM)、同步DRAM(SDRAM)、静态RAM(SRAM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪存、聚合物存储器(例如铁电聚合物存储器)、双向存储器、相变或铁电存储器、硅-氧化物-氮化物-氧化物-硅(SONOS)存储器、磁卡或光卡、设备的阵列(例如独立磁盘冗余阵列(RAID)驱动器)、固态存储器设备(例如,USB存储器、固态驱动器(SSD))和适合于存储信息的任何其他类型的存储介质。
设备1300可以是例如超移动设备、移动设备、固定设备、机器对机器(M2M)设备、个人数字助理(PDA)、移动计算设备、智能电话、电话、数字电话、蜂窝电话、用户设备、电子书阅读器、手持送受话机、单向寻呼机、双向寻呼机、消息传送设备、计算机、个人计算机(PC)、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、手持计算机、平板计算机、服务器、服务器阵列或服务器群、web服务器、网络服务器、互联网服务器、工作站、微型计算机、大型计算机、超级计算机、网络装置、web装置、分布式计算系统、多处理器系统、基于处理器的系统、消费电子产品、可编程消费电子产品、游戏设备、电视机、数字电视机、机顶盒、无线接入点、基站、节点B、演进节点B(eNB)、用户站、移动用户中心、无线电网络控制器、路由器、集线器、网关、网桥、交换机、机器或其组合。因此,如适当地所需的,在设备1300的各种实施例中,可以包括或省略本文描述的设备1300的功能和/或特定配置。在一些实施例中,设备1300可以被配置为与本文引用的3GPP LTE规范和/或用于WMAN的IEEE 802.16标准和/或其他宽带无线网络中的一个或更多个相关联的协议和频率兼容,尽管实施例不限于这个方面。
设备1300的实施例可以使用单输入单输出(SISO)架构来实现。然而,某些实现可以包括使用用于波束成形或空分多址接入(SDMA)的自适应天线技术和/或使用MIMO通信技术来传输和/或接收的多个天线(例如,天线1318)。
可以使用分立电路、专用集成电路(ASIC)、逻辑门和/或单片机架构的任何组合来实现设备1300的部件和特征。此外,在适当的场合,可以使用微控制器、可编程逻辑阵列和/或微处理器或前述项的任何组合来实现设备1300的特征。注意,硬件、固件和/或软件元件在本文可以被共同或单独地称为“逻辑”或“电路”。
应当认识到,在图13的框图中所示的示例性设备1300可以表示许多潜在实现中的一个功能上描述性的示例。因此,在附图中描绘的块功能的划分、省略或包括并不暗示用于实现这些功能的硬件部件、电路、软件和/或元件在实施例中必须被划分、省略或包括。
一种计算机实现的方法可以包括从网页接收机器人创建控制指令;从模板实例化页面机器人;授权页面机器人访问网页的内容;将页面机器人与网页相关联;以及使页面机器人能够对发送到网页的消息做出响应。
该方法还可以包括:在页面机器人处接收来自客户端设备的消息;从自然语言处理(NLP)部件请求消息的含义;根据消息的含义来识别与页面机器人相关联的网页中的字段;从所识别的字段检索数据;创作包括检索到的数据的消息响应;以及向客户端设备发送消息响应。
该方法还可以包括通过消息传送系统来接收消息并发送消息响应。该方法还可以包括从NLP部件接收含义没有被确定的指示;以及将消息逐步传送到网页的管理员账户。该方法还可以包括从网页的管理员账户接收消息响应;以及将消息响应发送给用户。该方法还可以包括根据来自管理员账户的消息响应来更新NLP部件。
该方法还可以包括根据用户消息的含义来从NLP部件接收动作;以及通过执行该动作来创作消息响应。
该方法还可以包括生成包括文本、小web浏览器视图、轮播视图或地图视图的消息响应,所述轮播视图包括多个图像。
该方法还可以包括从网页上的一组字段生成菜单;向客户端设备呈现菜单;从客户端设备接收菜单项的选择;从与选择相关联的字段检索数据;创作包括检索到的数据的消息响应;以及向客户端设备发送消息响应。
该方法还可以包括将页面机器人与网络可访问服务的NLP部件相关联。
该方法还可以包括将页面机器人与角色相关联;以及根据角色来创作消息响应。
一种装置可以包括处理器电路;以及机器人创建部件,其在处理器电路上操作来从网页接收机器人创建控制指令,从页面机器人模板实例化页面机器人,授权页面机器人访问网页的内容,将页面机器人与网页相关联,使页面机器人能够对发送到网页的消息做出响应,并存储实例化的页面机器人。
页面机器人可以包括客户端通信部件,其操作来在页面机器人处接收来自客户端设备的消息,并向客户端设备发送消息响应;交互处理部件,其操作来从自然语言处理(NLP)部件请求消息的含义,根据消息的含义来识别与页面机器人相关联的网页中的字段,并创作包括从所识别的字段检索的数据的消息响应;以及机器人应用接口部件,其操作来从所识别的字段检索数据。
客户端通信部件可以操作来通过消息传送系统来接收消息并发送消息响应。
交互处理部件可以操作来从NLP部件接收含义没有被确定的指示,并将消息逐步传送到网页的管理员账户。
交互处理部件可以操作来从网页的管理员账户接收消息响应;以及客户端通信部件可以操作来向客户端设备发送消息响应。
交互处理部件可以操作来根据用户消息的含义来从NLP部件接收动作;以及通过执行该动作来创作消息响应。
交互处理部件可以操作来生成包括文本、小web浏览器视图、轮播视图或地图视图的消息响应,所述轮播视图包括多个图像。
至少一个计算机可读存储介质可以包括指令,指令当被执行时使系统执行本文描述的任何计算机实现的方法。
可以使用措辞“一个实施例”或“实施例”连同它们的派生词来描述一些实施例。这些术语意味着关于该实施例描述的特定特征、结构或特性被包括在至少一个实施例中。短语“在一个实施例中”在说明书中的不同地方的出现并不一定都指同一实施例。此外,可以使用措辞“耦合”和“连接”连同它们的派生词来描述一些实施例。这些术语不一定意欲作为彼此的同义词。例如,可以使用术语“连接”和/或“耦合”来描述一些实施例,以指示两个或更多个元件与彼此直接物理或电接触。然而,术语“耦合”也可以意味着两个或更多个元件不与彼此直接接触,但仍然还与彼此协作或相互作用。
一般参考本文使用的符号和术语,可以从在计算机或计算机的网络上执行的程序过程方面呈现本文的详细描述。这些过程描述和表示由本领域中的技术人员使用来将他们的工作的实质最有效地传达给本领域中的其他技术人员。
过程在这里且通常被设想为导致期望结果的自洽的操作序列。这些操作是需要物理量的物理操纵的那些操作。通常(尽管不是必须地)这些量采取能够被存储、传输、组合、比较和以另外方式操纵的电、磁或光信号的形式。主要由于习惯用法的原因,将这些信号称为比特、值、元素、符号、字符、项、数字等有时证明是方便的。然而应该注意到,所有这些和类似的术语都与适当的物理量相关联,并且仅仅是应用于这些量的方便标记。
此外,所执行的操纵常常用诸如相加或比较之类的术语来指代,这些术语通常与操作人员所执行的智力操作相关联。在本文描述的形成一个或更多个实施例的一部分的任何操作中,在大多数情况下,操作人员的这种能力都是不必要的或不需要的。而是,这些操作是机器操作。用于执行各种实施例的操作的有用机器包括通用数字计算机或类似设备。
各种实施例还涉及用于执行这些操作的装置或系统。该装置可以被特别构造成用于所需的目的,或它可以包括如由存储在计算机中的计算机程序选择性地激活或重新配置的通用计算机。本文提出的过程并不固有地与特定的计算机或其他装置相关。各种通用机器可以与根据本文的教导编写的程序一起被使用,或者构造更专用的装置来执行所需的方法步骤可以证明是方便的。从所给出的描述中将出现各种这些机器的所需结构。
要强调的是,提供本公开的摘要,以允许读者快速确定技术公开的本质。摘要以它不用于解释或限制权利要求的范围或含义的理解而被提交。此外,在前述详细描述中可以看到,为了精简化本公开的目的,各种特征在单个实施例中组合在一起。公开的这个方法不应被解释为反映以下意图:所要求保护的实施例需要比每个权利要求中明确陈述的特征更多的特征。而是,如所附权利要求反映的,创造性主题在于少于单个所公开的实施例的所有特征。因此,所附权利要求特此被合并到详细描述中,每个权利要求独立地作为单独的实施例。在所附权利要求中,术语“包括(including)”和“其中(in which)”分别用作相应术语“包括(comprising)”和“其中(wherein)”的普通英语(plain-English)等同物。此外,术语“第一”、“第二”、“第三”等仅用作标记,且并不意欲对它们的对象强加数值要求。
上面描述的内容包括所公开的架构的示例。当然,不可能描述部件和/或方法的每一个可能的组合,但是本领域中的普通技术人员可以认识到,许多另外的组合和置换是可能的。因此,新颖的架构旨在包含落在所附权利要求的精神和范围内的所有这样的变更、修改和变化。
Claims (18)
1.一种计算机实现的方法,包括:
从网页接收机器人创建控制指令;
从模板实例化页面机器人;
授权所述页面机器人访问所述网页的内容;
将所述页面机器人与所述网页相关联;从而通过从所述网页检索对发送到所述网页的消息做出响应所需的信息,使所述页面机器人能够对所述消息做出响应,其中,页面机器人对消息做出响应包括如下步骤:
在所述页面机器人处接收来自客户端设备的消息;
从自然语言处理(NLP)部件请求所述消息的含义;
根据所述消息的含义来识别与所述页面机器人相关联的所述网页中的字段;
从所识别的字段检索数据;
创作包括检索到的数据的消息响应;以及
向所述客户端设备发送所述消息响应。
2.根据权利要求1所述的方法,包括:通过消息传送系统来接收所述消息并发送所述消息响应。
3.根据权利要求1所述的方法,包括:
从所述NLP部件接收含义错误;以及
将所述消息逐步传送到所述网页的管理员账户。
4.根据权利要求3所述的方法,包括:
从所述网页的所述管理员账户接收消息响应;以及
将所述消息响应发送给用户。
5.根据权利要求4所述的方法,包括根据来自所述管理员账户的所述消息响应来更新所述NLP部件。
6.根据权利要求1所述的方法,包括:
根据用户消息的含义来从所述NLP部件接收动作;以及
通过执行所述动作来创作所述消息响应。
7.一种装置,包括:
处理器电路;以及
机器人创建部件,其在所述处理器电路上操作来:
从网页接收机器人创建控制指令,
从页面机器人模板实例化页面机器人,
授权所述页面机器人访问所述网页的内容,
将所述页面机器人与所述网页相关联,从而通过从所述网页检索对发送到所述网页的消息做出响应所需的信息使所述页面机器人能够对所述消息做出响应,并存储实例化的页面机器人;
客户端通信部件,其操作来在所述页面机器人处接收来自客户端设备的消息,并向所述客户端设备发送消息响应;
交互处理部件,其操作来从自然语言处理(NLP)部件请求所述消息的含义,根据所述消息的含义来识别与所述页面机器人相关联的所述网页中的字段,并创作包括从所识别的字段检索的数据的消息响应;以及
机器人应用接口部件,其操作来从所识别的字段检索所述数据。
8.根据权利要求7所述的装置,所述客户端通信部件操作来通过消息传送系统而接收所述消息并发送所述消息响应。
9.根据权利要求7所述的装置,所述交互处理部件操作来从所述NLP部件接收含义错误,并将所述消息逐步传送到所述网页的管理员账户。
10.根据权利要求7所述的装置,所述交互处理部件操作来从所述网页的管理员账户接收消息响应;以及
所述客户端通信部件操作来向所述客户端设备发送所述消息响应。
11.根据权利要求7所述的装置,所述交互处理部件操作来根据用户消息的含义来从所述NLP部件接收动作;以及通过执行所述动作来创作所述消息响应。
12.根据权利要求7所述的装置,所述交互处理部件操作来生成包括文本、小web浏览器视图、轮播视图或地图视图的消息响应,所述轮播视图包括多个图像。
13.一种包括指令的至少一个计算机可读存储介质,所述指令当被执行时使系统:
在页面机器人处接收来自客户端设备的消息,所述页面机器人与网页相关联,从而通过从所述网页检索对所述消息做出响应所需的信息,使所述页面机器人能够对发送到所述网页的消息做出响应;由所述页面机器人从自然语言处理(NLP)部件请求所述消息的含义;
由所述页面机器人根据所述消息的含义来识别与所述页面机器人相关联的所述网页中的字段;
由所述页面机器人从所识别的字段检索数据;
由所述页面机器人创作包括检索到的数据的消息响应;以及
从所述页面机器人向所述客户端设备发送所述消息响应。
14.根据权利要求13所述的计算机可读存储介质,包括另外的指令,所述另外的指令当被执行时使所述系统:
通过消息传送系统来接收所述消息并发送所述消息响应。
15.根据权利要求13所述的计算机可读存储介质,其中所述页面机器人被从模板实例化,被授权访问所述网页的内容,并且能够对发送到所述网页的消息做出响应。
16.根据权利要求13所述的计算机可读存储介质,包括另外的指令,所述另外的指令当被执行时使所述系统:
从所述NLP部件接收含义错误;以及
将所述消息逐步传送到所述网页的管理员账户。
17.根据权利要求16所述的计算机可读存储介质,包括另外的指令,所述另外的指令当被执行时使所述系统:
从所述网页的所述管理员账户接收消息响应;以及
将所述消息响应发送给所述客户端设备。
18.根据权利要求17所述的计算机可读存储介质,包括另外的指令,所述另外的指令当被执行时使所述系统:
根据用户消息的含义而从所述NLP部件接收动作;以及
通过执行所述动作来创作所述消息响应。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762485450P | 2017-04-14 | 2017-04-14 | |
US62/485,450 | 2017-04-14 | ||
US15/489,354 US10333868B2 (en) | 2017-04-14 | 2017-04-17 | Techniques to automate bot creation for web pages |
US15/489,354 | 2017-04-17 | ||
PCT/US2017/028101 WO2018190885A1 (en) | 2017-04-14 | 2017-04-18 | Techniques to automate bot creation for web pages |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110785970A CN110785970A (zh) | 2020-02-11 |
CN110785970B true CN110785970B (zh) | 2022-08-19 |
Family
ID=63790386
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780092202.5A Active CN110785970B (zh) | 2017-04-14 | 2017-04-18 | 使网页的机器人创建自动化的技术 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10333868B2 (zh) |
EP (1) | EP3610611B1 (zh) |
CN (1) | CN110785970B (zh) |
WO (1) | WO2018190885A1 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10963492B2 (en) * | 2018-06-14 | 2021-03-30 | Google Llc | Generation of domain-specific models in networked system |
US10949616B1 (en) | 2018-08-21 | 2021-03-16 | Facebook, Inc. | Automatically detecting and storing entity information for assistant systems |
US11722439B2 (en) * | 2018-10-01 | 2023-08-08 | Microsoft Technology Licensing, Llc | Bot platform for mutimodal channel agnostic rendering of channel response |
JP6664536B1 (ja) * | 2019-07-05 | 2020-03-13 | チャットプラス株式会社 | ウエブフォーム入力支援システム |
US10951554B1 (en) * | 2019-09-12 | 2021-03-16 | Genesys Telecommunications Laboratories, Inc. | Systems and methods facilitating bot communications |
US11575626B2 (en) * | 2020-06-10 | 2023-02-07 | Snap Inc. | Bidirectional bridge for web view |
CN111726420A (zh) * | 2020-06-30 | 2020-09-29 | 北京来也网络科技有限公司 | 基于rpa的通信方法、装置、设备及存储介质 |
CN111832275B (zh) * | 2020-09-21 | 2022-02-25 | 北京百度网讯科技有限公司 | 文本的创作方法、装置、设备以及存储介质 |
CN116016157A (zh) * | 2022-12-02 | 2023-04-25 | 中盈优创资讯科技有限公司 | 一种基于excel的可配置的RPA网站巡检方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101079048A (zh) * | 2006-05-24 | 2007-11-28 | 上海万纬信息技术有限公司 | 基于软件机器人排除标准的互联网信息搜索引擎及方法 |
CN101124537A (zh) * | 2004-11-12 | 2008-02-13 | 马克森斯公司 | 采用术语构建知识关联的知识发现技术 |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6363301B1 (en) * | 1997-06-04 | 2002-03-26 | Nativeminds, Inc. | System and method for automatically focusing the attention of a virtual robot interacting with users |
AU2001238672A1 (en) * | 2000-02-24 | 2001-09-03 | Findbase, L.L.C. | Method and system for extracting, analyzing, storing, comparing and reporting on data stored in web and/or other network repositories and apparatus to detect, prevent and obfuscate information removal from information servers |
US6754647B1 (en) * | 2000-09-26 | 2004-06-22 | Verity, Inc. | Method and apparatus for hierarchically decomposed bot scripts |
US20030182391A1 (en) * | 2002-03-19 | 2003-09-25 | Mike Leber | Internet based personal information manager |
US7774292B2 (en) | 2003-11-10 | 2010-08-10 | Conversive, Inc. | System for conditional answering of requests |
US20050102065A1 (en) * | 2003-11-10 | 2005-05-12 | Conversive, Inc. | Method and system for programming virtual robots using a template |
US20070043878A1 (en) * | 2005-08-18 | 2007-02-22 | Microsoft Corporation | Virtual robot communication format customized by endpoint |
US20070168480A1 (en) * | 2006-01-13 | 2007-07-19 | Microsoft Corporation | Interactive Robot Creation |
US8285652B2 (en) * | 2008-05-08 | 2012-10-09 | Microsoft Corporation | Virtual robot integration with search |
AU2009335623B2 (en) * | 2009-01-08 | 2012-05-10 | Servicenow, Inc. | Chatbots |
US8818926B2 (en) * | 2009-09-29 | 2014-08-26 | Richard Scot Wallace | Method for personalizing chat bots |
US20140122618A1 (en) * | 2012-10-26 | 2014-05-01 | Xiaojiang Duan | User-aided learning chatbot system and method |
US20140164296A1 (en) * | 2012-12-11 | 2014-06-12 | Xiaojiang Duan | Chatbot system and method with entity-relevant content from entity |
US9210171B1 (en) * | 2014-05-29 | 2015-12-08 | Shape Security, Inc. | Selectively protecting valid links to pages of a web site |
US9647968B2 (en) * | 2015-03-25 | 2017-05-09 | Pypestream Inc | Systems and methods for invoking chatbots in a channel based communication system |
CN105591882B (zh) * | 2015-12-10 | 2018-03-06 | 北京中科汇联科技股份有限公司 | 一种智能机器人与人混合客服的方法及系统 |
CN105791104B (zh) * | 2016-05-18 | 2019-06-07 | 北京奔影网络科技有限公司 | 客服方法和装置 |
US10162817B2 (en) * | 2016-06-14 | 2018-12-25 | Microsoft Technology Licensing, Llc | Computer messaging bot creation |
US20180039618A1 (en) * | 2016-08-08 | 2018-02-08 | Microsoft Technology Licensing, Llc | Computerized group task digital assistance |
US10798028B2 (en) * | 2016-09-20 | 2020-10-06 | Google Llc | Bot interaction |
JP6659910B2 (ja) * | 2016-09-20 | 2020-03-04 | グーグル エルエルシー | データへのアクセス許可を要求するボット |
US10547574B2 (en) * | 2016-09-20 | 2020-01-28 | Google Llc | Suggested responses based on message stickers |
US10015124B2 (en) * | 2016-09-20 | 2018-07-03 | Google Llc | Automatic response suggestions based on images received in messaging applications |
US10361975B2 (en) * | 2016-10-10 | 2019-07-23 | Microsoft Technology Licensing, Llc | Messaging bot selection in multi-bot chat sessions |
US10025567B2 (en) * | 2016-10-14 | 2018-07-17 | Microsoft Technology Licensing, Llc | Bot creation with workflow development system |
US10146768B2 (en) * | 2017-01-25 | 2018-12-04 | Google Llc | Automatic suggested responses to images received in messages using language model |
US9959868B1 (en) * | 2017-03-09 | 2018-05-01 | Wisconsin Alumni Research Foundation | Conversational programming interface |
-
2017
- 2017-04-17 US US15/489,354 patent/US10333868B2/en active Active
- 2017-04-18 EP EP17905032.3A patent/EP3610611B1/en active Active
- 2017-04-18 CN CN201780092202.5A patent/CN110785970B/zh active Active
- 2017-04-18 WO PCT/US2017/028101 patent/WO2018190885A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101124537A (zh) * | 2004-11-12 | 2008-02-13 | 马克森斯公司 | 采用术语构建知识关联的知识发现技术 |
CN101079048A (zh) * | 2006-05-24 | 2007-11-28 | 上海万纬信息技术有限公司 | 基于软件机器人排除标准的互联网信息搜索引擎及方法 |
Also Published As
Publication number | Publication date |
---|---|
US20180302347A1 (en) | 2018-10-18 |
EP3610611A4 (en) | 2020-03-18 |
WO2018190885A1 (en) | 2018-10-18 |
EP3610611B1 (en) | 2021-07-21 |
CN110785970A (zh) | 2020-02-11 |
EP3610611A1 (en) | 2020-02-19 |
US10333868B2 (en) | 2019-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110785970B (zh) | 使网页的机器人创建自动化的技术 | |
US20230015178A1 (en) | Techniques for messaging bot rich communication | |
KR102451259B1 (ko) | 봇들에 대한 의도-기반 검색을 위한 기술들 | |
CN109074402B (zh) | 基于示例会话使用自然语言机器学习来响应用户请求的技术 | |
US10762300B1 (en) | Techniques to predictively respond to user requests using natural language processing | |
US9760723B2 (en) | Techniques for in-app user data authorization | |
CN107820695B (zh) | 用于形式响应的自动确定的方法和设备 | |
US10552542B1 (en) | Techniques for graph based natural language processing | |
US10599402B2 (en) | Techniques to configure a web-based application for bot configuration | |
EP3211840B1 (en) | Techniques for messaging bot rich communication | |
US20180302345A1 (en) | Techniques for event-based recommendations for bots | |
US11341173B2 (en) | Techniques for personalized search for bots | |
US20190205382A1 (en) | Analyzing language units for personality | |
WO2017003823A1 (en) | Improving search relevance using past searchers' reputation | |
US10846615B2 (en) | Techniques for reinforcement for bots using capability catalogs | |
US10608966B1 (en) | Techniques to customize bot messaging behavior | |
US20180300161A1 (en) | Techniques for multiple-user bot applications | |
CN115525834A (zh) | 筛选并显示消息的方法、计算机装置及记录介质 | |
EP3388952A1 (en) | Techniques for intent-based search for bots |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: California, USA Applicant after: Yuan platform Co. Address before: California, USA Applicant before: Facebook, Inc. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |