CN111104496A - 从先前会话检索情境 - Google Patents
从先前会话检索情境 Download PDFInfo
- Publication number
- CN111104496A CN111104496A CN201911132153.0A CN201911132153A CN111104496A CN 111104496 A CN111104496 A CN 111104496A CN 201911132153 A CN201911132153 A CN 201911132153A CN 111104496 A CN111104496 A CN 111104496A
- Authority
- CN
- China
- Prior art keywords
- search
- query
- session
- sessions
- previous
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- 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/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Remote Sensing (AREA)
- Artificial Intelligence (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明的各实施方式涉及从先前会话检索情境。具体地,涉及一种方法、系统和装置,包括在计算机存储介质上被编码的计算机程序,用于在对话式搜索中从先前对话式会话检索和使用情境数据。在一个方面,一种方法包括:接收对于第一用户会话的第一查询;确定第一查询涉及第一储存库中的一个或多个标签,第一储存库使相应标识符与相应标签关联,每个标识符表示对应用户会话;确定与第一储存库中的一个或多个标签关联的一个或多个特定标识符;在第二储存库中检索与所确定的特定标识符关联的特定情境数据,第二储存库使相应标识符与和由相应标识符表示的对应用户会话关联的相应情境数据关联;以及基于所检索的特定情境数据而响应于第一查询来执行动作。
Description
本申请是国际申请日为2015年06月09日、中国申请号为201510314119.0、发明名称为“从先前会话检索情境”的发明专利申请的分案申请。
技术领域
本说明书涉及自然语言处理。
背景技术
因特网提供对包括特定主题的内容、书籍文章或者新闻报道在内的各种资源(例如视频文件、图像文件、音频文件或者Web页面)的存取。搜索系统可以响应于接收到搜索查询来选择一个或多个资源。搜索查询是用户向搜索引擎提交的用以满足用户的信息需求的数据。搜索查询可以是例如文本、音频或者视频的形式。搜索系统例如基于其与搜索查询的关联以及基于其相对于其它资源的重要性来选择资源和对资源评分以提供搜索结果。搜索结果通常根据得分被排序并且根据这一顺序被呈现。
发明内容
本说明书描述通过以下方式来在对话式搜索中从先前会话检索和使用情境(contextual)数据:确定查询涉及索引储存库中的一个或多个标签;确定与索引储存库中的标签关联的一个或多个特定会话标识符;在数据储存库中检索与特定会话标识符关联的特定情境数据;以及基于所检索的特定情境数据而响应于查询来执行动作。
一般地,本说明书中所描述的主题的一个创新性方面可以体现在方法中,这些方法包括以下动作:接收对于第一用户会话的第一查询;确定第一查询涉及第一储存库中的一个或多个标签,第一储存库使相应标识符与相应标签关联,每个标识符表示对应用户会话;确定与第一储存库中的一个或多个标签关联的一个或多个特定标识符;在第二储存库中检索与所确定的特定标识符关联的特定情境数据,第二储存库使相应标识符与和由相应标识符表示的对应用户会话关联的相应情境数据关联;以及基于所检索的特定情境数据而响应于第一查询来执行动作。
在另一一般实施例中,一种方法可以包括以下动作:通过一个或多个计算机接收对于用户会话的查询;通过一个或多个计算机确定查询涉及时间指示符,时间指示符指示早于用户会话的时间;通过一个或多个计算机确定查询涉及索引储存库中的一个或多个条目(item)标记,索引储存库使相应用户会话与用于用户会话的相应时间标记以及用于用户会话中的查询的相应条目标记关联;通过一个或多个计算机确定索引储存库中的多个候选用户会话,每个候选用户会话与和时间指示符对应的相应时间标记关联;通过一个或多个计算机确定在所确定的候选用户会话内与一个或多个条目标记关联的一个或多个特定用户会话;通过一个或多个计算机在数据储存库中检索与所确定的特定用户会话关联的特定情境数据,数据储存库使相应用户会话与用于用户会话的相应情境数据关联;以及通过一个或多个计算机基于所检索的特定情境数据而响应于查询来执行动作。
这一方面的其它实施例包括记录在一个或多个计算机存储设备上的对应的计算机系统、装置和计算机程序,其各自被配置成执行上述方法的动作。对于要被配置成执行特定操作或者动作的一个或多个计算机的系统,意指该系统已经在其上安装了软件、固件、硬件或者其组合,软件、固件、硬件或者其组合在操作时使得系统执行操作或者动作。对于要被配置成执行特定操作或者动作的一个或多个计算机程序,意指该一个或多个程序包括指令,这些指令在由数据处理装置执行时使得该装置执行操作或者动作。
以上以及其它实施例各自可以可选地以单独或者组合的方式包括以下特征中的一个或多个特征。比如,对话式搜索系统可以对于标签中的每个标签确定与第一储存库中的标签关联的多个相应候选标识符,并且通过确定所确定的相应候选标识符的交叠来从所确定的相应候选标识符中选择特定标识符。特定标识符中的每个标识符可以与第一储存库中的标签中的每个标签关联。在一些情况下,一个或多个标签可以包括指示早于第一用户会话的时间的时间标签。对话式搜索系统可以确定与第一储存库中的时间标签关联的多个候选标识符,并且基于一个或多个标签中的剩余标签来从多个候选标识符中选择一个或多个特定标识符。
在一些示例中,一个或多个标签包括会话标签或者条目标签中的至少一项。会话标签可以与关于针对特定标识符的特定对应用户会话的信息关联。条目标签可以与特定对应用户会话中的特定查询或者响应于特定查询的特定搜索结果中的至少一项关联。对话式搜索系统可以确定特定查询或者特定搜索结果中的至少一项涉及与条目标签对应的特定条目,并且可以基于所确定的特定条目而响应于第一查询来执行动作。在一些情况下,在确定第一查询涉及第一储存库中的一个或多个标签之前,对话式搜索系统可以确定第一查询缺乏用于执行动作所需要的附加信息,并且可以确定第一查询与对于第一用户会话的先前查询不关联。
在一些实施方式中,对话式搜索系统从用户接收对于第二用户会话的第二查询,并且确定第二查询或者响应于第二查询的第二搜索结果中的至少一项涉及数据库中的第二条目。数据库使相应条目与相应条目标签关联。对话式搜索系统可以确定与数据库中的第二条目关联的一个或多个第二条目标签,将第二条目标签存储在第一储存库中,并且在第一储存库中使第二条目标签与表示第二用户会话的第二标识符关联。在一些情况下,对话式搜索系统确定用于第二用户会话的一个或多个第二会话标签。第二会话标签可以包括以下各项中的至少一项:用于第二用户会话的时间戳、用于第二用户会话的用户位置或者在第二用户会话之前与用户关联的动作。对话式搜索系统可以将第二会话标签存储在第一储存库中并且在第一储存库中使第二会话标签与第二标识符关联。在一些情况下,对话式搜索系统确定用于第二查询的第二情境数据。第二情境数据可以包括第二查询、第二搜索结果以及与第二查询和第二搜索结果关联的元数据。对话式搜索系统可以将第二情境数据存储在第二储存库中并且在第二储存库中使第二情境数据与第二标识符关联。
在另一一般实施例中,一种计算机实施的方法,包括:通过搜索引擎并且从语音到文本引擎接收搜索查询,所述搜索查询基于在当前搜索会话期间通过数字助理设备检测的用户的话语;通过所述搜索引擎确定所述搜索查询涉及时间指示符,所述时间指示符指示早于所述当前搜索会话的时间;通过所述搜索引擎确定所述搜索查询涉及一个或多个其他查询项;通过所述搜索引擎并且根据存储在与所述搜索引擎关联的储存库中的会话数据,从第二组先前搜索会话确定第一组相关先前搜索会话,其中,所述第二组先前搜索会话包括比所述第一组相关先前搜索会话更多的先前搜索会话,其中,所述第一组相关先前搜索会话中的每一个先前搜索会话与对应于所述时间指示符的相应时间标记关联;通过所述搜索引擎,基于与所述当前搜索会话的搜索查询关联的所述一个或多个其他查询项而不搜索不在所述第一组相关先前搜索会话中的第二组先前搜索会话中的任何先前搜索会话,从根据存储在与所述搜索引擎关联的存储库中的会话数据确定的所述第一组相关先前搜索会话中标识特定先前搜索会话;通过所述搜索引擎,基于所述当前搜索会话的搜索查询的所述一个或多个其他查询项,标识与一个或多个搜索查询或特定先前搜索会话的搜索结果关联的一个或多个实体;以及从文本到语音引擎提供(i)对所述搜索查询的响应,所述响应包括被配置为响应于所述当前搜索会话的搜索查询要被输出在所述数字助理设备的扬声器上的实体中的一个或多个的表示,以及从所述搜索引擎提供(ii)被配置为在使用所述数字助理设备的扬声器输出对搜索查询的响应的至少一部分期间要在所述数字助理设备的图形用户界面上渲染的与所述一个或多个实体相关的元数据。
在另一一般实施例中,一种系统,包括:数据处理装置;以及非暂态计算机可读存储介质,与所述数据处理装置数据通信并且存储指令,所述指令由所述数据处理装置可执行并且在这样的执行时使得所述数据处理装置执行操作,所述操作包括:通过搜索引擎并且从语音到文本引擎接收搜索查询,所述搜索查询基于在当前搜索会话期间通过数字助理设备检测的用户的话语;通过所述搜索引擎确定所述搜索查询涉及时间指示符,所述时间指示符指示早于所述当前搜索会话的时间;通过所述搜索引擎确定所述搜索查询涉及一个或多个其他查询项;通过所述搜索引擎并且根据存储在与所述搜索引擎关联的储存库中的会话数据,从第二组先前搜索会话确定第一组相关先前搜索会话,其中,所述第二组先前搜索会话包括比所述第一组相关先前搜索会话更多的先前搜索会话,其中,所述第一组相关先前搜索会话中的每一个先前搜索会话与对应于所述时间指示符的相应时间标记关联;通过所述搜索引擎,基于与所述当前搜索会话的搜索查询关联的所述一个或多个其他查询项而不搜索不在所述第一组相关先前搜索会话中的第二组先前搜索会话中的任何先前搜索会话,从根据存储在与所述搜索引擎关联的存储库中的会话数据确定的所述第一组相关先前搜索会话中标识特定先前搜索会话;通过所述搜索引擎,基于所述当前搜索会话的搜索查询的所述一个或多个其他查询项,标识与一个或多个搜索查询或特定先前搜索会话的搜索结果关联的一个或多个实体;以及从文本到语音引擎提供(i)对所述搜索查询的响应,所述响应包括被配置为响应于所述当前搜索会话的搜索查询要被输出在所述数字助理设备的扬声器上的实体中的一个或多个的表示,以及从所述搜索引擎提供(ii)被配置为在使用所述数字助理设备的扬声器输出对搜索查询的响应的至少一部分期间要在所述数字助理设备的图形用户界面上渲染的与所述一个或多个实体相关的元数据。
在另一一般实施例中,一种存储指令的非暂态计算机可读存储介质,所述指令由数据处理装置可执行并且在这样的执行时使得所述数据处理装置执行操作,所述操作包括:通过搜索引擎并且从语音到文本引擎接收搜索查询,所述搜索查询基于在当前搜索会话期间通过数字助理设备检测的用户的话语;通过所述搜索引擎确定所述搜索查询涉及时间指示符,所述时间指示符指示早于所述当前搜索会话的时间;通过所述搜索引擎确定所述搜索查询涉及一个或多个其他查询项;通过所述搜索引擎并且根据存储在与所述搜索引擎关联的储存库中的会话数据,从第二组先前搜索会话确定第一组相关先前搜索会话,其中,所述第二组先前搜索会话包括比所述第一组相关先前搜索会话更多的先前搜索会话,其中,所述第一组相关先前搜索会话中的每一个先前搜索会话与对应于所述时间指示符的相应时间标记关联;通过所述搜索引擎,基于与所述当前搜索会话的搜索查询关联的所述一个或多个其他查询项而不搜索不在所述第一组相关先前搜索会话中的第二组先前搜索会话中的任何先前搜索会话,从根据存储在与所述搜索引擎关联的存储库中的会话数据确定的所述第一组相关先前搜索会话中标识特定先前搜索会话;通过所述搜索引擎,基于所述当前搜索会话的搜索查询的所述一个或多个其他查询项,标识与一个或多个搜索查询或特定先前搜索会话的搜索结果关联的一个或多个实体;以及从文本到语音引擎提供(i)对所述搜索查询的响应,所述响应包括被配置为响应于所述当前搜索会话的搜索查询要被输出在所述数字助理设备的扬声器上的实体中的一个或多个的表示,以及从所述搜索引擎提供(ii)被配置为在使用所述数字助理设备的扬声器输出对搜索查询的响应的至少一部分期间要在所述数字助理设备的图形用户界面上渲染的与所述一个或多个实体相关的元数据。
可以实施本说明书中所描述的主题的特定实施例以便实现以下优点中的一个或多个优点。首先,对话式搜索系统可以通过从先前对话式搜索到当前对话式搜索中快速且无缝地检索和使用情境数据来使得对话式搜索更加智能且更加自然。这可以增强用户体验。例如,对话式搜索系统允许部分任务完成并且从用户先前离开的地方开始。其次,对话式搜索系统可以基于用户记忆中的很少的、有限的或者部分信息来确定相关先前搜索,这使得用户输入最小化并且帮助用户搜索。第三,对话式搜索系统可以例如通过以下方式来高效地提供快速响应:使短的对话式会话与索引储存库中的会话标记(例如时间标记、用户位置标记、用户动作标记和/或共同存在信息标记)和/或条目标记关联;并且基于与标记对应的查询分段来在索引储存库中搜索相关对话式会话,而非搜索所有的先前查询和回答(这可能在检索时产生大量伪匹配)。例如,可以在用户进行查询时通过用户位置向索引储存库提供线索(keyed),该用户位置可以稍后被使用,例如“今天早上当我在旧金山时我谈论的是什么餐馆?”。可以通过实体注释向索引储存库提供线索,例如“今天早上我谈论的是什么书?”。用户可能在先前查询中一直使用书名而未曾提及词语“书”,并且对话式搜索系统可以基于实体注释来确定词语“书”。也可以通过实体的属性(例如餐馆的地址)以及实体的其它元数据(例如餐馆的顾客评级)向索引储存库提供线索。第四,对话式搜索系统可以例如通过基于存储数以百万计的条目和关联的条目标记的注释数据库来确定用于诸如实体之类的条目的条目标记来实现高的精度和可靠性。第五,对话式搜索系统可以可扩展至包括英语在内的任何合适的语言。
下面在附图和描述中给出本说明书中所描述的主题的一个或多个实施例的细节。主题的其它特征、方面和优点根据描述、附图和权利要求将变得很清楚。
附图说明
图1A是其中搜索引擎在对话式搜索中从先前会话检索和使用情境数据的环境的框图;
图1B是在示例搜索对话用户界面中的对话式搜索的图示;
图2A至图2C是用于存储和索引条目标签和用户会话的情境数据的示例过程的流程图;以及
图3A至图3B是用于在对话式搜索中从先前会话检索和使用情境数据的示例过程的流程图。
各个附图中的相似的附图标记和标号指示相似的要素。
具体实施方式
图1A是其中搜索引擎110提供对话式搜索服务的示例环境100的框图。搜索引擎110使得能够在对话式搜索中检索和使用与先前用户会话关联的情境数据。搜索引擎110存储和索引与索引储存库中的标签关联的先前用户会话。当在新的对话式搜索中接收到查询时,搜索引擎110确定查询涉及索引储存库中的一个或多个标签(例如时间标签),并且然后确定使用标签被索引的一个或多个先前会话。搜索引擎110然后在例如数据储存库中检索与所确定的先前会话关联的情境数据,并且基于所检索的情境数据而响应于查询来执行动作。
计算机网络102(诸如局域网(LAN)、广域网(WAN)、因特网或者其组合)连接发布者网站104、用户设备106和搜索引擎110。在线环境100可以包括成千个发布者网站104和用户设备106。
发布者网站104包括与域关联并且由在一个或多个位置处的一个或多个服务器托管的一个或多个资源105。通常,网站是用超文本标记语言(HTML)格式化的web页面的集合,其可以包含文本、图像、多媒体内容和编程要素(例如脚本)。每个发布者网站104由内容发布者来维护,内容发布者是控制、管理和/或拥有发布者网站104的实体。
资源是可以由发布者网站104通过网络102来提供并且具有资源地址(例如统一资源定位符(URL))的任何数据。资源105可以是HTML页面、电子文档、图像文件、视频文件、音频文件和种子源等。资源可以包括嵌入式信息(例如元信息和超链接)和/或嵌入式指令(例如客户侧脚本)。
示例用户设备106可以能够通过网络102来请求和接收资源。示例用户设备106可以包括个人计算机、移动通信设备、智能电话、写字板、TV、机顶盒(STB)、多模式设备(诸如可佩带计算设备,例如谷歌眼镜)、混合的姿势识别/语音识别系统(例如Xbox/Kinect)、汽车信息系统、普通家用娱乐系统以及可以通过网络102来发送和接收数据的其它设备。用户设备106通常包括用户应用(例如web浏览器)以促进通过网络102来发送和接收数据。web浏览器可以使得用户能够显示通常位于万维网或者局域网的网站的web页面上的文本、图像、视频、音频、音乐和其它信息并且与其交互。用户设备106可以包括使得用户能够记录语音查询或者在听觉上输入语音查询的麦克风和/或用于播放语音的扬声器。
为了促进搜索这些资源105,搜索引擎110通过搜索(crawl)发布者网站104并且索引由发布者网站104提供的资源105来标识资源。资源105被索引并且索引数据被存储在资源索引112中。
用户设备106向搜索引擎110提交搜索查询109。搜索查询109可以是文本查询、语音查询(例如通过用户设备106中的麦克风)、图片查询、视频查询等形式。搜索查询109以搜索请求的形式被提交,搜索查询109包括搜索请求并且可选地包括标识提交请求的用户设备106的唯一标识符。唯一标识符可以是来自在用户设备处存储的小段文本信息(cookie)的数据,或者是在用户维持与搜索引擎110的账户的情况下的用户账户标识符,或者是标识用户设备106或使用用户设备的用户的某个其它标识符。
响应于搜索请求,搜索引擎110使用资源索引112来标识与查询相关的资源。搜索引擎110以搜索结果的形式标识资源,并且在搜索结果页面资源111中向用户设备106返回搜索结果。搜索结果是由搜索引擎110生成的数据,该数据标识满足特定搜索查询的资源或者提供满足特定搜索查询的信息。对于资源的搜索结果可以包括web页面标题、从web页面提取的一小片文本以及用于资源的资源定位符(例如web页面的URL)。
基于与使用搜索结果标识的资源相关的得分(诸如信息检索(“IR”)得分)对搜索结果评级,并且可选地相对于其它资源将每个资源的评级分开。根据这些得分对搜索结果排序,并且根据这一顺序向用户设备提供搜索结果。
搜索引擎110包括储存库114。可以将搜索查询109和响应于搜索查询109的搜索结果(例如通过搜索结果引用的web页面)存储在储存库114中。储存库114可以包括与搜索查询109和/或搜索查询109的搜索结果关联的元数据。
用户设备106可以接收搜索结果页面资源111并且渲染页面用于向用户呈现。响应于用户在用户设备106处选择搜索结果,用户设备106请求所选搜索结果中所包括的资源定位符所标识的资源105。托管资源105的发布者网站104的发布者从用户设备106接收对资源的请求,并且向请求的用户设备106提供资源105。
可以将从用户设备106发出的搜索查询109存储在储存库114中的查询日志116中。将用于查询的选择数据以及通过搜索结果引用并且由用户选择的web页面存储在储存库114中的选择日志118中。查询日志116和选择日志118定义搜索历史数据119,搜索历史数据119包括来自与唯一标识符关联的先前搜索请求以及与其相关的数据。
搜索日志118表示响应于搜索引擎110提供的搜索结果而进行的动作。查询日志116和选择日志118可以用于将由用户设备提交的查询映射至在搜索结果中被标识的资源以及由用户在响应于查询而被呈现以搜索结果时进行的动作。
在一些实施方式中,数据与来自搜索请求的标识符关联,使得可以存取用于每个标识符的搜索历史。选择日志118和查询日志116因此可以由搜索引擎110使用以确定由用户设备106提交的相应查询序列、响应于查询而进行的动作以及提交查询的频率。
在其中在此讨论的系统采集与用户有关的个人信息或者可以使用个人信息的情况下,可以向用户提供控制程序或者特征是否采集用户信息(例如与用户的社交网络、社交动作或者活动、职业、用户的偏好或者用户的当前位置有关的信息)的机会,或者可以向用户提供控制是否和/或如何从内容服务器接收可能与用户更相关的内容的机会。此外,可以在对某些数据进行存储或使用之前用一种或多种方式来对数据进行处理,使得去除个人可识别信息。例如,可以对用户的身份进行处理,使得不能够针对用户确定任何个人可识别信息,或者可以对用户的获取位置信息的地理位置(诸如到市、邮编或者州级别)进行概括,使得不能确定用户的特定位置。因此,用户可以控制如何采集关于用户的信息以及内容服务器如何使用信息。
搜索引擎110包括在储存库114中用于存储用户会话的情境数据的会话数据储存库122。每个用户会话可以包括一个或多个查询。每个会话的情境数据可以包括一个或多个查询、响应于查询的一个或多个搜索结果以及与查询和搜索结果关联的元数据。用户会话可以与会话数据储存库122中的其它用户会话关联。例如,用户会话可以涉及某个话题或者某个实体。
可以向每个用户会话分配表示用户会话的唯一标识符(ID),例如号码标识符、字母标识符或者其组合等。搜索引擎110在会话数据储存库122中使相应标识符与由标识符表示的用户会话的相应情境数据关联。因此,搜索引擎110可以通过以下方式来检索特定用户会话的特定情境数据:确定用于特定用户会话的特定标识符并且使用特定标识符在会话数据储存库122中寻找特定情境数据。
在一些实施方式中,使用用于序列搜索查询的时间间隔(例如30秒、60秒或者120秒)来定义用户会话。搜索引擎110确定是否在时间间隔内接收到序列搜索查询,并且确定序列搜索查询是否彼此关联。用户会话的长度可以取决于用于接收用户会话中的关联的序列查询的时间段。假定特定时间段为60秒。在这种情况下,用户会话可以具有较长的时长(例如5分钟)或者较短的时长(例如40秒)。
在一些示例中,搜索引擎110通过以下方式来确定查询是否与先前查询关联:确定查询是否为缺乏用于响应于查询来执行动作所需要的附加信息的不完整查询和/或确定附加信息是否能够从与先前查询关联的情境数据被获得。如果搜索引擎110确定查询为不完整查询和/或用于先前查询的情境数据提供附加信息,则搜索引擎确定查询与先前查询关联。
在一些示例中,搜索引擎110通过以下方式来确定查询是否与先前查询关联:确定查询或者响应于查询的搜索结果是否包括对先前查询的明确或者暗示引用。在特定示例中,如果先前查询涉及实体并且查询包括用于实体的对应代词,则搜索引擎110确定查询与先前查询关联。在另一特定示例中,如果查询与先前查询具有相同的意图(例如使用如下面进一步描述的模板),则搜索引擎110确定查询与先前查询关联。
在一些情况下,如果在接收到先前查询之后的时间间隔内接收到查询并且确定查询与先前查询关联,则确定查询与先前查询在同一用户会话中。如果在时间间隔内接收到查询但是确定查询与先前查询不关联,则确定查询与先前查询不在同一用户会话中。如果在先前查询之后的时间间隔内没有接收到查询,则确定查询与先前查询不在同一用户会话中。在确定查询与先前查询不在同一用户会话中时,搜索引擎110可以确定用于先前查询的用户会话结束并且使查询与新的用户会话关联。
在一些实施方式中,将用户会话定义为在用户会话开始之后的特定时间段(例如1分钟、2分钟或者5分钟)内(例如当接收到查询中的第一查询时)来自相同的用户设备或者相同的设备标识符的一系列搜索查询。搜索引擎110可以确定这一系列搜索查询是否彼此关联。
在一些情况下,如果查询中的第二查询与第一查询或者用户会话中的先前查询关联,则搜索引擎110确定第二查询与用户会话关联。如果查询中的第二查询与第一查询或者先前查询不关联,则搜索引擎110确定第二查询与用户会话不关联。在一些情况下,用户会话可以包括一个或多个子会话。可以给每个子会话分配唯一标识符。子会话内的查询彼此关联。同一子会话中的查询可以是顺序的或者不是顺序的。子会话中的查询可以与另一子会话中的查询不关联。
在一些实施方式中,搜索引擎110包括在储存库114中的注释数据库120。注释数据库120存储与大量条目(例如实体、事件或者动作)有关的信息。大量条目可以被存储在注释数据库120中的不同种类或者集合(例如集合/人、集合/商业、集合/航班、集合/游戏、或者集合/动作)下。在一些实施方式中,注释数据库120被托管在搜索引擎110外部的服务器中。搜索引擎110可以经由网络102或者任意适当的数据通信信道与注释数据库120通信。
注释数据库120使每个条目与一个或多个条目标签、标记或者注释关联。条目标签可以与条目的性质或者属性关联。例如,如果条目涉及人(例如“Lady Gaga”),则与人关联的条目标签可以包括职业标签(例如“音乐家”、“作曲家”和/或“流行歌手”)、国籍标签(例如“美国”)或者性别标签(“女性”)。如果条目涉及书籍(例如“rich dad poor dad”),则与书籍关联的条目标签可以包括种类标签(例如“书籍”)、作者标签(例如“RobertT.Kiyosaki”)或者发布者标签(例如“Plata Publishing”)。如果条目涉及餐馆(例如“GaryDanko”),则与餐馆关联的条目标签可以包括种类标签(“餐馆”)、街道标签(例如“Point大街”)、城市标签(例如“旧金山”)或者烹饪类型标签(例如“法式”)。
两个条目可以对于第一条目标签具有相同的值,但是对于不同的第二条目标签具有不同的值。例如,条目涉及餐馆“Zuni Café”。条目“Zuni Café”具有与条目“Gary Danko”相同的种类标签“餐馆”,但是具有不同于用于条目“Gary Danko”的街道标签“point大街”的街道标签“market大街”。
在从用户设备106接收对于用户会话的搜索查询109之后,搜索引擎110可以确定搜索查询109涉及条目并且在注释数据库120中搜索条目。在一些情况下,搜索引擎110确定在注释数据库120内找到条目。搜索引擎110可以确定与条目关联的一个或多个条目标签并且在例如储存库114中使所确定的条目标签与搜索查询109和/或用户会话关联。
在一些情况下,搜索引擎110确定在注释数据库120中没有找到搜索查询109所涉及的条目。搜索引擎110可以例如在网络102中搜索关于条目的信息,并且确定用于条目的一个或多个条目标签。可以基于定义用于条目的条目标签的注释数据库120的准则来确定条目标签。例如,用于条目“书籍”的准则可以将对应的条目标签定义为种类标签、作者标签、发布者标签等。搜索引擎110然后可以确定用于条目的对应条目标签的值。搜索引擎110可以例如自动地或者在精确验证之后提交条目和所确定的条目标签以更新注释数据库120。在一些情况下,由例如系统管理员使用条目和关联的条目标签来手动更新注释数据库120。
在一些实施方式中,搜索引擎110包括在储存库114中的会话索引储存库124。会话索引储存库124使用于用户会话的相应标识符与用于用户会话的相应条目标签和/或条目关联,也就是,会话索引储存库124将条目标签映射至用于用户会话的标识符。可以使条目标签和/或条目与一个或多个标识符关联,或者将条目标签和/或条目映射至一个或多个标识符。可以使标识符与一个或多个条目标签或者条目关联,或者可以将标识符映射至一个或多个条目标签或者条目。基于会话索引储存库124中的关联或者映射,搜索引擎110可以基于一个或多个特定条目标签和/或特定条目来确定一个或多个特定标识符。
在一些示例中,在从用户设备106接收对于用户会话的搜索查询109之后,搜索引擎110可以例如通过基于语法规则和/或注释数据库120解析搜索查询109来确定搜索查询109或者响应于搜索查询109的搜索结果涉及条目。
在一些情况下,响应于查询的搜索结果对应于响应于查询的应答或者对于查询的回答。例如,假定搜索查询109为“哪个餐馆是旧金山最好的法式餐馆”,并且搜索引擎110确定搜索结果为“Gary Danko”。搜索引擎110可以确定搜索结果涉及条目“Gary Danko”。
在确定条目之后,搜索引擎110还可以确定条目是否在注释数据库120内。作为确定条目在注释数据库120内的结果,搜索引擎110确定与注释数据库120中的条目关联的一个或多个条目标签。例如,假定条目为“Gary Danko”,如以上所指出的,并且与“GaryDanko”关联的条目标签包括种类标签“餐馆”、街道标签“Point大街”、城市标签“旧金山”和烹饪类型标签“法式”。搜索引擎110可以将所确定的条目标签和/或条目存储在会话索引储存库124中,并且在会话索引储存库124中使条目标签和/或条目与用于用户会话的唯一标识符关联。
在一些实施方式中,搜索引擎110确定包括搜索查询109的用户会话的一个或多个会话标签。搜索标签与关于用户会话的信息关联。
在一些示例中,会话标签包括指示用户会话何时开始和结束的时间标签,例如时间戳。例如,用户会话在2013年7月1日上午8:30开始并且在2013年7月1日上午8:35结束。用于用户会话的时间标签可以是2013年7月1日上午8:30到8:35。搜索引擎110可以将精确时间映射至较宽的时间参考,例如“清晨”、“早上”、“中午”、“下午”、“傍晚”、“晚上”或者“午夜”,并且使用较宽的时间参考作为时间标签。例如,假定用户会话在上午8:30发生,则用户会话的时间标签可以是“清晨”或者“早上”。时间标签可以包括用于用户会话的数据标签,例如“2013年7月1日”。
在一些示例中,会话标签包括指示用户会话发生时用户的位置的位置标签。搜索引擎110可以基于用户所使用的用户设备106中的定位器(例如全球定位系统(GPS))或者用户设备106的IP地址来确定用户的位置。位置标签可以是精确地址,例如“200market大街,旧金山,CA,94111”或者“market大街”。在一些示例中,搜索引擎110基于关于用户或者用户设备的信息来使精确地址指代参考位置。位置标签可以包括参考位置,例如“家里”、“我的办公室”或者“我妻子的办公室”。
在一些示例中,会话标签包括指示用户在用户会话期间进行的动作或者用户在用户会话之前进行的动作的动作标签。搜索引擎110可以基于与先前用户会话关联的动作或者用户使用用户设备106正在进行的动作来确定动作标签。例如,动作标签可以是“就在我打电话给我的妻子之后”、“就在我设置警报之后”或者“在我锻炼时”。
在一些示例中,会话标签包括指示用户在用户会话期间是否与某个人同在的共同存在信息标签。例如,共同存在信息标签可以是“与我妻子同在”。
在确定用于用户会话的一个或多个会话标签之后,搜索引擎110可以将会话标签存储在会话索引储存库124中,并且在会话索引储存库124中使会话标签与用于用户会话的唯一标识符关联。在稍后的用户会话中,基于会话索引储存库124中的关联,搜索引擎可以基于一个或多个会话标签、一个或多个条目标签和/或条目来确定用于用户会话的标识符。
对于用户会话,会话索引储存库124可以使用于用户会话的标识符与用于用户会话的一个或多个会话标签关联,并且使用于用户会话的标识符与和用户会话中的一系列查询关联的一个或多个条目标签和/或条目关联。
如以上所指出的,搜索引擎110可以向用户提供对话式搜索服务。在一些实施方式中,搜索引擎110包括语音到文本引擎126(例如自动语音识别器(ASR)或者自动语音识别引擎)、对话会话模块128、查询执行模块130和响应引擎132。响应引擎132可以包括动作引擎134和文本到语音(TTS)引擎136。
搜索引擎110可以在用户会话中从用户设备106接收查询,例如语音查询、文本查询等。语音到文本引擎126可以识别语音查询并且将语音查询转换成转录(transcription)。语音到文本引擎126可以例如基于拼写和/或语法来纠正或者补偿语音查询中的错误。
在一些实施方式中,搜索引擎110向用户设备106提供语音查询的转录用于向用户呈现。用户设备106的用户可以检查所呈现的转录以检查搜索引擎110是否正确地理解语音查询。用户可以根据需要来更新语音查询。语音到文本引擎126可以向对话会话模块128传递语音查询的转录。
如以上所指出的,搜索引擎110(例如对话会话模块128)可以确定查询是否与用户会话或者用户会话的子会话中的先前查询关联。在一些示例中,如果对话会话模块128确定查询与先前查询关联,则确定查询与用户会话关联。可以将与查询关联的情境数据存储在会话数据储存库122中,并且在会话数据储存库122中使与查询关联的情境数据与用于用户会话的标识符关联。
搜索引擎110(例如查询执行模块130)可以确定查询或者响应于查询的搜索结果涉及条目。响应于确定条目,查询执行模块130可以例如通过在注释数据库120中搜索条目来确定与条目关联的一个或多个条目标签。在确定条目标签之后,搜索引擎110可以将条目标签和/或条目存储在会话索引储存库124中,并且在会话索引储存库124中使条目标签和/或条目与用于用户会话的标识符关联。
在一些示例中,对话会话模块128例如通过以下方式来确定查询与用户会话中的先前查询不关联:确定查询是其中搜索引擎110使得能够响应于查询来执行动作而没有附加信息的完整查询。响应于确定查询与先前查询不关联,对话会话模块128确定查询与用户会话不关联,并且使查询与新的用户会话关联。
在一些示例中,如果对话会话模块128确定查询为不完整查询并且语音查询与先前查询不关联,则对话会话模块128可以确定查询与先前用户会话相关。在确定查询与先前用户会话相关之后,搜索引擎110可以在会话数据储存库122和会话索引储存库124中搜索用于查询的附加信息。
在一些示例中,对话会话模块128通过确定查询具有过去时态(例如“我当时谈论的是什么书”)来确定查询与先前用户会话相关。在一些示例中,对话会话模块128通过以下方式来确定查询与先前用户会话相关:例如基于语法规则来解析查询以确定查询包括指示较早时间的一个或多个会话标签,例如时间标签“今天早上”或者“昨天早上”、位置标签“当我在家里时”、动作标签“就在我给我妻子打电话之后”或者共同存在信息标签“当我和我妻子同在时”。
在一些示例中,对话会话模块128基于语法规则使用大量模板以确定用于查询和/或查询的意图的条目标签和/或会话标签。例如,模板可以包括:
-我[“时间标签”]谈论的[“条目标签”]是什么
(例如查询为“我今天早上谈论的书是什么”)
-在[“条目标签”]上的[“条目标签”]是什么
(例如查询为“castro大街上的那个地方是什么”)
-当我在[“位置标签”]处时谈论的是什么
(例如查询为“当我在家里时谈论的是什么”)
响应于确定查询涉及一个或多个标签,搜索引擎110(例如查询执行模块130)可以搜索会话索引储存库124以确定一个或多个标签是否与会话索引储存库124中的一个或多个特定标识符关联。一个或多个特定标识符与一个或多个标签中的每个标签关联。
搜索引擎110可以首先确定与会话索引储存库124中的每个标签关联的大量候选标识符,并且通过确定所确定的相应标识符的交叠来从大量候选标识符中选择一个或多个特定标识符,如图3B中进一步详细讨论的。
响应于确定标签与会话索引储存库124中的特定标识符关联,搜索引擎110(例如查询执行模块130)可以搜索会话数据储存库122以确定与特定标识符关联的特定情境数据。
搜索引擎110(例如响应引擎132)可以从会话数据储存库122中检索特定情境数据,并且例如通过动作引擎134基于所检索的特定情境数据而响应于查询来执行动作。动作可以包括搜索动作、提醒动作或者导航动作。
在一些示例中,动作引擎134建立一个或多个提醒通知,并且在预定时间点向用户设备106发送提醒通知。在一些示例中,动作引擎134执行导航动作并且给出从出发位置(例如当前地址)到目的地位置的方向。
在一些示例中,动作引擎134响应于查询来执行搜索动作,并且向用户设备106提供搜索结果网页资源111。搜索引擎110可以基于搜索结果来生成应答。应答可以是用于应答搜索查询的搜索结果的综述或者摘要。应答可以基于搜索结果中与搜索查询最相关和/或具有最高评级得分的搜索结果。
文本到语音引擎136可以将应答从转录变换成语音。用户设备106可以接收应答的语音的数字呈现,使得用户可以通过用户设备106中的扬声器来倾听应答。在一些情况下,用户设备106接收应答的语音的数字呈现以及呈现在用户设备106上的搜索结果页面资源111二者。
在一些实施方式中,搜索引擎110确定用于用户的用户标识符和/或用于用户设备106的设备标识符。搜索引擎110使用户标识符和/或设备标识符与会话数据储存库122中的相应会话数据和会话索引储存库124中的相应会话索引关联。会话数据和会话索引与用于用户或者用户设备的用户会话关联。当用户使用用户设备106输入查询时,搜索引擎110可以确定用户标识符和/或设备标识符,并且然后确定和使用会话数据储存库122中的关联的会话数据和/或会话索引储存库124中的关联的会话索引。
在一些实施方式中,与用户和/或用户设备106关联的会话数据和/或会话索引可以存储在用户设备106中。当用户使用用户设备106输入查询时,搜索引擎110可以请求存取所存储的会话数据和/或会话索引用于与用户和/或用户设备106的对话式搜索。在一些示例中,会话数据存储在用户设备106中。会话索引可以存储在搜索引擎110中的会话索引储存库124中。在对话式搜索中,搜索引擎110可以基于搜索查询和会话索引来确定一个或多个特定用户会话,并且请求存取用户设备106中的会话数据。
在一些实施方式中,搜索引擎110被配置成在对话式搜索中从先前会话检索和使用情境用于包括英语在内的国际语言(例如中文、韩文、日文、俄文、北印度语、法语或者德语)。为了实现这个目的,搜索引擎110可以包括基于语言代码的地图以支持各种语言场景。
图1B是在示例搜索对话用户界面中的对话式搜索的图示。搜索引擎110提供搜索对话用户界面150a以用于在用户设备106上显示。搜索对话用户界面150a包括用于接收查询的搜索框152a和用于从用户接收语音查询的麦克风图标154。用户例如通过点击用户界面150a中的麦克风图标154来输入语音查询。
在用户会话X中,搜索引擎110从用户接收语音查询138(例如“哪个餐馆是旧金山最好的法式餐馆”)。搜索引擎110确定响应于语音查询的搜索结果涉及条目(例如“GaryDanko”)。搜索引擎110然后确定条目“Gary Danko”在注释数据库120内,并且确定与注释数据库120内的条目关联的一个或多个条目标签,包括种类标签“餐馆”、街道标签“Point大街”和烹饪类型标签“法式”。
搜索引擎110将所确定的条目标签和条目存储在会话索引储存库124中,并且在会话索引储存库124中使条目标签和条目与用于用户会话的唯一标识符“X”关联作为会话索引140。搜索引擎110还确定用于用户会话X的一个或多个会话标签(例如时间标签“2013年7月1日早上8:30”),并且将时间标签存储在会话索引储存库124中并且在会话索引储存库124中使时间标签与会话索引140中的标识符“X”关联。
搜索引擎110确定与语音查询关联的情境数据。情境数据包括响应于语音查询的搜索结果以及与语音查询和搜索结果关联的元数据。元数据可以包括关于“Gary Danko”的信息,诸如客户评级、地址、电话号码、开放时间和菜单,和/或包括关于旧金山的其它法式餐馆的信息。搜索引擎110将情境数据存储在会话数据储存库122中,并且在会话数据储存库122中使情境数据与用于用户会话X的标识符“X”关联。
在稍后的用户会话Y中,例如在2013年7月1日下午6:00,用户输入新的语音查询。当用户开始输入语音查询时,用户界面150a变为用户界面150b。例如通过语音到文本引擎126对语音查询进行识别并且将其转换成转录。例如以实时方式或者在语音查询完成之后向用户设备106传输转录以用于在用户界面150b上显示例如串152b“告诉我有关今天早上的餐馆的情况”。
搜索引擎110确定语音查询的转录涉及条目标签“餐馆”和时间标签“今天早上”。搜索引擎110基于语法规则和用于用户会话Y的时间戳确定语音查询涉及较早的时间“今天早上”,例如2013年7月1日早上6:00到下午12:00。
搜索引擎110搜索与会话索引储存库124中的条目标签“餐馆”和时间标签“今天早上”关联的一个或多个特定标识符。搜索引擎110可以确定与时间标签“今天早上”关联的大量第一候选标识符(例如“M”、“P”和“X”)以及与条目标签“餐馆”关联的大量第二候选标识符(例如“N”和“X”)。第一候选标识符和第二候选标识符的交叠为“X”。搜索引擎110然后确定与条目标签和时间标签二者关联的特定标识符为与用户会话X对应的“X”。
在一些示例中,搜索引擎110首先确定与时间标签关联的第一候选标识符(例如“M”、“P”和“X”),并且然后根据所确定的第一候选标识符确定特定标识符(例如“X”)。
搜索引擎110可以基于会话索引储存库124来确定响应于语音查询的搜索结果为“Gary Danko”,其为与条目标签“餐馆”关联的条目并且被存储在会话索引储存库124中。搜索引擎110可以从会话索引储存库122中检索所存储的并且与特定标识符“X”关联的情境数据,并且确定条目标签“餐馆”涉及“Gary Danko”。
搜索引擎110(例如响应引擎132)向用户设备106递送搜索结果。用户界面150b变为包括串152c“Gary Danko”(例如搜索框152c中的所确定的搜索结果)的用户界面150c。用户界面150c还包括响应于串152c的有序搜索结果集合158c。搜索引擎110基于搜索结果以及预定的语法规则或者模板生成应答,例如“你看过Gary Danko餐馆”。用户设备106接收应答的文本到语音引擎160c,其通过用户设备106的扬声器播放出来。
为了继续对话,用户点击用户界面150c中的麦克风图标154。当用户输入第二语音查询“是的,就是这家。导航到那里去”时,用户界面150c变为用户界面150d。搜索引擎110确定第二语音查询包括对先前语音查询的应答中的“Gary Danko”的明确引用“那里”,并且通过例如动作引擎134响应于第二语音查询来执行导航动作。
用户界面150d变为用户界面150e。搜索引擎110可以执行导航动作,并且在搜索框152e中呈现串156e“到Gary Danko的方向”并且在用户界面150e中呈现导航路径158e和导航地图162e。
图2A至图2C是用于存储和索引用户会话的条目标签和情境数据的示例过程200的流程图。可以通过搜索引擎(例如图1A至图1B的搜索引擎110)来执行过程200,以向用户设备(例如图1A至
图1B的用户设备106)提供对话式搜索服务。
搜索引擎接收对于用户会话的查询(202)。例如,搜索引擎在用户会话期间从用户设备接收查询。搜索引擎可以确定查询与先前查询关联并且与和先前查询相同的用户会话关联。搜索引擎可以确定查询与先前查询不关联,并且使查询与不同于用于先前查询的用户会话的用户会话关联。
搜索引擎确定查询或者响应于查询的搜索结果中的至少一项涉及数据库中的条目(204)。搜索引擎可以解析查询或者搜索结果以例如基于语法规则或者预定模板来确定查询或者搜索结果涉及条目。条目可以是实体、事件、动作等。搜索引擎可以搜索数据库(例如图1A的注释数据库120)以查找条目。数据库存储大量条目并且使每个条目与大量条目标签关联。
搜索引擎确定用于数据库中的条目的一个或多个条目标签(206)。在确定条目在数据库内之后,搜索引擎确定与数据库中的条目关联的一个或多个条目标签。例如,假定条目为“rich dad poor dad”,则与数据库中的“书籍”关联的条目标签可以包括种类标签(例如“书籍”)、作者标签(例如“Robert T.Kiyosaki”)和发布者标签(例如“PlataPublishing”)。在一些情况下,查询或者响应于查询的搜索结果仅包括“rich dad poordad”而不包括“书籍”。搜索引擎仍然能够基于数据库来确定条目“rich dad poor dad”与种类标签“书籍”关联。
搜索引擎将条目标签存储在会话索引储存库中(208),并且在会话索引储存库中使条目标签与表示用户会话的标识符关联(210)。会话索引储存库可以是图1A至图1B的会话索引储存库124。会话索引储存库使用于用户会话的相应标识符与相应条目标签和/或条目和/或会话标签关联。搜索引擎或者会话索引储存库可以向用户会话分配标识符,例如数字标识符、字母标识符或者其组合等。在一些示例中,搜索引擎还将条目存储在会话索引储存库中,并且在会话索引储存库中使条目与标识符和条目标签关联。
图2B是由搜索引擎可选地执行的示例过程250的流程图。搜索引擎确定用于用户会话的一个或多个会话标签(252)。会话标签与关于用户会话的信息关联。如以上所指出的,会话标签可以包括指示用户会话何时开始和结束的时间标签(例如时间戳)、指示用户会话出现时用户的位置的位置标签、指示用户在用户会话期间进行的动作或者用户在用户会话之前进行的动作的动作标签和/或指示用户在用户会话期间是否与某人同在的共同存在信息。
搜索引擎将会话标签存储在会话索引储存库中(254)并且在会话索引储存库中使会话标签与用于用户会话的标识符关联(256)。在一些示例中,用户会话包括一系列查询。可以在会话索引储存库中使标识符与用于用户会话中的每个查询的条目标签和/或条目以及用于用户会话的会话标签关联。
图2C是由搜索引擎可选地执行的示例过程260的流程图。搜索引擎确定用于查询的情境数据(262)。搜索引擎可以通过在网络(例如图1A的网络)和/或数据库(例如注释数据库120)中搜索来确定情境数据。情境数据可以包括响应于查询的搜索结果以及与查询和搜索结果关联的元数据。元数据可以包括用于查询的所确定的条目和条目标签。
搜索引擎将情境数据存储在会话数据储存库中(264),并且在第二储存库中使情境数据与用于用户会话的标识符关联(266)。会话数据储存库可以是图1A的会话数据储存库122。在一些实施方式中,会话索引储存库和会话数据储存库被包括在同一储存库(例如图1A的储存库114)中。用户会话可以包括一系列查询。可以在会话数据储存库中使标识符与用于用户会话中的每个查询的情境数据关联。
图3A至图3B是用于在对话式搜索中从先前会话检索和使用情境数据的示例过程300的流程图。过程300可以被搜索引擎(例如图1A至图1B的搜索引擎110或者图2A至图2C的搜索引擎)使用以向用户设备(例如图1A至图1B的用户设备106)提供对话式搜索服务。
搜索引擎接收对于用户会话的查询(302)。查询可以由用户使用用户设备来输入。搜索引擎可以确定查询是否与先前查询关联。如果搜索引擎确定查询与先前查询关联,则搜索引擎可以基于与先前查询关联的情境数据而响应于查询来执行动作。如果搜索引擎确定查询与先前查询不关联并且查询为完整查询,则搜索引擎可以独立于其它查询而响应于查询来执行动作。
在一些示例中,搜索引擎确定查询与先前查询不关联并且查询为缺乏响应于查询来执行动作所需要的附加信息的不完整查询。响应于确定查询与先前查询不关联并且为不完整查询,搜索引擎可以确定查询与先前用户会话相关。在一些情况下,搜索引擎通过确定查询具有过去时态或者包括涉及较早时间的时间指示符来确定查询与先前用户会话相关。
搜索引擎确定查询涉及会话索引储存库中的一个或多个标签(304)。会话索引储存库使用于用户会话的相应标识符与用户会话中的相应标签和/或条目关联。会话索引储存库可以是图1A至图1B的会话索引储存库124。
搜索引擎可以解析查询以基于例如语法规则和/或预定模板来确定查询涉及一个或多个标签。搜索引擎还可以确定查询的意图。在一些示例中,搜索引擎通过解析第一查询来确定查询包括一个或多个查询分段,并且通过确定一个或多个标签与一个或多个查询分段对应来确定会话索引储存库中的一个或多个标签。
一个或多个标签至少包括一个或多个条目标签或者一个或多个会话标签。在一些示例中,一个或多个标签包括一个或多个标签目标。例如,查询可以是“castro大街上的餐馆是什么”。搜索引擎确定查询包括种类标签“餐馆”和地址标签或者街道标签“castro大街”。搜索引擎还可以确定用户的意图为查找旧金山或其附近的castro大街上的餐馆。
在一些示例中,一个或多个标签包括一个或多个会话标签。例如,假定查询为“今天早上当我家里时我谈论了什么”。搜索引擎确定查询包括2个会话标签:位置标签“家里”和时间标签“今天早上”。
在一些示例中,一个或多个标签包括一个或多个会话标签以及一个或多个条目标签。例如,查询可以是“我今天早上在找什么餐馆”。搜索引擎确定查询包括条目标签(也就是种类标签“餐馆”)和会话标签(也就是时间标签“今天早上”)。
在确定查询涉及一个或多个标签之后,搜索引擎可以搜索会话索引储存库以确定一个或多个标签是否在会话索引储存库内。
搜索引擎确定用于会话索引储存库中的标签的一个或多个特定标识符(306)。响应于确定一个或多个标签在会话索引储存库内,搜索引擎确定会话索引储存库中的一个或多个标签是否与一个或多个特定标识符关联。特定标识符可以与标签中的每个标签关联。
图3B是用于基于会话索引储存库中的标签来确定特定标识符的示例过程350的流程图。出于说明的目的,在过程350中,假定标签包括2个标签。搜索引擎可以使用类似于过程350的过程来确定与多于两个标签关联的特定标识符。
搜索引擎确定与在会话索引储存库中的标签中的第一标签关联的多个第一标识符(352)。在一些示例中,标签包括时间标签,例如“今天早上”。搜索引擎可以首先通过搜索会话索引储存库以选择与时间标签“今天早上”关联的第一标识符来确定与时间标签关联的多个第一标识符。
搜索引擎可以确定“今天早上”是相关的时间标签,然后基于步骤302中用于用户会话的时间戳来确定时间。例如,假定时间戳为“2013年7月1日下午6:00”。搜索引擎确定“今天早上”是指“2013年7月1日上午6:00到下午12:00”。搜索引擎然后确定与每个指代时间范围“2013年7月1日上午6:00到下午12:00”内的绝对时间的时间标签关联的多个第一标识符。第一标识符可以包括具有时间标签“上午7:01”的标识符“0001”、具有时间标签“上午8:00”的标识符“0005”、具有时间标签“上午10:51”的标识符“0009”以及具有时间标签“上午11:00”的标识符“0018”。所有第一标识符具有日期标签“2013年7月1日”。
搜索引擎从所确定的第一标识符确定与标签中的第二标签关联的多个第二标识符(354)。第二标签可以是会话标签(例如位置标签“在家里”)或者条目标签(例如种类标签“餐馆”)。没有在会话数据储存库中搜索,搜索引擎在所确定的第一标识符内确定第二标识符。由于第一标识符与第一标签关联,所以所确定的第二标识符与第一标签和第二标签二者关联。例如,所确定的第二标识符可以包括标识符“0001”和标识符“0018”。
如果标签仅包括第一标签和第二标签,则搜索引擎可以确定第二标识符为特定标识符。在一些示例中,如果搜索引擎确定第二标识仅包括例如标识符“0018”等标识符,则搜索引擎还可以确定第二标识符为特定标识符。如果标签包括除了第一标签和第二标签之外的标签,则搜索引擎可以继续从第二标识符确定与每个标签关联的特定标识符(356)。
在一些实施方式中,搜索引擎确定与会话索引储存库中的标签中的第二标签关联的多个第二标识符(358)。搜索引擎可以例如单独地和/或同时地执行步骤352和步骤358。搜索引擎从第一标识符和第二标识符的交叠确定与每个标签关联的特定标识符(360)。
在特定示例中,假定与第一标签关联的第一标识符为“0001”、“0005”、“0009”和“0018”,与第二标签关联的第二标识符为“0001”、“0018”和“0020”。第一标识符和第二标识符的交叠包括标识符“0001”和标识符“0018”。如果标签仅包括第一标签和第二标签,则搜索引擎确定特定标识符为交叠的标识符,也就是“0001”和“0018”。
搜索引擎可以单独地确定与会话索引储存库中的标签中的每个标签关联的多个候选标识符。在一些情况下,搜索引擎从每个标签的候选标识符的交叠确定多个标识符。在一些情况下,如果标签包括时间标签,则搜索系统首先确定与时间标签关联的多个候选标识符,例如步骤302,并且然后例如通过以下方式来基于剩余标签从所确定的候选标识符确定特定标识符:确定与剩余标签中的每个标签关联的标识符并且选择所确定的标识符的交叠。
在一些情况下,搜索引擎基于大量关联标签来确定用于候选标识符的顺序,并且确定特定标识符为具有最高排序得分的标识符。例如假定标签包括5个标签。根据5个标签的候选标识符的交叠,搜索引擎确定第一候选标识符与3个标签关联并且第二候选标识符与4个标签关联。没有标识符与5个标签关联。因此搜索引擎可以确定特定标识符为第二候选标识符。
返回参考图3A,搜索引擎在会话数据储存库中检索用于特定标识符的特定情境数据(308)。在确定特定标识符与会话索引储存库中的标签关联之后,搜索引擎在会话数据储存库中确定并且检索与所确定的特定标识符关联的特定情境数据。会话数据储存库可以是图1A的会话数据储存库122,并且使用户会话的相应标识符与相应情境数据关联。特定情境数据可以包括由特定查询表示的用户会话中的搜索查询、响应于搜索查询的搜索结果以及与搜索查询和搜索结果关联的元数据。
搜索引擎基于特定情境数据而响应于查询来执行动作(310)。搜索引擎可以使用所检索的特定情境数据来响应于查询而执行动作。动作可以是搜索动作、导航动作、提醒动作等。
在一些示例中,搜索引擎确定所检索的情境数据中的搜索查询或者搜索结果涉及与查询所涉及的一个或多个标签对应的一个或多个特定条目。搜索引擎可以基于所确定的条目而响应于查询来执行动作。
例如,假定查询为“告诉我关于今天早上的餐馆的情况”。如果所检索的情境数据中的搜索查询或者搜索结果涉及与查询中的条目标签“餐馆”对应的条目“Gary Danko”,则搜索引擎基于条目“Gary Danko”和/或语法规则和/或模板而响应于查询来提供应答,例如“你看过Gary Danko餐馆”。
在特定示例中,在今天早上发生的较早的用户会话X中,用户在查找旧金山的餐馆吃午饭。搜索引擎确定用户会话X中的查询或者响应于查询的搜索结果中的至少一项涉及餐馆“Gary Danko”、“Zuni Café”和“Slanted Door Restaurant”。
搜索引擎在数据库(例如图1A的注释数据库120)中确定所有3个餐馆的种类标签“餐馆”和城市标签“旧金山”。搜索引擎还确定“Gary Danko”的地址标签为“Point大街”、“Zuni Café”的地址标签为“Market大街”以及“Slanted Door Restaurant”的地址标签为“Ferry大厦”。搜索引擎将餐馆的所确定的标签存储在会话索引储存库中,并且在会话索引储存库中使所确定的标签与会话标识符X关联。搜索引擎还确定查询的情境数据,例如餐馆名称、地址、开放时间、电话号码、烹饪类型和客户评级。搜索引擎将情境数据存储在会话数据储存库中并且在会话数据储存库中使情境数据与用户会话X关联。
在稍后的用户会话Y中,例如在用户会话X同一天的晚上,用户使用搜索引擎用于对话式搜索。搜索引擎可以检索和使用用户会话X的情境数据以应答来自用户的查询。查询(Q)和回答或者应答(A)可以如下:
Q1:告诉我今天早上的餐馆的情况
A1:你看过Gary Danko餐馆
Q2:还有另一家
A2:是的,旧金山市market大街上的Zuni Café
Q3:Ferry大厦那里的是哪一家
A3:那是Slanted Door Restaurant
Q4:是的,就是那一家,把它发给我妻子
Q5:导航至那里
响应于Q4,搜索引擎可以向用户的妻子传输消息或者电子邮件。响应于Q5,搜索引擎可以执行导航动作,以搜索从用户的当前地址指向到Slanted Door Restaurant的地址的路线。
本说明书中所描述的主题和操作的实施例可以用数字电子电路来实施,或者用计算机软件、固件(包括本说明书及其结构等同方案中所公开的结构)来实施,或者使用其中的一个或多个的组合来实施。可以将本说明书中所描述的主题的实施例实施为在计算机存储介质上被编码的一个或多个计算机程序,例如计算机程序指令的一个或多个模块,这些指令用于由数据处理装置来执行或者控制数据处理装置的操作。备选地或者另外地,可以在人工生成的传播信号(例如机器生成的电、光或者电磁信号)上对程序指令编码,该信号被生成为对信息进行编码以用于向合适的接收装置传输以由数据处理装置来执行。计算机存储介质可以是计算机可读存储设备、计算机可读存储基质、随机或者顺序存取存储器阵列或设备或者其中一个或多个的组合,或者被包括在计算机可读存储设备、计算机可读存储基质、随机或者顺序存取存储器阵列或设备或者其中一个或多个的组合中。另外,虽然计算机存储介质不是传播信号,但是计算机存储介质可以是用人工生成的传播信号编码的计算机程序指令的源或者目的地。计算机存储介质还可以是一个或多个单独的物理部件或介质(例如多个CD、盘或者其它存储设备),或者可以被包括在一个或多个单独的物理部件或介质中。
可以将本说明书中所描述的操作实施为由数据处理装置对在一个或多个计算机可读存储设备上存储的或者从其它源接收的数据执行的操作。
术语“数据处理装置”包括用于处理数据的所有种类的装置、设备和机器,包括例如可编程处理器、计算机、片上系统或者上述各项中的多项或者组合。装置可以包括专用逻辑电路,例如FPGA(现场可编程门阵列)或者ASIC(专用集成电路)。除了硬件,装置还可以包括创建所讨论的计算机程序的执行环境的代码,例如构成处理器固件、协议栈、数据库管理系统、操作系统、跨平台运行时间环境、虚拟机或者其中的一个或多个的组合的代码。装置和执行环境可以实现各种不同的计算模型架构,诸如web服务、分布式计算架构和网格式计算架构。
可以用任何形式的编程语言来编写计算机程序(也被称为程序、软件、软件应用、脚本或者代码),包括编译语言或者解释语言、声明语言或者过程语言,并且可以用任何形式来部署计算机程序,包括作为独立式程序或者作为模块、部件、子例程、对象或者适合用于在计算环境中使用的其它单元。计算机程序可以而非必须对应于文件系统中的文件。程序可以存储在保存其它程序或者数据(例如存储在标记语言文档中的一个或多个脚本)的文件的一部分中,存储在专用于所讨论的程序的单个文件中,或者存储在多个协同文件(例如存储一个或多个模块、子程序或者代码的一部分的文件)中。计算机程序可以被部署成在一个计算机或者在多个计算机上执行,多个计算机在一个地方或者分布在多个地方并且通过通信网络互连。
可以由一个或多个可编程处理器来执行本说明书中所描述的过程和逻辑流程,一个或多个可编程处理器执行一个或多个计算机程序以通过对输入数据执行操作并且生成输出来执行动作。也可以由专用逻辑电路来执行过程和逻辑流程,并且也可以将装置实施为专用逻辑电路,例如FPGA(现场可编程门阵列)或者ASIC(专用集成电路)。
适合于执行计算机程序的处理器包括例如通用和专用微处理器二者以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器从只读存储器或者随机存取存储器或者从这二者接收指令和数据。计算机的主要元件是用于根据指令执行动作的处理器以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还可以包括一个或多个海量存储设备,或者在操作上被耦合以从一个或多个海量存储设备接收数据或者向一个或多个海量存储设备传送数据或者进行这二者,一个或多个海量存储设备用于存储数据,例如磁盘、磁光盘或者光盘。然而,计算机不需要具有这样的设备。另外,计算机可以被嵌入在另一设备(例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏机、全球定位系统(GPS)接收器或者便携式存储设备(例如通用串行总线(USB)闪存设备)等)中。适合于存储计算机程序指令和数据的设备包括所有形式的非易失性存储器、介质和存储器设备,例如包括:半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或者可移除盘;磁光盘;以及CD-ROM和DVD-ROM盘。处理器和存储器可以由专用逻辑电路来补充或者被合并在专用逻辑电路中。
为了提供与用户的交互,可以在具有用于向用户显示信息的显示设备(例如CRT(阴极射线管)或LCD(液晶显示器)显示器)以及用户能够通过其向计算机提供输入的键盘和指示设备(例如鼠标或跟踪球)的计算机上来实施本说明书中所描述的主题的实施例。也可以使用其它种类的设备以提供与用户的交互;例如,向用户提供的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或者触觉反馈;来自用户的输入可以以任何形式被接收,包括声音输入、语音输入或者触觉输入。另外,计算机可以通过向用户所使用的设备发送文档并且从该设备接收文档来与用户交互;例如通过响应于从web浏览器接收的请求在用户的用户设备上向web浏览器发送web页面。
本说明书中所描述的主题的实施例可以在计算机系统中来实施,计算机系统包括后端部件(例如作为数据服务器),或者包括中间部件(例如应用服务器),或者包括前端部件(例如具有用户能够通过其与本说明书中所描述的主题的实施方式进行交互的图形用户界面或者web浏览器的用户计算机),或者包括一个或多个这样的后端部件、中间部件或前端部件的任意组合。系统的部件可以通过任何形式或介质的数字数据通信(例如通信网络)来互连。通信网络的示例包括局域网(LAN)和广域网(WAN)、跨网(例如因特网)和对等网络(例如专用对等网络)。
计算系统可以包括用户和服务器。用户和服务器通常彼此远离,并且通常通过通信网络交互。用户与服务器的关系凭借在相应计算机上运行并且彼此具有用户服务器关系的计算机程序而出现。在一些实施例中,服务器向用户设备传输数据(例如HTML页面)(例如出于向用户设备显示数据并且从与用户设备交互的用户接收用户输入的目的)。可以在服务器处从用户设备接收在用户设备处生成的数据(例如用户交互的结果)。
虽然本说明书包含许多特定实施细节,然而不应当将这些细节理解为限制可能要求保护的范围,相反,应当将其理解为描述特定实施例特定的特征。也可以在单个实施例中以组合的方式来实施在本说明书中在单独的实施例的情境中描述的某些特征。相反,也可以在多个实施例中单独地或者在任何合适的子组合中实施在单个实施例的情境中描述的各种特征。另外,虽然在某些实施例中可以如以上将特征描述为动作并且甚至本来像这样被要求保护,但是在一些情况下可以从组合中去除来自要求保护的组合的一个或多个特征,并且可以使要求保护的组合针对子组合或者子组合的变型。
类似地,虽然在附图中按照特定顺序来描绘操作,但是不应当将其理解为要求以所示出的特定顺序或者依次顺序来执行这样的操作以实现期望的结果,也不应当将其理解为执行所有图示的操作以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。另外,不应当将以上描述的实施例中的各种系统部件的分离理解为在所有实施例中要求这样的分离,并且应当理解的是,通常可以将所描述的程序部件和系统一起集成在单个软件产品中或者封装成多个软件产品。
因此,已经描述了主题的特定实施例。其它实施例在以下权利要求的范围内。在一些情况下,可以按照不同的顺序来执行权利要求中给出的动作,并且仍然实现期望的结果。另外,附图中所描绘的过程并不一定要求所示的特定顺序或者依次顺序以实现期望的结果。在某些实施方式中,多任务和并行处理可能是有利的。
Claims (28)
1.一种计算机实施的方法,包括:
通过搜索引擎并且从语音到文本引擎接收搜索查询,所述搜索查询基于在当前搜索会话期间通过数字助理设备检测的用户的话语;
通过所述搜索引擎确定所述搜索查询涉及时间指示符,所述时间指示符指示早于所述当前搜索会话的时间;
通过所述搜索引擎确定所述搜索查询涉及一个或多个其他查询项;
通过所述搜索引擎并且根据存储在与所述搜索引擎关联的储存库中的会话数据,从第二组先前搜索会话确定第一组相关先前搜索会话,其中,所述第二组先前搜索会话包括比所述第一组相关先前搜索会话更多的先前搜索会话,其中,所述第一组相关先前搜索会话中的每一个先前搜索会话与对应于所述时间指示符的相应时间标记关联;
通过所述搜索引擎,基于与所述当前搜索会话的搜索查询关联的所述一个或多个其他查询项而不搜索不在所述第一组相关先前搜索会话中的第二组先前搜索会话中的任何先前搜索会话,从根据存储在与所述搜索引擎关联的存储库中的会话数据确定的所述第一组相关先前搜索会话中标识特定先前搜索会话;
通过所述搜索引擎,基于所述当前搜索会话的搜索查询的所述一个或多个其他查询项,标识与一个或多个搜索查询或特定先前搜索会话的搜索结果关联的一个或多个实体;以及
从文本到语音引擎提供(i)对所述搜索查询的响应,所述响应包括被配置为响应于所述当前搜索会话的搜索查询要被输出在所述数字助理设备的扬声器上的实体中的一个或多个的表示,以及从所述搜索引擎提供(ii)被配置为在使用所述数字助理设备的扬声器输出对搜索查询的响应的至少一部分期间要在所述数字助理设备的图形用户界面上渲染的与所述一个或多个实体相关的元数据。
2.根据权利要求1所述的方法,其中,从所述第一组相关先前搜索会话中标识特定先前搜索会话包括:
对于所述第一组相关先前搜索会话中的每一个先前搜索会话,确定与所述一个或多个搜索查询或所述先前搜索会话的搜索结果关联的多个查询项;
基于与所述一个或多个搜索查询或所述先前搜索会话的搜索结果关联的所述多个查询项同所述当前搜索会话的搜索查询的所述一个或多个其他查询项的比较确定得分;以及
基于所述得分从所述第一组相关先前搜索会话中标识特定先前搜索会话。
3.根据权利要求1所述的方法,其中,操作还包括:
在确定所述搜索查询涉及时间指示符之前,确定所述搜索查询不与当前搜索会话的先前查询关联。
4.根据权利要求1所述的方法,其中,操作还包括:
确定所述搜索查询涉及用户位置指示符,所述用户位置指示符指示在先前搜索会话期间所述用户的位置;以及
确定多个先前搜索会话,每个先前搜索会话与对应于所述用户位置指示符的相应位置标记关联。
5.根据权利要求1所述的方法,其中,从第二组先前搜索会话确定第一组相关先前搜索会话包括:标识与在与所述时间指示符关联的时间范围内的时间标记关联的先前搜索会话。
6.根据权利要求1所述的方法,其中,操作还包括:
在当前搜索会话期间接收搜索查询之前,确定用户的用户标识符。
7.根据权利要求6所述的方法,其中,从第二组先前搜索会话确定第一组相关先前搜索会话包括:确定与所述用户标识符关联的多个先前搜索会话。
8.根据权利要求1所述的方法,其中,操作还包括:
基于响应于所述当前搜索会话的搜索查询的实体中的一个或多个的表示执行动作。
9.根据权利要求8所述的方法,其中,所述动作是导航动作。
10.一种系统,包括:
数据处理装置;以及
非暂态计算机可读存储介质,与所述数据处理装置数据通信并且存储指令,所述指令由所述数据处理装置可执行并且在这样的执行时使得所述数据处理装置执行操作,所述操作包括:
通过搜索引擎并且从语音到文本引擎接收搜索查询,所述搜索查询基于在当前搜索会话期间通过数字助理设备检测的用户的话语;
通过所述搜索引擎确定所述搜索查询涉及时间指示符,所述时间指示符指示早于所述当前搜索会话的时间;
通过所述搜索引擎确定所述搜索查询涉及一个或多个其他查询项;
通过所述搜索引擎并且根据存储在与所述搜索引擎关联的储存库中的会话数据,从第二组先前搜索会话确定第一组相关先前搜索会话,其中,所述第二组先前搜索会话包括比所述第一组相关先前搜索会话更多的先前搜索会话,其中,所述第一组相关先前搜索会话中的每一个先前搜索会话与对应于所述时间指示符的相应时间标记关联;
通过所述搜索引擎,基于与所述当前搜索会话的搜索查询关联的所述一个或多个其他查询项而不搜索不在所述第一组相关先前搜索会话中的第二组先前搜索会话中的任何先前搜索会话,从根据存储在与所述搜索引擎关联的存储库中的会话数据确定的所述第一组相关先前搜索会话中标识特定先前搜索会话;
通过所述搜索引擎,基于所述当前搜索会话的搜索查询的所述一个或多个其他查询项,标识与一个或多个搜索查询或特定先前搜索会话的搜索结果关联的一个或多个实体;以及
从文本到语音引擎提供(i)对所述搜索查询的响应,所述响应包括被配置为响应于所述当前搜索会话的搜索查询要被输出在所述数字助理设备的扬声器上的实体中的一个或多个的表示,以及从所述搜索引擎提供(ii)被配置为在使用所述数字助理设备的扬声器输出对搜索查询的响应的至少一部分期间要在所述数字助理设备的图形用户界面上渲染的与所述一个或多个实体相关的元数据。
11.根据权利要求10所述的系统,其中,从所述第一组相关先前搜索会话中标识特定先前搜索会话包括:
对于所述第一组相关先前搜索会话中的每一个先前搜索会话,确定与所述一个或多个搜索查询或所述先前搜索会话的搜索结果关联的多个查询项;
基于与所述一个或多个搜索查询或所述先前搜索会话的搜索结果关联的所述多个查询项同所述当前搜索会话的搜索查询的所述一个或多个其他查询项的比较确定得分;以及
基于所述得分从所述第一组相关先前搜索会话中标识特定先前搜索会话。
12.根据权利要求10所述的系统,其中,所述操作还包括:
在确定所述搜索查询涉及时间指示符之前,确定所述搜索查询不与当前搜索会话的先前查询关联。
13.根据权利要求10所述的系统,其中,所述操作还包括:
确定所述搜索查询涉及用户位置指示符,所述用户位置指示符指示在先前搜索会话期间所述用户的位置;以及
确定多个先前搜索会话,每个先前搜索会话与对应于所述用户位置指示符的相应位置标记关联。
14.根据权利要求10所述的系统,其中,从第二组先前搜索会话确定第一组相关先前搜索会话包括:标识与在与所述时间指示符关联的时间范围内的时间标记关联的先前搜索会话。
15.根据权利要求10所述的系统,其中,所述操作还包括:
在当前搜索会话期间接收搜索查询之前,确定用户的用户标识符。
16.根据权利要求15所述的系统,其中,从第二组先前搜索会话确定第一组相关先前搜索会话包括:确定与所述用户标识符关联的多个先前搜索会话。
17.根据权利要求10所述的系统,其中,所述操作还包括:
基于响应于所述当前搜索会话的搜索查询的实体中的一个或多个的表示执行动作。
18.根据权利要求17所述的系统,其中,所述动作是导航动作。
19.一种存储指令的非暂态计算机可读存储介质,所述指令由数据处理装置可执行并且在这样的执行时使得所述数据处理装置执行操作,所述操作包括:
通过搜索引擎并且从语音到文本引擎接收搜索查询,所述搜索查询基于在当前搜索会话期间通过数字助理设备检测的用户的话语;
通过所述搜索引擎确定所述搜索查询涉及时间指示符,所述时间指示符指示早于所述当前搜索会话的时间;
通过所述搜索引擎确定所述搜索查询涉及一个或多个其他查询项;
通过所述搜索引擎并且根据存储在与所述搜索引擎关联的储存库中的会话数据,从第二组先前搜索会话确定第一组相关先前搜索会话,其中,所述第二组先前搜索会话包括比所述第一组相关先前搜索会话更多的先前搜索会话,其中,所述第一组相关先前搜索会话中的每一个先前搜索会话与对应于所述时间指示符的相应时间标记关联;
通过所述搜索引擎,基于与所述当前搜索会话的搜索查询关联的所述一个或多个其他查询项而不搜索不在所述第一组相关先前搜索会话中的第二组先前搜索会话中的任何先前搜索会话,从根据存储在与所述搜索引擎关联的存储库中的会话数据确定的所述第一组相关先前搜索会话中标识特定先前搜索会话;
通过所述搜索引擎,基于所述当前搜索会话的搜索查询的所述一个或多个其他查询项,标识与一个或多个搜索查询或特定先前搜索会话的搜索结果关联的一个或多个实体;以及
从文本到语音引擎提供(i)对所述搜索查询的响应,所述响应包括被配置为响应于所述当前搜索会话的搜索查询要被输出在所述数字助理设备的扬声器上的实体中的一个或多个的表示,以及从所述搜索引擎提供(ii)被配置为在使用所述数字助理设备的扬声器输出对搜索查询的响应的至少一部分期间要在所述数字助理设备的图形用户界面上渲染的与所述一个或多个实体相关的元数据。
20.根据权利要求19所述的计算机可读存储介质,其中,从所述第一组相关先前搜索会话中标识特定先前搜索会话包括:
对于所述第一组相关先前搜索会话中的每一个先前搜索会话,确定与所述一个或多个搜索查询或所述先前搜索会话的搜索结果关联的多个查询项;
基于与所述一个或多个搜索查询或所述先前搜索会话的搜索结果关联的所述多个查询项同所述当前搜索会话的搜索查询的所述一个或多个其他查询项的比较确定得分;以及
基于所述得分从所述第一组相关先前搜索会话中标识特定先前搜索会话。
21.根据权利要求19所述的计算机可读存储介质,其中,所述操作还包括:
在确定所述搜索查询涉及时间指示符之前,确定所述搜索查询不与当前搜索会话的先前查询关联。
22.根据权利要求19所述的计算机可读存储介质,其中,所述操作还包括:
确定所述搜索查询涉及用户位置指示符,所述用户位置指示符指示在先前搜索会话期间所述用户的位置;以及
确定多个先前搜索会话,每个先前搜索会话与对应于所述用户位置指示符的相应位置标记关联。
23.根据权利要求19所述的计算机可读存储介质,其中,从第二组先前搜索会话确定第一组相关先前搜索会话包括:标识与在与所述时间指示符关联的时间范围内的时间标记关联的先前搜索会话。
24.根据权利要求19所述的计算机可读存储介质,其中,所述操作还包括:
在当前搜索会话期间接收搜索查询之前,确定用户的用户标识符。
25.根据权利要求24所述的计算机可读存储介质,其中,从第二组先前搜索会话确定第一组相关先前搜索会话包括:确定与所述用户标识符关联的多个先前搜索会话。
26.根据权利要求19所述的计算机可读存储介质,其中,所述操作还包括:
基于响应于所述当前搜索会话的搜索查询的实体中的一个或多个的表示执行动作。
27.根据权利要求26所述的计算机可读存储介质,其中,所述动作是导航动作。
28.根据权利要求26所述的计算机可读存储介质,其中,所述动作是提醒动作。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462010294P | 2014-06-10 | 2014-06-10 | |
US62/010,294 | 2014-06-10 | ||
US14/448,547 | 2014-07-31 | ||
US14/448,547 US10275485B2 (en) | 2014-06-10 | 2014-07-31 | Retrieving context from previous sessions |
CN201510314119.0A CN105224586B (zh) | 2014-06-10 | 2015-06-09 | 从先前会话检索情境 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510314119.0A Division CN105224586B (zh) | 2014-06-10 | 2015-06-09 | 从先前会话检索情境 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111104496A true CN111104496A (zh) | 2020-05-05 |
CN111104496B CN111104496B (zh) | 2021-01-26 |
Family
ID=53274415
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911132153.0A Active CN111104496B (zh) | 2014-06-10 | 2015-06-09 | 从先前会话检索情境 |
CN201510314119.0A Active CN105224586B (zh) | 2014-06-10 | 2015-06-09 | 从先前会话检索情境 |
CN201911132163.4A Active CN110825835B (zh) | 2014-06-10 | 2015-06-09 | 从先前会话检索情境 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510314119.0A Active CN105224586B (zh) | 2014-06-10 | 2015-06-09 | 从先前会话检索情境 |
CN201911132163.4A Active CN110825835B (zh) | 2014-06-10 | 2015-06-09 | 从先前会话检索情境 |
Country Status (3)
Country | Link |
---|---|
US (4) | US10275485B2 (zh) |
EP (1) | EP2955643A1 (zh) |
CN (3) | CN111104496B (zh) |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10275485B2 (en) | 2014-06-10 | 2019-04-30 | Google Llc | Retrieving context from previous sessions |
US9547690B2 (en) | 2014-09-15 | 2017-01-17 | Google Inc. | Query rewriting using session information |
US9942122B2 (en) | 2016-02-29 | 2018-04-10 | Airmagnet, Inc. | Fast packet retrieval based on flow ID and metadata |
US9872072B2 (en) * | 2016-03-21 | 2018-01-16 | Google Llc | Systems and methods for identifying non-canonical sessions |
US10853872B1 (en) * | 2016-06-20 | 2020-12-01 | Amazon Technologies, Inc. | Advanced item associations in an item universe |
CN106355450B (zh) * | 2016-08-31 | 2020-04-24 | 深圳市联动精准科技有限公司 | 用户行为分析系统和方法 |
US10482885B1 (en) * | 2016-11-15 | 2019-11-19 | Amazon Technologies, Inc. | Speaker based anaphora resolution |
US10446144B2 (en) | 2016-11-21 | 2019-10-15 | Google Llc | Providing prompt in an automated dialog session based on selected content of prior automated dialog session |
US11004447B2 (en) * | 2016-12-26 | 2021-05-11 | Hyundai Motor Company | Speech processing apparatus, vehicle having the speech processing apparatus, and speech processing method |
CN108270660A (zh) * | 2017-01-04 | 2018-07-10 | 腾讯科技(深圳)有限公司 | 消息的快捷回复方法及装置 |
US11366864B2 (en) * | 2017-02-09 | 2022-06-21 | Microsoft Technology Licensing, Llc | Bot integration in a web-based search engine |
JP6920878B2 (ja) * | 2017-04-28 | 2021-08-18 | フォルシアクラリオン・エレクトロニクス株式会社 | 情報提供装置、及び情報提供方法 |
US10657173B2 (en) | 2017-06-09 | 2020-05-19 | Google Llc | Validate modification of audio-based computer program output |
CN110192246B (zh) * | 2017-06-09 | 2023-11-21 | 谷歌有限责任公司 | 对基于音频的计算机程序输出的修改 |
US10652170B2 (en) | 2017-06-09 | 2020-05-12 | Google Llc | Modification of audio-based computer program output |
US10600409B2 (en) | 2017-06-09 | 2020-03-24 | Google Llc | Balance modifications of audio-based computer program output including a chatbot selected based on semantic processing of audio |
US10614122B2 (en) | 2017-06-09 | 2020-04-07 | Google Llc | Balance modifications of audio-based computer program output using a placeholder field based on content |
US20180364798A1 (en) * | 2017-06-16 | 2018-12-20 | Lenovo (Singapore) Pte. Ltd. | Interactive sessions |
US10659451B2 (en) * | 2017-07-18 | 2020-05-19 | Bank Of America Corporation | System and method for injecting a tag into a computing resource |
US11436469B2 (en) | 2017-07-31 | 2022-09-06 | Microsoft Technology Licensing, Llc | Knowledge graph for conversational semantic search |
US20190068527A1 (en) * | 2017-08-28 | 2019-02-28 | Moveworks, Inc. | Method and system for conducting an automated conversation with a virtual agent system |
US20190065498A1 (en) * | 2017-08-29 | 2019-02-28 | Chirrp, Inc. | System and method for rich conversation in artificial intelligence |
WO2019089802A1 (en) * | 2017-10-31 | 2019-05-09 | Yext, Inc. | Knowledge search engine platform for enhanced business listings |
CN110019725A (zh) * | 2017-12-22 | 2019-07-16 | 科沃斯商用机器人有限公司 | 人机交互方法、系统及其电子设备 |
US10726206B2 (en) * | 2018-01-30 | 2020-07-28 | Disney Enterprises, Inc. | Visual reference resolution using attention memory for visual dialog |
US11403663B2 (en) * | 2018-05-17 | 2022-08-02 | Spotify Ab | Ad preference embedding model and lookalike generation engine |
US20190355372A1 (en) | 2018-05-17 | 2019-11-21 | Spotify Ab | Automated voiceover mixing and components therefor |
US11537428B2 (en) | 2018-05-17 | 2022-12-27 | Spotify Ab | Asynchronous execution of creative generator and trafficking workflows and components therefor |
CN111291072B (zh) * | 2020-01-21 | 2023-06-27 | 奇安信科技集团股份有限公司 | 一种会话数据的提取方法、装置、计算机系统及可读存储介质 |
US11803400B2 (en) * | 2020-06-25 | 2023-10-31 | International Business Machines Corporation | Method and system for asynchronous notifications for users in contextual interactive systems |
US11468052B2 (en) * | 2020-06-25 | 2022-10-11 | Google Llc | Combining parameters of multiple search queries that share a line of inquiry |
US11782961B2 (en) * | 2021-04-16 | 2023-10-10 | Amadeus S.A.S. | Device, system and method for providing descriptions to communication devices using machine learning generated templates |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090055355A1 (en) * | 2007-03-27 | 2009-02-26 | Brunner Josie C | Systems, methods, and apparatus for seamless integration for user, contextual, and social awareness in search results through layer approach |
US20110040768A1 (en) * | 2009-08-14 | 2011-02-17 | Google Inc. | Context based resource relevance |
US20110225192A1 (en) * | 2010-03-11 | 2011-09-15 | Imig Scott K | Auto-detection of historical search context |
CN102246171A (zh) * | 2008-12-11 | 2011-11-16 | 微软公司 | 提供具有搜索结果的最近历史 |
CN103548023A (zh) * | 2011-05-27 | 2014-01-29 | 国际商业机器公司 | 基于本体的自动自助式用户支持 |
Family Cites Families (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6980984B1 (en) * | 2001-05-16 | 2005-12-27 | Kanisa, Inc. | Content provider systems and methods using structured data |
US20030081744A1 (en) * | 2001-08-28 | 2003-05-01 | Gedaliah Gurfein | Interactive voice communications network entertainment |
US7398209B2 (en) | 2002-06-03 | 2008-07-08 | Voicebox Technologies, Inc. | Systems and methods for responding to natural language speech utterance |
US7054420B2 (en) | 2002-09-11 | 2006-05-30 | Telstrat International, Ltd. | Voice over IP telephone recording architecture |
WO2005020091A1 (en) * | 2003-08-21 | 2005-03-03 | Idilia Inc. | System and method for processing text utilizing a suite of disambiguation techniques |
US20070136251A1 (en) * | 2003-08-21 | 2007-06-14 | Idilia Inc. | System and Method for Processing a Query |
US8612208B2 (en) * | 2004-04-07 | 2013-12-17 | Oracle Otc Subsidiary Llc | Ontology for use with a system, method, and computer readable medium for retrieving information and response to a query |
US7580921B2 (en) * | 2004-07-26 | 2009-08-25 | Google Inc. | Phrase identification in an information retrieval system |
US7856441B1 (en) * | 2005-01-10 | 2010-12-21 | Yahoo! Inc. | Search systems and methods using enhanced contextual queries |
US7949642B2 (en) * | 2004-10-12 | 2011-05-24 | Wendy W Yang | System and method for managing and presenting entity information |
WO2006062868A2 (en) * | 2004-12-06 | 2006-06-15 | Yahoo! Inc. | Systems and methods for managing and using multiple concept networks for assisted search processing |
US8150872B2 (en) | 2005-01-24 | 2012-04-03 | The Intellection Group, Inc. | Multimodal natural language query system for processing and analyzing voice and proximity-based queries |
US7472119B2 (en) * | 2005-06-30 | 2008-12-30 | Microsoft Corporation | Prioritizing search results by client search satisfaction |
US7797303B2 (en) * | 2006-02-15 | 2010-09-14 | Xerox Corporation | Natural language processing for developing queries |
JP4338145B2 (ja) * | 2007-03-08 | 2009-10-07 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 事象の発生を決定付けるキーワードを検索する技術 |
US8015005B2 (en) | 2008-02-15 | 2011-09-06 | Motorola Mobility, Inc. | Method and apparatus for voice searching for stored content using uniterm discovery |
US8452805B2 (en) * | 2009-03-05 | 2013-05-28 | Kinpoint, Inc. | Genealogy context preservation |
US9858925B2 (en) * | 2009-06-05 | 2018-01-02 | Apple Inc. | Using context information to facilitate processing of commands in a virtual assistant |
US8538973B1 (en) * | 2010-04-05 | 2013-09-17 | Google Inc. | Directions-based ranking of places returned by local search queries |
US9361387B2 (en) * | 2010-04-22 | 2016-06-07 | Microsoft Technology Licensing, Llc | Context-based services |
US20110270819A1 (en) | 2010-04-30 | 2011-11-03 | Microsoft Corporation | Context-aware query classification |
US9194716B1 (en) * | 2010-06-18 | 2015-11-24 | Google Inc. | Point of interest category ranking |
US20120030021A1 (en) * | 2010-08-02 | 2012-02-02 | Yahoo! Inc. | Selecting advertisements using same session queries |
US20120158685A1 (en) * | 2010-12-16 | 2012-06-21 | Microsoft Corporation | Modeling Intent and Ranking Search Results Using Activity-based Context |
US9443026B2 (en) * | 2010-12-28 | 2016-09-13 | Yahoo! Inc. | Method and system to utilize session queries in real time to improve geo precision of sponsored listings |
US8688667B1 (en) * | 2011-02-08 | 2014-04-01 | Google Inc. | Providing intent sensitive search results |
US9576573B2 (en) * | 2011-08-29 | 2017-02-21 | Microsoft Technology Licensing, Llc | Using multiple modality input to feedback context for natural language understanding |
US9116994B2 (en) * | 2012-01-09 | 2015-08-25 | Brightedge Technologies, Inc. | Search engine optimization for category specific search results |
US9223537B2 (en) * | 2012-04-18 | 2015-12-29 | Next It Corporation | Conversation user interface |
US8995716B1 (en) * | 2012-07-12 | 2015-03-31 | Google Inc. | Image search results by seasonal time period |
US9424233B2 (en) | 2012-07-20 | 2016-08-23 | Veveo, Inc. | Method of and system for inferring user intent in search input in a conversational interaction system |
US20140095596A1 (en) * | 2012-09-28 | 2014-04-03 | Avaya Inc. | System and method for long-lived contextual interactions |
US9069825B1 (en) * | 2013-03-15 | 2015-06-30 | Google Inc. | Search dialogue user interface |
US9875494B2 (en) * | 2013-04-16 | 2018-01-23 | Sri International | Using intents to analyze and personalize a user's dialog experience with a virtual personal assistant |
US20150112963A1 (en) * | 2013-10-23 | 2015-04-23 | Tilofy, Inc. | Time and location based information search and discovery |
US10275485B2 (en) * | 2014-06-10 | 2019-04-30 | Google Llc | Retrieving context from previous sessions |
-
2014
- 2014-07-31 US US14/448,547 patent/US10275485B2/en active Active
-
2015
- 2015-05-22 EP EP15169051.8A patent/EP2955643A1/en not_active Ceased
- 2015-06-09 CN CN201911132153.0A patent/CN111104496B/zh active Active
- 2015-06-09 CN CN201510314119.0A patent/CN105224586B/zh active Active
- 2015-06-09 CN CN201911132163.4A patent/CN110825835B/zh active Active
-
2019
- 2019-03-15 US US16/355,212 patent/US11269873B2/en active Active
-
2022
- 2022-03-04 US US17/687,487 patent/US11709829B2/en active Active
-
2023
- 2023-06-26 US US18/341,422 patent/US20230334044A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090055355A1 (en) * | 2007-03-27 | 2009-02-26 | Brunner Josie C | Systems, methods, and apparatus for seamless integration for user, contextual, and social awareness in search results through layer approach |
CN102246171A (zh) * | 2008-12-11 | 2011-11-16 | 微软公司 | 提供具有搜索结果的最近历史 |
US20110040768A1 (en) * | 2009-08-14 | 2011-02-17 | Google Inc. | Context based resource relevance |
US20110225192A1 (en) * | 2010-03-11 | 2011-09-15 | Imig Scott K | Auto-detection of historical search context |
CN103548023A (zh) * | 2011-05-27 | 2014-01-29 | 国际商业机器公司 | 基于本体的自动自助式用户支持 |
Also Published As
Publication number | Publication date |
---|---|
US20220188302A1 (en) | 2022-06-16 |
US20230334044A1 (en) | 2023-10-19 |
CN105224586A (zh) | 2016-01-06 |
US11269873B2 (en) | 2022-03-08 |
US11709829B2 (en) | 2023-07-25 |
CN110825835A (zh) | 2020-02-21 |
CN105224586B (zh) | 2019-12-13 |
US10275485B2 (en) | 2019-04-30 |
US20150356136A1 (en) | 2015-12-10 |
CN110825835B (zh) | 2023-06-27 |
EP2955643A1 (en) | 2015-12-16 |
US20190251083A1 (en) | 2019-08-15 |
CN111104496B (zh) | 2021-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11709829B2 (en) | Retrieving context from previous sessions | |
US11514035B1 (en) | Query refinements using search data | |
US9582757B1 (en) | Scalable curation system | |
US10354647B2 (en) | Correcting voice recognition using selective re-speak | |
US20130019202A1 (en) | Methods and apparatus for delivering information of various types to a user | |
RU2685991C1 (ru) | Основанные на контексте мгновенные поисковые рекомендации | |
US20200065304A1 (en) | Assistive browsing using context | |
US20170200455A1 (en) | Suggested query constructor for voice actions | |
US20180285444A1 (en) | Rewriting contextual queries | |
US11003667B1 (en) | Contextual information for a displayed resource | |
US11392589B2 (en) | Multi-vertical entity-based search system | |
US9811592B1 (en) | Query modification based on textual resource context | |
US9275034B1 (en) | Exceptions to action invocation from parsing rules | |
US11425071B2 (en) | Uniform resource identifier and image sharing for contextual information display | |
US10467300B1 (en) | Topical resource recommendations for a displayed resource | |
CN106462603B (zh) | 对多个实体隐含的查询的歧义消除 | |
US10831791B1 (en) | Using location aliases | |
US10528564B2 (en) | Identifying teachable moments for contextual search |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |