CN111309136A - 加速的任务执行 - Google Patents
加速的任务执行 Download PDFInfo
- Publication number
- CN111309136A CN111309136A CN202010077771.6A CN202010077771A CN111309136A CN 111309136 A CN111309136 A CN 111309136A CN 202010077771 A CN202010077771 A CN 202010077771A CN 111309136 A CN111309136 A CN 111309136A
- Authority
- CN
- China
- Prior art keywords
- task
- candidate
- user
- electronic device
- natural language
- 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
- 230000004044 response Effects 0.000 claims abstract description 286
- 238000000034 method Methods 0.000 claims abstract description 205
- 238000003860 storage Methods 0.000 claims description 50
- 238000003058 natural language processing Methods 0.000 claims description 46
- 230000000007 visual effect Effects 0.000 claims description 21
- 230000009471 action Effects 0.000 claims description 18
- 238000012790 confirmation Methods 0.000 abstract description 100
- 230000008569 process Effects 0.000 abstract description 65
- 238000012545 processing Methods 0.000 description 80
- 238000004891 communication Methods 0.000 description 63
- 230000033001 locomotion Effects 0.000 description 52
- 235000013353 coffee beverage Nutrition 0.000 description 27
- 238000005111 flow chemistry technique Methods 0.000 description 25
- 230000003287 optical effect Effects 0.000 description 25
- 230000002093 peripheral effect Effects 0.000 description 21
- 230000015572 biosynthetic process Effects 0.000 description 20
- 238000003786 synthesis reaction Methods 0.000 description 20
- 238000001514 detection method Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 19
- 230000006870 function Effects 0.000 description 19
- 230000007246 mechanism Effects 0.000 description 19
- 230000014509 gene expression Effects 0.000 description 18
- 238000005516 engineering process Methods 0.000 description 17
- 230000008859 change Effects 0.000 description 15
- 230000007423 decrease Effects 0.000 description 14
- 239000008186 active pharmaceutical agent Substances 0.000 description 13
- 238000007726 management method Methods 0.000 description 13
- 241000699666 Mus <mouse, genus> Species 0.000 description 12
- 230000006399 behavior Effects 0.000 description 12
- 230000000694 effects Effects 0.000 description 11
- 230000003993 interaction Effects 0.000 description 9
- 235000015115 caffè latte Nutrition 0.000 description 8
- 230000036541 health Effects 0.000 description 8
- 230000000670 limiting effect Effects 0.000 description 8
- 238000005259 measurement Methods 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000009499 grossing Methods 0.000 description 7
- 230000002829 reductive effect Effects 0.000 description 7
- 230000003213 activating effect Effects 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 6
- 230000000977 initiatory effect Effects 0.000 description 6
- 230000036316 preload Effects 0.000 description 6
- 238000001931 thermography Methods 0.000 description 6
- 241000238558 Eucarida Species 0.000 description 5
- 230000002776 aggregation Effects 0.000 description 5
- 238000004220 aggregation Methods 0.000 description 5
- 230000001413 cellular effect Effects 0.000 description 5
- 238000006073 displacement reaction Methods 0.000 description 5
- 230000001960 triggered effect Effects 0.000 description 5
- 239000013598 vector Substances 0.000 description 5
- 230000001186 cumulative effect Effects 0.000 description 4
- 230000003247 decreasing effect Effects 0.000 description 4
- 230000010365 information processing Effects 0.000 description 4
- 230000002452 interceptive effect Effects 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 239000003550 marker Substances 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000021317 sensory perception Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 241000227653 Lycopersicon Species 0.000 description 3
- 235000007688 Lycopersicon esculentum Nutrition 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000003384 imaging method Methods 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 241001422033 Thestylus Species 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000013503 de-identification Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000036651 mood Effects 0.000 description 2
- 235000020262 oat milk Nutrition 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000035807 sensation Effects 0.000 description 2
- 238000000060 site-specific infrared dichroism spectroscopy Methods 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 230000001755 vocal effect Effects 0.000 description 2
- 241000167854 Bourreria succulenta Species 0.000 description 1
- MQJKPEGWNLWLTK-UHFFFAOYSA-N Dapsone Chemical compound C1=CC(N)=CC=C1S(=O)(=O)C1=CC=C(N)C=C1 MQJKPEGWNLWLTK-UHFFFAOYSA-N 0.000 description 1
- 208000031361 Hiccup Diseases 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 235000019693 cherries Nutrition 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000881 depressing effect Effects 0.000 description 1
- 229940079593 drug Drugs 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000004424 eye movement Effects 0.000 description 1
- 210000000887 face Anatomy 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 235000013410 fast food Nutrition 0.000 description 1
- 235000013305 food Nutrition 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 210000003128 head Anatomy 0.000 description 1
- 235000003642 hunger Nutrition 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 235000012054 meals Nutrition 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 235000013550 pizza Nutrition 0.000 description 1
- 229920000642 polymer Polymers 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000002407 reforming Methods 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000013179 statistical model Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 238000009528 vital sign measurement Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3262—Power saving in digitizer or tablet
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
- G06F3/167—Audio in a user interface, e.g. using voice commands for navigating, audio feedback
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1626—Constructional details or arrangements for portable computers with a single-body enclosure integrating a flat display, e.g. Personal Digital Assistants [PDAs]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/163—Wearable computers, e.g. on a belt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/43—Querying
- G06F16/432—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/43—Querying
- G06F16/432—Query formulation
- G06F16/433—Query formulation using audio data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/43—Querying
- G06F16/435—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04886—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/1822—Parsing for meaning understanding
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Business, Economics & Management (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Mathematical Physics (AREA)
- Strategic Management (AREA)
- Acoustics & Sound (AREA)
- Computational Linguistics (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Development Economics (AREA)
- User Interface Of Digital Computer (AREA)
- Telephone Function (AREA)
Abstract
本发明题为“加速的任务执行”。本发明提供了用于加速任务执行的系统和过程。示例方法包括,在包括显示器和一个或多个输入设备的电子设备处,在所述显示器上显示包括与任务相关联的建议示能表示的用户界面;经由所述一个或多个输入设备检测对应于所述建议示能表示的选择的第一用户输入,响应于检测到所述第一用户输入:根据确定所述任务是第一类型的任务,执行所述任务;并且根据确定所述任务是不同于所述第一类型的第二类型的任务,显示包括确认示能表示的确认界面。
Description
本申请是申请日为2018年9月27日、申请号为201811134435.X、发明名称为“加速的任务执行”的发明专利申请的分案申请。
技术领域
本发明整体涉及数字助理,更具体地,涉及使用数字助理加速任务执行。
背景技术
智能自动化助理(或数字助理)可在人类用户与电子设备之间提供有利界面。此类助理可允许用户使用自然语言以语音形式和/或文本形式与设备或系统进行交互。例如,用户可向正在电子设备上运行的数字助理提供包含用户请求的语音输入。数字助理可从该语音输入解译用户意图,将用户意图操作化成任务并且执行该任务。在一些系统中,以这种方式执行任务可以以识别任务的方式受到约束。然而,在一些情况下,用户可能受限于特定的一组命令,使得用户不能容易地指示数字助理使用自然语言语音输入来执行任务。此外,在许多情况下,数字助理无法基于先前的用户行为进行调整,继而缺乏用户体验的期望优化。
发明内容
本文描述了示例方法。示例方法包括在具有显示器和触敏表面的电子设备,在显示器上显示包括与任务相关联的建议示能表示的用户界面,经由一个或多个输入设备检测与建议示能表示的选择对应的第一用户输入;响应于检测到第一用户输入:根据确定任务是第一类型的任务,执行任务;并且根据确定任务是与第一类型不同的第二类型的任务,显示包括确认示能表示的确认界面。
本文描述了示例电子设备。示例电子设备包括一个或多个处理器、存储器和一个或多个程序,其中该一个或多个程序存储在存储器中并且被配置为由该一个或多个处理器执行,该一个或多个程序包括用于以下操作的指令:在显示器上显示包括与任务相关联的建议示能表示的用户界面;经由一个或多个输入设备检测对应于建议示能表示的选择的第一用户输入;响应于检测到第一用户输入:根据确定任务是第一类型的任务,执行任务;并且根据确定任务是与第一类型不同的第二类型的任务,显示包括确认示能表示的确认界面。
示例电子设备包括:用于在显示器上显示包括与任务相关联的建议示能表示的用户界面的装置,用于经由一个或多个输入设备检测对应于建议示能表示的选择的第一用户输入的装置,用于响应于检测到第一用户输入执行以下操作的装置:根据确定任务是第一类型的任务,执行任务;并且根据确定任务是与第一类型不同的第二类型的任务,显示包括确认示能表示的确认界面。
本文公开了示例非暂态计算机可读介质。示例性非暂态计算机可读介质存储包括指令的一个或多个程序,所述指令在由电子设备的一个或多个处理器执行时,使得电子设备:在显示器上显示包括与任务相关联的建议示能表示的用户界面;经由一个或多个输入设备检测对应于建议示能表示的选择的第一用户输入;响应于检测到第一用户输入:根据确定任务是第一类型的任务,执行任务;并且根据确定任务是与第一类型不同的第二类型的任务,显示包括确认示能表示的确认界面。
显示包括建议示能表示的用户界面并且响应于建议示能表示的选择从而选择性地要求确认以执行任务,这为用户提供了用于在电子设备上执行任务的易于识别和直观的方法,从而减少了否则执行此类任务所需的用户输入的数量。因此,以这种方式显示用户界面增强了设备的可操作性,并且使用户设备界面更高效(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又通过使用户能够更快速且高效地使用设备进一步减少了电力使用并且延长了设备的电池寿命。
示例方法包括在具有一个或多个处理器的电子设备处:显示多个候选任务示能表示包括与任务相关联的候选任务示能表示;检测包括第一用户输入的一组输入,该第一输入对应于与任务相关联的候选任务示能表示的选择;响应于检测到该组用户输入,显示用于生成与任务相关联的语音快捷方式的第一界面,在显示第一界面时:通过音频输入设备接收自然语言语音输入,并且在第一界面中显示候选短语,其中该候选短语基于自然语言语音输入;在显示候选短语后,经由触敏表面检测第二用户输入;并且响应于检测到第二用户输入,将候选短语与任务相关联。
一种示例非暂态计算机可读存储介质存储一个或多个程序。该一个或多个程序包括指令,所述指令在由电子设备的一个或多个处理器执行时使得电子设备显示多个候选任务示能表示包括与任务相关联的候选任务示能表示;检测包括第一用户输入的一组输入,该第一输入对应于与任务相关联的候选任务示能表示的选择;响应于检测到该组用户输入,显示用于生成与任务相关联的语音快捷方式的第一界面,在显示第一界面时:通过音频输入设备接收自然语言语音输入,并且在第一界面中显示候选短语,其中该候选短语基于自然语言语音输入;在显示候选短语后,经由触敏表面检测第二用户输入;并且响应于检测到第二用户输入,将候选短语与任务相关联。
示例电子设备包括一个或多个处理器、存储器和一个或多个程序,其中该一个或多个程序存储在存储器中并且被配置为由一个或多个处理器执行,该一个或多个程序包括用于以下操作的指令:显示多个候选任务示能表示包括与任务相关联的候选任务示能表示;检测包括第一用户输入的一组输入,该第一输入对应于与任务相关联的候选任务示能表示的选择;响应于检测到该组用户输入,显示用于生成与任务相关联的语音快捷方式的第一界面,在显示第一界面时:通过音频输入设备接收自然语言语音输入,并且在第一界面中显示候选短语,其中该候选短语基于自然语言语音输入;在显示候选短语后,经由触敏表面检测第二用户输入;并且响应于检测到第二用户输入,将候选短语与任务相关联。
示例电子设备包括:用于显示多个候选任务示能表示包括与任务相关联的候选任务示能表示的装置;用于检测包括第一用户输入的一组输入的装置,该第一输入对应于与任务相关联的候选任务示能表示的选择;用于响应于检测到该组用户输入,显示用于生成与任务相关联的语音快捷方式的第一界面的装置;用于在显示第一界面时进行以下操作的装置:通过音频输入设备接收自然语言语音输入,并且在第一界面中显示候选短语,其中该候选短语基于自然语言语音输入;用于在显示候选短语后,经由触敏表面检测第二用户输入的装置;以及用于响应于检测到第二用户输入,将候选短语与任务相关联的装置。
基于自然语言语音输入提供候选短语并将候选短语与相应任务相关联,这允许用户准确且有效地生成可用于在电子设备上执行任务的用户特定的语音快捷方式。例如,允许用户以这种方式将语音快捷方式与任务相关联允许用户在视觉上确认已经选择了所需的语音快捷方式并将其分配给正确的任务,从而降低了不正确或不需要的关联的可能性。因此以所描述的方式提供候选短语使电子设备的使用更加高效(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又通过使用户能够更快速且高效地使用设备进一步减少了电力使用并且延长了设备的电池寿命。
示例方法包括:在具有一个或多个处理器的电子设备处,接收与电子设备相关联的上下文数据;基于该上下文数据确定任务的任务概率;基于上下文数据确定参数的参数概率,其中参数与任务相关联;基于任务概率和参数概率确定任务是否满足建议标准;根据确定任务满足建议标准,在显示器上显示与任务和参数对应的建议示能表示;并且根据确定任务不满足建议标准,放弃显示建议示能表示。
一种示例非暂态计算机可读存储介质存储一个或多个程序。该一个或多个程序包括指令,所述指令在由电子设备的一个或多个处理器执行时,使得电子设备接收与电子设备相关联的上下文数据;基于该上下文数据确定任务的任务概率;基于上下文数据确定参数的参数概率,其中参数与任务相关联;基于任务概率和参数概率确定任务是否满足建议标准;根据确定任务满足建议标准,在显示器上显示与任务和参数对应的建议示能表示;并且根据确定任务不满足建议标准,放弃显示建议示能表示。
示例电子设备包括一个或多个处理器、存储器和一个或多个程序,其中该一个或多个程序存储在存储器中并且被配置为由一个或多个处理器执行,该一个或多个程序包括用于以下操作的指令:接收与电子设备相关联的上下文数据;基于该上下文数据确定任务的任务概率;基于上下文数据确定参数的参数概率,其中参数与任务相关联;基于任务概率和参数概率确定任务是否满足建议标准;根据确定任务满足建议标准,在显示器上显示与任务和参数对应的建议示能表示;并且根据确定任务不满足建议标准,放弃显示建议示能表示。
示例电子设备包括用于接收与电子设备相关联的上下文数据的装置;用于基于该上下文数据确定任务的任务概率的装置;用于基于上下文数据确定参数的参数概率的装置,其中参数与任务相关联;用于基于任务概率和参数概率确定任务是否满足建议标准的装置;用于根据确定任务满足建议标准,在显示器上显示与任务和参数对应的建议示能表示的装置;以及用于根据确定任务不满足建议标准,放弃显示建议示能表示的装置。
如本文所述选择性地提供与任务相关联的建议示能表示允许用户有效且方便地在电子设备上执行与用户相关的任务。作为示例,由电子设备显示的建议示能表示可对应于基于电子设备的上下文数据(诸如指示用户先前使用电子设备的上下文数据)识别的任务。因此,以这种方式选择性地提供建议减少了用户操作电子设备所需的输入数量和时间量(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又降低了电力使用并延长了设备的电池寿命。
示例方法包括:在具有一个或多个处理器的电子设备处,接收自然语言语音输入;确定自然语言语音输入是否满足语音快捷方式标准;根据确定自然语言语音输入满足语音快捷方式标准:识别与语音快捷方式相关联的任务,并且执行与语音快捷方式相关联的任务;并且根据确定自然语言语音输入不满足语音快捷方式标准:识别与自然语言语音输入相关联的任务,并且执行与自然语言语音输入相关联的任务。
一种示例非暂态计算机可读存储介质存储一个或多个程序。该一个或多个程序包括指令,所述指令在由电子设备的一个或多个处理器执行时,使得电子设备接收自然语言语音输入;确定自然语言语音输入是否满足语音快捷方式标准;根据确定自然语言语音输入满足语音快捷方式标准:识别与语音快捷方式相关联的任务,并且执行与语音快捷方式相关联的任务;并且根据确定自然语言语音输入不满足语音快捷方式标准:识别与自然语言语音输入相关联的任务,并且执行与自然语言语音输入相关联的任务。
示例电子设备包括一个或多个处理器、存储器和一个或多个程序,其中该一个或多个程序存储在存储器中并且被配置为由一个或多个处理器执行,所述一个或多个程序包括用于以下操作的指令:接收自然语言语音输入;确定自然语言语音输入是否满足语音快捷方式标准;根据确定自然语言语音输入满足语音快捷方式标准:识别与语音快捷方式相关联的任务,并且执行与语音快捷方式相关联的任务;并且根据确定自然语言语音输入不满足语音快捷方式标准:识别与自然语言语音输入相关联的任务,并且执行与自然语言语音输入相关联的任务。
示例电子设备包括用于接收自然语言语音输入的装置;用于确定自然语言语音输入是否满足语音快捷方式标准的装置;用于根据确定自然语言语音输入满足语音快捷方式标准执行以下操作的装置:识别与语音快捷方式相关联的任务,并且执行与语音快捷方式相关联的任务;以及用于根据确定自然语言语音输入不满足语音快捷方式标准执行以下操作的装置:识别与自然语言语音输入相关联的任务,并且执行与自然语言语音输入相关联的任务。
如本文所述,响应于自然语言语音输入(例如,语音快捷方式)执行任务提供了用于在电子设备上执行任务的直观且有效的方法。作为示例,可以响应于自然语言语音输入执行一个或多个任务,而无需来自用户的任何附加输入。因此,以这种方式响应于自然语言语音输入执行任务减少了用户操作电子设备所需的输入数量和时间量(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又降低了电力使用并延长了设备的电池寿命。
示例方法包括:在具有一个或多个处理器的电子设备处,利用数字助理接收自然语言语音输入;确定与自然语言语音输入相关联的语音快捷方式;确定与语音快捷方式对应的任务;使应用程序启动任务的执行;从应用程序接收响应,其中响应与任务相关联;基于响应确定任务是否成功执行,并且提供输出指示任务是否成功执行。
一种示例非暂态计算机可读存储介质存储一个或多个程序。该一个或多个程序包括指令,所述指令在由电子设备的一个或多个处理器执行时,使得电子设备利用数字助理接收自然语言语音输入;确定与自然语言语音输入相关联的语音快捷方式;确定与语音快捷方式对应的任务;使应用程序启动任务的执行;从应用程序接收响应,其中响应与任务相关联;基于响应确定任务是否成功执行,并且提供输出指示任务是否成功执行。
示例电子设备包括一个或多个处理器、存储器和一个或多个程序,其中该一个或多个程序存储在存储器中并且被配置为由一个或多个处理器执行,所述一个或多个程序包括用于以下操作的指令:利用数字助理接收自然语言语音输入;确定与自然语言语音输入相关联的语音快捷方式;确定与语音快捷方式对应的任务;使应用程序启动任务的执行;从应用程序接收响应,其中响应与任务相关联;基于响应确定任务是否成功执行,并且提供输出指示任务是否成功执行。
示例电子设备包括用于利用数字助理接收自然语言语音输入的装置;用于确定与自然语言语音输入相关联的语音快捷方式的装置;用于确定与语音快捷方式对应的任务的装置;用于使应用程序启动任务的执行的装置;用于从应用程序接收响应的装置,其中响应与任务相关联;用于基于响应确定任务是否成功执行的装置,以及用于提供输出指示任务是否成功执行的装置。
如本文所述,提供输出允许数字助理例如在用户和数字助理之间的对话(例如,会话式对话)的过程中,以直观且灵活的方式从应用程序提供反馈和/或其他信息。作为示例,数字助理可以从应用程序向用户提供(例如,中继)自然语言表达,使得用户可以与应用程序交互而无需打开或以其他方式直接访问应用程序。因此,以这种方式提供自然语言输出减少了用户操作电子设备所需的输入数量和时间量(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又降低了电力使用并延长了设备的电池寿命。
示例方法包括从应用程序接收多个媒体项目;接收与电子设备相关联的上下文数据;基于多个媒体项目和上下文数据确定任务;确定任务是否满足建议标准;根据确定任务满足建议标准,在显示器上显示对应于任务的建议示能表示;并且根据确定任务不满足建议标准,放弃显示建议示能表示。
示例电子设备包括一个或多个处理器、存储器和一个或多个程序,其中该一个或多个程序存储在存储器中并且被配置为由一个或多个处理器执行,所述一个或多个程序包括用于以下操作的指令:从应用程序接收多个媒体项目;接收与电子设备相关联的上下文数据;基于多个媒体项目和上下文数据确定任务;确定任务是否满足建议标准;根据确定任务满足建议标准,在显示器上显示对应于任务的建议示能表示;并且根据确定任务不满足建议标准,放弃显示建议示能表示。
示例电子设备包括用于从应用程序接收多个媒体项目的装置;用于接收与电子设备相关联的上下文数据的装置;用于基于多个媒体项目和上下文数据确定任务的装置;用于确定任务是否满足建议标准的装置;用于根据确定任务满足建议标准,在显示器上显示对应于任务的建议示能表示的装置;以及用于根据确定任务不满足建议标准,放弃显示建议示能表示的装置。
示例性非暂态计算机可读介质存储包括指令的一个或多个程序,所述指令在由电子设备的一个或多个处理器执行时使得电子设备:从应用程序接收多个媒体项目;接收与电子设备相关联的上下文数据;基于多个媒体项目和上下文数据确定任务;确定任务是否满足建议标准;根据确定任务满足建议标准,在显示器上显示对应于任务的建议示能表示;并且根据确定任务不满足建议标准,放弃显示建议示能表示。
如本文所述选择性地提供对应于任务的建议示能表示允许用户有效且方便地在电子设备上执行与用户相关的任务。作为示例,由电子设备显示的建议示能表示可对应于基于媒体消费和/或用户的确定的媒体偏好识别的任务。因此,以这种方式选择性地提供建议减少了用户操作电子设备所需的输入数量和时间量(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又降低了电力使用并延长了设备的电池寿命。
附图说明
图1为示出了根据各种示例的用于实现数字助理的系统和环境的框图。
图2A是示出根据各种示例的实现数字助理的客户端侧部分的便携式多功能设备的框图。
图2B为示出了根据各种示例的用于事件处理的示例性部件的框图。
图3示出了根据各种示例的实现数字助理的客户端侧部分的便携式多功能设备。
图4为根据各种示例的具有显示器和触敏表面的示例性多功能设备的框图。
图5A示出了根据各种示例的便携式多功能设备上的应用程序的菜单的示例性用户界面。
图5B示出了根据各种示例的具有与显示器分开的触敏表面的多功能设备的示例性用户界面。
图6A示出了根据各种示例的个人电子设备。
图6B是示出根据各种示例的个人电子设备的框图。
图6C-图6D示出了根据一些实施方案具有触敏显示器和强度传感器的个人电子设备的示例性部件。
图6E-图6H示出了根据一些实施方案的个人电子设备的示例性部件和用户界面。
图7A为示出了根据各种示例的数字助理系统或其服务器部分的框图。
图7B示出了根据各种示例的在图7A中所示的数字助理的功能。
图7C示出了根据各种示例的知识本体的一部分。
图8A-图8AF示出了根据各种示例的用于提供建议的示例性用户界面。
图9A-图9B是示出根据各种示例的提供建议的方法的流程图。
图10A-图10AJ示出了根据各种示例的用于提供语音快捷方式的示例性用户界面。
图11A-图11B是示出根据各种示例的提供语音快捷方式的方法的流程图。
图12是根据各种示例的任务建议系统的框图。
图13是示出根据各种示例的提供建议的方法的流程图。
图14示出了根据各种示例的用于以隐私保护方式执行任务的示例性操作序列。
图15是示出根据各种示例的执行任务的方法的流程图。
图16A-图16S示出了根据各种示例的用于使用数字助理执行任务的示例性用户界面。
图17是示出根据各种示例的使用数字助理执行任务的方法的流程图。
图18A-图18D示出了根据各种示例的用于提供媒体项目建议的示例性用户界面。
图19是示出根据各种示例的提供媒体项目建议的方法的流程图。
具体实施方式
在以下对示例的描述中将引用附图,在附图中以例示的方式示出了可被实施的特定示例。应当理解,在不脱离各个示例的范围的情况下,可使用其他示例并且可作出结构性变更。
尽管以下描述使用术语“第一”、“第二”等来描述各种元件,但这些元件不应受术语的限制。这些术语只是用于将一个元件与另一元件区分开。例如,在不脱离各种所述示例的范围的情况下,第一输入可被称为第二输入,并且类似地,第二输入可被称为第一输入。第一输入和第二输入均为输入,并且在一些情况下为独立且不同的输入。
在本文中对各种所述示例的描述中所使用的术语只是为了描述特定示例的目的,而并非旨在进行限制。如在对各种所述示例的描述和所附权利要求书中所使用的那样,单数形式“一个(“a”,“an”)”和“该”旨在也包括复数形式,除非上下文另外明确地指示。还将理解的是,本文中所使用的术语“和/或”是指并且涵盖相关联的所列出的项目中的一个或多个项目的任何和全部可能的组合。还将理解的是,术语“包括” (“includes”、“including”、“comprises”和/或“comprising”)在本说明书中使用时是指定存在所陈述的特征、整数、步骤、操作、元件和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、部件和/或其分组。
根据上下文,术语“如果”可被解释为意指“当...时”(“when”或“upon”)或“响应于确定”或“响应于检测到”。类似地,根据上下文,短语“如果确定...”或“如果检测到[所陈述的条件或事件]”可被解释为意指“在确定...时”或“响应于确定...”或“在检测到[所陈述的条件或事件] 时”或“响应于检测到[所陈述的条件或事件]”。
1.系统和环境
图1示出了根据各种示例的系统100的框图。在一些示例中,系统100 实现数字助理。术语“数字助理”、“虚拟助理”、“智能自动化助理”或“自动数字助理”是指解译口头形式和/或文本形式的自然语言输入来推断用户意图,并且基于推断出的用户意图来执行动作的任何信息处理系统。例如,为了作用于推断出的用户意图,系统执行下述步骤中的一个或多个:识别具有设计用于实现推断出的用户意图的步骤和参数的任务流,根据推断出的用户意图将特定要求输入到任务流中;通过调用程序、方法、服务、API等执行任务流;以及以可听(例如,语音)和/或可视形式来生成对用户的输出响应。
具体地讲,数字助理能够接受至少部分地为自然语言命令、请求、声明、讲述和/或询问的形式的用户请求。通常,用户请求要么寻求数字助理作出信息性回答,要么寻求数字助理执行任务。对用户请求的令人满意的响应包括提供所请求的信息性回答、执行所请求的任务或这两者的组合。例如,用户向数字助理提出问题,诸如“我现在在哪里?”。基于用户的当前位置,数字助理回答“你在中央公园西门附近。”用户还请求执行任务,例如“请邀请我的朋友们下周来参加我女朋友的生日聚会。”作为响应,数字助理可通过讲出“好的,马上”来确认请求,然后代表用户将合适的日历邀请发送到用户电子通讯录中列出的用户朋友中的每位朋友。在执行所请求的任务期间,数字助理有时在很长时间段内在涉及多次信息交换的持续对话中与用户进行交互。存在与数字助理进行交互以请求信息或执行各种任务的许多其他方法。除提供言语响应并采取经编程的动作之外,数字助理还提供其他视频或音频形式的响应,例如作为文本、警报、音乐、视频、动画等。
如图1所示,在一些示例中,数字助理根据客户端-服务器模型来实现。数字助理包括在用户设备104上执行的客户端侧部分102(后文称作“DA客户端102”)以及在服务器系统108上执行的服务器侧部分106 (后文称作“DA服务器106”)。DA客户端102通过一个或多个网络110 与DA服务器106通信。DA客户端102提供客户端侧功能,诸如面向用户的输入和输出处理,以及与DA服务器106通信。DA服务器106为各自位于相应用户设备104上的任意数量的DA客户端102提供服务器侧功能。
在一些示例中,DA服务器106包括面向客户端的I/O接口112、一个或多个处理模块114、数据与模型116,以及到外部服务的I/O接口118。面向客户端的I/O接口112有利于DA服务器106的面向客户端的输入和输出处理。一个或多个处理模块114利用数据与模型116来处理语音输入,并基于自然语言输入来确定用户意图。此外,一个或多个处理模块114基于推断出的用户意图来执行任务执行。在一些示例中,DA服务器106通过一个或多个网络110与外部服务120通信以完成任务或采集信息。到外部服务的I/O接口118促成此类通信。
用户设备104可以是任何合适的电子设备。在一些示例中,用户设备 104是便携式多功能设备(例如,下面参考图2A描述的设备200)、多功能设备(例如,下面参考图4描述的设备400)或个人电子设备(例如,下面参考图6A-图6B描述的设备600)。便携式多功能设备是例如还包含诸如PDA和/或音乐播放器功能的其他功能的移动电话。便携式多功能设备的特定示例包括来自Apple Inc.(Cupertino,California)的Apple iPod 和设备。便携式多功能设备的其他示例包括但不限于耳塞式耳机/头戴式耳机、扬声器以及膝上型电脑或平板电脑。此外,在一些示例中,用户设备104是非便携式多功能设备。具体地讲,用户设备104是台式计算机、游戏机、扬声器、电视或电视机顶盒。在一些示例中,用户设备104包括触敏表面(例如,触摸屏显示器和/或触控板)。此外,用户设备104任选地包括一个或多个其他物理用户接口设备,诸如物理键盘、鼠标和/或操纵杆。下文更详细地描述了电子设备诸如多功能设备的各种示例。
一个或多个通信网络110的示例包括局域网(LAN)和广域网(WAN),例如互联网。一个或多个通信网络110使用任何已知的网络协议来实现,包括各种有线或无线协议,诸如以太网、通用串行总线(USB)、火线 (FIREWIRE)、全球移动通信系统(GSM)、增强型数据GSM环境(EDGE)、码分多址(CDMA)、时分多址(TDMA)、蓝牙、Wi-Fi、互联网协议语音 (VoIP)、Wi-MAX或任何其他合适的通信协议。
服务器系统108在一个或多个独立式数据处理设备或分布式计算机网络上实现。在一些示例中,服务器系统108还采用第三方服务提供方(例如,第三方云服务提供方)的各种虚拟设备和/或服务来提供服务器系统 108的潜在计算资源和/或基础结构资源。
在一些示例中,用户设备104经由第二用户设备122与DA服务器106 通信。第二用户设备122与用户设备104相似或相同。例如,第二用户设备122类似于下文参考图2A、图4和图6A-图6B描述的设备200、设备 400或设备600。用户设备104被配置为经由直接通信连接诸如蓝牙、 NFC、BTLE等或者经由有线或无线网络诸如局域Wi-Fi网络而通信耦接到第二用户设备122。在一些示例中,第二用户设备122被配置为充当用户设备104与DA服务器106之间的代理。例如,用户设备104的DA客户端 102被配置为经由第二用户设备122向DA服务器106传输信息(例如,在用户设备104处接收的用户请求)。DA服务器106处理该信息,并经由第二用户设备122将相关数据(例如,响应于用户请求的数据内容)返回到用户设备104。
在一些示例中,用户设备104可被配置为将针对数据的缩略请求发送到第二用户设备122,以减少从用户设备104传输的信息量。第二用户设备 122被配置为确定添加到缩略请求的补充信息,以生成完整的请求来传输到 DA服务器106。该系统架构可有利地通过使用具有较强通信能力和/或电池电力的第二用户设备122(例如,移动电话、膝上型计算机、平板电脑等) 作为到DA服务器106的代理,允许具有有限通信能力和/或有限电池电力的用户设备104(例如,手表或类似的紧凑型电子设备)访问DA服务器 106提供的服务。虽然图1中仅示出两个用户设备104和122,但应当理解,在一些示例中,系统100可包括在此代理配置中被配置为与DA服务器系统106通信的任意数量和类型的用户设备。
虽然图1中所示的数字助理包括客户端侧部分(例如,DA客户端 102)和服务器侧部分(例如,DA服务器106)两者,但在一些示例中,数字助理的功能被实现为被安装在用户设备上的独立式应用程序。此外,数字助理的客户端部分与服务器部分之间的功能划分在不同的具体实施中可变化。例如,在一些示例中,DA客户端为仅提供面向用户的输入和输出处理功能,并将数字助理的所有其他功能委派给后端服务器的瘦客户端。
2.电子设备
现在将注意力转至用于实现数字助理的客户端侧部分的电子设备的实施方案。图2A是示出根据一些实施方案的具有触敏显示器系统212的便携式多功能设备200的框图。触敏显示器212有时为了方便被叫做“触摸屏”,并且有时可被称为或被叫做“触敏显示器系统”。设备200包括存储器202(其任选地包括一个或多个计算机可读存储介质)、存储器控制器222、一个或多个处理单元(CPU)220、外围设备接口218、RF电路208、音频电路210、扬声器211、麦克风213、输入/输出(I/O)子系统206、其他输入控制设备216和外部端口224。设备200任选地包括一个或多个光学传感器264。设备200任选地包括用于检测设备200(例如,触敏表面,诸如设备200的触敏显示器系统212)上的接触的强度的一个或多个接触强度传感器265。设备200任选地包括用于在设备200上生成触觉输出的一个或多个触觉输出发生器267(例如,在触敏表面诸如设备200的触敏显示器系统 212或设备400的触摸板455上生成触觉输出)。这些部件任选地通过一个或多个通信总线或信号线203进行通信。
如在本说明书和权利要求书中所使用的,术语触敏表面上的接触的“强度”是指触敏表面上的接触(例如,手指接触)的力或压力(每单位面积的力),或是指触敏表面上的接触的力或压力的替代物(代用物)。接触的强度具有值范围,该值范围包括至少四个不同的值并且更典型地包括上百个不同的值(例如,至少256个)。接触的强度任选地使用各种方法和各种传感器或传感器的组合来确定(或测量)。例如,在触敏表面下方或相邻于触敏表面的一个或多个力传感器任选地用于测量触敏表面上的不同点处的力。在一些具体实施中,来自多个力传感器的力测量值被组合 (例如,加权平均)以确定所估计的接触力。类似地,触笔的压敏顶端任选地用于确定触笔在触敏表面上的压力。另选地,在触敏表面上检测到的接触区域的大小和/或其变化、接触附近的触敏表面的电容和/或其变化以及 /或者接触附近的触敏表面的电阻和/或其变化任选地被用作触敏表面上的接触的力或压力的替代物。在一些具体实施中,接触力或压力的替代物测量直接用于确定是否已经超过强度阈值(例如,强度阈值以对应于替代物测量的单位来描述)。在一些具体实施中,接触力或压力的替代物测量被转换成估计的力或压力,并且估计的力或压力用于确定是否已超过强度阈值(例如,强度阈值是以压力的单位进行测量的压力阈值)。使用接触的强度作为用户输入的属性,从而允许用户访问用户在实地面积有限的尺寸更小的设备上本来不可访问的附加设备功能,该尺寸更小的设备用于(例如,在触敏显示器上)显示示能表示和/或接收用户输入(例如,经由触敏显示器、触敏表面或物理控件/机械控件,诸如旋钮或按钮)。
如本说明书和权利要求书中所使用的,术语“触觉输出”是指将由用户利用用户的触感检测到的设备相对于设备的先前位置的物理位移、设备的部件(例如,触敏表面)相对于设备的另一个部件(例如,外壳)的物理位移、或部件相对于设备的质心的位移。例如,在设备或设备的部件与用户对触摸敏感的表面(例如,手指、手掌或用户手部的其他部分)接触的情况下,通过物理位移生成的触觉输出将由用户解释为触感,该触感对应于设备或设备的部件的物理特征的所感知的变化。例如,触敏表面(例如,触敏显示器或触控板)的移动任选地由用户解释为对物理致动按钮的“按下点击”或“松开点击”。在一些情况下,用户将感觉到触感,诸如“按下点击”或“松开点击”,即使在通过用户的移动而物理地被按压 (例如,被移位)的与触敏表面相关联的物理致动按钮没有移动时。又如,即使在触敏表面的光滑度无变化时,触敏表面的移动也会任选地由用户解释或感测为触敏表面的“粗糙度”。虽然用户对触摸的此类解释将受到用户的个体化感官知觉的限制,但是对触摸的许多感官知觉是大多数用户共有的。因此,当触觉输出被描述为对应于用户的特定感官知觉(例如,“按下点击”、“松开点击”、“粗糙度”)时,除非另外陈述,否则所生成的触觉输出对应于设备或其部件的物理位移,该物理位移将会生成典型(或普通)用户的所述感官知觉。
应当理解,设备200仅仅是便携式多功能设备的一个示例,并且设备 200任选地具有比所示出的部件更多或更少的部件,任选地组合两个或更多个部件,或者任选地具有这些部件的不同配置或布置。图2A中所示的各种部件以硬件、软件、或硬件与软件两者的组合来实现,包括一个或多个信号处理电路和/或专用集成电路。
存储器202包括一个或多个计算机可读存储介质。这些计算机可读存储介质例如为有形的和非暂态的。存储器202包括高速随机存取存储器,并且还包括非易失性存储器,诸如一个或多个磁盘存储设备、闪存存储器设备或其他非易失性固态存储器设备。存储器控制器222控制设备200的其他部件访问存储器202。
在一些示例中,存储器202的非暂态计算机可读存储介质用于存储指令(例如,用于执行下文描述的过程的各方面)以供指令执行系统、装置或设备诸如基于计算机的系统、包含处理器的系统或可从指令执行系统、装置或设备取出指令并执行指令的其他系统使用或与其结合使用。在其他示例中,指令(例如,用于执行下文描述的过程的各方面)存储在服务器系统108的非暂态计算机可读存储介质上,或在存储器202的非暂态计算机可读存储介质与服务器系统108的非暂态计算机可读存储介质之间划分。
外围设备接口218用于将设备的输入和输出外围设备耦接到CPU 220 和存储器202。所述一个或多个处理器220运行或执行存储器202中所存储的各种软件程序和/或指令集以执行设备200的各种功能并处理数据。在一些实施方案中,外围设备接口218、CPU 220和存储器控制器222在单个芯片诸如芯片204上实现。在一些其他实施方案中,它们在独立的芯片上实现。
RF(射频)电路208接收和发送也被称作电磁信号的RF信号。RF电路208将电信号转换为电磁信号/将电磁信号转换为电信号,并且经由电磁信号与通信网络和其他通信设备进行通信。RF电路208任选地包括用于执行这些功能的熟知的电路,包括但不限于天线系统、RF收发器、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、编解码芯片组、用户身份模块(SIM)卡、存储器等等。RF电路208任选地通过无线通信来与网络和其他设备进行通信,这些网络为诸如互联网(也被称为万维网(WWW))、内联网和/或无线网络(诸如,蜂窝电话网络、无线局域网 (LAN)和/或城域网(MAN))。RF电路208任选地包括用于检测近场通信 (NFC)场的熟知的电路,诸如通过近程通信无线电部件来进行检测。无线通信任选地使用多种通信标准、协议和技术中的任一种,包括但不限于全球移动通信系统(GSM)、增强型数据GSM环境(EDGE)、高速下行链路分组接入(HSDPA)、高速上行链路分组接入(HSUPA)、演进、纯数据(EV-DO)、 HSPA、HSPA+、双小区HSPA(DC-HSPDA)、长期演进(LTE)、近场通信 (NFC)、宽带码分多址(W-CDMA)、码分多址(CDMA)、时分多址 (TDMA)、蓝牙、蓝牙低功耗(BTLE)、无线保真(Wi-Fi)(例如,IEEE 802.11a、IEEE 802.11b、IEEE 802.11g、IEEE802.11n和/或IEEE 802.11ac)、互联网协议语音(VoIP)、Wi-MAX、电子邮件协议(例如,互联网消息访问协议(IMAP)和/或邮局协议(POP))、即时消息(例如,可扩展消息处理和存在协议(XMPP)、用于即时消息和存在利用扩展的会话发起协议(SIMPLE)、即时消息和存在服务(IMPS))和/或短消息服务(SMS),或者任何其他适当的通信协议,包括在本文档提交日期时尚未开发出的通信协议。
音频电路210、扬声器211和麦克风213提供用户与设备200之间的音频接口。音频电路210从外围设备接口218接收音频数据,将音频数据转换为电信号,并将电信号传输到扬声器211。扬声器211将电信号转换为人类可听到的声波。音频电路210还接收由麦克风213从声波转换的电信号。音频电路210将电信号转换为音频数据,并且将音频数据传输到外围设备接口218以用于处理。音频数据通过外围设备接口218检索自和/或传输至存储器202和/或RF电路208。在一些实施方案中,音频电路210还包括耳麦插孔(例如,图3中的312)。耳麦插孔提供音频电路210和可移除的音频输入/输出外围设备之间的接口,该可移除的音频输入/输出外围设备诸如仅输出的耳机或者具有输出(例如,单耳耳机或双耳耳机)和输入 (例如,麦克风)两者的耳麦。
I/O子系统206将设备200上的输入/输出外围设备诸如触摸屏212和其他输入控制设备216耦接到外围设备接口218。I/O子系统206任选地包括显示控制器256、光学传感器控制器258、深度相机控制器269、强度传感器控制器259、触觉反馈控制器261,以及用于其他输入或控制设备的一个或多个输入控制器260。该一个或多个输入控制器260从其他输入控制设备216接收电信号/将电信号发送到其他输入控制设备116。其他输入控制设备216任选地包括物理按钮(例如,下压按钮、摇臂按钮等)、拨号盘、滑动开关、操纵杆、点击式转盘等等。在一些另选实施方案中,输入控制器260任选地耦接至以下各项中的任一者(或不耦接至以下各项中的任一者):键盘、红外线端口、USB端口以及指针设备诸如鼠标。一个或多个按钮(例如,图3中的308)任选地包括用于扬声器211和/或麦克风 213的音量控制的增大/减小按钮。一个或多个按钮任选地包括下压按钮 (例如,图3中的306)。
快速按压下压按钮任选地解除对触摸屏212的锁定或者任选地开始使用触摸屏上的手势来对设备进行解锁的过程,如于2005年12月23日提交的名称为“Unlocking aDevice by Performing Gestures on an Unlock Image”的美国专利申请11/322,549(即美国专利No.7,657,849)中所述,该专利据此全文以引用方式并入。长按下压按钮(例如306)任选地使设备200开机或关机。按钮中的一个或多个按钮的功能任选地可以由用户定制。触摸屏 212用于实现虚拟按钮或软按钮以及一个或多个软键盘。
触敏显示器212提供设备和用户之间的输入接口和输出接口。显示控制器256从触摸屏212接收电信号和/或将电信号发送至触摸屏112。触摸屏212向用户显示视觉输出。视觉输出任选地包括图形、文本、图标、视频以及它们的任何组合(统称为“图形”)。在一些实施方案中,一些视觉输出或全部的视觉输出任选地与用户界面对象对应。
触摸屏212具有基于触觉和/或触觉接触来接受来自用户的输入的触敏表面、传感器或传感器组。触摸屏212和显示控制器256(与存储器202中的任何相关联的模块和/或指令集一起)检测触摸屏212上的接触(和该接触的任何移动或中断),并且将所检测到的接触转换为与被显示在触摸屏 212上的用户界面对象(例如,一个或多个软键、图标、网页或图像)的交互。在一个示例性实施方案中,触摸屏212与用户之间的接触点对应于用户的手指。
触摸屏212任选地使用LCD(液晶显示器)技术、LPD(发光聚合物显示器)技术或LED(发光二极管)技术,但是在其他实施方案中使用其他显示技术。触摸屏212和显示控制器256任选地使用现在已知的或以后将开发出的多种触摸感测技术中的任何技术以及其他接近传感器阵列或用于确定与触摸屏212接触的一个或多个点的其他元件来检测接触及其任何移动或中断,该多种触摸感测技术包括但不限于电容性的、电阻性的、红外线的、和表面声波技术。在一个示例性实施方案中,使用投射式互电容感测技术,诸如在来自Apple Inc.(Cupertino,California)的和iPod 中使用的技术。
触摸屏212的一些实施方案中的触敏显示器任选地类似于以下美国专利中描述的多点触敏触控板:6,323,846(Westerman等人)、6,570,557 (Westerman等人)和/或6,677,932(Westerman等人)和/或美国专利公开 2002/0015024A1,该每个专利据此全文以引用方式并入。然而,触摸屏212 显示来自设备200的视觉输出,而触敏触摸板不提供视觉输出。
在一些实施方案中,触摸屏212的触敏显示器如以下专利申请所述: (1)提交于2006年5月2日的名称为“Multipoint Touch Surface Controller”的美国专利申请No.11/381,313;(2)2004年5月6日提交的名称为“Multipoint Touchscreen”(多点触摸屏)的美国专利申请No. 10/840,862;(3)2004年7月30日提交的名称为“Gestures For TouchSensitive Input Devices”(用于触敏输入设备的手势)的美国专利申请No. 10/903,964;(4)2005年1月31日提交的名称为“Gestures For Touch Sensitive Input Devices”(用于触敏输入设备的手势)的美国专利申请No. 11/048,264;(5)2005年1月18日提交的名称为“Mode-Based Graphical User Interfaces For Touch Sensitive Input Devices”(用于触敏输入设备的基于模式的图形用户界面)的美国专利申请No.11/038,590;(6)2005年9月16日提交的名称为“Virtual Input Device Placement On A Touch Screen UserInterface”(放置在触摸屏用户界面上的虚拟输入设备)的美国专利申请 No.11/228,758;(7)2005年9月16日提交的名称为“Operation Of A Computer With A Touch ScreenInterface”(具有触摸屏界面的计算机的操作)的美国专利申请No.11/228,700;(8)2005年9月16日提交的名称为“Activating Virtual Keys Of A Touch-Screen VirtualKeyboard”(激活触摸屏虚拟键盘的虚拟键)的美国专利申请No.11/228,737;以及(9)2006年3 月3日提交的名称为“Multi-Functional Hand-Held Device”(多功能手持设备)的美国专利申请No.11/367,749。所有这些申请全文以引用方式并入本文。
触摸屏212任选地具有超过100dpi的视频分辨率。在一些实施方案中,触摸屏具有约160dpi的视频分辨率。用户任选地使用任何合适的物体或附加物诸如触笔、手指等等来与触摸屏212接触。在一些实施方案中,将用户界面设计为主要通过基于手指的接触和手势来工作,由于手指在触摸屏上的接触区域较大,因此这可能不如基于触笔的输入精确。在一些实施方案中,设备将基于手指的粗略输入转化为精确的指针/光标位置或命令以用于执行用户所期望的动作。
在一些实施方案中,除了触摸屏之外,设备200任选地包括用于激活或去激活特定功能的触控板。在一些实施方案中,触控板是设备的触敏区域,与触摸屏不同,该触敏区域不显示视觉输出。触摸板任选地是与触摸屏212分开的触敏表面,或者是由触摸屏形成的触敏表面的延伸部分。
设备200还包括用于为各种部件供电的电力系统262。电力系统262任选地包括电力管理系统、一个或多个电源(例如,电池、交流电(AC))、再充电系统、电力故障检测电路、功率转换器或逆变器、电源状态指示符 (例如,发光二极管(LED))以及与便携式设备中的电力的生成、管理和分配相关联的任何其他部件。
设备200任选地还包括一个或多个光学传感器264。图2A示出了耦接到I/O子系统206中的光学传感器控制器258的光学传感器。光学传感器 264包括电荷耦合器件(CCD)或互补金属氧化物半导体(CMOS)光电晶体管。光学传感器264可选地从环境接收通过一个或多个透镜而投射的光,并且将光转换为表示图像的数据。结合成像模块243(也叫做相机模块),光学传感器264捕获静态图像或视频。在一些实施方案中,光学传感器位于设备200的后部上,与设备前部上的触摸屏显示器212相背对,使得触摸屏显示器能够用作用于静态图像和/或视频图像采集的取景器。在一些实施方案中,光学传感器位于设备的前部上,使得在用户在触摸屏显示器上查看其他视频会议参与者的同时任选地获取该用户的图像,以用于视频会议。在一些实施方案中,光学传感器264的位置可由用户改变(例如,通过旋转设备外壳中的透镜和传感器),使得单个光学传感器264与触摸屏显示器一起使用以用于视频会议和静态图像和/或视频图像采集两者。
设备200任选地还包括一个或多个深度相机传感器275。图2A示出了耦接到I/O子系统206中的深度相机控制器269的深度相机传感器。深度相机传感器275从环境接收数据以从视点(例如,深度相机传感器)创建场景内的对象(例如,面部)的三维模型。在一些实施方案中,结合成像模块243(也称为相机模块),深度相机传感器275可选地用于确定由成像模块243捕获的图像的不同部分的深度图。在一些实施方案中,深度相机传感器位于设备200的前部,使得在用户在触摸屏显示器上查看其他视频会议参与者的同时任选地获取具有深度信息的用户图像以用于视频会议,并且捕捉具有深度图数据的自拍。在一些实施方案中,深度相机传感器275 位于设备的背面,或者设备200的背面和前面。在一些实施方案中,深度相机传感器275的位置可由用户改变(例如,通过旋转设备外壳中的透镜和传感器),使得深度相机传感器275与触摸屏显示器一起使用,以用于视频会议和静态图像和/或视频图像采集两者。
在一些实施方案中,深度图(例如,深度图图像)包含与场景中的对象距视点(例如,相机、光学传感器、深度相机传感器)的距离相关的信息(例如,值)。在深度图的一个实施方案中,每个深度像素定义视点的 Z轴中其对应的二维像素所在的位置。在一些实施方案中,深度图由像素组成,其中每个像素由值(例如,0到255)定义。例如,“0”值表示位于“三维”场景中距离视点(例如,相机、光学传感器、深度相机传感器)最远处的像素,“255”值表示位于“三维”场景中距离视点最近处的像素。在其他实施方案中,深度图表示场景中的对象与视点的平面之间的距离。在一些实施方案中,深度图包括关于深度相机的视野中感兴趣对象的各种特征的相对深度的信息(例如,用户面部的眼睛、鼻部、嘴巴、耳朵的相对深度)。在一些实施方案中,深度图包括使设备能够确定感兴趣对象在z方向上的轮廓的信息。
设备200任选地还包括一个或多个接触强度传感器265。图2A示出了耦接到I/O子系统206中的强度传感器控制器259的接触强度传感器。接触强度传感器265任选地包括一个或多个压阻应变计、电容式力传感器、电力传感器、压电力传感器、光学力传感器、电容式触敏表面或其他强度传感器(例如,用于测量触敏表面上的接触的力(或压力)的传感器)。接触强度传感器265从环境接收接触强度信息(例如,压力信息或压力信息的代用物)。在一些实施方案中,至少一个接触强度传感器与触敏表面 (例如,触敏显示器系统212)并置排列或邻近。在一些实施方案中,至少一个接触强度传感器位于设备200的与位于设备200的前部上的触摸屏显示器212相背对的后部上。
设备200任选地还包括一个或多个接近传感器266。图2A示出了耦接到外围设备接口218的接近传感器266。另选地,接近传感器266任选地耦接到I/O子系统206中的输入控制器260。接近传感器266任选地如以下美国专利申请中所述的那样执行:11/241,839,名称为“Proximity Detector In Handheld Device”;No.11/240,788,名称为“ProximityDetector In Handheld Device”(手持设备中的接近检测器);No.11/620,702,名称为“Using Ambient Light Sensor To Augment Proximity Sensor Output”(使用环境光线传感器增强接近传感器输出);No.11/586,862,名称为“Automated Response To AndSensing Of User Activity In Portable Devices”(自动响应和感测便携式设备中的用户活动);以及No.11/638,251,名称为“Methods And Systems For AutomaticConfiguration Of Peripherals”(用于外围设备的自动配置的方法和系统),这些美国专利申请据此全文以引用方式并入本文。在一些实施方案中,当多功能设备被放置在用户的耳朵附近时(例如,当用户正在打电话时),接近传感器关闭并且禁用触摸屏 212。
设备200任选地还包括一个或多个触觉输出发生器267。图2A示出了耦接到I/O子系统206中的触觉反馈控制器261的触觉输出发生器。触觉输出发生器267任选地包括一个或多个电声设备,诸如扬声器或其他音频部件;和/或将能量转换成线性运动的机电设备,诸如马达、螺线管、电活性聚合器、压电致动器、静电致动器或其他触觉输出生成部件(例如,将电信号转换成设备上的触觉输出的部件)。接触强度传感器265从触觉反馈模块233接收触觉反馈生成指令,并且在设备200上生成能够由设备200 的用户感觉到的触觉输出。在一些实施方案中,至少一个触觉输出发生器与触敏表面(例如,触敏显示器系统212)并置排列或邻近,并且任选地通过竖直地(例如,向设备200的表面内/外)或侧向地(例如,在与设备 200的表面相同的平面中向后和向前)移动触敏表面来生成触觉输出。在一些实施方案中,至少一个触觉输出发生器传感器位于设备200的与位于设备200的前部上的触摸屏显示器212相背对的后部上。
设备200任选地还包括一个或多个加速度计268。图2A示出了耦接至外围设备接口218的加速度计268。另选地,加速度计268任选地耦接到 I/O子系统206中的输入控制器260。加速度计268任选地如以下美国专利公开中所述的那样执行:美国专利公开20050190059,名称为“Acceleration-based Theft Detection System for PortableElectronic Devices”和美国专利公开20060017692,名称为“Methods And ApparatusesFor Operating A Portable Device Based On An Accelerometer”,这两个美国专利公开均全文以引用方式并入本文。在一些实施方案中,基于对从一个或多个加速度计接收的数据的分析来在触摸屏显示器上以纵向视图或横向视图显示信息。除了加速度计268之外,设备200任选地还包括磁力仪和GPS (或GLONASS或其他全球导航系统)接收器,以用于获取关于设备200 的位置和取向(例如,纵向或横向)的信息。
在一些实施方案中,存储于存储器202中的软件部件包括操作系统 226、通信模块(或指令集)228、接触/运动模块(或指令集)230、图形模块(或指令集)232、文本输入模块(或指令集)234、全球定位系统(GPS) 模块(或指令集)235、数字助理客户端模块229以及应用程序(或指令集)236。此外,存储器202存储数据与模型,诸如用户数据与模型231。此外,在一些实施方案中,存储器202(图2A)或470(图4)存储设备/ 全局内部状态257,如图2A、和图4中所示的。设备/全局内部状态257包括以下中的一者或多者:活动应用状态,其指示哪些应用(如果有的话) 当前是活动的;显示状态,其指示什么应用、视图或其他信息占据触摸屏显示器212的各个区域;传感器状态,包括从设备的各个传感器和输入控制设备216获得的信息;以及关于设备的位置和/或姿态的位置信息。
操作系统226(例如,Darwin、RTXC、LINUX、UNIX、OS X、 iOS、WINDOWS、或嵌入式操作系统诸如VxWorks)包括用于控制和管理一般系统任务(例如,存储器管理、存储设备控制、功率管理等)的各种软件部件和/或驱动程序,并且促进各种硬件部件和软件部件之间的通信。
通信模块228促进通过一个或多个外部端口224来与其他设备进行通信,并且还包括用于处理由RF电路208和/或外部端口224所接收的数据的各种软件部件。外部端口224(例如,通用串行总线(USB)、火线等)适于直接耦接到其他设备或间接地经由网络(例如,互联网、无线LAN等) 耦接。在一些实施方案中,外部端口是与(Apple Inc.的商标)设备上所使用的30针连接器相同的或类似的和/或与其兼容的多针(例如,30 针)连接器。
接触/运动模块230任选地检测与触摸屏212(结合显示控制器256) 和其他触敏设备(例如,触摸板或物理点击式转盘)的接触。接触/运动模块230包括各种软件部件以用于执行与接触检测相关的各种操作,诸如确定是否已发生接触(例如,检测手指按下事件)、确定接触的强度(例如,接触的力或压力,或者接触的力或压力的替代物)、确定是否存在接触的移动并跟踪在触敏表面上的移动(例如,检测一个或多个手指拖动事件),以及确定接触是否已停止(例如,检测手指抬起事件或者接触断开)。接触/运动模块230从触敏表面接收接触数据。确定接触点的移动任选地包括确定接触点的速率(量值)、速度(量值和方向)和/或加速度(量值和/或方向的改变),所述接触点的移动由一系列接触数据表示。这些操作任选地被应用于单点接触(例如,单指接触)或者多点同时接触 (例如,“多点触摸”/多个手指接触)。在一些实施方案中,接触/运动模块230和显示控制器256检测触控板上的接触。
在一些实施方案中,接触/运动模块230使用一组一个或多个强度阈值来确定用户是否已经执行操作(例如,确定用户是否已经“点击”图标)。在一些实施方案中,根据软件参数来确定强度阈值的至少一个子集 (例如,强度阈值不是由特定物理致动器的激活阈值来确定的,并且可在不改变设备200的物理硬件的情况下被调节)。例如,在不改变触控板或触摸屏显示器硬件的情况下,触控板或触摸屏的鼠标“点击”阈值可被设定成预定义的阈值的大范围中的任一个阈值。另外,在一些具体实施中,向设备的用户提供用于调节一组强度阈值中的一个或多个强度阈值(例如,通过调节各个强度阈值和/或通过利用对“强度”参数的系统级点击来一次调节多个强度阈值)的软件设置。
接触/运动模块230任选地检测由用户进行的手势输入。触敏表面上的不同手势具有不同的接触模式(例如,所检测到的接触的不同运动、计时和/或强度)。因此,任选地通过检测特定接触模式来检测手势。例如,检测手指轻击手势包括检测手指按下事件,然后在与手指按下事件相同的位置(或基本上相同的位置)处(例如,在图标的位置处)检测手指抬起(抬离)事件。作为另一个示例,在触敏表面上检测手指轻扫手势包括检测手指按下事件,然后检测一个或多个手指拖动事件,并且随后检测手指抬起(抬离)事件。
图形模块232包括用于在触摸屏212或其他显示器上呈现和显示图形的各种已知的软件部件,包括用于改变所显示的图形的视觉冲击(例如,亮度、透明度、饱和度、对比度或其他视觉特征)的部件。如本文所用,术语“图形”包括可被显示给用户的任何对象,非限制性地包括文本、网页、图标(诸如,包括软键的用户界面对象)、数字图像、视频、动画等。
在一些实施方案中,图形模块232存储表示待使用的图形的数据。每个图形任选地被分配有对应的代码。图形模块232从应用程序等接收指定待显示的图形的一个或多个代码,在必要的情况下还接收坐标数据和其他图形属性数据,然后生成屏幕图像数据以输出到显示控制器256。
触觉反馈模块233包括用于生成指令的各种软件部件,该指令由触觉输出发生器267使用,以便响应于用户与设备200的交互而在设备200上的一个或多个位置处产生触觉输出。
任选地为图形模块232的部件的文本输入模块234提供用于在各种应用程序(例如,联系人237、电子邮件240、IM 241、浏览器247和需要文本输入的任何其他应用程序)中输入文本的软键盘。
GPS模块235确定设备的位置,并提供该信息以供在各种应用中使用 (例如提供给电话238以供在基于位置的拨号中使用;提供给相机243作为图片/视频元数据;以及提供给提供基于位置的服务的应用,诸如天气桌面小程序、本地黄页桌面小程序和地图/导航桌面小程序)。
数字助理客户端模块229包括各种客户端侧数字助理指令,以提供数字助理的客户端侧功能。例如,数字助理客户端模块229能够通过便携式多功能设备200的各种用户接口(例如,麦克风213、加速度计268、触敏显示器系统212、光学传感器229、其他输入控制设备216等)接受声音输入(例如,语音输入)、文本输入、触摸输入和/或手势输入。数字助理客户端模块229还能够通过便携式多功能设备200的各种输出接口(例如,扬声器211、触敏显示器系统212、触觉输出生成器267等)提供音频形式的输出(例如,语音输出)、视觉形式的输出和/或触觉形式的输出。例如,将输出提供为语音、声音、警报、文本消息、菜单、图形、视频、动画、振动和/或以上两者或更多者的组合。在操作期间,数字助理客户端模块229使用RF电路208与DA服务器106通信。
用户数据与模型231包括与用户相关联的各种数据(例如,用户特定的词汇数据、用户偏好数据、用户指定的名称发音、来自用户电子通讯录的数据、待办事项、购物清单等)以提供数字助理的客户端侧功能。此外,用户数据与模型231包括用于处理用户输入并且确定用户意图的各种模型(例如,语音识别模型、统计语言模型、自然语言处理模型、知识本体、任务流模型、服务模型等)。
在一些示例中,数字助理客户端模块229利用便携式多功能设备200 的各种传感器、子系统和外围设备来从便携式多功能设备200的周围环境采集附加信息,以建立与用户、当前用户交互和/或当前用户输入相关联的上下文。在一些示例中,数字助理客户端模块229将上下文信息或其子集与用户输入一起提供至DA服务器106以帮助推断用户意图。在一些示例中,数字助理还使用上下文信息来确定如何准备输出并将其传送给用户。上下文信息被称为上下文数据。
在一些示例中,伴随用户输入的上下文信息包括传感器信息,例如照明、环境噪声、环境温度、周围环境的图像或视频等。在一些示例中,上下文信息还可包括设备的物理状态,例如设备取向、设备位置、设备温度、功率电平、速度、加速度、运动模式、蜂窝信号强度等。在一些示例中,将与DA服务器106的软件状态相关的信息,例如便携式多功能设备200的运行过程、已安装程序、过去和当前的网络活动、后台服务、错误日志、资源使用等,作为与用户输入相关联的上下文信息提供至DA服务器 106。
在一些示例中,数字助理客户端模块229响应于来自DA服务器106 的请求而选择性地提供存储在便携式多功能设备200上的信息(例如,用户数据231)。在一些示例中,数字助理客户端模块229还在DA服务器 106请求时引出来自用户经由自然语言对话或其他用户接口的附加输入。数字助理客户端模块229将该附加输入传送至DA服务器106,以帮助DA服务器106进行意图推断和/或满足在用户请求中表达的用户意图。
下面结合图7A-C对数字助理进行更详细的描述。应当认识到,数字助理客户端模块229可包括下文所述的数字助理模块726的任意数量的子模块。
应用程序236任选地包括以下模块(或指令集)或者其子集或超集:
·联系人模块237(有时称为地址簿或联系人列表);
·电话模块238;
·视频会议模块239;
·电子邮件客户端模块240;
·即时消息(IM)模块241;
·健身支持模块242;
·用于静态图像和/或视频图像的相机模块243;
·图像管理模块244;
·视频播放器模块;
·音乐播放器模块;
·浏览器模块247;
·日历模块248;
·桌面小程序模块249,其任选地包括以下各项中的一者或多者:天气桌面小程序249-1、股市桌面小程序249-2、计算器桌面小程序 249-3、闹钟桌面小程序249-4、词典桌面小程序249-5、和由用户获取的其他桌面小程序、以及用户创建的桌面小程序249-6;
·用于形成用户创建的桌面小程序249-6的桌面小程序创建器模块 250;
·搜索模块251;
·视频和音乐播放器模块252,其合并视频播放器模块和音乐播放器模块;
·记事本模块253;
·地图模块254;和/或
·在线视频模块255。
任选地存储在存储器202中的其他应用程序236的示例包括其他文字处理应用程序、其他图像编辑应用程序、绘图应用程序、呈现应用程序、支持JAVA的应用程序、加密、数字权益管理、语音识别和语音复制。
结合触摸屏212、显示控制器256、接触/运动模块230、图形模块 232、和文本输入模块234,联系人模块237任选地用于管理通讯录或联系人列表(例如,存储在存储器202或存储器470中的联系人模块237的应用程序内部状态292中),包括:向通讯录添加一个或多个姓名;从地址簿删除姓名;将电话号码、电子邮件地址、物理地址或其他信息与姓名关联;将图像与姓名关联;对姓名进行归类和分类;提供电话号码或电子邮件地址来发起和/或促进通过电话238、视频会议模块239、电子邮件240或 IM 241的通信;等等。
结合RF电路208、音频电路210、扬声器211、麦克风213、触摸屏 212、显示控制器256、接触/运动模块230、图形模块232和文本输入模块 234,电话模块238可选地用于输入对应于电话号码的字符序列、访问联系人模块237中的一个或多个电话号码、修改已输入的电话号码、拨打相应的电话号码、进行会话以及当会话完成时断开或挂断。如上所述,无线通信任选地使用多种通信标准、协议和技术中的任一种。
结合RF电路208、音频电路210、扬声器211、麦克风213、触摸屏 212、显示控制器256、光学传感器264、光学传感器控制器258、接触/运动模块230、图形模块232、文本输入模块234、联系人模块237和电话模块238,视频会议模块239包括根据用户指令来发起、进行和终止用户与一个或多个其他参与方之间的视频会议的可执行指令。
结合RF电路208、触摸屏212、显示控制器256、接触/运动模块 230、图形模块232和文本输入模块234,电子邮件客户端模块240包括响应于用户指令来创建、发送、接收和管理电子邮件的可执行指令。结合图像管理模块244,电子邮件客户端模块240使得非常容易创建和发送具有由相机模块243拍摄的静态图像或视频图像的电子邮件。
结合RF电路208、触摸屏212、显示控制器256、接触/运动模块 230、图形模块232和文本输入模块234,即时消息模块241包括用于以下操作的可执行指令:输入与即时消息对应的字符序列、修改先前输入的字符、传输相应即时消息(例如,使用短消息服务(SMS)或多媒体消息服务 (MMS)协议以用于基于电话的即时消息或者使用XMPP、SIMPLE、或 IMPS以用于基于互联网的即时消息)、接收即时消息以及查看所接收的即时消息。在一些实施方案中,所传输和/或接收的即时消息任选地包括图形、照片、音频文件、视频文件和/或MMS和/或增强消息服务(EMS)中所支持的其他附件。如本文所用,“即时消息”是指基于电话的消息(例如,使用SMS或MMS发送的消息)和基于互联网的消息(例如,使用 XMPP、SIMPLE或IMPS发送的消息)两者。
结合RF电路208、触摸屏212、显示控制器256、接触/运动模块 230、图形模块232、文本输入模块234、GPS模块235、地图模块254和音乐播放器模块,健身支持模块242包括用于以下各项的可执行指令:创建健身(例如,具有时间、距离和/或卡路里燃烧目标);与健身传感器(运动设备)进行通信;接收健身传感器数据;校准用于监视健身的传感器;为健身选择和播放音乐;以及显示、存储和传输健身数据。
结合触摸屏212、显示控制器256、一个或多个光学传感器264、光学传感器控制器258、接触/运动模块230、图形模块232和图像管理模块244,相机模块243包括用于以下操作的可执行指令:捕获静态图像或视频 (包括视频流)并且将它们存储到存储器202中、修改静态图像或视频的特征,或从存储器202删除静态图像或视频。
结合触摸屏212、显示控制器256、接触/运动模块230、图形模块 232、文本输入模块234、和相机模块243,图像管理模块244包括用于排列、修改(例如,编辑)、或以其他方式操控、加标签、删除、呈现(例如,在数字幻灯片或相册中)、以及存储静态图像和/或视频图像的可执行指令。
结合RF电路208、触摸屏212、显示控制器256、接触/运动模块 230、图形模块232和文本输入模块234,浏览器模块247包括用于根据用户指令来浏览互联网(包括搜索、链接至、接收和显示网页或其部分,以及链接至网页的附件和其他文件)的可执行指令。
结合RF电路208、触摸屏212、显示控制器256、接触/运动模块 230、图形模块232、文本输入模块234、电子邮件客户端模块240和浏览器模块247,日历模块248包括用于根据用户指令来创建、显示、修改和存储日历以及与日历相关联的数据(例如,日历条目、待办事项等)的可执行指令。
结合RF电路208、触摸屏212、显示系统控制器256、接触/运动模块 230、图形模块232、文本输入模块234和浏览器模块247,桌面小程序模块249是任选地由用户下载和使用的微型应用(例如,天气桌面小程序 249-1、股市桌面小程序249-2、计算器桌面小程序249-3、闹钟桌面小程序 249-4和词典桌面小程序249-5)或由用户创建的微型应用(例如,用户创建的桌面小程序249-6)。在一些实施方案中,桌面小程序包括HTML(超文本标记语言)文件、CSS(层叠样式表)文件和JavaScript文件。在一些实施方案中,桌面小程序包括XML(可扩展标记语言)文件和JavaScript 文件(例如,Yahoo!桌面小程序)。
结合RF电路208、触摸屏212、显示控制器256、接触/运动模块 230、图形模块232、文本输入模块234和浏览器模块247,桌面小程序创建器模块250任选地被用户用于创建桌面小程序(例如,将网页的用户指定部分转到桌面小程序中)。
结合触摸屏212、显示控制器256、接触/运动模块230、图形模块232 和文本输入模块234,搜索模块251包括用于根据用户指令来搜索存储器 202中的匹配一个或多个搜索条件(例如,一个或多个用户指定的搜索词) 的文本、音乐、声音、图像、视频和/或其他文件的可执行指令。
结合触摸屏212、显示控制器256、接触/运动模块230、图形模块 232、音频电路系统210、扬声器211、RF电路系统208和浏览器模块 247,视频和音乐播放器模块252包括允许用户下载和回放以一种或多种文件格式(诸如MP3或AAC文件)存储的所记录的音乐和其他声音文件的可执行指令,以及用于显示、呈现或以其他方式回放视频(例如,在触摸屏212上或在经由外部端口224连接的外部显示器上)的可执行指令。在一些实施方案中,设备200任选地包括MP3播放器诸如iPod(Apple Inc.的商标)的功能。
结合触摸屏212、显示控制器256、接触/运动模块230、图形模块232 和文本输入模块234,记事本模块253包括用于根据用户指令来创建和管理记事本、待办事项等的可执行指令。
结合RF电路208、触摸屏212、显示控制器256、接触/运动模块 230、图形模块232、文本输入模块234、GPS模块235和浏览器模块247,地图模块254可选地根据用户指令来接收、显示、修改和存储地图以及与地图相关联的数据(例如,驾驶方向、与特定位置处或其附近的商店及其他兴趣点相关的数据,以及其他基于位置的数据)。
结合触摸屏212、显示控制器256、接触/运动模块230、图形模块 232、音频电路210、扬声器211、RF电路208、文本输入模块234、电子邮件客户端模块240和浏览器模块247,在线视频模块255包括允许用户访问、浏览、接收(例如,通过流式传输和/或下载)、回放(例如,在触摸屏上或经由外部端口224在所连接的外部显示器上)、发送具有至特定在线视频的链接的电子邮件,以及以其他方式管理一种或多种文件格式(诸如,H.264)的在线视频的指令。在一些实施方案中,使用即时消息模块 241而不是电子邮件客户端模块240来发送特定在线视频的链接。在线视频应用程序的其他描述可在于2007年6月20日提交的名称为“Portable Multifunction Device,Method,and Graphical User Interface forPlaying Online Videos”的美国临时专利申请60/936,562和于2007年12月31日提交的名称为“Portable Multifunction Device,Method,and Graphical User Interface forPlaying Online Videos”的美国专利申请11/968,067中找到,这两个专利申请的内容据此全文以引用方式并入本文。
上述每个模块和应用程序对应于用于执行上述一种或多种功能以及在本专利申请中所述的方法(例如,本文所述的计算机实现的方法和其他信息处理方法)的可执行指令集。这些模块(例如,指令集)不必以独立的软件程序、过程或模块实现,并因此这些模块的各种子集任选地在各种实施方案中组合或以其他方式重新布置。例如,视频播放器模块任选地与音乐播放器模块组合成单个模块(例如,图2A中的视频和音乐播放器模块 252)。在一些实施方案中,存储器202任选地存储上述模块和数据结构的子集。此外,存储器202任选地存储上面未描述的另外的模块和数据结构。
在一些实施方案中,设备200是该设备上的预定义的一组功能的操作唯一地通过触摸屏和/或触摸板来执行的设备。通过使用触摸屏和/或触控板作为用于操作设备200的主要输入控制设备,任选地减少设备200上的物理输入控制设备(例如,下压按钮、拨盘等等)的数量。
唯一地通过触摸屏和/或触控板来执行的预定义的一组功能任选地包括在用户界面之间的导航。在一些实施方案中,当用户触摸触摸板时,将设备200从设备200上显示的任何用户界面导航到主菜单、home菜单或根菜单。在此类实施方案中,使用触摸板来实现“菜单按钮”。在一些其他实施方案中,菜单按钮是物理下压按钮或者其他物理输入控制设备,而不是触摸板。
图2B是示出根据一些实施方案的用于事件处理的示例性部件的框图。在一些实施方案中,存储器202(图2A)或存储器470(图4)包括事件分类器270(例如,在操作系统226中)以及相应的应用程序236-1(例如,前述应用程序237-251、255、480-490中的任一个应用程序)。
事件分类器270接收事件信息并确定要将事件信息递送到的应用程序 236-1和应用程序236-1的应用程序视图291。事件分类器270包括事件监视器271和事件分配器模块274。在一些实施方案中,应用程序236-1包括应用程序内部状态292,该应用程序内部状态指示当应用程序是活动的或正在执行时被显示在触敏显示器212上的一个或多个当前应用程序视图。在一些实施方案中,设备/全局内部状态257被事件分类器270用来确定哪个 (哪些)应用程序当前是活动的,并且应用程序内部状态292被事件分类器270用来确定要将事件信息递送到的应用程序视图291。
在一些实施方案中,应用程序内部状态292包括附加信息,诸如以下各项中的一者或多者:当应用程序236-1恢复执行时将被使用的恢复信息、指示正被应用程序236-1显示的信息或准备好用于被应用程序236-1显示的信息的用户界面状态信息、用于使得用户能够返回到应用程序236-1的前一状态或视图的状态队列,以及用户采取的先前动作的重复/撤销队列。
事件监视器271从外围设备接口218接收事件信息。事件信息包括关于子事件(例如,触敏显示器212上的用户触摸,作为多点触摸手势的一部分)的信息。外围设备接口218传输其从I/O子系统206或传感器诸如接近传感器266、加速度计268和/或麦克风213(通过音频电路210)接收的信息。外围设备接口218从I/O子系统206接收的信息包括来自触敏显示器 212或触敏表面的信息。
在一些实施方案中,事件监视器271以预先确定的间隔发送请求至外围设备接口218。作为响应,外围设备接口218传输事件信息。在其他实施方案中,外围设备接口218仅当存在显著事件(例如,接收到高于预先确定的噪声阈值的输入和/或接收到超过预先确定的持续时间的输入)时才传输事件信息。
在一些实施方案中,事件分类器270还包括命中视图确定模块272和/ 或活动事件识别器确定模块273。
当触敏显示器212显示多于一个视图时,命中视图确定模块272提供用于确定子事件已在一个或多个视图内的什么地方发生的软件过程。视图由用户能够在显示器上看到的控件和其他元素构成。
与应用程序相关联的用户界面的另一方面是一组视图,本文中有时也称为应用程序视图或用户界面窗口,在其中显示信息并且发生基于触摸的手势。在其中检测到触摸的(相应应用程序的)应用程序视图任选地对应于在应用程序的程序化或视图分级结构内的程序化水平。例如,在其中检测到触摸的最低水平视图任选地被称为命中视图,并且被识别为正确输入的事件集任选地至少部分地基于初始触摸的命中视图来确定,所述初始触摸开始基于触摸的手势。
命中视图确定模块272接收与基于触摸的手势的子事件相关的信息。当应用程序具有以分级结构组织的多个视图时,命中视图确定模块272将命中视图识别为应当对子事件进行处理的分级结构中的最低视图。在大多数情况下,命中视图是发起子事件(例如,形成事件或潜在事件的子事件序列中的第一子事件)在其中发生的最低水平视图。一旦命中视图被命中视图确定模块272识别,命中视图便通常接收与其被识别为命中视图所针对的同一触摸或输入源相关的所有子事件。
活动事件识别器确定模块273确定视图分级结构内的哪个或哪些视图应接收特定子事件序列。在一些实施方案中,活动事件识别器确定模块273 确定仅命中视图应接收特定子事件序列。在其他实施方案中,活动事件识别器确定模块273确定包括子事件的物理位置的所有视图是活跃参与的视图,并因此确定所有活跃参与的视图都应接收特定子事件序列。在其他实施方案中,即使触摸子事件完全被局限到与一个特定视图相关联的区域,分级结构中的较高视图将仍然保持为活跃参与的视图。
事件分配器模块274将事件信息分配到事件识别器(例如,事件识别器280)。在包括活动事件识别器确定模块273的实施方案中,事件分配器模块274将事件信息递送到由活动事件识别器确定模块273确定的事件识别器。在一些实施方案中,事件分配器模块274在事件队列中存储事件信息,该事件信息由相应事件接收器282进行检索。
在一些实施方案中,操作系统226包括事件分类器270。另选地,应用程序236-1包括事件分类器270。在又一个实施方案中,事件分类器270 是独立模块,或者是存储在存储器202中的另一个模块(诸如,接触/运动模块230)的一部分。
在一些实施方案中,应用程序236-1包括多个事件处理程序290和一个或多个应用程序视图291,其中每个应用程序视图包括用于处理发生在应用程序的用户界面的相应视图内的触摸事件的指令。应用程序236-1的每个应用程序视图291包括一个或多个事件识别器280。通常,相应应用程序视图291包括多个事件识别器280。在其他实施方案中,事件识别器280中的一个或多个事件识别器为独立模块的一部分,该独立模块诸如用户界面工具包或应用程序236-1从中继承方法和其他属性的更高水平的对象。在一些实施方案中,相应事件处理程序290包括以下各项中的一者或多者:数据更新器276、对象更新器277、GUI更新器278和/或从事件分类器270所接收的事件数据279。事件处理程序290利用或调用数据更新器276、对象更新器277或GUI更新器278来更新应用程序内部状态292。另选地,应用程序视图291中的一个或多个应用程序视图包括一个或多个相应事件处理程序290。另外,在一些实施方案中,数据更新器276、对象更新器277和 GUI更新器278中的一者或多者包括在相应应用程序视图291中。
相应事件识别器280从事件分类器270接收事件信息(例如,事件数据279),并且从事件信息识别事件。事件识别器280包括事件接收器282 和事件比较器284。在一些实施方案中,事件识别器280还包括元数据283 和事件传递指令288(其任选地包括子事件递送指令)的至少一个子集。
事件接收器282从事件分类器270接收事件信息。事件信息包括关于子事件例如触摸或触摸移动的信息。根据子事件,事件信息还包括附加信息,诸如子事件的位置。当子事件涉及触摸的运动时,事件信息任选地还包括子事件的速率和方向。在一些实施方案中,事件包括设备从一个取向旋转到另一取向(例如,从纵向取向旋转到横向取向,或反之亦然),并且事件信息包括关于设备的当前取向(也被称为设备姿态)的对应信息。
事件比较器284将事件信息与预定义的事件或子事件定义进行比较,并且基于该比较,确定事件或子事件,或者确定或更新事件或子事件的状态。在一些实施方案中,事件比较器284包括事件定义286。事件定义286 包含事件的定义(例如,预定义的子事件序列),例如事件1(287-1)、事件2(287-2)以及其他事件。在一些实施方案中,事件(287)中的子事件包括例如触摸开始、触摸结束、触摸移动、触摸取消和多点触摸。在一个示例中,事件1(287-1)的定义是在所显示对象上的双击。例如,双击包括被显示对象上的预先确定时长的第一次触摸(触摸开始)、预先确定时长的第一次抬离(触摸结束)、被显示对象上的预先确定时长的第二次触摸(触摸开始)以及预先确定时长的第二次抬离(触摸结束)。在另一个示例中,事件2(287-2)的定义是被显示对象上的拖动。例如,拖动包括被显示对象上的预先确定时长的触摸(或接触)、触摸在触敏显示器212上的移动、以及触摸的抬离(触摸结束)。在一些实施方案中,事件还包括用于一个或多个相关联的事件处理程序290的信息。
在一些实施方案中,事件定义287包括用于相应用户界面对象的事件的定义。在一些实施方案中,事件比较器284执行命中测试以确定哪个用户界面对象与子事件相关联。例如,在触敏显示器212上显示三个用户界面对象的应用程序视图中,当在触敏显示器212上检测到触摸时,事件比较器284执行命中测试以确定这三个用户界面对象中的哪一个用户界面对象与该触摸(子事件)相关联。如果每个所显示对象与相应事件处理程序 290相关联,则事件比较器使用该命中测试的结果来确定哪个事件处理程序 290应当被激活。例如,事件比较器284选择与子事件和触发该命中测试的对象相关联的事件处理程序。
在一些实施方案中,相应事件(287)的定义还包括延迟动作,该延迟动作延迟事件信息的递送,直到已确定子事件序列是否确实对应于或不对应于事件识别器的事件类型。
当相应事件识别器280确定子事件序列不与事件定义286中的任何事件匹配时,该相应事件识别器280进入事件不可能、事件失败或事件结束状态,在此之后忽略基于触摸的手势的后续子事件。在这种情况下,对于命中视图保持活动的其他事件识别器(如果有的话)继续跟踪并处理持续进行的基于触摸的手势的子事件。
在一些实施方案中,相应事件识别器280包括具有指示事件递送系统应当如何执行对活跃参与的事件识别器的子事件递送的可配置属性、标记和/或列表的元数据283。在一些实施方案中,元数据283包括指示事件识别器彼此如何交互或如何能够交互的可配置属性、标志和/或列表。在一些实施方案中,元数据283包括指示子事件是否被递送到视图或程序化分级结构中的不同层级的可配置属性、标志和/或列表。
在一些实施方案中,当识别事件的一个或多个特定子事件时,相应事件识别器280激活与事件相关联的事件处理程序290。在一些实施方案中,相应事件识别器280将与事件相关联的事件信息递送到事件处理程序290。激活事件处理程序290不同于将子事件发送(和延期发送)到相应命中视图。在一些实施方案中,事件识别器280抛出与所识别的事件相关联的标记,并且与该标记相关联的事件处理程序290获取该标记并执行预定义过程。
在一些实施方案中,事件递送指令288包括递送关于子事件的事件信息而不激活事件处理程序的子事件递送指令。相反,子事件递送指令将事件信息递送到与子事件序列相关联的事件处理程序或者递送到活跃参与的视图。与子事件序列或与活跃参与的视图相关联的事件处理程序接收事件信息并执行预先确定的过程。
在一些实施方案中,数据更新器276创建并更新在应用程序236-1中使用的数据。例如,数据更新器276更新联系人模块237中所使用的电话号码,或者存储视频播放器模块中所使用的视频文件。在一些实施方案中,对象更新器277创建和更新在应用程序236-1中使用的对象。例如,对象更新器277创建新的用户界面对象或更新用户界面对象的位置。GUI更新器278更新GUI。例如,GUI更新器278准备显示信息并将其发送到图形模块232以供在触敏显示器上显示。
在一些实施方案中,事件处理程序290包括数据更新器276、对象更新器277和GUI更新器278或者具有对它们的访问权限。在一些实施方案中,数据更新器276、对象更新器277和GUI更新器278被包括在相应应用程序236-1或应用程序视图291的单个模块中。在其他实施方案中,它们被包括在两个或更多个软件模块中。
应当理解,关于触敏显示器上的用户触摸的事件处理的上述讨论还适用于利用输入设备来操作多功能设备200的其他形式的用户输入,并不是所有用户输入都是在触摸屏上发起的。例如,任选地与单次或多次键盘按下或按住协作的鼠标移动和鼠标按钮按下;触控板上的接触移动,诸如轻击、拖动、滚动等;触笔输入;设备的移动;口头指令;检测到的眼睛移动;生物特征输入;和/或它们的任何组合任选地被用作对应于限定要识别的事件的子事件的输入。
图3示出了根据一些实施方案的具有触摸屏212的便携式多功能设备 200。触摸屏任选地在用户界面(UI)300内显示一个或多个图形。在本实施方案以及下文所述的其他实施方案中,用户能够通过例如利用一根或多根手指302(在图中未按比例绘制)或一支或多支触笔303(在图中未按比例绘制)在图形上作出手势来选择这些图形中的一个或多个图形。在一些实施方案中,当用户中断与一个或多个图形的接触时,将发生对一个或多个图形的选择。在一些实施方案中,手势任选地包括一次或多次轻击、一次或多次轻扫(从左向右、从右向左、向上和/或向下)和/或已与设备200发生接触的手指的滚动(从右向左、从左向右、向上和/或向下)。在一些具体实施中或在一些情况下,不经意地与图形接触不会选择图形。例如,当与选择对应的手势是轻击时,在应用程序图标上方扫动的轻扫手势任选地不会选择对应的应用程序。
设备200任选地还包括一个或多个物理按钮,诸如“home”按钮、或菜单按钮304。如前所述,菜单按钮304任选地用于导航到任选地在设备 200上被执行的一组应用中的任何应用236。另选地,在一些实施方案中,菜单按钮被实现为被显示在触摸屏212上的GUI中的软键。
在一些实施方案中,设备200包括触摸屏212、菜单按钮304、用于使设备开机/关机和用于锁定设备的下压按钮306、一个或多个音量调节按钮 308、用户身份模块(SIM)卡槽310、耳麦插孔312和对接/充电外部端口 224。下压按钮306任选地用于通过压下该按钮并且将该按钮保持在压下状态持续预定义的时间间隔来对设备进行开/关机;通过压下该按钮并在该预定义的时间间隔过去之前释放该按钮来锁定设备;和/或对设备进行解锁或发起解锁过程。在另选的实施方案中,设备200还通过麦克风213来接受用于激活或去激活某些功能的语音输入。设备200还任选地包括用于检测触摸屏212上的接触强度的一个或多个接触强度传感器265,和/或用于为设备200的用户生成触觉输出的一个或多个触觉输出发生器267。
图4是根据一些实施方案的具有显示器和触敏表面的示例性多功能设备的框图。设备400不必是便携式的。在一些实施方案中,设备400是膝上型计算机、台式计算机、平板电脑、多媒体播放器设备、导航设备、教育设备(诸如儿童学习玩具)、游戏系统或控制设备(例如,家用控制器或工业用控制器)。设备400通常包括一个或多个处理单元(CPU)410、一个或多个网络或其他通信接口460、存储器470和用于使这些部件互连的一个或多个通信总线420。通信总线420任选地包括使系统部件互连并且控制系统部件之间的通信的电路系统(有时称作芯片组)。设备400包括具有显示器440的输入/输出(I/O)接口430,该显示器通常是触摸屏显示器。I/O 接口430还任选地包括键盘和/或鼠标(或其他指向设备)450和触摸板 455、用于在设备400上生成触觉输出的触觉输出发生器457(例如,类似于以上参考图2A所述的一个或多个触觉输出发生器267)、传感器459 (例如,光学传感器、加速度传感器、接近传感器、触敏传感器、和/或类似于以上参考图2A所述的一个或多个接触强度传感器265的接触强度传感器)。存储器470包括高速随机存取存储器,诸如DRAM、SRAM、DDR RAM或其他随机存取固态存储器设备;并且任选地包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存存储器设备或其他非易失性固态存储设备。存储器470任选地包括远离CPU 410定位的一个或多个存储设备。在一些实施方案中,存储器470存储与便携式多功能设备 200(图2A)的存储器202中存储的程序、模块和数据结构类似的程序、模块和数据结构或其子集。此外,存储器470任选地存储在便携式多功能设备200的存储器202中不存在的附加程序、模块和数据结构。例如,设备400的存储器470任选地存储绘图模块480、呈现模块482、文字处理模块484、网站创建模块486、盘编辑模块488、和/或电子表格模块490,而便携式多功能设备200(图2A)的存储器202任选地不存储这些模块。
图4中的上述元素中的每个元素任选地存储于先前提到的存储器设备的一个或多个存储器设备中。上述模块中的每个模块对应于用于执行上述功能的指令集。上述模块或程序(例如,指令集)不必被实现为单独的软件程序、过程或模块,并且因此这些模块的各种子集任选地在各种实施方案中被组合或以其他方式重新布置。在一些实施方案中,存储器470任选地存储上述模块和数据结构的子集。此外,存储器470任选地存储上面未描述的另外的模块和数据结构。
现在将注意力转到任选地在例如便携式多功能设备200上实现的用户界面的实施方案。
图5A示出了根据一些实施方案的便携式多功能设备200上的应用程序菜单的示例性用户界面。类似的用户界面任选地在设备400上实现。在一些实施方案中,用户界面500包括以下元件或者其子集或超集:
一种或多种无线通信(诸如蜂窝信号和Wi-Fi信号)的一个或多个信号强度指示器502;
·时间504;
·蓝牙指示器505;
·电池状态指示器506;
·具有常用应用的图标的托盘508,常用应用图标诸如:
○电话模块238的被标记为“电话”的图标516,该图标任选地包括未接来电或语音留言的数量的指示器514;
○电子邮件客户端模块240的被标记为“邮件”的图标518,该图标任选地包括未读电子邮件的数量的指示器510;
○浏览器模块247的被标记为“浏览器”的图标520;以及
○视频和音乐播放器模块252(也称为iPod(Apple Inc.的商标) 模块252)的被标记为“iPod”的图标522;以及
·其他应用的图标,诸如:
○IM模块241的被标记为“消息”的图标524;
○日历模块248的被标记为“日历”的图标526;
○图像管理模块244的被标记为“照片”的图标528;
○相机模块243的被标记为“相机”的图标530;
○在线视频模块255的被标记为“在线视频”的图标532;
○股市桌面小程序249-2的被标记为“股市”的图标534;
○地图模块254的被标记为“地图”的图标536;
○天气桌面小程序249-1的被标记为“天气”的图标538;
○闹钟桌面小程序249-4的被标记为“时钟”的图标540;
○健身支持模块242的被标记为“健身支持”的图标542;
○记事本模块253的被标记为“记事本”的图标544;以及
○用于设置应用或模块的被标记为“设置”的图标546,该图标提供对设备200及其各种应用236的设置的访问。
应当指示的是,图5A中示出的图标标签仅是示例性的。例如,视频和音乐播放器模块252的图标522任选地被标记为“音乐”或“音乐播放器”。对于各种应用程序图标任选地使用其他标签。在一些实施方案中,相应应用程序图标的标签包括与该相应应用程序图标对应的应用程序的名称。在一些实施方案中,特定应用程序图标的标签不同于与该特定应用程序图标对应的应用程序的名称。
图5B示出了具有与显示器550(例如,触摸屏显示器212)分开的触敏表面551(例如,图4的平板电脑或触摸板455)的设备(例如,图4的设备400)上的示例性用户界面。设备400还任选地包括用于检测触敏表面 551上的接触的强度的一个或多个接触强度传感器(例如,传感器457中的一个或多个传感器),和/或用于为设备400的用户生成触觉输出的一个或多个触觉输出发生器459。
尽管将参考触摸屏显示器212(其中组合了触敏表面和显示器)上的输入给出以下示例中的一些示例,但是在一些实施方案中,设备检测与显示器分开的触敏表面上的输入,如图5B中所示。在一些实施方案中,触敏表面(例如,图5B中的551)具有对应于显示器(例如,550)上的主轴 (例如,图5B中的553)的主轴(例如,图5B中的552)。根据这些实施方案,设备检测在与显示器上的相应位置对应的位置(例如,在图5B中, 560对应于568并且562对应于570)处与触敏表面551的接触(例如,图 5B中的560和562)。这样,在触敏表面(例如,图5B中的551)与多功能设备的显示器(图5B中的550)分开时,由设备在触敏表面上检测到的用户输入(例如,接触560和562以及它们的移动)被该设备用于操控显示器上的用户界面。应当理解,类似的方法任选地用于本文所述的其他用户界面。
另外,虽然主要是参考手指输入(例如,手指接触、单指轻击手势、手指轻扫手势)来给出下面的示例,但是应当理解的是,在一些实施方案中,这些手指输入中的一个或多个手指输入由来自另一输入设备的输入 (例如,基于鼠标的输入或触笔输入)替代。例如,轻扫手势任选地由鼠标点击(例如,而不是接触),之后是光标沿着轻扫的路径的移动(例如,而不是接触的移动)替代。又如,轻击手势任选地由在光标位于轻击手势的位置上方时的鼠标点击(例如,代替对接触的检测,之后是停止检测接触)替代。类似地,当同时检测到多个用户输入时,应当理解的是,多个计算机鼠标任选地被同时使用,或鼠标和手指接触任选地被同时使用。
图6A示出了示例性个人电子设备600。设备600包括主体602。在一些实施方案中,设备600可包括相对于设备200和400(例如,图2A-图 4)所述的特征部中的一些或全部特征部。在一些实施方案中,设备600具有在下文中称为触摸屏604的触敏显示屏604。作为触摸屏604的替代或补充,设备600具有显示器和触敏表面。与设备200和400的情况一样,在一些实施方案中,触摸屏604(或触敏表面)任选地包括用于检测所施加的接触(例如,触摸)强度的一个或多个强度传感器。触摸屏604(或触敏表面)的一个或多个强度传感器可提供表示触摸强度的输出数据。设备600 的用户界面基于触摸强度来对触摸作出响应,这意味着不同强度的触摸可调用设备600上的不同的用户界面操作。
用于检测和处理触摸强度的示例性技术见于例如以下相关专利申请中:2013年5月8日提交的名称为“Device,Method,and Graphical User Interface for DisplayingUser Interface Objects Corresponding to an Application”的国际专利申请序列号PCT/US2013/040061,发布为WIPO专利公开号WO/2013/169849;以及2013年11月11日提交的名称为“Device, Method,and Graphical User Interface for Transitioning BetweenTouch Input to Display Output Relationships”的国际专利申请序列号PCT/US2013/069483,发布为WIPO专利公开号WO/2014/105276,该每个专利申请据此全文以引用方式并入。
在一些实施方案中,设备600具有一个或多个输入机构606和输入机构608。输入机构606和608(如果包括的话)可以是物理形式的。物理输入机构的示例包括下压按钮和可旋转机构。在一些实施方案中,设备600 具有一个或多个附接机构。此类附接机构(如果包括的话)可允许将设备 600与例如帽子、眼镜、耳环、项链、衬衣、夹克、手镯、表带、手链、裤子、皮带、鞋子、钱包、背包等附接。这些附接机构允许用户穿戴设备 600。
图6B示出了示例性个人电子设备600。在一些实施方案中,设备600 可选地包括参考图2A、图2B和图4所述的部件中的一些或全部部件。设备600具有总线612,该总线将I/O部分614与一个或多个计算机处理器 616和存储器618操作性地耦接。I/O部分614可选地连接到显示器604,该显示器可具有触敏部件622并且任选地具有强度传感器624(例如,接触强度传感器)。此外,I/O部分614可选地与通信单元630连接,以用于使用Wi-Fi、蓝牙、近场通信(NFC)、蜂窝和/或其他无线通信技术来接收应用程序和操作系统数据。设备600可选地包括输入机构606和/或输入机构 608。例如,输入机构606任选地是可旋转输入设备或者可按压输入设备以及可旋转输入设备。在一些示例中,输入机构608任选地是按钮。
在一些示例中,输入机构608任选地是麦克风。个人电子设备600可选地包括各种传感器,诸如GPS传感器632、加速度计634、定向传感器640(例如,罗盘)、陀螺仪636、运动传感器638和/或它们的组合,所有这些设备均可选地可操作地连接到I/O部分614。
个人电子设备600的存储器618可包括用于存储计算机可执行指令的一种或多种非暂态计算机可读存储介质,该指令当由一个或多个计算机处理器616执行时,例如使得计算机处理器执行上述技术和过程。该计算机可执行指令也例如在任何非暂态计算机可读存储介质内进行存储和/或传送,以供指令执行系统、装置或设备诸如基于计算机的系统、包含处理器的系统或可从指令执行系统、装置或设备获取指令并执行指令的其他系统使用或与其结合。在一些示例中,存储介质是非暂态计算机可读存储介质。非暂态计算机可读存储介质可以是任何类型的存储装置,包括但不限于磁存储装置、光学存储装置和/或半导体存储装置。此类存储装置的示例包括磁盘、基于CD、DVD或蓝光技术的光盘、以及持久性固态存储器诸如闪存、固态驱动器等。个人电子设备600不限于图6B的部件和配置,而是可包括多种配置中的其他部件或附加部件。
如本文所用,术语“示能表示”是指任选地在设备200、400、600、 800、1000、1600和/或1800的显示屏上显示的用户交互式图形用户界面对象(图2A、图4,以及图6A-图6B、图8A-图8AF、图10A-图10AJ、图 16A-图16S、图18A-图18D)。例如,图像(例如,图标)、按钮和文本 (例如,超链接)任选地各自构成示能表示。
如本文所用,术语“焦点选择器”是指用于指示用户正与之进行交互的用户界面的当前部分的输入元件。在包括光标或其他位置标记的一些具体实施中,光标充当“焦点选择器”,使得当光标在特定用户界面元素 (例如,按钮、窗口、滑块或其他用户界面元素)上方时在触敏表面(例如,图4中的触摸板455或图5B中的触敏表面551)上检测到输入(例如,按压输入)的情况下,该特定用户界面元素根据所检测到的输入而被调节。在包括能够实现与触摸屏显示器上的用户界面元素的直接交互的触摸屏显示器(例如,图2A中的触敏显示器系统212或图5A中的触摸屏 212)的一些具体实施中,触摸屏上的所检测到的接触充当“焦点选择器”,使得当在触摸屏显示器上在特定用户界面元素(例如,按钮、窗口、滑块或其他用户界面元素)的位置处检测到输入(例如,由接触进行的按压输入)时,该特定用户界面元素根据所检测到的输入而被调节。在一些具体实施中,焦点从用户界面的一个区域移动到用户界面的另一个区域,而无需光标的对应移动或触摸屏显示器上的接触的移动(例如,通过使用制表键或箭头键将焦点从一个按钮移动到另一个按钮);在这些具体实施中,焦点选择器根据焦点在用户界面的不同区域之间的移动而移动。不考虑焦点选择器所采取的具体形式,焦点选择器通常是由用户控制的以便递送与用户界面的用户预期的交互(例如,通过向设备指示用户界面的用户期望与其进行交互的元素)的用户界面元素(或触摸屏显示器上的接触)。例如,在触敏表面(例如,触摸板或触摸屏)上检测到按压输入时,焦点选择器(例如,光标、接触或选择框)在相应按钮上方的位置将指示用户期望激活相应按钮(而不是设备显示器上示出的其他用户界面元素)。
如说明书和权利要求中所使用的,接触的“特征强度”这一术语是指基于接触的一个或多个强度的接触的特征。在一些实施方案中,特征强度基于多个强度样本。特征强度任选地基于相对于预定义事件(例如,在检测到接触之后,在检测到接触抬离之前,在检测到接触开始移动之前或之后,在检测到接触结束之前,在检测到接触的强度增大之前或之后和/或在检测到接触的强度减小之前或之后)而言在预先确定的时间段(例如,0.05 秒、0.1秒、0.2秒、0.5秒、1秒、2秒、5秒、10秒)期间采集的预定义数量的强度样本或一组强度样本。接触的特征强度任选地基于以下各项中的一者或多者:接触强度的最大值、接触强度的均值、接触强度的平均值、接触强度的前10%处的值、接触强度的半最大值、接触强度的90%最大值等。在一些实施方案中,在确定特征强度时使用接触的持续时间(例如,在特征强度是接触的强度在时间上的平均值时)。在一些实施方案中,将特征强度与一组一个或多个强度阈值进行比较,以确定用户是否已执行操作。例如,该组一个或多个强度阈值任选地包括第一强度阈值和第二强度阈值。在该示例中,特征强度未超过第一阈值的接触导致第一操作,特征强度超过第一强度阈值但未超过第二强度阈值的接触导致第二操作,而特征强度超过第二阈值的接触导致第三操作。在一些实施方案中,使用特征强度与一个或多个阈值之间的比较来确定是否要执行一个或多个操作(例如,是执行相应操作还是放弃执行相应操作),而不是用于确定执行第一操作还是第二操作。
图6C示出了利用多个强度传感器624A至624D检测触敏显示屏604 上的多个接触652A至652E。图6C还包括强度图,其相对于强度单位示出了强度传感器624A至624D的当前强度测量值。在该示例中,强度传感器 624A和624D的强度测量值均是9个强度单位,并且强度传感器624B和 624C的强度测量值均是7个强度单位。在一些具体实施中,累积强度是多个强度传感器624A至624D的强度测量值之和,在该示例中是32个强度单位。在一些实施方案中,每个接触都被分配了相应强度,即累积强度的一部分。图6D示出了基于其与力654中心的距离而向接触652A至652E分配累积强度。在该示例中,接触652A、652B和652E中的每个接触都被分配以累积强度的8个强度单位的接触的强度,并且接触652C和652D中的每个接触都被分配以累积强度的4个强度单位的接触的强度。更一般地讲,在一些具体实施中,每个接触j都根据预定义的数学函数Ij= A·(Dj/ΣDi)被分配相应强度Ij,其为累积强度A的一部分,其中Dj是相应接触j距力中心的距离,并且ΣDi是所有相应接触(例如,i=1到最后)距力中心的距离之和。可以利用类似于或等同于设备104、200、400或600 的电子设备执行参考图6C-图6D所述的操作。在一些实施方案中,接触的特征强度基于接触的一个或多个强度。在一些实施方案中,强度传感器用于确定单个特征强度(例如,单个接触的单个特征强度)。应当指出,强度图不是所显示用户界面的部分,而是包括在图6C-图6D中以帮助读者。
在一些实施方案中,识别手势的一部分以用于确定特征强度。例如,触敏表面任选地接收连续的轻扫接触,该连续的轻扫接触从起始位置过渡并到达结束位置,在该结束位置处,接触强度增加。在该示例中,接触在结束位置处的特征强度任选地仅基于连续轻扫接触的一部分,而不是整个轻扫接触(例如,仅结束位置处的轻扫接触的部分)。在一些实施方案中,在确定接触的特征强度之前任选地向轻扫接触的强度应用平滑化算法。例如,平滑化算法任选地包括以下各项中的一种或多种:不加权滑动平均平滑化算法、三角平滑化算法、中值滤波器平滑化算法和/或指数平滑化算法。在一些情况下,这些平滑化算法消除了轻扫接触的强度中的窄的尖峰或凹陷,以实现确定特征强度的目的。
任选地相对于一个或多个强度阈值诸如接触检测强度阈值、轻按压强度阈值、深按压强度阈值和/或一个或多个其他强度阈值来表征触敏表面上的接触强度。在一些实施方案中,轻按压强度阈值对应于这样的强度:在该强度下设备将执行通常与点击物理鼠标或触摸板的按钮相关联的操作。在一些实施方案中,深按压强度阈值对应于这样的强度:在该强度下设备将执行与通常与点击物理鼠标或触控板的按钮相关联的操作不同的操作。在一些实施方案中,当检测到特征强度低于轻按压强度阈值(例如,并且高于标称接触检测强度阈值,比标称接触检测强度阈值低的接触不再被检测到)的接触时,设备将根据接触在触敏表面上的移动来移动焦点选择器,而不执行与轻按压强度阈值或深按压强度阈值相关联的操作。一般来讲,除非另有陈述,否则这些强度阈值在不同组的用户界面附图之间是一致的。
接触特征强度从低于轻按压强度阈值的强度增大到介于轻按压强度阈值与深按压强度阈值之间的强度有时被称为“轻按压”输入。接触特征强度从低于深按压强度阈值的强度增大到高于深按压强度阈值的强度有时被称为“深按压”输入。接触特征强度从低于接触检测强度阈值的强度增大到介于接触检测强度阈值与轻按压强度阈值之间的强度有时被称为检测到触摸表面上的接触。接触特征强度从高于接触检测强度阈值的强度减小到低于接触检测强度阈值的强度有时被称为检测到接触从触摸表面抬离。在一些实施方案中,接触检测强度阈值为零。在一些实施方案中,接触检测强度阈值大于零。
在本文中所述的一些实施方案中,响应于检测到包括相应按压输入的手势或响应于检测到利用相应接触(或多个接触)执行的相应按压输入来执行一个或多个操作,其中至少部分地基于检测到该接触(或多个接触) 的强度增大到高于按压输入强度阈值而检测到相应按压输入。在一些实施方案中,响应于检测到相应接触的强度增大到高于按压输入强度阈值(例如,相应按压输入的“向下冲程”)来执行相应操作。在一些实施方案中,按压输入包括相应接触的强度增大到高于按压输入强度阈值以及该接触的强度随后减小到低于按压输入强度阈值,并且响应于检测到相应接触的强度随后减小到低于按压输入阈值(例如,相应按压输入的“向上冲程”)来执行相应操作。
图6E-图6H示出了对手势的检测,手势包括与接触662的强度从低于图6E中的轻按压强度阈值(例如,“ITL”)的强度增大到高于图6H中的深按压强度阈值(例如,“ITD”)的强度对应的按压输入。在所显示的包括预定义区域674中显示的应用图标672A至672D的用户界面670上,在与应用2对应的应用图标672B上方显示光标676的同时,在触敏表面660 上检测利用接触662执行的手势。在一些实施方案中,在触敏显示器604 上检测手势。强度传感器检测触敏表面660上的接触的强度。该设备确定,接触662的强度在深按压强度阈值(例如,“ITD”)以上达到峰值。在触敏表面660上保持接触662。响应于检测到手势,并且根据在手势期间强度升高到深按压强度阈值(例如,“ITD”)以上的接触662,显示最近为应用2打开的文档的尺度减小的表示678A-678C(例如,缩略图),如图6F-图6H所示。在一些实施方案中,与一个或多个强度阈值相比,强度是接触的特征强度。应当指出,针对接触662的强度图不是所显示用户界面的部分,而是包括在图6E-图6H中以帮助读者。
在一些实施方案中,表示678A-678C的显示包括动画。例如,表示 678A一开始显示于应用图标672B的附近,如图6F所示。随着动画的进行,表示678A向上移动,并在应用图标672B附近显示表示678B,如图 6G中所示。然后,表示678A向上移动,678B向着表示678A向上移动,并且在应用图标672B附近显示表示678C,如图6H中所示。表示678A- 678C形成图标672B上方的阵列。在一些实施方案中,动画根据接触662 的强度进展,如图6F-图6G中所示,其中表示678A-678C出现并随着接触 662的强度向深按压强度阈值(例如,“ITD”)增大而向上移动。在一些实施方案中,动画进展所依据的强度是接触的特征强度。可以利用类似于或等同于设备104、200、400或600的电子设备执行参考图6E-图6H所述的操作。
在一些实施方案中,设备采用强度滞后以避免有时被称为“抖动”的意外输入,其中设备限定或选择与按压输入强度阈值具有预定义关系的滞后强度阈值(例如,滞后强度阈值比按压输入强度阈值低X个强度单位,或滞后强度阈值是按压输入强度阈值的75%、90%或某个合理比例)。因此,在一些实施方案中,按压输入包括相应接触的强度增大到高于按压输入强度阈值以及该接触的强度随后减小到低于对应于按压输入强度阈值的滞后强度阈值,并且响应于检测到相应接触的强度随后减小到低于滞后强度阈值(例如,相应按压输入的“向上冲程”)来执行相应操作。类似地,在一些实施方案中,仅在设备检测到接触强度从等于或低于滞后强度阈值的强度增大到等于或高于按压输入强度阈值的强度并且任选地接触强度随后减小到等于或低于滞后强度的强度时才检测到按压输入,并且响应于检测到按压输入(例如,根据环境,接触强度增大或接触强度减小)来执行相应操作。
为了容易解释,任选地,响应于检测到以下各种情况中的任一种情况而触发对响应于与按压输入强度阈值相关联的按压输入或响应于包括按压输入的手势而执行的操作的描述:接触强度增大到高于按压输入强度阈值、接触强度从低于滞后强度阈值的强度增大到高于按压输入强度阈值的强度、接触强度减小到低于按压输入强度阈值、和/或接触强度减小到低于与按压输入强度阈值对应的滞后强度阈值。另外,在将操作描述为响应于检测到接触的强度减小到低于按压输入强度阈值而执行的示例中,任选地响应于检测到接触的强度减小到低于对应于并且小于按压输入强度阈值的滞后强度阈值来执行操作。
如本文所用,“已安装的应用程序”是指已下载到电子设备(例如,设备100、200、400和/或600)上并准备好在设备上启动(例如,变为打开的)的软件应用程序。在一些实施方案中,下载的应用程序利用安装程序而变为已安装的应用程序,已安装的应用程序从下载的软件包提取程序部分并将提取的部分与计算机系统的操作系统集成。
如本文所用,术语“打开的应用程序”或“执行中的应用程序”是指具有保持状态信息(例如,作为设备/全局内部状态157和/或应用程序内部状态192的一部分)的软件应用程序。打开的或执行中的应用程序是任选地以下类型的应用程序中的任一者:
·活动应用程序,其当前显示在其上正在使用该应用程序的设备的显示屏上;
·后台应用程序(或后台进程),其当前未显示但该应用程序的一个或多个进程正由一个或多个处理器处理;和
·暂停的或休眠的应用程序,其没有运行但具有存储在存储器(分别有易失性和非易失性的)中并且可用于恢复该应用程序的执行的状态信息。
如本文所用,术语“关闭的应用程序”是指不具有保持状态信息的软件应用程序(例如,关闭的应用程序的状态信息不被存储在设备的存储器中)。因此,关闭应用程序包括停止和/或移除应用程序的应用程序过程以及从设备的存储器移除应用程序的状态信息。一般来讲,当在第一应用程序中时,打开第二应用程序并不关闭第一应用程序。在显示第二应用程序并且第一应用程序停止被显示时,第一应用程序变为后台应用程序。
3.数字助理系统
图7A示出根据各种示例的数字助理系统700的框图。在一些示例中,数字助理系统700在独立式计算机系统上实现。在一些示例中,数字助理系统700跨多个计算机分布。在一些示例中,数字助理的模块和功能中的一些模块和功能被划分成服务器部分和客户端部分,其中客户端部分位于一个或多个用户设备(例如,设备104、122、200、400、600、800、1000、1404、1600、1800)上并通过一个或多个网络来与服务器部分(例如,服务器系统108)进行通信,例如,如图1所示。在一些示例中,数字助理系统700是图1中所示的服务器系统108(和/或DA服务器106)的具体实施。应当指出,数字助理系统700仅为数字助理系统的一个示例,且该数字助理系统700具有比所示更多或更少的部件、组合两个或更多个部件,或者可具有部件的不同配置或布局。图7A中所示的各种部件在硬件、用于由一个或多个处理器执行的软件指令、固件(包括一个或多个信号处理集成电路和/或专用集成电路),或其组合中实现。
数字助理系统700包括存储器702、输入/输出(I/O)接口706、网络通信接口708,以及一个或多个处理器704。这些部件可通过一条或多条通信总线或信号线710彼此通信。
在一些示例中,存储器702包括非暂态计算机可读介质,诸如高速随机存取存储器和/或非易失性计算机可读存储介质(例如,一个或多个磁盘存储设备、闪存存储器设备或其他非易失性固态存储器设备)。
在一些示例中,I/O接口706将数字助理系统700的输入/输出设备716 诸如显示器、键盘、触摸屏和麦克风耦接至用户界面模块722。I/O接口 706,与用户界面模块722结合,接收用户输入(例如,语音输入、键盘输入、触摸输入等)并相应地对这些输入进行处理。在一些示例中,例如,当数字助理在独立式用户设备上实现时,数字助理系统700包括相对于图2A、图4、图6A-图6H、图12和图14中各自的设备200、400、600、 1200和1404所描述的部件和I/O通信接口中的任一者。在一些示例中,数字助理系统700表示数字助理具体实施的服务器部分,并且可通过位于用户设备(例如,设备104、200、400、600、800、1000、1404、1600、 1800)上的客户端侧部分来与用户进行交互。
在一些示例中,网络通信接口708包括一个或多个有线通信端口 712,以及/或者无线传输和接收电路714。一个或多个有线通信端口经由一个或多个有线接口例如以太网、通用串行总线(USB)、火线等接收和发送通信信号。无线电路714从通信网络及其他通信设备接收RF信号和/或光学信号以及将RF信号和/或光学信号发送至通信网络及其他通信设备。无线通信使用多种通信标准、协议和技术中的任一种,诸如GSM、EDGE、 CDMA、TDMA、蓝牙、Wi-Fi、VoIP、Wi-MAX、或任何其他合适的通信协议。网络通信接口708使数字助理系统700通过网络,诸如互联网、内联网和/或无线网络诸如蜂窝电话网络、无线局域网(LAN)和/或城域网 (MAN),与其他设备之间的通信成为可能。
在一些示例中,存储器702或存储器702的计算机可读存储介质存储程序、模块、指令和数据结构,包括以下内容中的全部或其子集:操作系统718、通信模块720、用户界面模块722、一个或多个应用程序724和数字助理模块726。具体地讲,存储器702或存储器702的计算机可读存储介质存储用于执行上述过程的指令。一个或多个处理器704执行这些程序、模块和指令,并从数据结构读取数据或将数据写到数据结构。
操作系统718(例如,Darwin、RTXC、LINUX、UNIX、iOS、OS X、WINDOWS、或嵌入式操作系统诸如VxWorks)包括用于控制和管理一般系统任务(例如,存储器管理、存储设备控制、电源管理等)的各种软件组件和/或驱动器,并且有利于各种硬件、固件和软件组件之间的通信。
通信模块720促成数字助理系统700与其他设备之间通过网络通信接口708进行的通信。例如,通信模块720与电子设备诸如分别在图2A、图 4、图6A-图6B中所示的设备200,400或600的RF电路208通信。通信模块720还包括各种部件,用于处理由无线电路714和/或有线通信端口712 所接收的数据。
用户界面模块722经由I/O接口706接收来自用户(例如,来自键盘、触摸屏、指向设备、控制器和/或麦克风)的命令和/或输入,并在显示器上生成用户界面对象。用户界面模块722还准备输出(例如,语音、声音、动画、文本、图标、振动、触觉反馈、光照等)并将其经由I/O接口 706(例如,通过显示器、音频通道、扬声器、触控板等)传送给用户。
应用程序724包括被配置为由所述一个或多个处理器704执行的程序和/或模块。例如,如果数字助理系统在独立式用户设备上实施,则应用程序724包括用户应用程序,诸如游戏、日历应用程序、导航应用程序或邮件应用程序。如果数字助理系统700在服务器上实现,则应用程序724包括例如资源管理应用程序、诊断应用程序、或调度应用程序。
存储器702还存储数字助理模块726(或数字助理的服务器部分)。在一些示例中,数字助理模块726包括以下子模块或者其子集或超集:输入/输出处理模块728、语音转文本(STT)处理模块730、自然语言处理模块 732、对话流处理模块734、任务流处理模块736、服务处理模块738和语音合成处理模块740。这些模块中的每一者均具有对以下数字助理模块726 的系统或数据与模型中的一者或多者或者其子集或超集的访问权限:知识本体760、词汇索引744、用户数据748、任务流模型754、服务模型756 和ASR系统758。
在一些示例中,使用在数字助理模块726中实现的处理模块、数据和模型,数字助理可执行以下中的至少一些:将语音输入转换成文本;识别在从用户接收的自然语言输入中表达的用户意图;主动引出并获得完全推断用户意图所需的信息(例如,通过消除字词、姓名、意图的歧义等);确定用于满足推断出的意图的任务流;以及执行该任务流以满足推断出的意图。
在一些示例中,如图7B中所示,I/O处理模块728可通过图7A中的 I/O设备716与用户交互或通过图7A中的网络通信接口708与用户设备 (例如,设备104、设备200、设备400或设备600)交互,以获取用户输入(例如,语音输入)并提供对用户输入的响应(例如,作为语音输出)。I/O处理模块728随同接收到用户输入一起或在接收到用户输入之后不久任选地获得与来自用户设备的用户输入相关联的上下文信息。上下文信息包括特定于用户的数据、词汇,和/或与用户输入相关的偏好。在一些示例中,上下文信息还包括在接收到用户请求时用户设备的软件和硬件状态,和/或与在接收到用户请求时用户周围环境相关的信息。在一些示例中,I/O处理模块728还向用户发送与用户请求有关的跟进问题,并从用户接收回答。在用户请求被I/O处理模块728接收且用户请求包括语音输入时,I/O处理模块728将语音输入转发至STT处理模块730(或语音识别器)以进行语音文本转换。
STT处理模块730包括一个或多个ASR系统758。该一个或多个ASR 系统758可处理通过I/O处理模块728接收到的言语输入,以产生识别结果。每个ASR系统758可包括前端言语预处理器。前端语音预处理器从语音输入中提取代表性特征。例如,前端语音预处理器对语音输入执行傅里叶变换,以提取表征语音输入的光谱特征作为代表性多维向量的序列。另外,每个ASR系统758包括一个或多个言语识别模型(例如,声学模型和/ 或语言模型)并且实现一个或多个言语识别引擎。语音识别模型的示例包括隐马尔可夫模型、高斯混合模型、深层神经网络模型、n元语言模型以及其他统计模型。语音识别引擎的示例包括基于动态时间规整的引擎和基于加权有限状态变换器(WFST)的引擎。使用一个或多个语音识别模型和一个或多个语音识别引擎来处理前端语音预处理器的所提取的代表性特征以产生中间识别结果(例如,音素、音素串和子字词),并且最终产生文本识别结果(例如,字词、字词串、或符号序列)。在一些示例中,语音输入至少部分地由第三方服务处理或在用户的设备(例如,设备104、设备 200、设备400或设备600)上处理,以产生识别结果。一旦STT处理模块730产生包含文本串(例如,字词,或字词的序列,或符号序列)的识别结果,识别结果即被传送至自然语言处理模块732以供意图推断。在一些示例中,STT处理模块730产生言语输入的多个候选文本表示。每个候选文本表示是与语音输入对应的字词或符号的序列。在一些示例中,每个候选文本表示与言语识别置信度得分相关联。基于语音识别置信度得分,STT 处理模块730对候选文本表示进行排序并将n个最佳(例如,n个排名最高)候选文本表示提供给自然语言处理模块732以供意图推断,其中n为大于零的预先确定的整数。例如,在一个示例中,仅将排名最高的(n=1)候选文本表示递送至自然语言处理模块732以供意图推断。又如,将5个排名最高的(n=5)候选文本表示传递给自然语言处理模块732以供意图推断。
有关语音转文本处理的更多细节在提交于2011年9月20日的名为“ConsolidatingSpeech Recognition Results”的美国实用新型专利申请序列号13/236,942中有所描述,其全部公开内容以引用方式并入本文。
在一些示例中,STT处理模块730包括可识别字词的词汇和/或经由语音字母转换模块731访问该词汇。每个词汇字词与语音识别语音字母表中表示的字词的一个或多个候选发音相关联。具体地讲,可识别字词的词汇包括与多个候选发音相关联的字词。例如,该词汇包括与和 的候选发音相关联的字词“tomato”。另外,词汇字词与基于来自用户的先前语音输入的自定义候选发音相关联。此类自定义候选发音存储在STT处理模块730中,并且经由设备上的用户配置文件与特定用户相关联。在一些示例中,字词的候选发音基于字词的拼写以及一个或多个语言学和/或语音学规则确定。在一些示例中,候选发音手动生成,例如,基于已知的标准发音而手动生成。
在一些示例中,基于候选发音的普遍性来对候选发音进行排名。例如,候选语音的排序高于因为前者是更常用的发音 (例如,在所有用户中,对于特定地理区域的用户而言,或者对于任何其他合适的用户子集而言)。在一些示例中,基于候选发音是否为与用户相关联的自定义候选发音来对候选发音进行排序。例如,自定义候选发音的排名高于标准候选发音。这可用于识别具有偏离规范发音的独特发音的专有名词。在一些示例中,候选发音与一个或多个语音特征(诸如地理起源、国家或种族)相关联。例如,候选发音与美国相关联,而候选发音与英国相关联。此外,候选发音的排序基于存储在设备上的用户配置文件中的用户的一个或多个特征(例如,地理起源、国家、种族等)。例如,可从用户配置文件确定该用户与美国相关联。基于用户与美国相关联,候选发音(与美国相关联)可比候选发音 (与英国相关联)排名更高。在一些示例中,经排序的候选发音中的一个可被选作预测发音(例如,最可能的发音)。
接收到语音输入时,STT处理模块730被用来(例如,使用声音模型)确定对应于该语音输入的音素,然后尝试(例如,使用语言模型)确定匹配该音素的字词。例如,如果STT处理模块730首先识别对应于该语音输入的一部分的音素序列那么它随后可基于词汇索引744确定该序列对应于字词“tomato”。
数字助理的自然语言处理模块732(“自然语言处理器”)获取由 STT处理模块730生成的n个最佳候选文字表示(“字词序列”或“符号序列”),并尝试将每个候选文本表示与由数字助理所识别的一个或多个“可执行意图”相关联。“可执行意图”(或“用户意图”)表示可由数字助理执行并且可具有在任务流模型754中实现的相关联的任务流的任务。相关联任务流是数字助理为了执行任务而采取的一系列经编程的动作和步骤。数字助理的能力范围取决于已在任务流模型754中实现并存储的任务流的数量和种类,或换言之,取决于数字助理所识别的“可执行意图”的数量和种类。然而,数字助理的有效性还取决于助理从以自然语言表达的用户请求中推断出正确的“一个或多个可执行意图”的能力。
在一些示例中,除从STT处理模块730获取的字词或符号的序列之外,自然语言处理模块732还(例如,从I/O处理模块728)接收与用户请求相关联的上下文信息。自然语言处理模块732任选地使用上下文信息来明确、补充和/或进一步限定在从STT处理模块730接收的候选文本表示中包含的信息。上下文信息包括例如用户偏好,用户设备的硬件和/或软件状态,在用户请求之前、期间或之后不久收集的传感器信息,数字助理与用户之间的先前交互(例如,对话),等等。如本文所述,在一些示例中,上下文信息是动态的,并且随对话的时间、位置、内容、以及其他因素而变化。
在一些示例中,自然语言处理基于例如知识本体760。知识本体760 为包含许多节点的分级结构,每个节点表示“可执行意图”或与“可执行意图”或其他“属性”中的一者或多者相关的“属性”。如上所述,“可执行意图”表示数字助理能够执行的任务,即,该任务为“可执行的”或可被进行的。“属性”代表与可执行意图或另一属性的子方面相关联的参数。知识本体760中可执行意图节点与属性节点之间的连接定义由属性节点表示的参数如何从属于由可执行意图节点表示的任务。
在一些示例中,知识本体760由可执行意图节点和属性节点组成。在知识本体760内,每个可执行意图节点直接连接至或通过一个或多个中间属性节点连接至一个或多个属性节点。类似地,每个属性节点直接连接至或通过一个或多个中间属性节点连接至一个或多个可执行意图节点。例如,如图7C所示,知识本体760包括“餐厅预订”节点(即,可执行意图节点)。属性节点“餐厅”、“日期/时间”(针对预订)和“同行人数”均直接连接至可执行意图节点(即,“餐厅预订”节点)。
此外,属性节点“菜系”、“价格区间”、“电话号码”和“位置”是属性节点“餐厅”的子节点,并且均通过中间属性节点“餐厅”连接至“餐厅预订”节点(即,可执行意图节点)。又如,如图7C所示,知识本体 760还包括“设定提醒”节点(即,另一个可执行意图节点)。属性节点“日期/时间”(针对设定提醒)和“主题”(针对提醒)均连接至“设定提醒”节点。由于属性“日期/时间”与进行餐厅预订的任务和设定提醒的任务二者相关,因此属性节点“日期/时间”连接至知识本体760中的“餐厅预订”节点和“设定提醒”节点二者。
可执行意图节点连同其链接的属性节点一起,被描述为“域”。在本讨论中,每个域与相应的可执行意图相关联,并涉及与特定可执行意图相关联的一组节点(以及这些节点之间的关系)。例如,图7C中示出的知识本体760包括在知识本体760内的餐厅预订域762的示例以及提醒域764 的示例。餐厅预订域包括可执行意图节点“餐厅预订”、属性节点“餐厅”、“日期/时间”和“同行人数”以及子属性节点“菜系”、“价格区间”、“电话号码”和“位置”。提醒域764包括可执行意图节点“设定提醒”和属性节点“主题”和“日期/时间”。在一些示例中,知识本体 760由多个域组成。每个域与一个或多个其他域共享一个或多个属性节点。例如,除了餐厅预订域762和提醒域764之外,“日期/时间”属性节点还与许多不同域(例如,行程安排域、旅行预订域、电影票域等)相关联。
尽管图7C示出知识本体760内的两个示例性域,但其他域包括例如“查找电影”、“发起电话呼叫”、“查找方向”、“安排会议”、“发送消息”以及“提供问题的回答”、“阅读列表”、“提供导航指令”、“提供针对任务的指令”等。“发送消息”域与“发送消息”可执行意图节点相关联,并且进一步包括属性节点诸如“一个或多个接收人”、“消息类型”和“消息正文”。属性节点“接收人”进一步例如由子属性节点诸如“接收人姓名”和“消息地址”来限定。
在一些示例中,知识本体760包括数字助理能够理解并对其起作用的所有域(以及因而可执行意图)。在一些示例中,知识本体760诸如通过添加或移除整个域或节点,或者通过修改知识本体760内的节点之间的关系进行修改。
在一些示例中,将与多个相关可执行意图相关联的节点群集在知识本体760中的“超级域”下。例如,“旅行”超级域包括与旅行相关的属性节点和可执行意图节点的群集。与旅行相关的可执行意图节点包括“机票预订”、“酒店预订”、“汽车租赁”、“获取路线”、“寻找兴趣点”,等等。同一超级域(例如,“旅行”超级域)下的可执行意图节点具有多个共用的属性节点。例如,针对“机票预订”、“酒店预订”、“汽车租赁”、“路线规划”和“寻找感兴趣的点”的可执行意图节点共享属性节点“起始位置”、“目的地”、“出发日期/时间”、“到达日期/ 时间”和“同行人数”中的一者或多者。
在一些示例中,知识本体760中的每个节点与跟由节点代表的属性或可执行意图有关的一组字词和/或短语相关联。与每个节点相关联的相应组的字词和/或短语是所谓的与节点相关联的“词汇”。将与每个节点相关联的相应组的字词和/或短语存储在与由节点所代表的属性或可执行意图相关联的词汇索引744中。例如,返回图7B,与“餐厅”属性的节点相关联的词汇包括字词诸如“美食”、“酒水”、“菜系”、“饥饿”、“吃”、“披萨”、“快餐”、“膳食”等。又如,与“发起电话呼叫”可执行意图的节点相关联的词汇包括字词和短语诸如“呼叫”、“打电话”、“拨打”、“与……通电话”、“呼叫该号码”、“打电话给”等。词汇索引 744任选地包括不同语言的字词和短语。
自然语言处理模块732接收来自STT处理模块730的候选文本表示 (例如,一个或多个文本字符串或一个或多个符号序列),并针对每个候选表示,确定候选文本表示中的字词涉及哪些节点。在一些示例中,如果发现候选文本表示中的字词或短语(经由词汇索引744)与知识本体760中的一个或多个节点相关联,则所述字词或短语“触发”或“激活”这些节点。基于已激活节点的数量和/或相对重要性,自然语言处理模块732选择可执行意图中的一个可执行意图作为用户意图使数字助理执行的任务。在一些示例中,选择具有最多“已触发”节点的域。在一些示例中,选择具有最高置信度(例如,基于其各个已触发节点的相对重要性)的域。在一些示例中,基于已触发节点的数量和重要性的组合来选择域。在一些示例中,在选择节点的过程中还考虑附加因素,诸如数字助理先前是否已正确解译来自用户的类似请求。
用户数据748包括特定于用户的信息,诸如特定于用户的词汇、用户偏好、用户地址、用户的默认语言和第二语言、用户的联系人列表,以及每位用户的其他短期或长期信息。在一些示例中,自然语言处理模块732 使用特定于用户的信息来补充用户输入中所包含的信息以进一步限定用户意图。例如,针对用户请求“邀请我的朋友参加我的生日派对”,自然语言处理模块732能够访问用户数据748以确定“朋友”是哪些人以及“生日派对”将于何时何地举行,而不需要用户在其请求中明确地提供此类信息。
应认识到,在一些示例中,利用一个或多个机器学习机构(例如,神经网络)来实现自然语言处理模块732。具体地,一个或多个机器学习机构被配置为接收候选文本表示和与候选文本表示相关联的上下文信息。基于候选文本表示和相关联的上下文信息,一个或多个机器学习机构被配置为基于一组候选可执行意图确定意图置信度得分。自然语言处理模块732可基于所确定的意图置信度得分从一组候选可执行意图中选择一个或多个候选可执行意图。在一些示例中,还利用知识本体(例如,知识本体760)从一组候选可执行意图中选择一个或多个候选可执行意图。
基于符号串搜索知识本体的其他细节在提交于2008年12月22日的名为“Methodand Apparatus for Searching Using An Active Ontology”的美国实用新型专利申请序列号12/341,743中有所描述,其全部公开内容以引用方式并入本文。
在一些示例中,一旦自然语言处理模块732基于用户请求识别出可执行意图(或域),自然语言处理模块732便生成结构化查询以表示所识别的可执行意图。在一些示例中,结构化查询包括针对可执行意图的域内的一个或多个节点的参数,并且所述参数中的至少一些参数填充有用户请求中指定的特定信息和要求。例如,用户说“帮我在寿司店预订晚上7点的座位。”在这种情况下,自然语言处理模块732能够基于用户输入将可执行意图正确地识别为“餐厅预订”。根据知识本体,“餐厅预订”域的结构化查询包括参数诸如{菜系}、{时间}、{日期}、{同行人数}等。在一些示例中,基于语音输入和使用STT处理模块730从语音输入得出的文本,自然语言处理模块732针对餐厅预订域生成部分结构化查询,其中部分结构化查询包括参数{菜系=“寿司类”}以及{时间=“晚上7点”}。然而,在该示例中,用户话语包含不足以完成与域相关联的结构化查询的信息。因此,基于当前可用信息,在结构化查询中未指定其他必要参数诸如{同行人数}和{日期}。在一些示例中,自然语言处理模块732用所接收的上下文信息来填充结构化查询的一些参数。例如,在一些示例中,如果请求“附近的”寿司店,自然语言处理模块732用来自用户设备的GPS坐标来填充结构化查询中的{位置}参数。
在一些示例中,自然语言处理模块732识别针对从STT处理模块730 所接收的每个候选文本表示的多个候选可执行意图。另外,在一些示例中,针对每个所识别的候选可执行意图生成相应的结构化查询(部分地或全部地)。自然语言处理模块732确定针对每个候选可执行意图的意图置信度得分,并基于意图置信度得分对候选可执行意图进行排序。在一些示例中,自然语言处理模块732将所生成的一个或多个结构化查询(包括任何已完成的参数)传送至任务流处理模块736(“任务流处理器”)。在一些示例中,针对m个最佳(例如,m个排名最高的)候选可执行意图的一个或多个结构化查询被提供给任务流处理模块736,其中m为预先确定的大于零的整数。在一些示例中,将针对m个最佳候选可执行意图的一个或多个结构化查询连同对应的候选文本表示提供给任务流处理模块736。
基于根据语音输入的多个候选文本表示所确定的多个候选可执行意图推断用户意图的其他细节在2014年6月6日提交的名称为“System and Method for Inferring UserIntent From Speech Inputs”(用于从语音输入推断用户意图的系统和方法)的美国实用新型专利申请No.14/298,725中有所描述,其全部公开内容以引用方式并入本文。
任务流处理模块736被配置为接收来自自然语言处理模块732的一个或多个结构化查询,(必要时)完成结构化查询,以及执行“完成”用户最终请求所需的动作。在一些示例中,完成这些任务所必需的各种过程在任务流模型754中提供。在一些示例中,任务流模型754包括用于获取来自用户的附加信息的过程,以及用于执行与可执行意图相关联的动作的任务流。
如上所述,为了完成结构化查询,任务流处理模块736需要发起与用户的附加对话,以便获取附加信息和/或弄清可能有歧义的话语。当有必要进行此类交互时,任务流处理模块736调用对话流处理模块734来参与同用户的对话。在一些示例中,对话流处理器模块734确定如何(和/或何时)向用户请求附加信息,并且接收和处理用户响应。通过I/O处理模块 728将问题提供给用户并从用户接收回答。在一些示例中,对话处理模块 734经由音频和/或视频输出向用户呈现对话输出,并接收经由口头或物理 (例如,点击)响应的来自用户的输入。继续上述示例,在任务流处理模块736调用对话流处理模块734来确定针对与域“餐厅预订”相关联的结构化查询的“同行人数”和“日期”信息时,对话流处理模块734生成诸如“一行几位?”和“预订哪天?”之类的问题传递给用户。一旦收到来自用户的回答,对话流处理模块734就用缺失信息填充结构化查询,或将信息传递给任务流处理模块736以根据结构化查询完成缺失信息。
一旦任务流处理模块736已针对可执行意图完成结构化查询,任务流处理模块736便开始执行与可执行意图相关联的最终任务。因此,任务流处理模块736根据结构化查询中包含的特定参数来执行任务流模型中的步骤和指令。例如,针对可执行意图“餐厅预订”的任务流模型包括用于联系餐厅并实际上请求在特定时间针对特定同行人数的预订的步骤和指令。例如,使用结构化查询诸如:餐厅预订、{餐厅=ABC咖啡馆、日期= 3/12/2012、时间=7pm、同行人数=5},任务流处理模块736可执行以下步骤:(1)登录ABC咖啡馆的服务器或诸如的餐厅预订系统, (2)以网站上的形式输入日期、时间和同行人数信息,(3)提交表单,以及(4) 在用户的日历中形成针对预订的日历条目。
在一些示例中,任务流处理模块736在服务处理模块738(“服务处理模块”)的辅助下完成用户输入中所请求的任务或者提供用户输入中所请求的信息性回答。例如,服务处理模块738代表任务流处理模块736发起电话呼叫、设定日历条目、调用地图搜索、调用用户设备上安装的其他用户应用程序或与所述其他应用程序进行交互,以及调用第三方服务(例如,餐厅预订门户网站、社交网站、银行门户网站等)或与第三方服务进行交互。在一些示例中,通过服务模型756中的相应服务模型指定每项服务所需的协议和应用程序编程接口(API)。服务处理模块738针对服务访问适当的服务模型,并依据服务模型根据该服务所需的协议和API生成针对该服务的请求。
例如,如果餐厅已启用在线预订服务,则餐厅提交服务模型,该服务模型指定进行预订的必要参数以及将必要参数的值传送至在线预订服务的 API。在被任务流处理模块736请求时,服务处理模块738可使用存储在服务模型中的Web地址来建立与在线预订服务的网络连接,并将预订的必要参数(例如,时间、日期、同行人数)以根据在线预订服务的API的格式发送至在线预订界面。
在一些示例中,自然语言处理模块732、对话处理模块734以及任务流处理模块736被共同且反复地使用,以推断并限定用户的意图、获取信息以进一步明确并细化用户意图、并最终生成响应(即,输出至用户,或完成任务)以满足用户的意图。所生成的响应是至少部分地满足用户意图的对语音输入的对话响应。另外,在一些示例中,所生成的响应被输出为语音输出。在这些示例中,所生成的响应被发送到语音合成处理模块740 (例如,语音合成器),在语音合成处理模块中,可处理所生成的响应以将对话响应以语音形式合成。在其他示例中,所生成的响应是与满足语音输入中的用户请求相关的数据内容。
在任务流处理模块736接收到来自自然语言处理模块732的多个结构化查询的示例中,任务流处理模块736首先处理所接收结构化查询的第一结构化查询以试图完成第一结构化查询和/或执行由第一结构化查询所表示的一个或多个任务或动作。在一些示例中,第一结构化查询对应于排名最高的可执行意图。在其他示例中,第一结构化查询选自基于对应的语音识别置信度得分和对应的意图置信度得分的结合所接收的结构化查询。在一些示例中,如果任务流处理模块736在第一结构化查询的处理期间(例如,由于无法确定必要的参数)遇到错误,任务流处理模块736可继续选择和处理所接收结构化查询的与排名较低的可执行意图对应的第二结构化查询。例如基于对应候选文本表示的语音识别置信度得分、对应候选可执行意图的意图置信度得分、第一结构化查询中的缺失必要参数或它们的任何组合来选择第二结构化查询。
语音合成处理模块740被配置为合成用于呈现给用户的语音输出。语音合成处理模块740基于数字助理提供的文本来合成语音输出。例如,所生成的对话响应是文本串的形式。语音合成处理模块740将文本串转换成可听语音输出。语音合成处理模块740使用任何适当语音合成技术,以便从文本生成语音输出,包括但不限于:拼接合成、单元选择合成、双音素合成、域特定合成、共振峰合成、发音合成、基于隐马尔可夫模型(HMM) 的合成,以及正弦波合成。在一些示例中,语音合成处理模块740被配置为基于对应于这些字词的音素串来合成各个字词。例如,音素串与所生成的对话响应中的字词相关联。音素串存储在与字词相关联的元数据中。语音合成处理模块740被配置为直接处理元数据中的音素串,以合成语音形式的字词。
在一些示例中,替代使用语音合成处理模块740(或除此之外),在远程设备(例如,服务器系统108)上执行语音合成,并且将合成的语音发送至用户设备以输出给用户。例如,这可发生在一些具体实施中,其中在服务器系统处生成数字助理的输出。而且由于服务器系统通常比用户设备具有更强的处理能力或更多的资源,其有可能获得比客户端侧合成将实现的质量更高的语音输出。
有关数字助理的另外细节可见于提交于2011年1月10日的名称为“IntelligentAutomated Assistant”的美国实用新型专利申请号12/987,982和提交于2011年9月30日的名称为“Generating and Processing Task Items That Represent Tasks to Perform”的美国实用新型专利申请号13/251,088 中,其全部公开内容以引用方式并入本文。
4.加速的任务执行
图8A-图8AF示出了根据一些实施方案的用于在电子设备(例如,设备104、设备122、设备200、设备600或设备700)上提供建议的示例性用户界面。这些附图中的用户界面被用于示出包括图9A-图9B中的过程的下文描述的过程。
图8A示出了电子设备800(例如,设备104、设备122、设备200、设备600或设备700)。在图8A-图8AF中示出的非限制性示例性实施方案中,电子设备800是智能电话。在其他实施方案中,电子设备800可以是不同类型的电子设备,诸如可穿戴设备(例如,智能手表)。在一些示例中,电子设备800具有显示器801、一个或多个输入设备(例如,显示器 801的触摸屏、按钮、麦克风)和无线通信无线电部件。在一些示例中,电子设备800包括多个相机。在一些示例中,电子设备包括仅一个相机。在一些示例中,电子设备包括一个或多个生物识别传感器(例如,生物识别传感器803),其任选地包括相机,诸如红外相机、热成像相机或其组合。
在图8A中,在电子设备处于锁定状态时,电子设备800在显示器801 上显示锁定屏幕界面诸如锁定屏幕界面804。锁定屏幕界面804包括建议示能表示806和通知808。如图所示,建议示能表示806与名为“咖啡”的应用程序相关联,并且通知808是与即时消息应用程序相关联的消息通知,其指示电子设备已经接收到来自存储在电子设备上的联系人(“JohnAppleseed”)的新消息。在一些示例中,应用程序(例如,第三方应用程序)可以指定显示建议示能表示的方式。例如,应用程序可以指定建议示能表示的颜色。在一些示例中,当处于锁定状态时,电子设备800以安全方式操作。作为示例,当在锁定状态下操作时,电子设备800不显示与建议示能表示806相关联的任务建议的内容或与通知808相关联的消息。在一些实施方案中,锁定状态还对应于对访问其他数据(包括其他应用程序)的约束和/或对可许可输入的限制。
在一些示例中,以第一方式显示建议示能表示806,并且以第二方式显示通知808。作为示例,使用第一颜色显示建议示能表示806,并且使用不同于第一颜色的第二颜色显示通知808。作为另一示例,可以使用第一形状显示建议示能表示806,并且可以使用与第一形状不同的第二形状显示通知808。
在一些示例中,当在锁定状态下操作时,电子设备验证电子设备的用户。例如,可以使用生物识别传感器803(例如,面部识别、指纹识别)通过生物方式验证用户,或者响应于输入有效密码(例如,密码、数字口令)验证用户。在一些示例中,响应于验证用户,电子设备800转换到解锁状态并显示锁定屏幕界面810。在一些示例中,在显示锁定屏幕界面810时,电子设备800显示动画指示电子设备800正从锁定状态转换到解锁状态(例如,锁定指示符805从锁定状态转换到解锁状态)。
在一些示例中,当在解锁状态下操作时,电子设备800以不安全的方式操作(例如,验证的用户能够访问安全数据)。作为示例,如图8B所示,电子设备800显示与建议示能表示806相关联的任务建议的内容和与通知808相关联的消息。如图所示,与建议示能表示相关联的任务建议的内容包括指示符812,该指示符指示与任务建议相关联的任务以及与该任务相关联的一个或多个参数。
在显示锁定屏幕界面810时,电子设备800检测建议示能表示806的选择(例如,激活)。例如,如图8C所示,该选择是建议示能表示806上的轻扫手势816。如下面将更详细地描述的,响应于检测到轻扫手势816,电子设备800选择性地执行与建议示能表示806相关联的任务。如果任务是第一类型的任务(例如,后台任务),则电子设备800执行任务而无需进一步的用户输入。电子设备800还可以停止显示建议示能表示806,如图 8H所示。
参考图8D,如果任务是与第一类型不同的第二类型的任务,则电子设备800显示确认界面诸如确认界面820。确认界面820包括任务内容822、确认示能表示824和取消示能表示826。在一些示例中,任务内容822包括应用程序指示符828、应用程序图标830和任务指示符832中的一个或多个。在一些示例中,应用程序指示符828指示与任务相关联的应用程序。应用程序指示符828包括应用程序的名称(例如,“咖啡”)和/或与应用程序相关联的图标。应用程序图标830包括与任务相关联的图标(或其他图像)和/或与任务相关联的应用程序。任务指示符832指示对应于建议示能表示的任务(“订单”)和/或与任务相关联的一个或多个参数(小杯,拿铁咖啡,Homestead Rd.Cupertino CA)。
在一些示例中,响应于取消示能表示826的选择,电子设备800停止显示确认界面820。在一些示例中,应用程序指示符828被实施为应用程序示能表示,并且响应于应用程序指示符828的选择,电子设备800打开与任务相关联的应用程序(例如,“咖啡”)。在一些示例中,应用程序图标830被实施为应用程序示能表示,并且响应于应用程序图标830的选择,电子设备800打开与任务相关联的应用程序。
在一些示例中,打开应用程序包括用一个或多个参数预加载应用程序。例如,建议示能表示806与使用咖啡应用程序下订单的任务相关联,并且与该任务相关联的参数包括咖啡的大小(例如,小杯),咖啡的类型 (例如,拿铁咖啡),以及提取订单的地点(位于Cupertino,CA的 Homestead Rd.)。因此,在一些示例中,以这种方式打开应用程序包括代表用户插入任务的一个或多个参数作为示例,通过选择应用程序指示符828 或应用程序图标830打开应用程序可以使电子设备打开咖啡应用程序,并且呈现用户可以通过其确认订单(小杯拿铁咖啡,Homestead Rd.位置)的界面(例如,购物车界面)。在一些示例中,预加载参数使得电子设备响应于确认执行任务的意图的输入执行任务。这样,可以减少用户使用应用程序执行特定任务所需的输入的数量。
在一些示例中,应用程序(例如,第三方应用程序)可以指定显示确认示能表示的方式。例如,应用程序可以指定确认示能表示的颜色。在一些示例中,在显示确认界面820时,电子设备800检测确认示能表示824 的选择。例如,如图8E所示,该选择是确认示能表示824上的轻扫手势 836。响应于检测到轻扫手势836,电子设备800执行该任务。在一些示例中,在执行任务时,电子设备800可选地显示过程指示符840,指示正在执行任务。在一些示例中,过程指示符840的显示替换确认示能表示824的显示。
一旦执行了任务,电子设备800提供指示任务是否成功执行的输出。在图8G的示例中,任务成功执行,因此电子设备800显示成功指示符 842,指示任务已成功执行。在一些示例中,成功指示符842的显示替换过程指示符840的显示。在一些示例中,在任务完成之后的预定时间量,电子设备用锁定屏幕界面810替换确认界面820的显示。如图所示,由于执行了与建议示能表示806相关联的任务,因此建议示能表示806不包括在图8H中的锁定屏幕界面810中。
在图8I的示例中,该任务未成功执行,因此电子设备800显示失败界面844。失败界面844包括重试示能表示846、取消示能表示848和应用程序示能表示850。失败界面还包括内容852。在一些示例中,响应于重试示能表示846的选择,电子设备800再次执行任务。在一些示例中,响应于取消示能表示的选择,电子设备800停止显示失败界面844。在一些示例中,响应于应用程序示能表示850的选择,电子设备800打开与该任务相关联的应用程序。内容852可以包括针对任务的信息,例如用于执行任务的一个或多个参数。在一些示例中,内容852还指定任务是否成功执行。例如,内容852可指示电子设备未能成功执行任务(例如,“存在问题。请重新尝试。”)。
在图8J中,建议示能表示806的选择是在建议示能表示806上的轻扫手势854。响应于检测到轻扫手势854,电子设备800沿着向左方向移位 (例如,滑动)建议示能表示806,以显示(例如,显示出)观看示能表示 856和清除示能表示858,如图8K所示。在一些示例中,响应于查看示能表示856的选择,电子设备800显示确认界面诸如确认界面820(图 8D)。在一些示例中,响应于清除示能表示858的选择,电子设备800停止显示建议示能表示806。
在图8L中,建议示能表示806的选择是在建议示能表示806上的轻扫手势860。响应于检测到轻扫手势860,电子设备800沿着向右方向移位 (例如,滑动)建议示能表示806,以显示(例如,显示出)打开示能表示 862,如图8M所示。在一些示例中,响应于打开示能表示862的选择,电子设备打开与建议示能表示的任务相关联的应用程序(例如,“咖啡”)。
在图8N中,电子设备800在显示器801上显示搜索屏幕界面诸如搜索屏幕界面866。搜索屏幕界面866包括建议的应用程序868和建议示能表示 870、872、874。如图所示,建议示能表示870与即时消息应用程序相关联,建议示能表示872与电话应用程序相关联,并且建议示能表示874与媒体回放应用程序相关联。
在一些示例中,建议示能表示可选地包括指示与建议示能表示相关联的任务的类别的标志符号(例如,标志符号876、878、880)。在一些示例中,以这种方式指定的类别可包括“货币”、“消息”、“电话”、“视频”和“媒体”。例如,如果建议示能表示的任务不对应于任务类别,则可以在没有标志符号的情况下显示建议示能表示(例如,图8A的建议示能表示806)。在图8N中所示的示例中,建议示能表示870与用于发送文本消息的任务相关联,并且因此包括指示任务与文本即时消息相关联的即时消息标志符号876。作为另一示例,建议示能表示872与用于发起电话呼叫的任务相关联,并且因此包括指示该任务与电话功能相关联的电话标志符号878。作为又一示例,建议示能表示874与用于回放视频的任务相关联,并且因此包括指示任务与媒体回放相关联的回放标志符号880。应当理解,可以使用任意数量类型的标志符号,对应于任意数量的相应任务类别。
图8N-图8P示出了建议的应用程序和建议示能表示可以显示在搜索屏幕界面中的各种方式。如图8N中所示,在至少一个示例中,建议的应用程序和建议示能表示可以显示在搜索屏幕界面的相应部分中(例如,部分 882、884)。如图8O中所示,在至少一个示例中,建议的应用程序和建议示能表示可以显示在搜索屏幕界面的相同部分(例如,部分886)中。如图 8P中所示,在至少一个示例中,建议的应用程序和建议示能表示可以显示在搜索屏幕界面的相应部分中(例如,部分888、890、892、894)。
在一些示例中,在显示搜索屏幕界面866时,电子设备800检测建议示能表示例如建议示能表示870的选择。在一些示例中,由于与建议示能表示870相关联的任务是预先确定类型的任务(例如,后台任务),电子设备响应于通过第一类型输入(例如,轻击手势)选择建议示能表示870,执行(例如,自动执行)与建议示能表示870相关联的任务。除此之外或另选地,响应于通过不同于第一类型的第二类型输入选择示能表示870,电子设备800显示确认界面请求来自用户的任务确认。
例如,如图8Q所示,该选择是确认示能表示824上的触摸手势896。在一些示例中,触摸手势896是满足阈值强度和/或阈值持续时间的触摸输入,使得触摸手势896可以与轻击手势区分开。如图8R所示,响应于检测到触摸手势896,电子设备800显示确认界面898。确认界面898包括确认示能表示802A、取消示能表示804A、应用程序指示符806A和内容 808A。在一些示例中,取消示能表示804A的选择使得电子设备800停止显示确认界面898,并且/或者放弃执行与建议示能表示870相关联的任务。在一些示例中,应用程序指示符806A指示与任务相关联的应用程序。应用程序指示符806A可包括应用程序的名称(例如,“消息”)和/或与应用程序相关联的图标。内容808A可以包括针对任务的信息,例如用于执行任务的一个或多个参数。例如,内容808A可以指定文本消息的接收人是联系人“妈妈”,并且文本消息的文本是“早上好”。在一些示例中,内容808A可以实施为示能表示。
在显示确认界面898时,电子设备800检测确认示能表示802A的选择。例如,如图8S所示,该选择是确认示能表示824上的轻击手势810A。响应于检测到轻击手势810A,电子设备800执行与建议示能表示 870相关联的任务。如图8T所示,在一些示例中,在执行任务时,电子设备800可选地显示过程指示符812A,指示正在执行任务。在一些示例中,过程指示符812A的显示替换确认示能表示802A和取消示能表示804A的显示。
一旦执行了任务,电子设备800提供指示任务是否成功执行的输出。在图8U的示例中,任务成功执行,因此电子设备800显示成功指示符 814A,指示任务已成功执行(例如,成功发送消息到“妈妈”)。在一些示例中,成功指示符814A的显示替换过程指示符812A的显示。在一些示例中,在任务完成之后的预定时间量,电子设备用搜索屏幕界面866替换确认界面898的显示。如图8V所示,由于执行了与建议示能表示870相关联的任务,因此建议示能表示870不包括在搜索屏幕界面866中。
在一些示例中,在显示确认界面898时,电子设备800检测内容808A 的选择。例如,在图8W中,该选择是内容808A上的轻击手势816A。响应于检测到轻击手势816A,电子设备800打开与建议示能表示870相关联的应用程序,如图8X所示。
在一些示例中,以这种方式打开应用程序包括使用与任务相关联的一个或多个参数预加载应用程序。这样,用户可以使用减少数量的输入在应用程序内执行任务。作为示例,响应于与建议示能表示870相关联的内容 808A的选择,电子设备800打开即时消息应用程序并使用由建议示能表示 870指定的参数预加载即时消息应用程序。具体地讲,即时消息应用程序可指向即时消息界面817A,用于向接收人“妈妈”提供消息,并且输入字符串“早上好”可被插入到即时消息应用程序的消息编写字段818A中。
在显示即时消息界面817A时,电子设备800检测发送示能表示820A 的选择。例如,如图8Y所示,该选择是发送示能表示820A上的轻击手势 822A。在图8Z中,响应于检测到轻击手势822A,电子设备800将预加载的消息(例如,“早上好”)发送给接收人“妈妈”。通过以这种方式预加载参数,用户可以使用建议示能表示打开应用程序并且以比否则可能情况更少的输入执行任务。例如,在上述示例中,用户发送文本消息而不必选择接收人或为该接收人输入消息。
在一些示例中,可以在没有预加载参数的情况下打开应用程序。在图 8AA中,电子设备800在显示器801上显示搜索屏幕界面诸如搜索屏幕界面826A。搜索屏幕界面826A包括建议的应用程序282A和建议示能表示 830A、832A。如图所示,建议示能表示830A与记事本应用程序相关联,并且建议示能表示832A与视频电话应用程序相关联。此外,建议示能表示830A与用于打开记事本应用程序的任务相关联。在一些示例中,对应于记事本应用程序的任务可能不对应于任务类别,并且因此建议示能表示830A 不包括标志符号。建议示能表示832A与用于发起视频通话(例如,Skype 呼叫)的任务相关联,并且因此包括指示该任务与视频通话功能相关联的视频标志符号836A。
在显示搜索屏幕界面826A时,电子设备800检测建议示能表示834A 的选择。例如,如图8AA所示,该选择是建议示能表示834A上的轻击手势834A。在图8AB中,响应于检测到轻击手势834A,电子设备800打开与建议示能表示830A相关联的记事本应用程序。
在一些示例中,如本文所述,电子设备显示界面的方式取决于电子设备的类型。在一些示例中,例如,电子设备800可被实施为具有相对小的显示器的设备,使得界面诸如锁定屏幕界面804或搜索屏幕界面866可能不适用于显示。因此,在一些示例中,电子设备800可显示先前描述的那些界面的替代界面。
参考图8AC,例如,电子设备800在显示器801上显示home屏幕界面850A。Home屏幕界面850A包括建议示能表示852A和通知854A。如图所示,建议示能表示852A与名为“咖啡”的应用程序相关联,并且通知 854A是与日历应用程序相关联的日历通知,其指示用户具有即将发生的事件(“会议”)。
应当理解,虽然home屏幕界面850A被示出为包括建议示能表示 852A,但是在一些示例中,home屏幕界面850A包括多个建议示能表示 852A。例如,响应于用户输入诸如轻扫手势(例如,向上轻扫手势、向下轻扫手势),电子设备可显示(例如,显示出)一个或多个附加建议示能表示。
在显示home屏幕界面850A时,电子设备800检测建议示能表示 852A的选择。例如,如图8AD所示,该选择是建议示能表示858A上的轻击手势852A。如下面将更详细描述的,响应于检测到轻击手势858A,电子设备800显示确认界面诸如确认界面820。确认界面820包括应用程序指示符861A、任务指示符862A、确认示能表示864A和取消示能表示 866A。在一些示例中,应用程序指示符861A指示与任务相关联的应用程序。应用程序指示符861A可包括应用程序的名称(例如,“咖啡”)和/ 或与应用程序相关联的图标。任务指示符862A指示与应用程序相关联的任务以及与任务相关联的一个或多个参数(小杯,拿铁咖啡,燕麦奶)。
在一些示例中,响应于取消示能表示866A的选择,电子设备800停止显示确认界面860A。在一些示例中,在显示确认界面860A时,电子设备 800检测确认示能表示864A的选择。例如,如图8AE所示,该选择是确认示能表示864A上的轻击手势868A。响应于检测到轻扫手势868A,电子设备800选择性地执行任务。如果任务是第一类型的任务,电子设备800在没有进一步用户输入的情况下执行任务,并且可选地,用home屏幕界面 850A替换确认界面860A的显示,如图8AF所示。由于执行了与建议示能表示852A相关联的任务,因此在home屏幕界面850A中未显示建议界面 852A。如果任务是第二类型的任务,则电子设备800可以在执行任务之前请求用户确认任务,如所描述的。
图9A-图9B是示出根据一些实施方案的用于提供建议的方法900的流程图。方法900在具有显示器、一个或多个输入设备(例如,触摸屏、麦克风、相机)和无线通信无线电(例如,蓝牙连接、WiFi连接、移动宽带连接诸如4G LTE连接)的设备(例如,设备104、设备122、设备200、设备600、设备700、设备800)处执行。在一些实施方案中,显示器是触敏显示器。在一些实施方案中,显示器不是触敏显示器。在一些实施方案中,电子设备包括多个相机。在一些实施方案中,电子设备包括仅一个相机。在一些实施方案中,该设备包括一个或多个生物识别传感器,其任选地包括相机,诸如红外相机、热成像相机或其组合。方法900中的一些操作任选地被组合,一些操作的次序任选地被改变,并且一些操作任选地被省略。
如下所述,显示包括建议示能表示的用户界面并且响应于建议示能表示的选择从而选择性地要求确认以执行任务,这为用户提供了用于在电子设备上执行任务的易于识别和直观的方法,从而减少了否则执行此类任务所需的用户输入的数量。因此,以这种方式显示用户界面增强了设备的可操作性,并且使用户设备界面更高效(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又通过使用户能够更快速且高效地使用设备进一步减少了电力使用并且延长了设备的电池寿命。
在一些示例中,电子设备确定第一组候选任务(902),并且从第一组候选任务中识别任务(904)。在一些示例中,基于确定电子设备的上下文满足任务建议标准来识别任务。
在一些示例中,在显示器上显示用户界面之前,电子设备基于电子设备的第一上下文(例如,描述电子设备的先前使用的上下文数据)确定上下文标准(例如,任务建议标准)是否已得到满足。在一些示例中,电子设备确定任务建议是否满足用于显示建议的置信度阈值。在一些示例中,根据确定已经满足上下文标准(例如,一个或多个任务建议满足置信度阈值),电子设备确定第一组候选任务。在一些示例中,电子设备基于电子设备的第二上下文确定是否已经满足启发式标准。在一些示例中,电子设备的第二上下文指示设备的先前使用和/或与用户相关联的上下文数据(例如,联系人、日历、位置)。在一些示例中,确定是否已满足启发式标准包括确定是否已满足用于启发式任务建议的一组条件,使得提供启发式任务建议来代替建议的任务。在一些示例中,电子设备确定是否已满足上下文标准,然后确定是否已满足启发式标准。在一些示例中,电子设备确定是否已经满足启发式标准,然后确定是否已满足上下文标准。在一些示例中,电子设备同时确定是否已满足上下文标准和启发式标准。在一些示例中,根据确定已经满足启发式标准,电子设备确定与第一组候选任务不同的第二组候选任务,并从第二组候选任务中识别任务。在一些示例中,根据确定尚未满足启发式标准并且已满足上下文标准,电子设备从第一组候选任务中识别任务。在一些示例中,根据确定尚未满足启发式标准并且尚未满足上下文标准,电子设备放弃确定第一组候选任务并放弃确定第二组候选任务。
以这种方式提供启发式任务建议允许电子设备除了基于电子设备的上下文数据之外还基于用户特定的上下文数据(例如,根据如下所述的相应各组条件)提供任务建议。这允许电子设备向用户提供用于在电子设备上执行任务的突出任务建议,从而减少以其他方式执行这些任务所需的用户输入的数量。因此,以这种方式提供启发式任务建议增强了设备的可操作性,并且使电子设备的使用更高效(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又通过使用户能够更快速且高效地使用设备进一步减少了电力使用并且延长了设备的电池寿命。
在一些示例中,电子设备确定任务是否是第一类型的任务(906)。在一些示例中,确定任务是否是第一类型的任务包括确定任务是否是后台任务 (例如,可以在没有用户确认和/或附加用户输入的情况下执行的任务)。
在一些示例中,确定任务是否是第一类型的任务包括确定与该任务相关联的一个或多个参数是否有效。在一些示例中,当任务所需的每个参数分配有在允许范围内或该参数的值集内的某个值时,并且可选地,任务的每个可选参数具有在允许范围或参数的集合内的某个值时,或者未赋值时,任务的参数是有效的。
在一些示例中,电子设备(104、200、600、700、800)在电子设备的显示器上显示包括与任务相关联的建议示能表示(806、870、872、874、 834A、854A)的用户界面(804、810、866、826A、850A)(908)。在一些示例中,用户界面是锁定屏幕界面(804、810)。在一些示例中,用户界面是搜索屏幕界面(866、826A)。在一些示例中,用户界面是用于用户和数字助理之间的对话的数字助理界面。在一些示例中,建议示能表示是与电子设备(并且在一些情况下,对应于电子设备的数字助理)提供的任务建议对应的示能表示。在一些示例中,建议是任务特定的和/或参数特定的。在一些示例中,基于电子设备的上下文(例如,位置、WiFi连接、 WiFi网络标识符(例如,SSID)、使用历史、时间/日期、耳机连接等)提供任务建议。在一些示例中,任务建议在视觉上可与电子设备在用户界面中显示的其他通知区分开。
基于电子设备的上下文提供任务建议允许电子设备根据用户之前对电子设备的使用和/或电子设备的当前状态提供突出任务建议。因此,减少了在电子设备上执行任务所需的输入数量和时间量,从而加速了用户与电子设备的交互。这继而又降低了电力使用并延长了设备的电池寿命。
在一些示例中,在显示器上显示包括与任务相关联的建议示能表示的用户界面包括:根据任务是第一类型的任务,显示具有标志符号的建议示能表示;并且根据任务是第二类型的任务,显示不具有标志符号的建议示能表示。在一些示例中,标志符号指示任务的类型(例如,后台与非后台,任务是否需要用户确认)。在一些示例中,标志符号是指示任务需要用户确认的箭头。在一些示例中,标志符号是指示任务是交易的美元符号 (或其他货币符号)。在一些示例中,标志符号由圆圈限定。
在一些示例中,在显示器上显示包括与任务相关联的建议示能表示的用户界面包括:根据确定任务对应于第一组任务,显示具有第一类型的标志符号的建议示能表示(910)。在一些示例中,该组任务是一种类别的任务。在一些示例中,任务类别包括消息任务、电话任务、视频电话任务和媒体任务。在一些示例中,每组任务对应于一个或多个相应的第一方应用程序。在一些示例中,每组任务还包括与一个或多个第三方应用程序相对应的任务。在一些示例中,如果任务是对应于特定类别的任务的任务,则对应于该任务的建议示能表示包括标识该类别的标志符号(876、878、 880、836A)。在一些示例中,在显示器上显示包括与任务相关联的建议示能表示的用户界面还包括:根据确定任务对应于不同于第一组任务的第二组任务,显示具有不同于第一类型的第二类型的标志符号的建议示能表示(912)。在一些示例中,在显示器上显示包括与任务相关联的建议示能表示的用户界面还包括:根据确定该任务不对应于第一组任务并且不对应于第二组任务,显示不具有标志符号的建议示能表示(830A)。在一些示例中,如果任务不对应于一个或多个预定类别的任务,则显示对应于该任务的建议示能表示不具有标志符号(914)。
在一些示例中,用户界面(804、810)包括通知(808)。通知可以是事件诸如接收文本消息的通知。在一些示例中,以第一方式显示建议示能表示(806),并且以不同于第一方式的第二方式显示通知(808)。例如,在一些示例中,建议示能表示和通知对应于不同的颜色、配色方案和/或图案。在一些示例中,建议示能表示和通知具有不同的形状和/或尺寸。
如本文所述,以不同方式显示通知和建议示能表示允许用户容易地区分电子设备显示器上的通知和建议示能表示,从而减少执行任务所需的时间量。以这种方式减少时间增强了设备的可操作性,并且使用户设备界面更高效(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又通过使用户能够更快速且高效地使用设备进一步减少了电力使用并且延长了设备的电池寿命。
在一些示例中,显示用户界面包括,根据确定电子设备处于锁定状态,在第一视觉状态下显示建议示能表示。在一些示例中,如果设备被锁定,电子设备显示与建议示能表示对应的减少量的信息。在一些示例中,显示用户界面还包括:根据确定电子设备未处于锁定状态,在不同于第一视觉状态的第二视觉状态下显示建议示能表示。在一些示例中,如果设备被解锁,则电子设备显示与建议示能表示对应的内容。以这种方式显示的内容包括但不限于与建议示能表示相关联的应用程序的名称和/或图标,与建议示能表示的任务相关联的一个或多个参数,以及可选地,指示建议示能表示的任务类别的标志符号。
在一些示例中,电子设备经由一个或多个输入设备检测对应于建议示能表示的选择的第一用户输入(816、834A、858A)(916)。在一些示例中,使用触摸输入、手势或其组合选择建议示能表示。在一些示例中,使用语音输入选择建议示能表示。在一些示例中,触摸输入是第一类型的输入,诸如持续时间相对较短或强度相对较低的按压。
在一些示例中,响应于检测到第一用户输入(918),根据确定任务是第一类型的任务,电子设备执行任务(920)。在一些示例中,执行任务包括使任务由另一电子设备执行。在一些示例中,电子设备是第一类型的设备 (例如,智能手表)并且使得任务在第二类型的设备(例如,移动电话) 上执行。
在一些示例中,进一步响应于检测到第一用户输入(918),根据确定任务是不同于第一类型的第二类型的任务,电子设备显示包括确认示能表示的确认界面(820、898、860A)(922)。在一些示例中,第二类型的任务是在执行任务之前需要用户确认和/或来自用户的附加信息的任务,诸如对应于交易的任务。在一些示例中,第二类型的任务是由特定类型的设备诸如智能手表执行的任务。在一些示例中,确认界面与用户界面同时显示。例如,确认界面可以覆盖在用户界面上。在一些示例中,确认界面显示在用户界面的第一部分上,并且用户界面的第二部分在视觉上被遮挡(例如,变暗、模糊)。
响应于建议示能表示的选择从而选择性地要求确认以执行任务,这允许电子设备快速执行第一类型的任务,并且在执行第二类型的任务之前确认用户意图。因此,为用户提供了用于在电子设备上快速可靠地执行任务的直观且可靠的方法,从而减少了执行这些任务所需的用户输入的数量并加速了任务执行。此类优势继而又减少了执行任务所需的时间量并且使电子设备的使用更加高效,这又通过使用户能够更快速且有效地使用设备而减少了电力使用并且延长了设备的电池寿命。
在一些示例中,在显示确认界面(926)时,电子设备检测对应于确认示能表示(824、802A、864A)的选择的第二用户输入(836、810A、 868A)(928)。在一些示例中,使用触摸输入、手势或其组合选择确认示能表示。在一些示例中,使用语音输入选择确认示能表示。在一些示例中,响应于检测到第二用户输入,电子设备执行任务(930)。在一些示例中,在执行任务时,电子设备显示第一进度指示符(840、812A)以指示电子设备正在执行任务。在一些示例中,如果电子设备成功执行了任务,则电子设备显示第二进度指示符(842、814A)以指示任务已成功执行。在一些示例中,在执行任务和/或显示第二进度指示符之后,电子设备显示包括由应用程序指定的一个或多个视觉对象的界面(例如,叙述“谢谢您的订单”的消息或图像))。在一些示例中,如果电子设备未成功执行任务,则电子设备向用户提供自然语言输出,指示任务未被成功执行(例如,“存在问题。重新尝试。”并且可选地,显示示能表示(846),用户可以通过该示能表示发起执行任务的附加尝试。
在一些示例中,确认界面包括应用程序示能表示(828、850)。在一些示例中,应用程序示能表示是指示(例如,标识)与建议示能表示相关联的应用程序和/或任务的示能表示。在一些示例中,应用程序示能表示是除了确认示能表示和/或取消示能表示以外的确认界面的任何部分。在一些示例中,电子设备检测对应于应用程序示能表示的选择的第三用户输入 (932)。在一些示例中,使用触摸输入、手势或其组合选择应用程序示能表示。在一些示例中,使用语音输入选择应用程序示能表示。在一些示例中,响应于检测到第三用户输入,电子设备执行(例如,启动、发起)与任务相关联的应用程序(934)。在一些示例中,用户选择应用程序的显示的图标和/或名称以启动对应于选择示能表示的任务的应用程序。在一些示例中,应用程序可选地预先加载一个或多个参数(例如,电子邮件的主题和/ 或正文)。
在一些示例中,建议示能表示包括影响任务执行的参数的视觉指示。在一些示例中,建议示能表示对应于要使用一个或多个指定参数执行的任务(例如,使用Starbucks应用订购特定咖啡大小和类型,发送具有特定消息的文本)。在一些示例中,执行与任务相关联的应用程序包括使用参数预加载应用程序。在一些示例中,执行应用程序使得代表用户输入任务的参数(例如,已经在购物车中的订单,并且用户仅需要指示订购意图;消息被插入到消息编写字段中,并且用户仅需要指示发送意图)。
在一些示例中,确认界面包括取消示能表示。在一些示例中,电子设备检测对应于取消示能表示的选择的第四用户输入。在一些示例中,使用触摸输入、手势或其组合选择取消示能表示。在一些示例中,使用语音输入选择取消示能表示。在一些示例中,响应于检测到第四用户输入,电子设备放弃执行任务。在一些示例中,电子设备还响应于检测到第四用户输入停止显示确认界面。
在一些示例中,第一用户输入是第一类型的输入。在一些示例中,电子设备在显示用户界面时,检测对应于建议示能表示的选择的第二类型的用户输入。在一些示例中,使用触摸输入、手势或其组合选择建议示能表示。在一些示例中,使用语音输入选择建议示能表示。在一些示例中,触摸输入是第二类型的输入,诸如持续时间相对较长或强度相对较高的按压。在一些示例中,第二类型的输入不同于第一类型的输入。在一些示例中,响应于检测到第二类型的用户输入,电子设备显示确认界面。
需注意,上面相对于方法900(例如,图9A-图9B)所述过程的详情也以类似方式适用于下文所述的方法。例如,方法900任选地包括参考方法1100、1300、1500、1700和1900所述的各种方法的一个或多个特征。
上述方法中的操作任选地通过运行信息处理装置中的一个或多个功能模块来实现,该信息处理装置诸如为通用处理器(例如,如相对于图2A、图4、图6A所述)或特定于应用的芯片。此外,上文参考图8A-图8AF描述的操作任选地由图2A-图2B中所描绘的部件来实现。例如,显示操作 908、检测操作916、执行操作920和显示操作922任选地由事件分类器270、事件识别器280和事件处理程序290来实施。事件分类器270中的事件监视器271检测触敏表面604上的接触(图6A),并且事件分配器模块 274将事件信息递送到应用程序236-1(图2B)。应用程序236-1的相应事件识别器280将事件信息与相应事件定义286进行比较,并且确定触敏表面上第一位置处的第一接触是否与预定义的事件或子事件对应,预定义的事件或子事件诸如为对用户界面上的对象的选择。当检测到相应的预定义的事件或子事件时,事件识别器280激活与对该事件或子事件的检测相关联的事件处理程序290。事件处理程序290任选地利用或调用数据更新器 276或对象更新器277来更新应用程序内部状态292。在一些实施例中,事件处理程序290访问相应GUI更新器278来更新应用程序所显示的内容。类似地,本领域的技术人员会清楚地知道可如何基于图2A-图2B中描绘的部件来实现其他过程。
图10A-图10AJ示出了根据一些实施方案的用于在电子设备(例如,设备104、设备122、设备200、设备600或设备700)上提供语音快捷方式的示例性用户界面。这些附图中的用户界面被用于示出包括图11A-图 11B中的过程的下文描述的过程。
通常,可以采用参考图10A-图10AJ描述的用户界面,使得用户可以将任务与相应的用户特定短语相关联。这些短语继而可以用于使电子设备执行相关任务。
图10A示出了电子设备1000(例如,设备104、设备122、设备 200、设备600或设备700)。在图10A-图10AJ中示出的非限制性示例性实施方案中,电子设备1000是智能电话。在其他实施方案中,电子设备 1000可以是不同类型的电子设备,诸如可穿戴设备(例如,智能手表)。在一些示例中,电子设备1000具有显示器1001、一个或多个输入设备(例如,显示器1001的触摸屏、按钮、麦克风)和无线通信无线电部件。在一些示例中,电子设备1000包括多个相机。在一些示例中,电子设备包括仅一个相机。在一些示例中,电子设备包括一个或多个生物识别传感器(例如,生物识别传感器1003),其任选地包括相机,诸如红外相机、热成像相机或其组合。
在图10A中,电子设备1000在显示器1001上显示设置界面1004。设置界面1004包括候选任务部分1006和附加任务示能表示1014。候选任务部分1006包括候选任务示能表示1008、1010和1012。在一些示例中,响应于附加任务示能表示1014的选择,电子设备1000显示全局任务界面诸如全局任务界面1018A,如关于图10S所描述的。
在一些示例中,响应于候选任务示能表示的选择,电子设备1000显示任务特定的界面。在一些示例中,任务特定界面与候选任务示能表示的任务相关联。作为示例,在显示设置界面1004时,电子设备1000检测候选任务示能表示1008的选择。在一些示例中,选择是候选任务示能表示1008 上的轻击手势1016。如图10B所示,响应于检测到轻击手势1016,电子设备1000显示任务特定界面1018。任务特定界面1018可以与候选任务示能表示1008的任务(例如,查看侧方房屋相机)相关联。在一些示例中,选择候选任务示能表示发起对应于候选任务示能表示的任务的语音快捷方式生成过程。因此,候选任务示能表示1008的选择可以发起候选任务示能表示1008的任务的语音快捷方式生成过程。
任务特定界面1018包括任务图标1020、任务指示符1022、任务描述符1024、应用程序指示符1026、候选短语1028和记录示能表示1030。在一些示例中,任务图标1020包括对应于任务的图标或图像。在一些示例中,任务指示符1022指示任务的名称和/或类型。在一些示例中,任务描述符1024包括任务的描述并且/或者指示用户可以记录要与任务链接的命令或短语。在一些示例中,应用程序指示符1026标识对应于任务的应用程序。例如,应用程序指示符1026可包括应用程序的名称和/或与应用程序相关联的图标。候选短语1028包括用户可以选择与任务相关联的建议短语。
在显示任务特定界面1018时,电子设备1000检测记录示能表示1030 的选择。如图10C中所示,记录示能表示1030的选择是轻击手势1032。响应于记录示能表示1030的选择,电子设备在显示器1001上显示记录界面1034(例如,替换任务特定界面1018的显示)。
参考图10D,记录界面1034包括取消示能表示1036、返回示能表示 1038、预览1042和停止示能表示1044。在一些示例中,响应于取消示能表示1036的选择,电子设备停止显示记录界面1034,并且可选地,终止语音快捷方式生成过程。在一些示例中,响应于返回示能表示的选择,电子设备显示任务特定界面1018(例如,替换记录界面1038的显示)。
在一些示例中,在显示记录界面1034时,电子设备1000使用电子设备1000的音频输入设备(例如,麦克风)接收来自用户的自然语言语音输入。在一些示例中,在接收自然语言语音输入时,电子设备1000提供自然语言语音输入的实时预览诸如实时预览1042。如图10D所示,在一些示例中,实时预览1042是指示自然语言语音输入的一个或多个听觉特征的视觉波形。
参考图10E,如果在初始显示记录界面1034之后,用户在预先确定的时间量内未提供自然语言语音输入,电子设备1000可以可选地向用户显示提示,包括候选短语诸如候选短语1046(例如,“查看房屋实况流的侧面”)。在一些示例中,候选短语1046与候选短语1028(图10D)相同。在其他示例中,候选短语1046与候选短语1028不同。
在一些示例中,在接收自然语言语音输入时,电子设备1000对自然语言语音输入执行语音到文本转换(例如,自然语言语音处理)以提供候选短语1048。如图10F-图10G所示,由于在接收自然语言语音输入的时执行语音到文本转换,因此可在接收自然语言语音输入的同时迭代和/或连续地更新候选短语1048。
在一些示例中,电子设备1000确保候选短语不同于一个或多个预先确定的短语(例如,“呼叫911”)。作为示例,电子设备1000确定候选短语与一个或多个预先确定的短语中的每一个之间的相似度是否超过相似度阈值。如果不满足相似度阈值,电子设备1000将通知用户所提供的候选短语不充分和/或不被允许。电子设备1000还可请求用户提供另一个自然语言语音输入。
在显示记录界面1034时,电子设备1000检测停止示能表示1044的选择。如图10G中所示,记录示能表示1044的选择是轻击手势1050。响应于停止示能表示1050的选择,电子设备1000在显示器1001上显示完成界面1052(例如,替换记录界面1034的显示),如图10H所示。
完成界面1052包括完成示能表示1054、取消示能表示1056、任务图标1058、任务指示符1060、应用程序指示符1062、候选短语1064和编辑示能表示1066。在一些示例中,响应于取消示能表示1056的选择,电子设备1000停止显示完成界面1052,并且可选地,终止语音快捷方式生成过程。在一些示例中,任务图标1058包括对应于任务的图标或图像。在一些示例中,任务指示符1060指示任务的名称和/或类型。在一些示例中,应用程序指示符1062标识对应于任务的应用程序。例如,应用程序指示符可包括应用程序的名称和/或与应用程序相关联的图标。候选短语1028是用户可以选择与任务相关联的建议短语。
在一些示例中,在显示完成界面1052时,电子设备1000检测编辑示能表示1066的选择。如图10I中所示,编辑示能表示1066的选择是轻击手势1068。响应于编辑示能表示1068的选择,电子设备1000在显示器1001 上显示编辑界面1070(例如,替换完成界面1052的显示),如图10J所示。
编辑界面1070包括完成示能表示1072、取消示能表示1074、任务图标1076、任务指示符1078、候选短语排序1080和重新记录示能表示 1088。在一些示例中,响应于取消示能表示1056的选择,电子设备1000 停止显示编辑界面1070,并且可选地,终止语音快捷方式生成过程。在一些示例中,任务图标1076包括对应于任务的图标或图像。在一些示例中,任务指示符1078指示任务的名称和/或类型。
如所描述的,在一些示例中,电子设备1000基于用户提供的自然语言语音输入提供候选短语(例如,候选短语1048)。在一些示例中,以这种方式提供候选短语包括生成多个候选短语(例如,候选短语1082、1084、 1086),并且选择与最高得分(例如,文本表示置信度得分)相关联的候选短语。在一些示例中,候选短语排序1080包括在选择与最高得分相关联的候选短语之前由电子设备1000生成的多个候选短语。在一些示例中,候选短语排序1080包括一组(例如,3个)最高级的候选短语,其可选地根据每个候选短语的相应得分列出。例如,如图10J所示,候选短语排序 1080包括候选短语1082、1084和1086。在一些示例中,候选短语1082可对应于候选短语1064。
在一些示例中,用户可从候选短语排序1080的候选短语1082、 1084、1086中选择新的(或相同的)候选短语。例如,如图10K所示,电子设备1000在显示编辑界面1070时检测候选短语1080的选择。候选短语 1080的选择是轻击手势1090。在一些示例中,响应于候选短语1080的选择,电子设备1000选择候选短语1080作为新的(或相同的)候选短语。在一些示例中,响应于候选短语1080和完成示能表示1072两者的选择,电子设备选择候选短语1080作为新的(或相同的)候选短语。
在一些示例中,候选短语排序可不包括用户意图或优选的短语。因此,在一些示例中,响应于重新记录示能表示1088的选择,电子设备1000 显示记录界面诸如记录界面1034(例如,替换编辑界面1070的显示),以允许用户如上所述提供新的自然语言语音输入。
在一些示例中,在显示完成界面1052时,电子设备1000检测完成示能表示1054的选择。如图10L所示,完成示能表示1054的选择是轻击手势1092。响应于完成示能表示1054的选择,电子设备1000将候选短语与候选任务示能表示1008的任务相关联。通过以这种方式将候选短语与任务相关联,用户可将候选短语提供(例如,念出)给电子设备的数字助理,以使设备执行与候选短语相关联的任务。与相应任务相关联的候选短语在本文中可称为语音快捷方式。在一些示例中,进一步响应于完成示能表示 1054的选择,电子设备1000在显示器1001上显示设置界面1004(例如,替换完成界面1052的显示),如图10M所示。
在一些示例中,由于候选任务示能表示1008的任务被分配给任务,因此候选任务部分1006中不包括候选任务示能表示1008。在一些示例中,候选任务部分1006替代地包括候选任务建议1094,使得候选任务部分1006 包括至少阈值数量的候选任务示能表示。
在一些示例中,如果一个或多个候选任务示能表示与相应任务相关联,设置界面1004包括用户快捷方式示能表示1096。在一些示例中,在显示设置界面1004时,电子设备1000检测用户快捷方式示能表示1096的选择。如图10N所示,用户快捷方式示能表示1096的选择是轻击手势 1098。在一些示例中,响应于用户快捷方式示能表示1096的选择,电子设备1000在显示器1001上显示用户快捷方式界面1002A(例如,替换设置界面1004的显示),如图10O所示。
用户快捷方式界面1002A包括编辑示能表示1004A、返回示能表示 1006A、快捷方式示能表示1008A和附加任务示能表示1010A。在一些示例中,响应于返回示能表示1006A的选择,电子设备1000显示设置界面 1004(图10N)。在一些示例中,响应于编辑示能表示1004A的选择,电子设备1000显示通过其可以删除与快捷方式示能表示1008A相关联的语音快捷方式的界面。在一些示例中,响应于附加任务示能表示1010A的选择,电子设备1000显示包括一个或多个候选任务示能表示诸如图10S的全局任务界面1018A的界面,如将在下文中进一步详细描述的。
在一些示例中,在显示用户快捷方式界面1002A时,电子设备1000检测快捷方式示能表示1008A的选择。如图10P所示,快捷方式示能表示 1008A的选择是轻击手势1004A。在一些示例中,响应于快捷方式示能表示1008A的选择,电子设备1000在显示器1001上显示快捷方式示能表示 1008A的完成界面1054(例如,替换用户快捷方式界面1002A的显示),如图10Q所示。完成界面1054可以包括删除示能表示1014A。响应于删除示能表示1014A的选择,电子设备1000删除与任务相关联的语音快捷方式。以这种方式删除快捷方式可包括将语音快捷方式与任务解除关联,使得向电子设备1000的数字助理提供语音快捷方式不会使电子设备1000执行任务。
在一些示例中,在显示设置界面1004时,电子设备1000检测附加任务示能表示1014的选择。如图10R所示,附加任务示能表示1014的选择是轻击手势1016A。在一些示例中,响应于快捷方式示能表示1014的选择,电子设备1000在显示器1001上显示全局任务界面1018A(例如,替换设置界面1004的显示),如图10S所示。
对于多个应用程序中的每一个,全局任务界面1018A包括相应的一组候选任务示能表示。作为示例,全局任务界面1018A包括与活动应用程序相关联的一组候选任务示能表示1020A、与日历应用程序相关联的一组候选任务示能表示1026A,以及与音乐应用程序相关联的一组候选任务示能表示1036A。该组候选任务示能表示1020A可以可选地包括“开始健身”候选任务示能表示1022A和“查看每日进度”候选任务示能表示1024A。该组候选任务示能表示1026A可以可选地包括“发送午餐邀请”候选任务示能表示1028A、“安排会议”候选任务示能表示1030A,以及“清除一天的活动”候选任务示能表示1032A。该组候选任务示能表示1036A可以可选地包括“播放健身播放列表”候选任务示能表示1038A和“启动R&B 广播”候选任务示能表示1040A。
在一些示例中,全局任务界面1018A的候选任务示能表示是可搜索的。作为示例,在显示全局任务界面1018A时,电子设备检测显示器1001 上的轻扫手势,诸如图10T的轻扫手势1046A。响应于轻扫手势1046A,电子设备沿向下方向滑动全局任务界面1018A以显示(例如,显示出)搜索字段1048A,该字段可用于搜索全局任务界面1018A的候选任务示能表示,如图10U所示。
在一些示例中,由电子设备1000显示的每组候选任务示能表示可以是相应应用程序的所有可用候选任务示能表示的子集。因此,用户可以选择应用程序任务列表示能表示诸如应用程序特定的任务列表示能表示 1034A、1042A,以显示对应于应用程序任务列表示能表示的应用程序的一个或多个附加候选任务示能表示。例如,在显示全局任务界面1018A时,电子设备1000检测应用程序任务列表示能表示1042A的选择。如图10V所示,应用程序任务列表示能表示1042A的选择是轻击手势1050A。在一些示例中,响应于应用程序任务列表示能表示1042A的选择,电子设备1000 在显示器1001上显示应用程序任务界面1052A(例如,替换全局任务界面 1018A的显示),如图10W所示。如图所示,应用程序任务界面1052A包括返回示能表示和候选任务示能表示1054A至1070A,所述返回示能表示在被选择时,使得电子设备1000显示全局任务界面1018A。
在一些示例中,在显示设置界面1004时,电子设备1000检测显示器 1001上的轻扫手势诸如图10X的轻扫手势1074A。如图10Y所示,响应于轻扫手势1074A,电子设备1000沿向上方向滑动设置界面1004以显示 (例如,显示出)各种设置。当启用时,该设置调整电子设备1000显示候选任务示能表示和建议示能表示的方式,诸如参考图8A-图8AF描述的那些。例如,设置界面1004包括快捷启用设置1076A,当启用该设置时允许电子设备1000显示候选任务示能表示,如本文所述。作为另一示例,设置界面1004包括搜索建议启用设置1078A,当启用该设置时允许电子设备 1000在搜索屏幕界面上显示建议示能表示。作为另一示例,设置界面1004 包括查找建议启用设置1080A,当启用该设置时允许电子设备1000在查找结果屏幕界面上显示建议示能表示。作为又一示例,设置界面1004包括锁定屏幕建议启用设置1082A,当启用该设置时允许电子设备1000在锁定屏幕界面上显示建议示能表示。
设置界面1004还包括应用程序示能表示1084A和1086A,每个与相应的应用程序相关联。在一些示例中,在显示设置界面1004时,电子设备 1000检测应用程序示能表示1086A的选择。如图10Y所示,应用程序示能表示1086A的选择是轻击手势1088A。在一些示例中,响应于应用程序示能表示1086A的选择,电子设备1000在显示器1001上显示应用程序设置界面1090A(例如,替换设置界面1004的显示),如图10Z所示。
在一些示例中,应用程序设置界面1090A包括应用程序用户快捷方式示能表示1092A,该示能表示可对应于先前由用户例如使用本文描述的语音快捷方式生成过程生成的语音快捷方式。应用程序设置界面1090A还可包括候选任务示能表示1094A至1098A,其中每个可对应于与应用程序设置界面1090A的应用程序相关联的相应任务。在一些示例中,应用程序设置界面1090A还包括应用程序任务列表示能表示1002B。在一些示例中,响应于应用程序任务列表示能表示1002B的选择,电子设备1000在显示器 1001上显示应用程序任务界面诸如应用程序任务界面1052A(图10W) (例如,替换应用程序设置界面1090A的显示)。在一些示例中,应用程序设置界面1090A还包括应用程序建议启用设置1004B,当启用该设置时允许电子设备1000显示与搜索屏幕界面、查找结果屏幕界面和/或键盘界面上的应用程序相关联的建议示能表示。在一些示例中,应用程序设置界面 1090A还包括应用程序建议启用设置1006B,当启用该设置时允许电子设备1000在锁定屏幕界面上显示与应用程序相关联的建议示能表示。
在一些示例中,应用程序设置界面1090A还包括编辑示能表示 1010B。在一些示例中,在显示应用程序设置界面1090A时,电子设备 1000检测编辑示能表示1010B的选择。如图10AA所示,编辑示能表示 1010B的选择是轻击手势1012B。在一些示例中,响应于对编辑示能表示 1010B的选择,电子设备1000在显示器1001上显示应用程序特定的编辑界面1014B(例如,替换应用程序设置界面1090A的显示),如图10AB所示。在一些示例中,应用程序特定的编辑界面1014B显示在应用程序设置界面1090A的第一部分上,并且在视觉上遮挡应用程序设置界面1090A的第二部分(例如,变暗、模糊)。
在一些示例中,显示应用程序设置界面1090A包括显示应用程序设置界面1090A的每个应用程序用户快捷方式示能表示(例如,应用程序用户快捷方式示能表示1092A)的选择示能表示(例如,选择示能表示 1020B)。在示例操作中,电子设备1000检测选择示能表示1020B的选择,指示对应的应用程序用户快捷方式示能表示1092A的选择以及用户删除应用程序用户快捷方式示能表示1092A的意图。在一些示例中,用户可通过选择确认示能表示1018B确认删除,或者通过选择取消示能表示 1016B放弃删除。
在图10AC中,电子设备1000显示特定应用程序的应用程序许可界面 1022B。应用程序许可界面1022包括建议许可示能表示1026B。在显示应用程序许可界面1022时,电子设备1000检测建议许可示能表示1026B的选择。如图10AC所示,建议许可示能表示1026B的选择是轻击手势 1032B。在一些示例中,响应于建议许可示能表示1026B的选择,电子设备1000在显示器1001上显示应用程序设置界面诸如图10AD的应用程序设置界面1034B(例如,替换应用程序特定的许可界面1022B的显示)。
在一些示例中,可以使用应用程序特定的设置界面发起语音快捷方式生成过程。因此,在一些示例中,应用程序设置界面1034B可包括候选任务示能表示1038B。在一些示例中,在显示应用程序设置界面1034B时,电子设备1000检测候选任务示能表示1038B的选择。如图10AE所示,候选任务示能表示1038B的选择是轻击手势1050B。响应于候选建议示能表示1038B的选择,电子设备1000显示与候选任务示能表示1038B的任务相关联的任务特定界面1054B,如图10AF所示。
参考图AF-图AH,如上所述,用户此后可以通过向电子设备提供自然语言语音输入(例如,“来杯咖啡”)生成语音快捷方式,并且电子设备继而提供候选短语用于与候选任务示能表示1038B的任务相关联(例如,从附近的咖啡店订购加燕麦奶的大杯拿铁咖啡)。一旦生成了任务的语音快捷方式,电子设备1000即显示应用程序设置界面1034B。如图10AI所示,应用程序设置界面1034B包括应用程序用户快捷方式示能表示 1036B。在一些示例中,响应于应用程序特定的用户快捷方式示能表示 1036B的选择,电子设备显示与应用程序的任务相关联的语音快捷方式。
在一些示例中,可以使用应用程序界面诸如第三方应用程序界面发起语音快捷方式生成过程。例如,如图10AJ所示,用户可以使用应用程序完成任务(例如,订购咖啡)。作为响应,应用程序可以显示包括候选任务建议示能表示1062B的任务完成界面1060B。在一些示例中,响应于候选任务建议示能表示1062B的选择,电子设备发起语音快捷方式生成过程。
图11A-图11B是示出了根据一些实施方案的用于提供语音快捷方式的方法的流程图。方法1100在具有显示器、一个或多个输入设备(例如,触摸屏、麦克风、相机)和无线通信无线电(例如,蓝牙连接、WiFi连接、移动宽带连接诸如4G LTE连接)的设备(例如,设备104、设备122、设备200、设备600、设备700、设备1000)处执行。在一些实施方案中,显示器是触敏显示器。在一些实施方案中,显示器不是触敏显示器。在一些实施方案中,电子设备包括多个相机。在一些实施方案中,电子设备包括仅一个相机。在一些实施方案中,该设备包括一个或多个生物识别传感器,其任选地包括相机,诸如红外相机、热成像相机或其组合。方法1100 中的一些操作任选地被组合,一些操作的次序任选地被改变,并且一些操作任选地被省略。
如下所述,基于自然语言语音输入提供候选短语并将候选短语与相应任务相关联,这允许用户准确且有效地生成可用于在电子设备上执行任务的用户特定的语音快捷方式。例如,允许用户以这种方式将语音快捷方式与任务相关联允许用户在视觉上确认已经选择了所需的语音快捷方式并将其分配给正确的任务,从而降低了不正确或不需要的关联的可能性。因此以所描述的方式提供候选短语使电子设备的使用更加高效(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又通过使用户能够更快速且高效地使用设备进一步减少了电力使用并且延长了设备的电池寿命。
在一些示例中,电子设备(104、200、600、700、1000)显示多个候选任务示能表示(1008、1010、1012、1038B),包括与任务(1102)相关联的候选任务示能表示(1008、1038B)。在一些示例中,多个任务显示在设置界面或应用程序界面中。在一些示例中,多个任务中的每个任务是例如基于电子设备的上下文建议的任务。
在一些示例中,电子设备显示包括与任务相关联的候选任务示能表示的多个候选任务示能表示,包括显示包括多个候选任务示能表示的应用程序界面(1034B)。在一些示例中,应用程序界面是第三方应用程序(1062B)的界面,该界面包括一个或多个示能表示(对应于相应的一个或多个候选任务),用户可以选择所述示能表示以使得显示第一用户界面并由此创建所选任务的语音快捷方式。在一些示例中,第一用户界面(1018)覆盖在应用程序界面上。在一些示例中,第一用户界面覆盖在应用程序界面的一部分上。在一些示例中,第一用户界面覆盖在整个应用程序界面上。在一些示例中,所述一个或多个示能表示对应于一个或多个相应任务,并且响应于一个或多个任务的完成而显示。
在一些示例中,电子设备检测包括第一用户输入(1016)的一组输入 (1016、1032),该第一用户输入对应于与任务(1104)相关联的候选任务示能表示的选择。
在一些示例中,响应于第一用户输入,电子设备显示与任务相关联的第四界面(1018)。在一些示例中,第四用户界面是用于生成语音快捷方式的初始任务特定界面。在一些示例中,该界面指定与语音快捷方式(1022)相关联的任务,并且还包括相关应用程序的指示(例如,应用程序的名称) (1026)和/或与应用程序(1020、1026)相关联(例如,捐赠)的图标。在一些示例中,该界面包括取消示能表示。响应于取消示能表示的选择,电子设备返回到紧接之前的界面。在一些示例中,该界面包括记录示能表示 (1030)。响应于记录示能表示的选择,电子设备在显示语音记录界面(1034) 时记录语音输入。在一些示例中,第四界面包括第一建议语音快捷方式短语(1028)。在一些示例中,电子设备显示建议的语音快捷方式,用户可以采用该快捷方式作为相关任务的语音快捷方式。
在一些示例中,响应于检测到该组用户输入,电子设备显示用于生成与任务(1106)相关联的语音快捷方式的第一界面(1034)。在一些示例中,第一界面是语音记录界面。在一些示例中,语音记录界面包括用于用户记录短语的提示(1046),该短语将用作用于发起任务的语音快捷方式。在一些示例中,语音记录界面包括由用户提供的自然语言语音输入的实时预览 (1042)。在一些示例中,实时预览是音频波形。
在一些示例中,在显示第一界面(1108)时,电子设备通过音频输入设备接收(例如,采样、获取、捕获)自然语言语音输入(1110)。在一些示例中,自然语言语音输入是由设备的用户念出的短语。在一些示例中,电子设备接收语音输入持续预先确定的时间,并且/或者直到用户选择停止示能表示(1044)。
在一些示例中,在接收自然语言语音输入时,电子设备提供(例如,显示)自然语言语音输入的实时(例如,即时)预览。在一些示例中,实时预览是自然语言输入的波形和/或自然语言输入的语音到文本转换的即时显示。在一些示例中,自然语言语音输入的实时预览是自然语言语音输入的视觉波形。
在一些示例中,响应于接收到自然语言语音输入,电子设备基于自然语言语音输入确定候选短语。在一些示例中,基于自然语言语音输入确定候选短语包括使用自然语言处理确定候选短语。在一些示例中,在用户提供自然语言语音输入时,电子设备使用自然语言处理将自然语言语音输入转换成文本。
在一些示例中,基于自然语言语音输入确定候选短语包括将自然语言语音输入提供给另一电子设备,并且从另一电子设备接收候选短语的表示 (例如,文本表示、向量表示)。在一些示例中,电子设备向服务器提供自然语言语音输入和/或NL语音输入的表示,并且服务器返回一个或多个候选短语。
在一些示例中,基于自然语言语音输入确定候选短语包括确定自然语言语音输入是否满足短语相似度标准。根据确定自然语言语音输入满足短语相似度标准,电子设备指示(例如,显示指示)自然语言语音输入满足相似度标准。在一些示例中,电子设备确保自然语言语音输入不同于一个或多个预先确定的短语(例如,“呼叫911”)。在一些示例中,电子设备确保自然语言语音输入与一个或多个预先确定的短语充分不同。作为示例,电子设备可以确保自然语言语音输入的表示与所述一个或多个预先确定的短语中的每一者的相似度不超过相似度阈值。在一些示例中,如果自然语言语音输入不满足相似度标准,则电子设备将通知用户所提供的语音输入不充分和/或不被允许。电子设备还可以请求用户提供新的自然语言语音输入。在一些示例中,电子设备还将自然语言输入与与一个或多个存储的语音快捷方式相关联的短语进行比较。在一些示例中,电子设备指示用户提供新的自然语言语音输入和/或用户意图该自然语言语音输入替换一个或多个其他类似措辞的语音快捷方式的请求确认。在一些示例中,删除替换的语音快捷方式。
在一些示例中,电子设备在显示第一界面(1034)时,确定是否在阈值时间量内接收到自然语言语音输入。在一些示例中,根据确定在阈值时间量内未接收到自然语言语音输入,电子设备在第一界面上显示第二建议的语音快捷方式短语(1046)(“您可以说‘给我看侧方相机’之类的”)。在一些示例中,在第一界面(1034)上提供的建议语音快捷方式与在第二界面 (1028)上提供的建议语音快捷方式相同。在一些示例中,第一界面和第二界面的建议的语音快捷方式是不同的。
在一些示例中,进一步在显示第一界面时,电子设备在第一界面(1034) 中显示候选短语(1046),其中该候选短语基于自然语言语音输入(1120)。在一些示例中,候选短语是自然语言语音输入的语音到文本转换,并且在电子设备接收自然语言输入时显示。在一些示例中,电子设备响应于自然语言输入显示候选短语,并且/或者实时地将自然语言语音输入转换成文本。因此,在一些示例中,电子设备在电子设备接收到自然语言的同时连续更新候选短语的显示。
在一些示例中,在显示候选短语之后,电子设备经由触敏表面检测第二用户输入(1092)(1122)。在一些示例中,第二用户输入是完成示能表示 (1072)的选择。在一些示例中,第二用户输入是示能表示诸如完成界面 (1054)的确认示能表示的选择。
在一些示例中,响应于检测到第二用户输入,电子设备将候选短语与任务(1124)相关联。在一些示例中,电子设备生成语音快捷方式,使得用户向数字助理叙述候选短语导致任务的执行。
在一些示例中,将候选短语与任务相关联包括将候选短语与第一动作相关联并且将候选短语与第二动作相关联。在一些示例中,语音快捷方式对应于多个任务。在一些示例中,数字助理建议任务的组合,并且用户可以分配短语以发起任务组合的执行。作为示例,语音快捷方式“安全住宅”可对应于用于关闭灯并锁上门的任务。
在一些示例中,电子设备通过音频输入设备接收用户语音输入(例如,自然语言语音输入)。在一些示例中,电子设备确定用户语音输入是否包括候选短语。在一些示例中,根据确定用户语音输入包括候选短语,电子设备执行任务。在一些示例中,根据确定用户语音输入不包括候选短语,电子设备放弃执行任务。
在一些示例中,在将候选短语与任务相关联之后,电子设备显示包括编辑示能表示的第二界面。在一些示例中,电子设备在语音快捷方式生成过程结束时显示第二界面。在一些示例中,用户可以在列出一个或多个存储的语音快捷方式(1008A)的界面(1004A)中导航到语音快捷方式,并且选择语音快捷方式以显示第二界面。在一些示例中,第二用户界面(1054)包括任务的文本表示(1060),任务的指示(1058),候选短语(1064),选择时使得显示候选快捷方式的编辑示能表示(1066),选择时使得设备取消语音快捷方式生成过程的取消示能表示(1056),以及完成示能表示(1054),所述完成示能表示在被选择时,使得电子设备将候选短语与任务相关联或者保持候选短语与任务的关联(如果已经关联)。
在一些示例中,电子设备检测指示编辑示能表示(1068)的选择的第三用户输入。在一些示例中,响应于检测到第三用户输入,电子设备显示多个候选短语示能表示(1082、1084、1086),所述示能表示包括对应于候选短语的第一候选短语示能表示和对应于另一候选短语的第二候选短语示能表示。在一些示例中,另一候选短语基于自然语言语音输入。在一些示例中,响应于编辑示能表示的选择,电子设备显示包括多个候选短语的编辑界面(1070)。在一些示例中,用户可以选择候选短语中的一个以与任务相关联。在一些示例中,所述多个候选短语中的每一个是使用一种或多种 NLP方法基于自然语言语音输入生成的语音到文本候选项。在一些示例中,NL语音输入被提供给另一设备(例如,后端服务器),该服务器将一个或多个候选短语返回到电子设备。在一些示例中,在电子设备和后端服务器两者上生成候选短语,并且电子设备选择一个或多个“最佳”候选短语(例如,与最高相应置信度得分相关联的候选短语)。
在一些示例中,电子设备检测另一组输入(1090、1092),该组输入包括指示第二候选短语示能表示的选择的第四用户输入。在一些示例中,响应于检测到另一组输入,电子设备将另一候选短语与任务相关联。在一些示例中,用户选择新的候选短语以与任务相关联,使得提供新的候选短语导致任务的执行。在一些示例中,关联新候选任务使得电子设备将先前关联的候选短语与该任务解除关联。
在一些示例中,在将候选短语与任务相关联之后,电子设备检测第五输入(1092)。在一些示例中,响应于检测到第五用户输入,电子设备显示另外多个候选任务示能表示,其中所述另外多个候选任务示能表示不包括与该任务相关联的候选任务示能表示。在一些示例中,在创建语音快捷方式之后,电子设备显示设置界面(1004),其列出由数字助理和/或一个或多个应用程序建议的候选任务。在一些示例中,如果先前建议了任务并且用户为该任务创建了快捷方式,则从建议任务列表中移除该任务。
在一些示例中,电子设备将候选短语提供给另一电子设备。在一些示例中,生成的语音快捷方式被提供给后端服务器以用于后续语音输入匹配。在一些示例中,将生成的语音快捷方式和关联的任务提供给后端服务器。在一些示例中,从电子设备向后端服务器提供输入,并且后端服务器确定该输入是否对应于语音快捷方式。如果后端服务器确定输入对应于语音快捷方式,则电子设备执行该任务。在一些示例中,以这种方式向服务器提供快捷方式和任务的每一个还允许使用相同的快捷方式在其他电子设备上随后执行任务。
需注意,上面相对于方法1100(例如,图11A-图11B)所述过程的详情也以类似方式适用于下文所述的方法。例如,方法1100任选地包括参考方法900、1300、1500、1700和1900所述的各种方法的一个或多个特征。例如,如方法1200中所述,提供语音快捷方式可应用于生成语音快捷方式以供按照方法1300所描述的使用。为了简明起见,这些详情在下文中不再重复。
上述方法中的操作任选地通过运行信息处理装置中的一个或多个功能模块来实现,该信息处理装置诸如为通用处理器(例如,如相对于图2A、图4、图6A所述)或特定于应用的芯片。此外,上面参考图10A-图10AJ 描述的操作可选地由图2A-图2B中描绘的组件实施。例如,显示操作 1102、检测操作1104、显示操作1106、接收操作1110、显示操作1120、检测操作1122和关联操作1124可选地由事件分类器270、事件识别器280 和事件处理程序290实施。事件分类器270中的事件监视器271检测触敏表面604上的接触(图6A),并且事件分配器模块274将事件信息递送到应用程序236-1(图2B)。应用程序236-1的相应事件识别器280将事件信息与相应事件定义286进行比较,并且确定触敏表面上第一位置处的第一接触是否与预定义的事件或子事件对应,预定义的事件或子事件诸如为对用户界面上的对象的选择。当检测到相应的预定义的事件或子事件时,事件识别器280激活与对该事件或子事件的检测相关联的事件处理程序290。事件处理程序290任选地利用或调用数据更新器276或对象更新器277来更新应用程序内部状态292。在一些实施例中,事件处理程序290访问相应GUI更新器278来更新应用程序所显示的内容。类似地,本领域的技术人员会清楚地知道可如何基于图2A-图2B中描绘的部件来实现其他过程。
图12是根据各种示例的任务建议系统1200的框图。图12还用于示出下面描述的一个或多个过程,包括图13的方法1300。
图12示出了任务建议系统1200,其可以例如在本文描述的电子设备包括但不限于设备104、200、400和600(图1、图2A、图4和6A-图 6B)上实施。应当理解,虽然本文将任务建议系统1200描述为在移动设备上实施,但是任务建议系统1200可以在任何类型的设备诸如电话、膝上型计算机、台式计算机、平板电脑、可穿戴设备(例如,智能手表)、机顶盒、电视、家用自动化设备(例如,恒温器)或其任何组合或子组合上实施。
通常,任务建议系统1200基于电子设备的上下文数据提供任务建议。由任务建议系统1200提供的任务建议继而可以用于提供建议示能表示,诸如关于图8A-图8AF描述的那些。在一些示例中,任务建议系统1200被实施为概率模型。该模型可以包括一个或多个阶段,包括但不限于第一阶段 1210、第二阶段1220和第三阶段1230,其中的每个阶段在下面进一步详细描述。在一些示例中,第一阶段1210、第二阶段1220和第三阶段1230中的一个或多个可以组合成单个阶段并且/或者分成多个阶段。作为示例,在另选具体实施中,任务建议系统1200可包括第一阶段和第二阶段,其中第一阶段实施第一阶段1210和第二阶段1220两者的功能。
在一些示例中,电子设备的上下文数据指示电子设备的状态或上下文。作为示例,上下文数据可以指示在执行特定任务的时间期间电子设备的各种特性。例如,对于由电子设备执行的每个任务,上下文数据可以指示电子设备的位置、电子设备是否连接到网络(例如,WiFi网络)、电子设备是否连接到一个或多个其他设备(例如,耳机),以及/或者执行任务的时间、日期和/或工作日。如果在执行任务期间电子设备连接到网络或设备,则上下文数据可以进一步分别指示网络或设备的名称和/或类型。上下文数据还可以指示先前是否向用户呈现了与任务相关联的建议示能表示以及用户对建议示能表示的响应方式。例如,上下文数据可以指示用户是否忽略了任务建议或使用任务建议来执行对应的任务。
在一些示例中,电子设备在电子设备的操作期间从应用程序接收上下文数据。在一些示例中,应用程序在执行任务时或在执行任务之后为任务提供上下文数据。以这种方式提供的上下文数据可以指示任务,并且可选地,指示与任务相关联的一个或多个参数。在一些示例中,应用程序提供的上下文数据还包括指示在执行任务时电子设备的状态的数据,如上所述 (例如,电子设备的位置,电子设备是否连接到网络等)。在其他示例中,由应用程序提供的上下文数据不包括指示在执行任务时电子设备的状态的数据,并且响应于从应用程序接收上下文数据,电子设备获得指示电子设备状态的数据。
在一些示例中,上下文数据由应用程序使用多个上下文数据捐赠机制中的任何一个提供。在至少一个示例中,响应于API调用从应用程序接收上下文数据,该API调用使应用程序返回关于应用程序的执行的信息。作为示例,文字处理应用程序(例如,记事本、Word)可以返回用户访问的文字处理文档的标识符(例如,数字ID、名称)。作为另一示例,媒体回放应用程序(例如,音乐,Spotify)可以返回当前媒体项目(例如,歌曲)、专辑、播放列表、集合以及媒体回放应用程序建议给用户的一个或多个媒体项目的标识符。
在一些示例中,响应于API调用从应用程序接收上下文数据,该API 调用使得应用程序提供指示(例如,识别)由应用程序执行的任务的数据结构。例如,数据结构可以包括与任务相关联的一个或多个参数的值。在一些示例中,数据结构被实施为意图对象数据结构。在2016年9月18日提交的美国专利申请15/269,728“APPLICATION INTEGRATION WITH ADIGITAL ASSISTANT”中可以找到关于意图对象数据结构的操作的另外的示例性描述,该申请通过引用方式整体并入本文。
在一些示例中,响应于API调用从应用程序接收上下文数据,该API 调用使得应用程序提供指示由应用程序执行的任务的应用程序特定的(例如,第三方应用程序)数据结构。例如,应用程序特定的数据结构可以包括与任务相关联的一个或多个参数的值。应用程序特定的数据结构可以可选地进一步指示在提供任务建议时可以指定任务的哪些参数值以及参数值的哪些组合。因此,虽然具有M个参数的任务可以具有多达2M-1个允许的参数组合,但是应用程序特定的数据结构可以明确地减少允许的组合的数量。在一些示例中,应用程序特定的数据结构指示任务是后台任务还是需要确认的任务,如先前关于图8A-图8AF所描述的。
在一些示例中,每当在电子设备上执行任务时,由应用程序提供上下文数据。例如,可以在执行任务时或在执行任务之后提供上下文数据。例如,在一些示例中,电子设备检测到应用程序已经关闭,并且作为响应,采用一个或多个上下文数据捐赠机制从应用程序请求上下文数据。
在一些示例中,基于任务类型选择性地提供上下文数据。作为示例,可以响应于用户发送文本消息或发出呼叫而提供上下文数据,而不是响应于用户使用浏览器导航到网页或解锁电子设备而提供。在一些示例中,基于电子设备的上下文选择性地提供上下文数据。例如,如果电子设备的电池的充电水平低于阈值充电水平,则可以不提供上下文数据。
在一些示例中,每种类型的上下文数据(例如,电子设备的位置、电子设备是否连接到网络等)与相应的上下文权重相关联。例如,可以使用上下文权重影响使用上下文数据确定概率的方式。作为示例,被确定为用户行为的更强预测器的上下文类型可以与相对较大的权重相关联,并且/或者被确定为用户行为的较弱预测器的上下文类型可以与相对较小的权重相关联。作为示例,当电子设备处于特定位置时由用户执行的任务可以是比用户在特定工作日执行的任务更佳的用户行为指示项。因此,位置上下文数据可以与相对较大的权重相关联,并且工作日上下文数据可以与相对较小的权重相关联。作为另一示例,用户是否针对任务选择了建议示能表示可以与相对较大的权重相关联,因为这样的上下文数据可以强烈地指示用户是否可能为该任务选择后续的建议示能表示。
在一些示例中,上下文权重由电子设备确定。在其他示例中,权重由另一设备使用聚合数据确定。例如,在一些示例中,匿名上下文数据可以由电子设备和/或一个或多个其他设备提供给数据聚合服务器。继而,数据聚合服务器可以确定哪种类型的上下文数据是更具有判别性,并且/或者是更强的用户行为预测器。在一些示例中,数据聚合服务器采用一种或多种机器学习技术确定哪种类型的上下文数据是相对具有判别性的,并且/或者是更强的用户行为预测器。基于该确定,数据聚合服务器可以确定每种类型的上下文数据的权重,并且将权重提供给电子设备。在一些示例中,用户可以选择放弃(例如,退出)向另一设备提供匿名数据以确定上下文权重。
通过确保数据聚合服务器使用的上下文数据是匿名的,可以保护电子设备的用户的隐私。匿名上下文数据可以包括移除用户的名称、由电子设备记录的特定位置、WiFi网络的名称,以及任何其他用户特定信息。例如,匿名上下文数据可以指定用户在相同位置时20%的时间是执行某项任务,但是不指定哪个任务或位置。
在示例操作中,第一阶段1210基于电子设备的上下文数据执行任务特定的建模。在一些示例中,执行任务特定的建模包括确定多个任务(例如,先前由电子设备执行的一个或多个任务和/或可由电子设备执行的一个或多个任务)中的每一者的一个或多个概率(例如,任务概率)。以这种方式确定的每个任务概率指示用户将在给定电子设备的上下文的情况下执行任务的可能性。
在一些示例中,以这种方式确定任务概率包括基于上下文数据生成和/ 或更新一个或多个直方图。例如,第一阶段1210可以为每个任务生成相应的一组直方图,指示用户在给定电子设备的各种上下文的情况下执行任务的概率。在一些示例中,与任务相关联的每个直方图对应于单个类型的上下文。作为示例,与用于启用恒温器的任务相关联的第一直方图可以是位置上下文直方图。针对用户先前在其中启用恒温器的多个位置中的每一个,位置上下文直方图可以指示用户在该位置处启用恒温器的概率。与用于启用恒温器的任务相关联的第二直方图可以是WiFi上下文直方图。针对电子设备先前连接到的多个WiFi网络中的每一个,WiFi上下文直方图可以指示当电子设备连接到WiFi网络时用户启用恒温器的概率。应当理解,电子设备的上下文数据可以包括任何数量的上下文类型。因此,任务可以与任何数量的直方图相关联。
在一些示例中,为了确定给定特定上下文情况下的任务的任务概率,第一阶段1210可以在给定上下文的情况下确定每个上下文类型的相应概率 (例如,如与任务相关联的每个直方图所指示的)并且基于上下文类型的概率确定任务概率。
在一些示例中,确定任务概率还可包括使用上下文权重调整上下文数据。如所描述的,每个上下文类型可以与权重相关联。因此,在基于上下文概率确定任务概率之前,可以通过对应的上下文权重调整(例如,乘以)每个上下文概率。
在一些示例中,由第一阶段1210提供的任务概率是独立于参数的。也就是说,可以针对每个任务确定任务概率(例如,生成的直方图),而无需考虑用于执行任务的特定参数值。作为示例,第一阶段1210可以确定用户在给定特定上下文情况下(例如,在特定时间)发送文本消息的概率,但是可以放弃确定指向文本消息的接收人或文本消息内容的概率(例如,文本、图像)。作为另一示例,第一阶段1210可以确定用户在到达家中时将启用恒温器的概率,但是放弃确定指向恒温器的温度阈值的任何概率。
在一些示例中,第一阶段1210响应于任务的执行更新上下文数据。在一些示例中,以这种方式更新上下文数据包括更新所执行任务的一个或多个直方图。
通常,第二阶段1220基于电子设备的上下文数据执行参数特定的建模。在一些示例中,执行参数特定的建模包括确定一组参数的概率(例如,参数概率),所述概率指示用户在给定任务(例如,先前由电子设备执行的任务)的情况下针对该组参数的每个参数选择特定值的可能性。参数概率可以指示用户针对单个参数选择特定值(并且没有其他值)的可能性,并且/或者可以指示用户针对多个参数(例如,组合)选择特定值的可能性。
例如,在操作期间,第二阶段1220基于上下文数据提供一组任务。在一些示例中,为了提供该组任务,第二阶段1220识别多个任务并根据它们相应的任务概率对任务进行排序。在一些示例中,第二阶段1220识别先前由电子设备执行的一个或多个任务。在一些示例中,第二阶段1220可以省略以一定频率发生的任务类型,所述频率超过频率阈值。
此后,第二阶段1220确定识别的任务中的哪些与N(例如,N=10) 个最高相应任务概率相关联(由第一阶段1210确定),并且将与该N个最高排序任务概率相关联的N个任务提供为任务集。在一些示例中,确定识别的任务中的哪个与N个最高任务概率相关联包括确定在给定电子设备的任何上下文情况下哪些任务与N个最高任务概率相关联。在其他示例中,确定识别的任务中的哪个与N个最高任务概率相关联包括确定在电子设备的当前上下文情况下哪些任务与N个最高任务概率相关联。
在一些示例中,一旦第二阶段1220识别出一组任务,第二阶段1220 基于上下文数据确定该组任务中的每个任务的参数概率。在一些示例中,第二阶段1220使用电子设备的上下文数据的子集确定参数概率。作为示例,第二阶段1220可以使用在阈值时间量(例如,在前30天)内接收的上下文数据确定参数概率。作为另一示例,第二阶段1220可以使用与在其中执行该组任务中的每个任务的最近N个(例如,N=100)实例对应的上下文数据确定给定任务的参数概率。例如,在其中第二阶段1220针对指向发送文本消息的任务确定参数概率的示例中,第二阶段1220使用与电子设备发送消息的最后N个实例相对应的上下文数据确定任务的参数概率。
在一些示例中,确定参数概率包括基于上下文例如实时生成和/或更新一个或多个直方图。例如,第二阶段1220可以为每个任务生成相应的一组直方图,指示用户在给定任务情况下针对该参数选择特定参数值的概率。在一些示例中,与任务相关联的每个直方图对应于单个参数。因此,每个直方图可以表示用于执行任务的参数的值随时间的分布。
在一些示例中,第二阶段1220基于电子设备的当前上下文确定参数概率。例如,这可以降低提供参数概率所需的计算复杂性。作为示例,在操作期间,第二阶段1220可以确定电子设备处于特定位置。因此,在确定参数概率时,第二阶段1220可以确定当设备在确定位置时先前所使用参数值的概率。
在示例操作中,第二阶段1220可以基于上下文数据确定可用于发送文本消息的一个或多个参数值的概率。例如,第二阶段1220可以基于上下文数据(例如,电子设备的先前使用)确定文本消息的接收人是第一联系人的概率为20%,并且文本消息的接收人是第二联系人的概率为30%。第二阶段1220还可确定文本消息包括第一有效载荷(例如,字符串、图像)的概率为40%,并且文本消息包括第二有效载荷的概率为55%。在一些示例中,第二阶段1220可以进一步确定参数值的一个或多个组合的概率。第二阶段1220可以确定文本消息的接收人是第一联系人并且文本消息包括第一有效载荷的可能性为20%。第二阶段1220可以进一步确定文本消息的接收人是第一联系人并且文本消息包括第二有效载荷的可能性为15%。应当理解,该示例不旨在是限制性的,并且第二阶段1220可以确定任何数量和/或组合的参数值的概率。
在一些示例中,第二阶段1220周期性地(例如,每7.5分钟)并且/或者响应于事件(例如,电子设备的上下文的改变)确定参数概率。作为示例,可以响应于电子设备的位置或环境的改变(例如,电子设备从房屋移动到汽车)、电子设备的电池的充电水平的改变、电子设备的配置的改变 (例如,应用程序的安装或删除),以及/或者电子设备的连接的改变(例如,连接或断开与网络的连接)确定可能性。
在一些示例中,一旦第一阶段1210和第二阶段1220分别确定了任务概率和参数概率,第三阶段1230可选地调整一个或多个概率。在一些示例中,第三阶段1230调整任务概率。例如,可以基于与任务概率相关联的任务的类型调整任务概率。除此之外或另选地,在一些示例中,第三阶段 1230调整(例如,增加、减小)参数概率。作为示例,可以增加与相对较高数量的参数(例如,3个或更多个)相关联的参数概率,并且/或者可以减小具有相对较少数量的参数(例如,2个或更少)的任务的参数概率。作为另一示例,可以增加第一类型的参数的参数概率,并且/或者可以减小不具有指定的一个或多个特定类型的参数的第二类型参数的参数概率。具体地讲,可以增加相对具有判别性的参数类型诸如字符串的参数概率,并且/ 或者可以减小相对非判别性参数类型诸如布尔值的参数概率。作为又一示例,可以增加由上下文数据指示的具有相对较高的熵(例如,值的变化) 的参数的参数概率,并且/或者可以减小由上下文数据指示的具有相对较低的熵的参数的参数概率。
一旦调整了概率,第三阶段1220确定每个任务的任务概率和参数概率。在一些示例中,第三阶段1220识别每个任务的最高参数概率。在其他示例中,第三阶段1220识别任务的若干参数概率。在一些示例中,出于提供任务建议的目的,如下所述,具有多个参数概率的任务可被视为针对每个参数概率的单独任务(例如,具有第一组参数值的任务被视为不同于具有第二组参数值的任务)。如所描述的,每个参数概率可以对应于单个参数值并且/或者可以对应于多个参数值。
在一些示例中,在已经(可选地)调整概率之后,第三阶段1230基于任务概率和与任务相关联的参数概率针对每个任务确定任务是否满足建议标准。
在一些示例中,确定任务是否满足建议标准包括基于任务概率和任务的参数概率提供任务的联合概率,并且确定联合概率是否超过概率阈值。在一些示例中,通过将任务概率与参数概率相乘提供联合概率。在一些示例中,如果第三阶段1230确定联合概率超过概率阈值,则第三阶段1230 确定与联合概率相关联的任务满足建议标准。
在一些示例中,一旦第三阶段1230确定(例如,识别)满足建议标准的任务,第三阶段1230即将与该任务相关联的任务(以及对应的参数值) 提供为任务建议。在一些示例中,第三阶段1230将满足建议标准的所有任务提供为任务建议。在其他示例中,第三阶段1230提供满足建议标准的任务的子集作为任务建议。例如,第三阶段1230可提供与相应最高联合概率相关联的任务作为任务建议。
继而,电子设备针对每个任务建议确定是否显示与任务建议相对应的建议示能表示。在一些示例中,这包括确定任务建议是否满足第一建议标准和/或第二建议标准。在一些示例中,确定任务建议是否满足第一建议标准和/或第二建议标准包括确定与任务建议相关联的联合概率是否分别满足第一显示阈值和第二显示阈值。
例如,如果任务建议的联合概率满足第一显示阈值,则在第一用户界面(例如,图8N的搜索屏幕界面866)中显示对应于任务建议的建议示能表示。如果对应于任务建议的联合概率满足第二显示阈值,则附加地或另选地在第二用户界面(例如,图8B的锁定屏幕界面810)中显示对应于任务建议的建议示能表示。在一些示例中,第一显示阈值与概率阈值相同。在一些示例中,第二显示阈值大于第一显示阈值。
如果用户随后选择建议示能表示,则电子设备响应于建议示能表示的选择选择性地执行任务,如参考图8A-图8AF所描述的。如果任务是后台任务(例如,不需要用户确认的任务),则电子设备执行任务,如所描述的。如果任务不是后台任务(例如,在任务执行之前要求用户确认和/或附加用户输入的任务),则电子设备显示请求确认和/或来自用户的附加输入的界面。在一些示例中,用户可以通过选择确认界面的确认示能表示确认任务的执行。
在一些示例中,可以响应于电子设备的上下文的改变(例如,电子设备的位置的改变,用户将设备连接到耳机或者从耳机断开设备的连接)修改建议示能表示的显示。作为示例,响应于上下文的改变,电子设备可以停止显示一个或多个显示的建议示能表示,而是显示一个或多个新建议示能表示,并且/或者以新顺序显示建议示能表示。以这种方式修改建议示能表示的显示可包括使用电子设备的当前上下文(例如,响应于检测到电子设备的上下文的改变)确定一组新的建议,并且显示那些满足建议标准和/ 或显示标准的任务建议的一个或多个建议示能表示,如所描述的(回想在一些示例中,仅使用最高得分的任务建议显示建议示能表示)。修改建议示能表示的显示还可包括根据上下文停止显示不满足建议标准和/或显示标准的任务建议的建议示能表示。在一些示例中,以对应于电子设备的上下文的顺序,以及/或者对应于与建议示能表示相关联的相应联合概率排序的顺序显示建议示能表示。因此,电子设备的上下文的改变可以使电子设备改变显示建议示能表示的顺序。
在一些示例中,确定任务是否满足建议标准还包括确定是否已经满足启发式标准。例如,第三阶段1230(或任务建议系统1200的任何其他阶段)可确定是否已经满足一组或多组预先确定的条件。如果是,第三阶段 1230为对应于已经满足的每组预先确定条件的任务提供任务建议(例如,启发式任务建议)。作为示例,电子设备可基于用户的位置和用户的日历确定用户将要迟到会议(例如,用户将不能准时到达)。因此,电子设备可以为用户提供启发式任务建议,以向会议组织者发送文本消息告知用户将要迟到。电子设备可以依次显示与启发式任务建议相对应的建议示能表示。
在一些示例中,以这种方式提供的任务建议具有100%的联合概率,使得任务建议总是满足用于显示的阈值。在一些示例中,如果用户未能选择先前由电子设备显示的相同类型的任务建议,则以这种方式提供的任务建议可具有小于100%的联合概率。因此,以这种方式提供的任务建议的联合概率可根据用户行为增加或减少(例如,衰减)。
在一些示例中,启发式任务建议的建议示能表示结合任务建议的示能表示显示。在其他示例中,启发式任务建议的建议示能表示不与任务建议的建议示能表示一起显示。例如,在一些示例中,启发式任务建议的建议示能表示的显示覆盖(例如,排除)任务建议的建议示能表示的显示。
在一些示例中,在给定时间可以仅满足单组预先确定的条件,使得在任何给定时间仅提供单个启发式任务建议。因为,在一些示例中,基于除了上下文数据之外的一组条件(例如,一组硬编码规则)提供启发式任务建议,启发式任务建议可允许电子设备针对任务提供电子设备先前未提供的建议。
下表列出了可用于提供启发式任务建议的各组示例性预先确定的条件。应当理解,这些组不是限制性的。另外,该表列出了使电子设备停止显示对应于启发式任务建议的建议示能表示的条件。在一些示例中,电子设备响应于满足所有条件而停止显示建议示能表示。在一些示例中,电子设备响应于满足任何数量的条件停止显示建议示能表示。
图13示出了根据各种示例的用于提供建议的方法1300。例如,使用实施任务建议系统诸如图12的任务建议系统1200的一个或多个电子设备执行方法1300。在一些示例中,使用客户端-服务器系统(例如,系统 100)来执行方法1300,并且在服务器(例如,DA服务器106)和客户端设备之间以任何方式来划分方法1300的框。在其他示例中,在服务器和多个客户端设备(例如,移动电话和智能手表)之间划分方法1300的框。因此,虽然方法1300的部分在本文中被描述为由客户端-服务器系统的特定设备执行,但应当理解,方法1300不限于此。在其他示例中,利用仅客户端设备(例如,用户设备104)或仅多个客户端设备来执行方法1300。在方法 1300中,一些框被任选地组合,一些框的次序被任选地改变,并且一些框被任选地省略。在一些示例中,可结合方法1300来执行附加步骤。
如本文所述,选择性地提供与任务相关联的建议示能表示允许用户有效且方便地在电子设备上执行与用户相关的任务。作为示例,由电子设备显示的建议示能表示可对应于基于电子设备的上下文数据(诸如指示用户先前使用电子设备的上下文数据)识别的任务。因此,以这种方式选择性地提供建议减少了用户操作电子设备所需的输入数量和时间量(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又降低了电力使用并延长了设备的电池寿命。
在一些示例中,电子设备包括键盘、鼠标、麦克风、显示器和触敏表面中的一者或多者。在一些示例中,显示器是触敏显示器。在其他示例中,显示器不是触敏显示器。
在框1305处,电子设备(例如,设备104、200、400、600或实施任务建议系统1200的另一设备)接收与电子设备相关联的上下文数据。在一些示例中,接收上下文数据包括在执行任务时确定电子设备的上下文(例如,确定设备的位置,设备是否连接到WiFi网络等)。在一些示例中,上下文数据指示给定一个或多个条件下的电子设备的状态。在一些示例中,上下文数据指示当执行多个任务中的每个任务时电子设备的各种上下文方面。在一些示例中,上下文数据指示电子设备的位置,设备是否连接到网络(例如,WiFi网络),并且如果是,指示网络的名称(例如,SSID),执行任务的时间和/或日期,以及耳机是否已连接。在一些示例中,确定电子设备的上下文包括确定电子设备的位置,确定电子设备是否连接到网络,确定一天中的时间或其任何组合。在一些示例中,如果任务先前已经作为建议任务呈现给用户(例如,使用建议示能表示),则上下文数据指示用户对建议做出响应的方式(例如,用户是否与建议进行交互、删除建议、忽略建议等)。
在一些示例中,根据相应的权重(例如,使用点乘法)为每种类型的上下文数据分配得分。在一些示例中,以这种方式利用的权重的相应量值由服务器使用匿名聚合数据确定,使得数据以隐私保护方式被利用。
在一些示例中,在使用电子设备期间例如使用多个数据捐赠机制从应用程序获得上下文数据。在一些示例中,使用API调用从应用程序获得上下文数据,该API调用使应用程序指示用户在API调用时正在执行的操作 (例如,如果用户在“记事本”应用程序中,则调用返回记事本的ID和/或记事本的名称)。在一些示例中,接收上下文数据包括接收对应于任务的数据结构(例如,标准化的意图对象,第三方应用程序意图对象)以及与该任务相关联的一个或多个参数。在一些示例中,使用API调用从应用程序获得上下文数据,该API调用使应用程序捐赠指示由应用程序执行的任务的标准化数据结构。在一些示例中,该数据结构是意图对象。在一些示例中,使用指示由应用程序执行的任务的应用程序特定(例如,第三方应用程序)数据结构从应用程序获得上下文数据。在一些示例中,第三方数据结构还指示任务的哪些参数可以一起预测以及/或者任务是否是后台任务 (例如,执行任务之前无需附加输入的任务)。在一些示例中,应用程序在每次用户执行任务时捐赠上下文数据。在一些示例中,应用程序例如基于电子设备的上下文选择性地捐赠上下文数据(例如,如果设备的电池电量水平低于阈值,应用程序可以放弃提供上下文数据)。
在框1310处,电子设备基于上下文数据确定任务的任务概率。在一些示例中,使用上下文数据,电子设备采用多阶段模型提供建议。在一些示例中,在模型的第一阶段(1210),电子设备确定多个任务中每个任务的概率,该概率指示用户在给定特定上下文的情况下执行任务的可能性。在一些示例中,确定任务的任务概率包括基于上下文数据并针对多种类型的上下文中的每一种生成对应于任务的直方图。在一些示例中,识别任务概率包括使用在电子设备的使用期间由应用程序提供的数据提供(例如,生成)一个或多个直方图。在一些示例中,以这种方式提供的直方图指示用户行为的模式。作为示例,每个直方图可指示用户在给定特定上下文情况下采取特定动作的概率(例如,当连接到特定WiFi网络时,用户选择特定音乐应用的概率是80%))。在一些示例中,任务概率是独立于参数的。也就是说,在一些示例中,电子设备使用与任务相关联的上下文数据确定任务概率,而不管用于执行任务的参数如何。在一些示例中,以这种方式确定的任务概率是参数特定的。
在框1315处,电子设备基于上下文数据确定参数的参数概率,其中参数与任务相关联。在一些示例中,在模型的第二阶段(1220),电子设备确定多个任务的每一者的概率(例如,条件概率),其指示用户使用每个任务的特定参数的可能性。在一些示例中,基于上下文数据确定参数的参数概率包括确定电子设备的当前上下文,并且基于电子设备的当前上下文确定参数概率(例如,确定电子设备的上下文并根据电子设备的上下文确定参数概率(例如,确定电子设备的位置并确定关于确定位置的参数概率))。在一些示例中,电子设备保持每个任务类型的最近N个(例如, 100)任务的列表。例如,电子设备可跟踪哪些参数先前用于执行紧接先前的N个任务中的每一个。在一些示例中,电子设备仅跟踪特定类型的任务 (例如,不跟踪易于访问的功能,以便确保由电子设备最终提供的建议具有相对较高的判别性和/或加速性)。在一些示例中,电子设备识别在第一阶段(1210)评估的多个任务的子集,并且仅确定任务子集中的任务的概率。在一些示例中,由电子设备识别的子集包括与在第一阶段确定的最高概率相关联的任务。在一些示例中,电子设备仅使用当前相关的上下文数据计算条件概率(即针对当前由电子设备的上下文满足的上下文信号(例如,设备的当前位置而非其他位置))。这样,减少了实施模型第二阶段所需的计算需求—仅考虑来自第一阶段的高得分任务,并且仅针对当前应用的上下文信号。因此,设备的使用可以更有效,从而减少提供任务建议所需的时间和功率。在一些示例中,电子设备周期性地以这种方式确定概率。在一些示例中,电子设备响应于特定事件(例如,删除电子设备上的应用程序)以这种方式确定概率。
基于电子设备的上下文确定概率(例如,任务概率、参数概率)确保了基于用户先前对电子设备的使用情况提供由电子设备提供的任务建议,如本文所述。这继而确保了向用户提供对应于电子设备的典型使用的突出任务建议,并且因此向用户提供具有相对较高可能性加速用户行为的建议。因此,以这种方式提供建议减少了用户操作电子设备所需的输入数量和时间量(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又降低了电力使用并延长了设备的电池寿命。
在框1320处,电子设备基于任务概率和参数概率确定任务是否满足建议标准。在一些示例中,在模型的第三阶段(1230),电子设备在给定上下文数据和电子设备的当前上下文情况下确定是否有任何识别的任务满足概率阈值,使得电子设备应提供任务的一个或多个作为建议。在一些示例中,如果多于一个任务满足阈值,则电子设备仅选择最高得分任务。在一些示例中,使用第一阶段和第二阶段的概率的每一者对任务进行评分。在一些示例中,以这种方式确定概率包括乘以概率。作为示例,电子设备可以将任务的概率(即使用模型的第一阶段确定的)与给定相应参数或参数组合的任务的每个概率(即使用模型的第二阶段确定的)相乘。在一些示例中,实施附加的评分调整以调整概率。此类调整基于参数数量(例如,更多数量的参数导致更高的得分)、参数类型(例如,更具判别性的参数诸如字符串而非布尔值导致更高的得分),以及由上下文数据指示的事件历史过程中的参数熵(例如,更高的熵(即更高的变化)导致更高的得分)。在一些示例中,不同的阈值用于在电子设备的不同界面上显示。如果满足第一阈值,电子设备可在搜索用户界面(866)上显示建议;并且如果满足第二阈值,电子设备可附加地或另选地在锁定屏幕界面上显示建议 (810)。
在框1325处,根据确定任务满足建议标准,电子设备在电子设备的显示器上显示与任务和参数对应的建议示能表示。在一些示例中,如果满足概率阈值,则电子设备在显示器上显示一个或多个建议示能表示。在一些示例中,建议示能表示可以在多个界面中显示-锁定屏幕UI(810)、搜索屏幕UI(866)和/或数字助理UI(1604)。在一些示例中,显示对应于任务和参数的建议示能表示包括:根据确定任务满足第一组建议标准(例如,第一概率阈值),在第一用户界面上显示建议示能表示(810);并且根据确定任务满足第二组建议标准(例如,第二概率阈值),在不同于第一用户界面的第二用户界面上显示建议示能表示(866、1604)。
在框1330处,根据确定任务不满足建议标准,电子设备放弃显示建议示能表示。
在一些示例中,任务概率是第一任务概率,任务是第一任务,参数概率是第一参数概率,并且参数是第一参数。在一些示例中,电子设备基于上下文数据确定第二任务的第二任务概率;基于上下文数据确定第二参数的参数概率,其中第二参数与第二任务相关联;并且基于第二任务概率和第二参数概率确定第二任务是否满足建议标准。
在一些示例中,选择示能表示是第一选择示能表示,并且确定任务是否满足建议标准包括确定是否已经满足启发式标准。在一些示例中,根据确定已经满足启发式标准,电子设备显示对应于另一个任务的第二选择示能表示。在一些示例中,可以根据一个或多个启发法覆盖建议。在一些示例中,每个启发法是一条规则(例如,脚本和/或硬编码规则),其指示一组条件,当满足时,使得电子设备指定对应于条件的建议。在一些示例中,每个启发式建议被认为具有最大概率(例如,100%),使得启发法被自动视为最佳结果,而不管电子设备评估的任何其他建议。在一些示例中,如果向用户呈现启发法的建议并且用户拒绝执行与该建议相关联的任务,则启发法的概率衰减。在一些示例中,启发法被配置为使得不能同时满足两组条件。在一些示例中,启发法是未由电子设备执行的任务的建议,并且/或者依赖于电子设备的上下文(例如,文本会议的组织者,基于交通状况用户将迟到)。
在一些示例中,在显示建议示能表示之后,电子设备检测对应于建议示能表示的选择的第一用户输入,并且响应于检测到第一用户输入,选择性地执行任务。在一些示例中,使用触摸输入(816)、手势或其组合选择建议示能表示(806)。在一些示例中,使用语音输入选择建议示能表示。在一些示例中,响应于建议示能表示的选择,电子设备自动执行任务,电子设备启动与任务相关联的应用程序,并且/或者电子设备显示用户界面,用户可以通过该用户界面确认任务。在一些示例中,选择性地执行任务包括:根据确定任务是第一类型的任务,执行任务;并且根据确定任务是第二类型的任务,显示包括确认示能表示(824)的确认界面(820)。
以上参考图13描述的操作任选地由图1-图4、图6A-图6B和图7A-图 7C描绘的部件来实现。例如,方法1900的操作可由本文所述的任何设备或其部件实现,包括但不限于设备104、200、400、600和1200。本领域的普通技术人员会清楚地知道如何基于在图1-图4、图6A-图6B和图7A-图 7C中所描绘的部件来实现其他过程。
图14示出了根据各种示例的用于执行任务的序列1400。图14还用于示出下面描述的一个或多个过程,包括图15的方法1500。在一些示例中,可选地组合序列1400的一个或多个操作,可选地改变操作的顺序,并且/或者可选地省略一些操作。在一些示例中,附加步骤可与序列1400结合执行。此外,除非另有说明,否则“序列”的使用并不旨在要求特定的相互作用顺序。
如本文所述,可以使用电子设备1404和服务器1406执行序列1400的操作。电子设备1404可以是设备104、200、400和600(图1、图2A、图 4和图6A-图6B)中的任何一个,并且服务器1406可以是DA服务器106 (图1)。应当理解,在一些示例中,可以使用一个或多个替代或附加设备执行序列1400的操作。作为示例,可以使用多个电子设备执行被描述为由电子设备1404执行的序列1400的一个或多个操作。
通常,可以例如响应于自然语言语音输入实施过程1400的操作以执行任务。如下面进一步详细描述的,可以将自然语言语音输入提供给电子设备,并且具体地,提供给电子设备的数字助理。作为响应,确定自然语言语音输入是否包括预先确定的短语(例如,语音快捷方式)。该确定可以由电子设备和/或另一设备进行。如果确定自然语言语音输入包括预先确定的短语,电子设备执行与预先确定的短语相关联的任务。如果不包括,则使用自然语言处理来处理自然语言语音输入以确定与自然语言语音输入相关联的任务,并且电子设备执行使用自然语言处理确定的任务。
在操作1410处,电子设备1404接收(例如,经由麦克风)自然语言语音输入。在一些示例中,电子设备1404接收指示指向电子设备1404的数字助理的请求的自然语言语音输入。例如,自然语言语音输入可以包括语音触发,其可以例如激活数字助理。在一些示例中,自然语言语音输入可以包括可以指向数字助理的任何请求。作为示例,自然语言输入“提供到星巴克的路线”可以请求电子设备1404的数字助理提供从电子设备的位置到最近的星巴克位置的驾驶路线。
在一些示例中,从另一设备诸如通信地耦接到电子设备的设备(例如,智能手表)接收自然语言语音输入。在一些示例中,通过电子设备和另一设备之间的自组织连接提供自然语言语音输入。在其他示例中,通过多跳网络诸如互联网提供自然语言语音输入。
在一些示例中,自然语言语音输入包括预先确定的短语(例如,语音快捷方式),诸如参考图10A-图10AF描述的那些。如所描述的,预先确定的短语可以与一个或多个任务相关联,当被提供给电子设备的数字助理时,使得电子设备执行与该短语相关联的一个或多个任务。
在操作1415,电子设备1404将自然语言语音输入提供给服务器 1406。在一些示例中,向服务器1406提供自然语言语音输入包括向服务器 1406提供自然语言语音输入的表示(例如,文本表示、空间表示、音频表示)。例如,可以使用语音到文本处理模块诸如在一些示例中的STT处理模块730提供文本表示。
在操作1420,服务器1406接收从电子设备1404输入的自然语言语音,并且确定自然语言语音输入是否满足语音快捷方式标准。在一些示例中,确定自然语言语音输入是否满足语音快捷方式标准包括:确定自然语言语音输入或自然语言语音输入的文本表示是否匹配与电子设备用户相关联的一个或多个预先确定的短语(例如,语音快捷方式)中的任何一个。在一些示例中,确定自然语言语音输入是否匹配预先确定的短语包括确定自然语言语音输入是否与一个或多个预先确定的短语完全匹配。在其他示例中,确定自然语言语音输入是否与预先确定的短语匹配包括确定自然语言语音输入与每个预先确定的短语之间的相似度是否超过相似度阈值。
如果服务器1406确定自然语言语音输入满足语音快捷方式标准(例如,服务器1406确定自然语言语音输入与预先确定的短语匹配),服务器 1406识别与匹配的预先确定的短语相关联的任务。在一些示例中,以这种方式识别任务包括确定任务的一个或多个参数的值。作为示例,对于对应于订购咖啡任务的短语“咖啡时间”,服务器1406可以确定咖啡的大小、咖啡的类型和/或交易的支付方式。参数值可以由用户指定(例如,在将短语与任务相关联时),基于电子设备的上下文(例如,电子设备的位置) 确定,并且/或者分配默认参数值。
如果服务器1406确定自然语言语音输入不满足语音快捷方式标准,服务器1406可选地使用自然语言处理模块诸如自然语言处理模块732处理自然语言语音输入(或其文本表示)。在一些示例中,电子设备1404提供自然语言语音输入的音频表示,并且使用自然语言语音处理来处理自然语言语音输入以确定任务包括例如使用STT处理模块730提供自然语言语音输入的一个或多个候选文本表示(例如,文本串)。每个候选文本表示可与语音识别置信度得分相关联,并且可对候选文本表示进行排序。在其他示例中,电子设备1404提供自然语言语音输入的文本表示,并且该文本表示被提供为候选文本表示,其中n=1。以这种方式提供作为候选文本表示的文本表示可被分配以最大的语音识别置信度得分,或任何其他语音识别置信度得分。
确定任务可进一步包括基于n最佳(例如,最高排序)候选文本表示,例如使用自然语言处理模块732提供一个或多个候选意图。候选意图中的每一个可与意图置信度得分相关联,并且候选意图可进行相应地排名。在一些示例中,针对每个候选文本表示识别多个候选意图。另外,在一些示例中,针对每个识别的候选意图生成结构化查询(部分地或全部地)。之后,基于m最佳(例如,最高排名)候选意图,例如使用任务流处理模块736来确定候选任务。在一些示例中,基于针对m个最佳(例如,最高排序)候选意图的每一者的结构化查询来识别候选任务。例如,如上所述,可以根据一项或多项任务流,诸如任务流754来实现结构化查询,以确定与候选意图相关联的任务。例如,可以基于置信度得分和/或电子设备的上下文将关联得分分配给每个候选任务,并且可以选择具有最高得分的任务作为任务。
在操作1425,电子设备1404从服务器1406接收任务。如所描述的,该任务可以是与用户的一个或多个预先确定的短语相关联的任务,或者可以使用自然语言处理识别。在一些示例中,电子设备还接收要在执行接收的任务中使用的一个或多个参数值。
在操作1430,电子设备执行任务;并且可选地,在操作1435,提供指示任务是否成功执行的输出(例如,自然语言输出)。在一些示例中,该输出可以由电子设备的数字助理提供。
在一些示例中,执行任务包括使另一设备执行任务。例如,电子设备可以确定任务更适合于在另一设备上执行,并且/或者确定该任务必须在另一设备上执行(例如,电子设备没有显示器并且不能执行需要显示界面的任务)。因此,电子设备可以将任务提供给另一设备并且/或者使另一设备执行任务。
在一些示例中,执行任务包括使第三方应用程序执行任务。作为示例,语音快捷方式“关闭车库”可以使第三方家庭自动化应用程序关闭车库门。在一些示例中,第三方应用程序提供指示任务是否成功执行的响应。
在一些示例中,由第三方设备的数字助理提供的输出基于应用程序提供的响应。作为示例,由应用程序提供的响应可以包括自然语言表达,诸如“车库门成功关闭”。电子设备,并且更具体地,电子设备的数字助理可以接收响应并且基于响应的自然语言表达提供自然语言输出。在一些示例中,自然语言输出可以是音频输出。例如,电子设备可以提供自然语言输出,陈述“家庭自动化指示‘车库门成功关闭’”。应用程序以这种方式提供的响应可以指示任务是否成功执行,并且/或者向用户提供其他信息 (例如,响应于对公交时刻表的请求的当前公交时间)。
在一些示例中,执行由服务器1406提供的任务包括执行多个任务。作为示例,执行任务可包括使第一应用程序执行第一任务,并且使第二应用程序执行与第一任务不同的第二任务。
虽然这里关于提供给服务器1406的自然语言语音输入进行了描述(操作1415),但是在一些示例中,电子设备确定自然语言语音输入是否满足代替或与服务器1406并行的语音快捷方式标准。
图15示出了根据各种示例的用于执行任务的方法1500。例如使用实施数字助理的一个或多个电子设备来执行方法1500。在一些示例中,使用客户端-服务器系统(例如,系统100)来执行方法1500,并且在服务器 (例如,DA服务器106)和客户端设备之间以任何方式来划分方法1500 的框。在其他示例中,在服务器和多个客户端设备(例如,移动电话和智能手表)之间划分方法1500的框。因此,虽然方法1500的部分在本文中被描述为由客户端-服务器系统的特定设备执行,但应当理解,方法1500不限于此。在其他示例中,利用仅客户端设备(例如,用户设备104)或仅多个客户端设备来执行方法1500。在方法1500中,一些框被任选地组合,一些框的次序被任选地改变,并且一些框被任选地省略。在一些示例中,可结合方法1500来执行附加步骤。
如下所述,如本文所述响应于自然语言语音输入(例如,语音快捷方式)执行任务提供了用于在电子设备上执行任务的直观且有效的方法。作为示例,可以响应于自然语言语音输入执行一个或多个任务,而无需来自用户的任何附加输入。因此,以这种方式响应于自然语言语音输入执行任务减少了用户操作电子设备所需的输入数量和时间量(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又降低了电力使用并延长了设备的电池寿命。
在一些示例中,电子设备包括键盘、鼠标、麦克风、显示器和触敏表面中的一者或多者。在一些示例中,显示器是触敏显示器。在其他示例中,显示器不是触敏显示器。
在框1505,电子设备接收自然语言语音输入(例如,口头话语, 1606)(1410)。在一些示例中,接收自然语言语音输入包括从第二电子设备 (例如,智能手表)接收自然语言语音输入的表示。在一些示例中,从第二电子设备接收自然语言语音输入的表示包括通过多跳网络接收自然语言语音输入的表示。在一些示例中,例如通过WiFi连接和/或互联网从远程设备接收表示。在一些示例中,自然语言语音输入包括语音触发(例如,“嘿,Siri”)。
在框1510处,电子设备确定自然语言语音输入是否满足语音快捷方式标准。在一些示例中,电子设备确定自然语言语音输入是否匹配与电子设备的用户相关联的一个或多个语音快捷方式。在一些示例中,以这种方式确定匹配是否存在包括确定本地和/或远程是否存在匹配。例如,在某些情况下,电子设备确定是否存在匹配。在另一示例中,电子设备将自然语言语音输入或其表示提供给后端服务器(1406)(1415),并且后端服务器确定是否存在匹配(1420)。在一些示例中,确定自然语言语音输入是否满足语音快捷方式标准包括向另一电子设备(例如,后端服务器,诸如后端自然语言处理服务器)提供自然语言语音输入的表示(例如,文本表示、空间表示、音频表示),并且从另一电子设备接收语音快捷方式或任务中的至少一者(1425)。在一些示例中,电子设备和后端服务器两者都确定是否存在匹配,并且电子设备评估两个结果以确定是否存在匹配。
在框1515处,根据确定自然语言语音输入满足语音快捷方式标准(例如,如果自然语言语音输入与语音快捷方式匹配),电子设备识别与语音快捷方式相关联的任务并执行与语音快捷方式相关联的任务(例如,电子设备或另一设备(例如,后端服务器)确定与语音快捷方式相关联的任务)(1430)。在一些示例中,执行与语音快捷方式相关联的任务包括使第一应用程序执行第一任务,并且使第二应用程序执行不同于第一任务的第二任务。在一些示例中,如果电子设备确定自然语言语音输入与语音快捷方式之间存在匹配,则电子设备识别与语音快捷方式相关联的任务并执行该任务。在一些示例中,语音快捷方式与多个任务(例如,一系列任务)相关联,并且电子设备执行多个任务中的每个任务。在一些示例中,执行与语音快捷方式相关联的任务包括确定与语音快捷方式相关联的任务是否是第一类型的任务;根据确定语音快捷方式是第一类型的任务,使用电子设备执行任务;并且根据确定语音快捷方式是与第一类型不同的第二类型的任务,使得使用第三电子设备执行任务。在一些示例中,电子设备通过确定任务是由电子设备执行还是由另一设备执行,从而确定任务是否为第一类型的任务。
在框1520处,根据确定自然语言语音输入不满足语音快捷方式标准 (例如,如果自然语言语音输入与语音快捷方式不匹配),电子设备识别与自然语言语音输入相关联的任务并执行与自然语言语音输入相关联的任务(1430)。在一些示例中,电子设备执行自然语言处理以确定意图和/或任务。在一些示例中,后端服务器执行自然语言处理并将任务提供给电子设备。在一些示例中,非第一类型任务的任务是“更适合”另一设备的任务,并且/或者不能由电子设备执行。作为示例,用户可向电话提供语音快捷方式“播放权力的游戏”,并且电话继而使电视执行该语音快捷方式的任务。
在语音输入不满足语音快捷方式标准的情况下对自然语言语音输入执行自然语言处理,这确保即使语音输入不对应于语音快捷方式,仍然处理由用户提供给电子设备的命令。这样,电子设备可以处理由用户指定的更宽范围的命令和/或意图。因此,以这种方式执行任务减少了用户操作电子设备所需的输入数量和时间量(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又降低了电力使用并延长了设备的电池寿命。
在一些示例中,电子设备提供指示任务是否成功的自然语言输出(1435) (1616、1630、1662、1676)。在一些示例中,执行任务包括使第三方应用程序执行任务,并且提供自然语言输出包括从第三方应用程序接收响应,并且基于从第三方应用程序接收的响应生成自然语言输出。在一些示例中,当使用第三方应用程序执行任务时,第三方应用程序提供指示任务是否成功的响应。在一些示例中,该响应明确指示任务已成功执行或失败。在一些示例中,响应包括请求的信息(例如,任务是响应于对公交时刻表的请求检索公交时刻表)(1688),并且请求信息的返回隐式地指示任务是成功的。在一些示例中,自然语言输出是音频语音输出。在一些示例中,电子设备,并且更具体地电子设备的数字助理,基于应用程序的响应生成自然语言输入,并且将生成的自然语言输出提供给用户。
以上参考图15描述的操作任选地由图1-图4、图6A-图6B和图7A-图 7C描绘的部件来实现。例如,方法1900的操作可由本文所述的任何设备或其部件实现,包括但不限于设备104、200、400、600和1400。本领域的普通技术人员会清楚地知道如何基于在图1-图4、图6A-图6B和图7A-图 7C中所描绘的部件来实现其他过程。
图16A-图16S示出了根据一些实施方案的用于在电子设备(例如,设备104、设备122、设备200、设备600或设备700)上执行任务的示例性用户界面。这些附图中的用户界面用于示出下文描述的过程,包括图17中的过程。
图16A示出了电子设备1600(例如,设备104、设备122、设备 200、设备600或设备700)。在图16A-图16S中示出的非限制性示例性实施方案中,电子设备1600是智能电话。在其他实施方案中,电子设备1600 可以是不同类型的电子设备,诸如可穿戴设备(例如,智能手表)。在一些示例中,电子设备1600具有显示器1601、一个或多个输入设备(例如,显示器1601的触摸屏、按钮、麦克风)和无线通信无线电部件。在一些示例中,电子设备1600包括多个相机。在一些示例中,电子设备包括仅一个相机。在一些示例中,电子设备包括一个或多个生物识别传感器(例如,生物识别传感器1603),其任选地包括相机,诸如红外相机、热成像相机或其组合。
在图16A中,电子设备1600在显示器1601上显示数字助理界面(例如,会话界面),诸如数字助理界面1604。在显示数字助理界面1604时,电子设备1600接收(例如,获取、捕获)自然语言输入1606(例如,“嘿,Siri,帮我订购日用品。”)。在一些示例中,自然语言输入1606 是例如使用电子设备的输入设备(例如,麦克风)接收的自然语言语音输入。如图16A所示,在其中自然语言输入1606是自然语言语音输入的一些示例中,数字助理界面可选地包括自然语言输入1606的预览1608(例如,实时预览)。
在一些示例中,响应于自然语言输入,电子设备1600执行任务。作为示例,如参考图14所描述的,电子设备1600可以确定自然语言输入是否匹配预先确定的短语,并且如果匹配,则执行对应于该短语的任务。如果任务不对应于短语,则可以使用自然语言处理确定与自然语言输入相关联的任务,并且电子设备1600可以执行该任务。
在一些示例中,在执行任务之前,电子设备从用户请求任务的确认。例如,如图16B所示,一旦电子设备1600识别出与自然语言输入相对应的任务,电子设备1600可以显示确认界面,诸如确认界面1610。确认界面 1610包括确认示能表示1612、取消示能表示1614和应用程序示能表示 1616。确认界面还可以包括与任务相关联的内容1618。在一些示例中,取消示能表示1614的选择使得电子设备1600停止显示确认界面1610,并且/ 或者放弃执行识别的任务。在一些示例中,应用程序示能表示1616的选择使得电子设备1600打开与任务相关联的应用程序。如所描述的,以这种方式打开应用程序可以使应用程序预加载与任务相关联的一个或多个参数。内容1618可以包括针对任务的信息,诸如要用于执行任务的一个或多个参数。如图16B所示,例如,内容1618可指定任务指向订购包括在“我的日用品清单”组中的一组日用品项目、要订购的项目的数量、投递地址和进行投递的时间窗口。可选地,确认界面1610包括与任务的应用程序相关联的图标(例如,图像、GIF),以帮助用户更容易地识别执行任务的应用程序。
在一些示例中,响应于例如通过用户输入1620选择确认示能表示 1612,电子设备1600执行该任务。如图16C中所示,在一些示例中,在电子设备执行任务时,电子设备1600可选地显示指示正在执行任务的过程指示符1615。在一些示例中,过程指示符1615的显示替换确认示能表示 1612和取消示能表示1614的显示。
一旦执行了任务,电子设备1600提供指示任务是否成功执行的输出。在图16D的示例中,任务成功执行,因此电子设备1600显示成功指示符 1616,指示任务已成功执行。在一些示例中,成功指示符1616的显示替换过程指示符1615的显示。
在图16E的示例中,该任务未成功执行,因此电子设备显示失败界面1621。失败界面1621包括重试示能表示1622、取消示能表示1624和应用程序示能表示1626、1628。失败界面还包括内容1630。在一些示例中,重试示能表示1622的选择使得电子设备1600再次执行任务。在一些示例中,取消示能表示的选择使得电子设备1600停止显示失败界面1620。在一些示例中,选择应用程序示能表示1626或应用程序示能表示1628的任一者使得电子设备1600打开与该任务相关联的应用程序。如所描述的,以这种方式打开应用程序可以使应用程序预加载与任务相关联的一个或多个参数。内容1630可以包括针对任务的信息,例如用于执行任务的一个或多个参数。在一些示例中,内容1630是与内容1618相同的内容。在一些示例中,内容1630不同于内容1618。例如,内容1630可指示电子设备未能成功执行任务(例如,“存在问题。请重新尝试。”)。
在一些示例中,执行任务可包括使应用程序执行任务,并且可选地,从应用程序接收指示任务是否成功执行的响应。在一些示例中,如下文中的图16F-图16L所示,应用程序提供的响应包括自然语言表达,该自然语言表达继而可以由电子设备1600使用以指示任务是否成功执行,并且/或者从应用程序向用户提供附加信息。
参考图16F,电子设备1600在显示器1601上显示数字助理界面(例如,会话界面),诸如数字助理界面1654。在显示数字助理界面1654时,电子设备1600接收(例如,获取、捕获)自然语言输入1656(例如,“嘿,Siri,来杯咖啡。”)。在一些示例中,自然语言输入是例如使用电子设备的输入设备(例如,麦克风)接收的自然语言语音输入。如图16F 所示,在其中自然语言输入是自然语言语音输入的一些示例中,数字助理界面可选地包括自然语言输入的预览1658(例如,实时预览)。
响应于自然语言输入1656,电子设备1600根据描述执行任务(回想电子设备可以在一些示例中通过用户确认任务的执行)。例如,如果自然语言输入对应于(例如,包括)预先确定的短语,则电子设备1600可以执行与短语相关联的任务;或者如果自然语言输入不对应于预先确定的短语,则电子设备1600可以执行与通过自然语言处理确定的自然语言输入相关联的任务。
在一些示例中,一旦执行了任务,电子设备1600从用于执行任务的应用程序接收响应,并且基于该响应,提供指示任务是否成功执行的输出。在图16G的示例中,任务成功执行。因此,电子设备1600显示成功界面 1660。成功界面1660包括输出1662以及应用程序示能表示1670,输出继而包括数字助理响应1664和应用程序响应1666。在一些示例中,应用程序响应1666是在执行任务之后由应用程序提供的响应的至少一部分。在一些示例中,应用程序响应1666包括内容和/或一个或多个自然语言表达。如图 16G中所示,例如,应用程序响应1666包括自然语言表达1668(例如,“您的拿铁咖啡将在20分钟内准备好”),指示任务成功执行并且/或者提供与任务相关的信息。应用程序响应的内容诸如内容1670可包括任何类型的内容,诸如图像、视频和/或交互式内容(例如,交互式地图)。这样,应用程序可以指定与任务相关的附加信息。在一些示例中,数字助理响应 1664指示任务是否成功执行(例如,“好的,已订购。”)。在一些示例中,数字助理响应1664可以例如用于向用户阐明应用程序响应1666包括由应用程序提供的信息(例如,“咖啡应用指示”)。在一些示例中,内容1670的选择使得电子设备1600打开与任务相关联的应用程序。如所描述的,以这种方式打开应用程序可以使应用程序预加载与任务相关联的一个或多个参数。
在图16H的示例中,任务未成功执行(例如,电子设备1600未能执行任务)。因此,电子设备显示失败界面1674。失败界面1674包括输出 1676以及应用程序示能表示1682,输出继而包括数字助理响应1678和应用程序响应1680。在一些示例中,应用程序响应1680是在执行任务之后由应用程序提供的响应的至少一部分。在一些示例中,应用程序响应1680包括内容和/或一个或多个自然语言表达。如图16H所示,例如,应用程序响应1680包括自然语言表达1682(例如,“您的卡余额不足。打开应用以继续。”)指示任务未成功执行,并且/或者进一步提供与任务相关的其他信息。在一些示例中,数字助理响应1664指示任务是否成功执行(例如,“出错了。”)。在一些示例中,数字助理响应1664可以例如用于向用户阐明应用程序响应1666包括由应用程序提供的信息(例如,“咖啡应用指示”)。在一些示例中,应用程序示能表示1682的选择使得电子设备1600 打开与任务相关联的应用程序。如所描述的,以这种方式打开应用程序可以使应用程序预加载与任务相关联的一个或多个参数。
在一些示例中,以这种方式提供从应用程序接收的响应允许数字助理在应用程序和用户之间提供通信,而无需用户打开应用程序。例如,在一些示例中,用户可以请求来自电子设备的信息,否则用户可能必须打开应用程序以进行检索。
例如,参考图16I,用户可以向电子设备1600提供自然语言输入,请求关于公交时刻表的信息。继而,电子设备1600可以使对应于该任务的应用程序检索该信息并且作为响应返回该信息,如图16J所示。如所描述的,由电子设备1600提供的输出(例如,输出1688)可包括数字助理响应和应用程序响应,诸如数字助理响应1690和应用程序响应1692。
在一些示例中,用户可以在电子设备1600提供对应于任务输出的时间之前退出数字助理界面。因此,在一些示例中,电子设备1600提供的输出可以显示在锁定屏幕界面上。参考图16K-图16L,当电子设备1600分别处于锁定状态(图16K)或解锁状态(图16L)时,电子设备1600可以显示对应于锁定屏界面上的任务的输出。如所描述的,当电子设备1600处于锁定状态时,电子设备1600可以放弃显示内容。
在一些示例中,如本文所述,电子设备显示界面的方式取决于电子设备的类型。在一些示例中,例如,电子设备1600可以实施为具有相对小的显示器的设备,使得界面诸如数字助理界面1604或数字助理界面1654可能不适用于显示。因此,在一些示例中,电子设备1600可显示先前描述的那些界面的替代界面。
例如,参考图16M,电子设备1600在显示器1601上显示数字助理界面(例如,会话界面),诸如数字助理界面1604A。在显示数字助理界面 1604A时,电子设备1600接收(例如,获取、捕获)自然语言输入1606A (例如,“嘿,Siri,来杯咖啡。”)。在一些示例中,自然语言输入 1606A是例如使用电子设备的输入设备(例如,麦克风)接收的自然语言语音输入。如图16M所示,在其中自然语言输入1608A是自然语言语音输入的一些示例中,数字助理界面可选地包括自然语言输入1606A的预览 1608A(例如,实时预览)。
在图16N中,响应于自然语言输入1606A,电子设备1600显示请求确认与自然语言输入1606A相关联的任务的确认界面1610A。确认界面 1610A包括确认示能表示1612A和取消示能表示1614A。确认界面还可以包括与任务相关联的内容1618A。在一些示例中,取消示能表示1614A的选择使得电子设备1600停止显示确认界面1610A,并且/或者放弃执行识别的任务(回想在一些示例中,执行任务可包括使另一设备执行任务)。内容1618A可以包括针对任务的信息,诸如要用于执行任务的一个或多个参数。例如,如图16B所示,内容1618A可以指定该任务针对从位于 Homestead Rd的商业场所订购大杯拿铁咖啡。
在一些示例中,响应于例如通过用户输入1620A选择确认示能表示 1612A,电子设备1600执行该任务。如图16O中所示,在一些示例中,在电子设备1600执行任务时,电子设备1600显示指示正在执行任务的过程指示符1614A。在一些示例中,过程指示符1615A的显示替换确认示能表示1612A和取消示能表示1614A的显示。
一旦执行了任务,电子设备1600提供指示任务是否成功执行的输出。在图16P的示例中,任务成功执行,因此电子设备1600显示成功指示符 1616A,指示任务已成功执行。在一些示例中,成功指示符1616A的显示替换过程指示符1615A的显示。
在图16Q的示例中,该任务未成功执行,因此电子设备显示失败界面 1620A。失败界面1620A包括重试示能表示1622和取消示能表示1624A。失败界面还包括内容1630A。在一些示例中,重试示能表示1622A的选择使得电子设备1600再次执行任务。在一些示例中,取消示能表示1624A的选择使得电子设备1600停止显示失败界面1620A。内容1630A可以包括针对任务的信息,例如用于执行任务的一个或多个参数。在一些示例中,内容1630A是与内容1618A相同的内容。在一些示例中,内容1630A不同于内容1618A。例如,内容1630A可指示电子设备未能成功执行任务(例如,“存在错误。请重新尝试。”)。
在图16R中描绘的示例中,电子设备1600接收自然语言输入(例如,“嘿,Siri,来杯咖啡。”),成功执行对应于自然语言输入的任务,并且作为响应,显示成功界面1660A。成功界面1660A包括输出1662A,该输出继而又包括数字助理响应1664A和应用程序响应1666A。在一些示例中,应用程序响应1666A是在执行任务之后由应用程序提供的响应的至少一部分。在一些示例中,应用程序响应1666A包括内容和/或一个或多个自然语言表达。如图16R中所示,例如,应用程序响应1666A包括自然语言表达1668A(例如,“大杯拿铁咖啡还有20分钟就好”),指示任务成功执行并且/或者提供与任务相关的附加信息。应用程序响应的内容诸如内容 1670A可包括任何类型的内容,诸如图像、视频和/或交互式内容(例如,交互式地图)。这样,应用程序可以进一步指定与任务相关的附加信息。在一些示例中,数字助理响应1664A指示任务是否成功执行(例如,“好的,已订购。”)。在一些示例中,数字助理响应1664A可以例如用于向用户阐明应用程序响应1666A包括由应用程序提供的信息(例如,“咖啡应用指示”)。
在图16S的示例中,任务未成功执行(例如,电子设备1600未能执行任务)。因此,电子设备显示失败界面1674A。失败界面1674A包括输出 1676A,该输出继而又包括数字助理响应1678A和应用程序响应1680A。在一些示例中,应用程序响应1680A是在执行任务之后由应用程序提供的响应的至少一部分。在一些示例中,应用程序响应1680A包括内容和/或一个或多个自然语言表达。如图16S所示,例如,应用程序响应1680A包括自然语言表达1682A(例如,“不要挂断”),指示任务未被成功执行并且/或者进一步提供与任务相关的附加信息(例如,当前设备无法打开执行任务的应用程序)。在一些示例中,数字助理响应1664A指示任务是否成功执行(例如,“呃,出错了。”)。在一些示例中,数字助理响应 1664A可以例如用于阐明应用程序响应1666A包括由应用程序提供的信息 (例如,“咖啡应用指示”)。
图17示出了根据各种示例的使用数字助理执行任务的方法1700。例如使用实施数字助理的一个或多个电子设备来执行方法1700。在一些示例中,使用客户端-服务器系统(例如,系统100)来执行方法1700,并且在服务器(例如,DA服务器106)和客户端设备之间以任何方式来划分方法 1700的框。在其他示例中,在服务器和多个客户端设备(例如,移动电话和智能手表)之间划分方法1700的框。因此,虽然方法1700的部分在本文中被描述为由客户端-服务器系统的特定设备执行,但应当理解,方法 1700不限于此。在其他示例中,利用仅客户端设备(例如,用户设备104)或仅多个客户端设备来执行方法1700。在方法1700中,一些框被任选地组合,一些框的次序被任选地改变,并且一些框被任选地省略。在一些示例中,可结合方法1700来执行附加步骤。
如本文所述,执行任务并从应用程序提供响应,这允许数字助理执行任务并向用户提供任务反馈,而无需打开应用程序。因此,用户可以与应用程序交互而无需打开或以其他方式直接访问应用程序。因此,减少了用户操作电子设备所需的输入数量和时间量(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又降低了电力使用并延长了设备的电池寿命。
在一些示例中,电子设备包括键盘、鼠标、麦克风、显示器和触敏表面中的一者或多者。在一些示例中,显示器是触敏显示器。在其他示例中,显示器不是触敏显示器。
在框1705处,电子设备利用数字助理接收自然语言语音输入(例如,口头话语)(1606)。
在框1710处,电子设备确定与自然语言语音输入相关联的语音快捷方式。
在框1715处,电子设备确定对应于语音快捷方式的任务。在一些示例中,该任务是对来自第三方服务的信息的请求。在一些示例中,电子设备确定自然语言语音输入与语音快捷方式相关联并且确定与语音快捷方式相关联的任务。
在框1720处,电子设备使应用程序(例如,第一方应用程序、第三方应用程序)发起任务的执行。在一些示例中,使应用程序(例如,第一方应用程序、第三方应用程序)发起任务的执行包括显示任务执行动画。在一些示例中,任务执行动画包括旋转圆形对象(1615)以指示任务的执行正在发生。在一些示例中,使应用程序(例如,第一方应用程序、第三方应用程序)发起任务的执行包括提示用户确认任务的执行。在一些示例中,一旦确定了任务,电子设备即显示请求用户确认任务执行的确认界面 (1610、1610A)。在一些示例中,确认界面包括用户可通过其进行确认的示能表示(1612、1612A),并且可选地,还包括取消示能表示(1614、 1614A),用户可以通过该取消示能表示使电子设备停止显示确认界面并放弃执行任务。
在框1725处,电子设备从应用程序接收响应,其中该响应与任务相关联。在一些示例中,当使用应用程序诸如第三方应用程序执行任务时,应用程序提供指示任务是否成功的响应(1666、1680、1692)。在一些示例中,该响应明确指示任务已成功执行或失败。在一些示例中,响应包括请求的信息(例如,任务是响应于对公交时刻表的请求检索公交时刻表),并且请求信息的返回隐式地指示任务是成功的。
在一些示例中,在接收到响应之后,电子设备显示与应用程序相关联的应用程序用户界面(1660)。在一些示例中,在使应用程序执行任务之后,电子设备显示与应用程序相关联的信息,并且可选地显示与任务相关联的信息。作为示例,对于检索到特定位置的任务,电子设备显示地图,该地图在被选择时导致相关地图应用程序的执行。在一些示例中,用户界面的一个或多个方面由应用程序指定。在一些示例中,用户界面是字符串、图形、动画或其组合。在一些示例中,应用程序诸如第三方应用程序提供用于在应用程序用户界面中显示的内容(例如,响应于成功交易而陈述“谢谢”的图形)。在一些示例中,应用程序用户界面包括指示任务是否被成功执行的输出。在一些示例中,应用程序用户界面与输出同时显示。
在框1730处,电子设备基于响应确定任务是否成功执行。
在框1735处,电子设备提供指示任务是否成功执行的输出。在一些示例中,提供指示任务是否成功执行的输出包括,根据确定任务成功执行,显示任务成功执行的指示,并且根据确定任务未成功执行,显示任务未成功执行的指示。在一些示例中,电子设备显示指示任务是否成功执行的符号(例如,对勾表示成功,“X”表示失败)。在一些示例中,电子设备显示对勾(1616)以指示任务已成功执行。在一些示例中,电子设备显示“X”指示任务失败。在一些示例中,电子设备显示指示任务失败的消息(例如,“存在问题。请重新尝试。”)。在一些示例中,电子设备基于响应生成自然语言输出,并且利用数字助理提供(例如,输出、显示)自然语言输出。在一些示例中,进一步根据确定未成功执行任务,电子设备显示失败用户界面(1620)。
在一些示例中,提供输出包括基于响应生成自然语言输出(1662、 1676),并且利用数字助理提供自然语言输出。在一些示例中,提供(例如,输出、显示)自然语言输出包括提供音频语音输出。在一些示例中,提供自然语言输出包括显示自然语言输出。在一些示例中,自然语言输出包括对应用程序的参考。在一些示例中,自然语言输出包括应用程序的名称或昵称。在一些示例中,响应包括自然语言表达,并且自然语言输出包括第三方自然语言表达(例如,1666,“好的,已订购。Starbucks指示‘您的订单将在5分钟内准备好’)。在一些示例中,该响应包括自然语言表达(1668、1682),并且自然语言输出包括自然语言表达的至少一部分。在一些示例中,自然语言输出指示应用程序未成功执行任务(例如,“出错了。Starbucks指示‘您的资金不足。’”)。在一些示例中,自然语言输出指示应用程序成功执行了任务。
如本文所述,提供输出允许数字助理例如在用户和数字助理之间的对话(例如,会话式对话)的过程中,以直观且灵活的方式从应用程序提供反馈和/或其他信息。作为示例,数字助理可以从应用程序向用户提供(例如,中继)自然语言表达,使得用户可以与应用程序交互而无需打开或以其他方式直接访问应用程序。因此,以这种方式提供自然语言输出减少了用户操作电子设备所需的输入数量和时间量(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又降低了电力使用并延长了设备的电池寿命。
在一些示例中,失败用户界面包括重试示能表示(1622)。在一些示例中,电子设备检测对应于重试示能表示的选择的用户输入,并且响应于检测到对应于重试示能表示的选择的用户输入,使应用程序发起任务的执行。
在一些示例中,失败用户界面包括取消示能表示(1624)。在一些示例中,电子设备检测对应于取消示能表示的选择的用户输入,并且响应于对应于取消示能表示的选择的用户输入,停止显示失败用户界面。
在一些示例中,故障用户界面包括应用程序启动示能表示(1626、 1628)。在一些示例中,电子设备检测对应于应用程序启动示能表示的选择的用户输入,并且响应于对应于应用程序启动示能表示的选择的用户输入,启动(例如,执行、打开)应用程序。在一些示例中,用户选择(1)应用程序启动示能表示或(2)与应用程序相关联的图标以启动应用程序。
在一些示例中,进一步根据确定任务被成功执行,电子设备显示任务成功动画。在一些示例中,任务成功动画包括“打钩”的形状(例如,正方形、圆形)(1616)。
以上参考图17描述的操作任选地由图1-图4、图6A-图6B和图7A-图 7C描绘的部件来实现。例如,方法1900的操作可由本文所述的任何设备或其部件实现,包括但不限于设备104、200、400、600和1600。本领域的普通技术人员会清楚地知道如何基于在图1-图4、图6A-图6B和图7A-图 7C中所描绘的部件来实现其他过程。
如关于图12所描述的,电子设备可基于电子设备的上下文提供建议。然而,在某些情况下,可能还希望使用其他类型的信息(例如,用户特定信息)提供任务建议。作为示例,指示用户在队列中的进度(例如,电视节目剧集播放列表)的信息可以与上下文数据结合使用以提供任务建议,如下面进一步详细描述的。
在示例操作中,电子设备可以从应用程序(例如,媒体流应用程序) 接收信息(例如,用户特定信息),诸如由应用程序针对用户识别的一组媒体项目(例如,诸如歌曲、视频、专辑、播放列表的内容)。例如,响应于提供给应用程序的API调用,可以接收该信息。在一些示例中,该应用程序是第三方应用程序(例如,Netflix)。在一些示例中,应用程序是远程应用程序,诸如通过网络诸如互联网通信地耦接到电子设备的远程媒体预测服务。可以在预测任务建议之前的任何时间接收信息。
在一些示例中,该组媒体项目包括由应用程序推荐给用户的媒体项目。可以基于用户访问的先前媒体项目推荐项目。作为示例,应用程序可以推荐用户访问的播放列表中的当前或下一首歌曲。在另一示例中,应用程序可以推荐与先前访问的媒体项目有关的项目,诸如与先前访问的媒体项目共享相同类别的媒体项目。类别可以包括例如流派(例如,嘻哈)、年代(例如,90年代)、活动(例如,学习、健身)、情绪(例如,快乐)、假日(例如,圣诞节)。
在一些示例中,该组媒体项目被提供为媒体项目列表。在一些示例中,该组媒体项目被提供为向量。在一些示例中,该组媒体项目与描述该组媒体项目中的一个或多个媒体项目的回放数据组合提供。回放数据可以可选地指定用于回放媒体项目的一个或多个方面。作为示例,回放数据可以指定媒体项目中的一个或多个的特定时间(例如,用户停止回放媒体项目的时间)。作为另一示例,回放数据可以指定用于回放的语言和/或是否显示字幕。作为又一示例,回放数据可以指示用于回放媒体项目的分辨率和/或比特率。
虽然这里关于从应用程序接收一组媒体项目的电子设备进行描述,但是应当理解,电子设备可以从任何数量的应用程序接收任意数量的媒体项目组。可以周期性地并且/或者响应于某个事件接收以所描述的方式(例如,响应于API调用)接收的各组媒体项目。在一些示例中,电子设备在选择性地提供任务建议之前请求一组或多组媒体项目。
在一些示例中,一旦电子设备已经接收到该组媒体项目,电子设备基于该组电子设备的媒体项目和/或上下文数据确定是否提供一个或多个任务建议,如参考图12所描述的。
作为示例,除了接收该组媒体项目之外,电子设备还接收与电子设备相关联的上下文数据,并且基于该组媒体项目和上下文数据确定一个或多个任务。例如,一个或多个任务中的至少一者可对应于该组媒体项目中的媒体项目的回放。在一些示例中,对应于媒体项目的回放的任务的一个或多个参数可以基于回放数据。作为示例,任务可以对应于特定时间的媒体项目的回放。
此后,如所描述的,电子设备确定一个或多个任务中的任何一个是否满足建议标准。对于满足建议标准的一个或多个任务中的每一者,电子设备提供任务建议并且在电子设备的显示器上显示对应于该任务建议的建议示能表示,如所描述的。
作为另一示例,电子设备确定任务并且使用一个或多个媒体项目选择性地修改任务。例如,除了接收该组媒体项目之外,电子设备还接收上下文数据并基于上下文数据确定任务。如果任务对应于媒体项目的回放,则可以修改任务以包括该组媒体项目中的某个媒体项目以及/或者多个媒体项目中某个媒体项目的参数。在一些示例中,在确定任务是否满足建议标准之前修改任务。在一些示例中,在确定任务是否满足建议标准之后修改任务。
图18A-图18D示出了根据一些实施方案的用于在电子设备(例如,设备104、设备122、设备200、设备600或设备700)上提供媒体项目建议示能表示的示例性用户界面。这些附图中的用户界面被用于示出包括图19 中的过程的下文描述的过程。
图18A示出了电子设备1800(例如,设备104、设备122、设备 200、设备600或设备700)。在图18A-图18D中示出的非限制性示例性实施方案中,电子设备1800是智能电话。在其他实施方案中,电子设备1800 可以是不同类型的电子设备,诸如可穿戴设备(例如,智能手表)。在一些示例中,电子设备1800具有显示器1801、一个或多个输入设备(例如,显示器1801的触摸屏、按钮、麦克风)和无线通信无线电部件。在一些示例中,电子设备1800包括多个相机。在一些示例中,电子设备包括仅一个相机。在一些示例中,电子设备包括一个或多个生物识别传感器(例如,生物识别传感器1803),其任选地包括相机,诸如红外相机、热成像相机或其组合。
在图18A中,在电子设备处于解锁状态时,电子设备1800在显示器 1801上显示锁定屏幕界面诸如锁定屏幕界面1804。锁定屏幕界面1804包括建议示能表示1806和通知1808。在一些示例中,选择示能表示1806的选择使得电子设备1800选择性地执行与建议示能表示相关联的任务,如关于图8A-图8AF所描述的。建议示能表示1806对应于在媒体回放应用程序 (例如,电视应用)中回放媒体项目(例如,硅谷第2季第3集)的任务。在一些示例中,通知1808的选择使得电子设备打开与通知相关联的应用程序。
在一些示例中,响应于例如通过用户输入1814选择建议示能表示 1806,电子设备1800执行该任务。如图16B所示,电子设备1800发起与建议示能表示1806相关联的媒体项目的回放(例如,硅谷第2季第3 集)。
在一些示例中,建议示能表示可以显示在搜索屏幕上并且/或者使用电子设备的搜索功能进行搜索。在图18C中,电子设备1800显示搜索界面 1820。在显示搜索界面1820时,响应于搜索字符串(例如,“S”)的输入,电子设备1800返回搜索结果,包括建议示能表示1822、1828、1832,联系人结果1834和邮件结果1836。在一些示例中,建议示能表示被呈现在所有其他结果之上。因此,在搜索界面1820中,建议示能表示1822、1828 和1832和联系人结果1834呈现在邮件结果1836之上。
在一些示例中,以不同于其他建议示能表示的方式显示对应于回放媒体项目的任务的建议示能表示。例如,如图18C所示,建议示能表示1822 包括媒体图标1824和回放标志符号1826。在一些示例中,图标1824相对于其他建议示能表示的图标(例如,建议示能表示1828的图标1830、建议示能表示1832的图标1834)可相对较大。图标1824还可包括与媒体项目相关联的图像,诸如视频帧。回放标志符号1826可指示建议示能表示1822 对应于与媒体任务类别相对应的任务。
在一些示例中,响应于例如通过用户输入1836选择建议示能表示 1822,电子设备1800显示与建议示能表示1822相关联的扩展界面1850。在一些示例中,用户输入1836是预先确定类型的触摸输入(例如,满足阈值强度或持续时间的触摸输入)。参考图18D,扩展界面1850包括建议示能表示1838,其在一些示例中对应于建议界面1822。在一些示例中,建议示能表示1838包括对应于图标1824的图标1840和对应于图标1826的回放标志符号1842。在一些示例中,图标1840包括与媒体项目相关联的图像,诸如视频帧。在一些示例中,图标1822和1840包括相同的图像。在一些示例中,建议示能表示1838的图标1840大于图标1824。在一些示例中,扩展视图界面1850的显示使得电子设备1800的显示器的一个或多个部分模糊、变暗和/或以其他方式遮隐。
图19示出了根据各种示例的用于提供媒体项目建议的方法1900。例如使用实施数字助理的一个或多个电子设备来执行方法1900。在一些示例中,使用客户端-服务器系统(例如,系统100)来执行方法1900,并且在服务器(例如,DA服务器106)和客户端设备之间以任何方式来划分方法1900的框。在其他示例中,在服务器和多个客户端设备(例如,移动电话和智能手表)之间划分方法1900的框。因此,虽然方法1900的部分在本文中被描述为由客户端-服务器系统的特定设备执行,但应当理解,方法 1900不限于此。在其他示例中,利用仅客户端设备(例如,用户设备104)或仅多个客户端设备来执行方法1900。在方法1900中,一些框被任选地组合,一些框的次序被任选地改变,并且一些框被任选地省略。在一些示例中,可结合方法1900来执行附加步骤。
如本文所述,选择性地提供对应于任务的建议示能表示允许用户有效且方便地在电子设备上执行与用户相关的任务。作为示例,由电子设备显示的建议示能表示可对应于基于媒体消费和/或用户的确定的媒体偏好识别的任务。因此,以这种方式选择性地提供建议减少了用户操作电子设备所需的输入数量和时间量(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又降低了电力使用并延长了设备的电池寿命。
在一些示例中,电子设备包括键盘、鼠标、麦克风、显示器和触敏表面中的一者或多者。在一些示例中,显示器是触敏显示器。在其他示例中,显示器不是触敏显示器。
在框1905处,电子设备从应用程序接收多个媒体项目。在一些示例中,电子设备使用API调用从应用程序(例如,第三方应用程序)请求多个媒体项目。在一些示例中,响应于API调用,应用程序返回由应用程序为用户推荐的即将到来的媒体项目列表(例如,向量)。在一些示例中,以这种方式接收的媒体项目可包括专辑、歌曲、电视节目、剧集(或其任何组合的播放列表)。在一些示例中,从应用程序接收多个媒体项目包括从应用程序接收包括多个媒体项目的向量。在一些示例中,每个媒体项目是包括关于相应媒体项目或媒体项目组的信息的容器。在一些示例中,从应用程序接收多个媒体项目包括在显示不同于该应用程序的另一应用程序时,接收多个媒体项目。在一些示例中,在从应用程序接收多个媒体项目之前,电子设备从应用程序请求多个媒体项目。在一些示例中,在预测建议时请求/接收媒体项目。在一些示例中,当用户打开和/或关闭应用程序时,请求/接收媒体项目。在一些示例中,从远程应用程序(例如,远程媒体预测服务)接收多个媒体项目。在一些示例中,在某个事件之前接收多个媒体项目,使得电子设备选择性地提供预测。
在框1910处,电子设备接收与电子设备相关联的上下文数据。在一些示例中,电子设备接收电子设备的上下文信息。以这种方式接收的上下文信息可以包括电子的位置、一天中的时间、星期几等。
在框1915处,电子设备基于多个媒体项目和上下文数据确定任务。在一些示例中,任务是用于回放所述多个媒体项目中某个媒体项目的任务。在一些示例中,任务指定特定回放时间。在一些示例中,任务可以指定在媒体项目中的特定点(例如,1:02)发起媒体项目的回放。在一些示例中,如所描述的,电子设备生成多个建议。如果建议的任务中的一个或多个对应于请求列表中的媒体项目,则提供用于回放相应媒体项目的一个或多个任务。
如本文所述,基于电子设备的上下文和多个媒体项目确定任务(例如,任务概率、参数概率)确保由电子设备提供的任务建议不仅基于用户对电子设备的先前使用而提供,而且还基于对媒体域中的未来行为的直观和相关预测而提供。这继而确保向用户提供具有加速用户行为的相对较高可能性的突出任务建议。因此,以这种方式提供建议减少了用户操作电子设备所需的输入数量和时间量(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又降低了电力使用并延长了设备的电池寿命。
在框1920处,电子设备确定任务是否满足建议标准。在一些示例中,电子设备在给定上下文数据和电子设备的当前上下文情况下确定是否有任何识别的任务满足概率阈值,使得电子设备应提供任务的一个或多个作为建议。
在框1925处,根据确定任务满足建议标准,电子设备在电子设备的显示器上显示对应于该任务的建议示能表示(1806)。
在框1930处,根据确定任务不满足建议标准,电子设备放弃显示建议示能表示。
在一些示例中,任务是第一任务,并且建议示能表示是第一建议示能表示。在一些示例中,电子设备基于上下文数据确定第二任务,确定第二任务是否满足建议标准,根据确定第二任务满足建议标准,在显示器上显示对应于第二任务的第二建议示能表示,并且根据确定第二任务不满足建议标准,放弃显示第二建议示能表示。
在一些示例中,应用程序是第一应用程序,并且任务与第一应用程序相关联,并且建议示能表示与不同于第一应用程序的第二应用程序相关联。在一些示例中,当生成针对媒体项目的任务建议时,电子设备模拟用于建议示能表示的应用程序的副本。这样,电子设备可以显示回放控件和/ 或用于建议的播放列表,而不覆写当前正在播放的项目和/或应用程序队列。在一些示例中,如果用户选择建议,则电子设备将使用建议的媒体项目发起应用程序的回放。
在一些示例中,第二电子设备利用应用程序(例如,远程媒体预测服务)确定先前在电子设备上播放的一个或多个媒体项目,并且基于确定的一个或多个媒体项目生成多个媒体项目。在一些示例中,电子设备确定在例如与相同用户相关联的任何数量的设备上回放的一个或多个媒体项目。这样,用于提出建议的媒体在用户的所有设备上都是一致的。在一些示例中,从通信地耦接到电子设备的后端服务器接收媒体项目。在一些示例中,生成多个媒体项目包括识别先前在电子设备上播放的一个或多个媒体项目中的至少一个的类别(例如,流派、年代、活动、心情、假日),并且识别与确定的类别关联的媒体项目。
以上参考图19描述的操作任选地由图1-图4、图6A-图6B和图7A-图 7C描绘的部件来实现。例如,方法1900的操作可由本文所述的任何设备或其部件实现,包括但不限于设备104、200、400、600和1800。本领域的普通技术人员会清楚地知道如何基于在图1-图4、图6A-图6B和图7A-图 7C中所描绘的部件来实现其他过程。
根据一些具体实施,提供一种计算机可读存储介质(例如,非暂态计算机可读存储介质),该计算机可读存储介质存储供电子设备的一个或多个处理器执行的一个或多个程序,该一个或多个程序包括用于执行本文所述方法或过程中的任一个的指令。
根据一些具体实施,提供了一种电子设备(例如,便携式电子设备),该电子设备包括用于执行本文所述的方法和过程中的任一个的装置。
根据一些具体实施,提供了一种电子设备(例如,便携式电子设备),该电子设备包括处理单元,该处理单元被配置为执行本文所述的方法和过程中的任一个。
根据一些具体实施,提供了一种电子设备(例如,便携式电子设备),该电子设备包括一个或多个处理器和存储用以由一个或多个处理器执行的一个或多个程序的存储器,该一个或多个程序包括用于执行本文所描述的方法和过程中的任一个的指令。
出于解释的目的,前面的描述是通过参考具体实施方案来描述的。然而,上面的例示性论述并非旨在是穷尽的或将本发明限制为所公开的精确形式。根据以上教导内容,很多修改形式和变型形式都是可能的。选择并描述这些实施方案是为了最好地解释这些技术的原理及其实际应用。本领域的其他技术人员由此能够最好地利用这些技术以及具有适合于所预期的特定用途的各种修改的各种实施方案。
虽然参照附图对本公开以及示例进行了全面的描述,但应当注意,各种变化和修改对于本领域内的技术人员而言将变得显而易见。应当理解,此类变化和修改被认为被包括在由权利要求书所限定的本公开和示例的范围内。
如上所述,本技术的一个方面在于收集和使用得自各种来源的数据,以使用任务建议加速用户行为。本公开预期,在一些实例中,这些所采集的数据可包括唯一地识别或可用于联系或定位特定人员的个人信息数据。此类个人信息数据可包括人口统计数据、基于位置的数据、电话号码、电子邮件地址、Twitter账号、家庭地址、与用户健康或健康水平相关的数据或记录(例如,生命体征测量、药物信息、锻炼信息)、出生日期或任何其他识别或个人信息。
本公开认识到在本发明技术中使用此类个人信息数据可用于使用户受益。例如,该个人信息数据可用于递送用户较感兴趣的任务建议。因此,使用此类个人信息数据允许用户加速和更有效地使用电子设备。此外,本公开还预期个人信息数据有益于用户的其他用途。例如,健康和健身数据可用于向用户的总体健康状况提供见解,或者可用作使用技术来追求健康目标的个人的积极反馈。
本公开设想负责采集,分析,公开,传输,存储或其他使用此类个人信息数据的实体将遵守既定的隐私政策和/或隐私实践。具体地,此类实体应当实行并坚持使用被公认为满足或超出对维护个人信息数据的隐私性和安全性的行业或政府要求的隐私政策和实践。用户可以方便地访问此类策略,并应随着数据的采集和/或使用变化而更新。用户的个人信息应采集为实体的合法和合理使用,而不应在这些合法使用之外共享或出售。此外,在收到用户知情同意后,应进行此类采集/共享。此外,此类实体应考虑采取任何必要步骤,保卫和保障对此类个人信息数据的访问,并确保其他有权访问个人信息数据的人遵守其隐私政策和流程。另外,这种实体可使其本身经受第三方评估以证明其遵守广泛接受的隐私政策和实践。此外,应调整政策和实践,以便采集和/或访问的特定类型的个人信息数据,并适用于包括管辖范围的具体考虑的适用法律和标准。例如,在美国,某些健康数据的收集或访问可能受联邦和/或州法律诸如健康保险便利和责任法案 (HIPAA)的约束;而其他国家的健康数据可能受其他法规和政策的约束,因此应予以相应处理。因此,在每个国家应保持不同的个人数据类型的不同的隐私实践。
不管前述情况如何,本公开还预期用户选择性地阻止使用或访问个人信息数据的实施方案。即本公开预期可提供硬件元件和/或软件元件,以防止或阻止对此类个人信息数据的访问。例如,在由电子设备接收的上下文数据的情况下(诸如参考图12描述的上下文数据),本发明的技术可被配置为在注册服务期间或其后的任何时间允许用户选择“加入”或“退出”参与对个人信息数据的收集。除了提供“选择加入”和“选择退出”选项外,本公开设想提供与访问或使用个人信息相关的通知。例如,用户可在下载应用程序时通知用户,其个人信息数据将被访问,然后在个人信息数据被应用程序访问之前再次提醒用户。
此外,本公开的目的是应管理和处理个人信息数据以最小化无意或未经授权访问或使用的风险。一旦不再需要数据,通过限制数据采集和删除数据可最小化风险。此外,并且当适用时,包括在某些健康相关应用中,数据去标识可用于保护用户的隐私。在适当的情况下,可以通过移除特定标识符(例如,出生日期等)、控制存储的数据的量或特征(例如,在城市级而非地址级收集位置数据)、控制数据的存储方式(例如,在用户之间聚合数据)和/或其他方法来促进去标识。
因此,虽然本公开广泛地覆盖了使用个人信息数据来实现一个或多个各种所公开的实施方案,但本公开还预期各种实施方案也可在无需访问此类个人信息数据的情况下被实现。即,本发明技术的各种实施方案不会由于缺少此类个人信息数据的全部或一部分而无法正常进行。例如,可通过基于非个人信息数据或绝对最低限度的个人信息(例如,与用户相关联的设备所请求的内容、对电子设备可用的其他非个人信息或公开可用信息) 来推断电子设备可能的先前使用情况,从而向用户提供任务建议。
Claims (48)
1.一种电子设备,包括:
显示器;
音频输入设备;
一个或多个处理器;
存储器;以及
一个或多个程序,其中所述一个或多个程序存储在所述存储器中并且被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于以下的指令:
显示包括与任务相关联的候选任务示能表示的多个建议的候选任务示能表示,其中来自所述多个建议的候选任务示能表示中的第一建议的候选任务示能表示是基于与所述电子设备相关联的第一上下文特性而被建议的,并且来自所述多个建议的候选任务示能表示中的第二建议的候选任务示能表示是基于与所述电子设备相关联的第二上下文特性而被建议的,其中所述第一上下文特性和所述第二上下文特性是不同的上下文特性;
检测一组输入,所述一组输入包括第一用户输入,所述第一用户输入对应于与所述任务相关联的所述候选任务示能表示的选择;
响应于检测到所述一组用户输入,显示用于生成与所述任务相关联的语音快捷方式的第一界面;
在显示所述第一界面时:
通过所述音频输入设备接收自然语言语音输入;以及
在所述第一界面中显示候选短语,其中所述候选短语基于所述自然语言语音输入;
在显示所述候选短语之后,检测第二用户输入;以及
响应于检测到所述第二用户输入,将所述候选短语与所述任务相关联。
2.根据权利要求1所述的电子设备,其中将所述候选短语与所述任务相关联包括:
将所述候选短语与第一动作相关联;以及
将所述候选短语与第二动作相关联。
3.根据权利要求1所述的电子设备,所述一个或多个程序还包括用于以下的指令:
通过所述音频输入设备接收用户语音输入;
确定所述用户语音输入是否包括所述候选短语;
根据确定所述用户语音输入包括所述候选短语,执行所述任务;以及
根据确定所述用户语音输入不包括所述候选短语,放弃执行所述任务。
4.根据权利要求1所述的电子设备,其中显示包括与任务相关联的候选任务示能表示的多个候选任务示能表示包括:显示包括所述多个候选任务示能表示的应用程序界面。
5.根据权利要求1所述的电子设备,所述一个或多个程序还包括用于以下的指令:
在接收所述自然语言语音输入时,提供所述自然语言语音输入的实时预览。
6.根据权利要求5所述的电子设备,其中所述自然语言语音输入的所述实时预览是所述自然语言语音输入的视觉波形。
7.根据权利要求1所述的电子设备,所述一个或多个程序还包括用于以下的指令:
响应于接收到所述自然语言语音输入,基于所述自然语言语音输入确定所述候选短语。
8.根据权利要求7所述的电子设备,其中基于所述自然语言语音输入确定所述候选短语包括:使用自然语言处理确定所述候选短语。
9.根据权利要求7所述的电子设备,其中基于所述自然语言语音输入确定所述候选短语包括:
向另一电子设备提供所述自然语言语音输入;以及
从所述另一电子设备接收所述候选短语的表示。
10.根据权利要求7所述的电子设备,其中基于所述自然语言语音输入确定所述候选短语包括:
确定所述自然语言语音输入是否满足短语相似度标准;以及
根据确定所述自然语言语音输入满足所述短语相似度标准,指示所述自然语言语音输入满足所述相似度标准。
11.根据权利要求1所述的电子设备,所述一个或多个程序还包括用于以下的指令:
在将所述候选短语与所述任务相关联之后,显示包括编辑示能表示的第二界面;
检测指示所述编辑示能表示的选择的第三用户输入;以及
响应于检测到所述第三用户输入,显示多个候选短语示能表示,所述多个候选短语示能表示包括对应于所述候选短语的第一候选短语示能表示和对应于另一候选短语的第二候选短语示能表示,其中所述另一候选短语基于所述自然语言语音输入。
12.根据权利要求10所述的电子设备,所述一个或多个程序还包括用于以下的指令:
检测另一组输入,所述另一组输入包括指示所述第二候选短语示能表示的选择的第四用户输入;以及
响应于检测到所述另一组输入,将所述另一候选短语与所述任务相关联。
13.根据权利要求1所述的电子设备,所述一个或多个程序还包括用于以下的指令:
响应于所述第一用户输入,显示与所述任务相关联的第四界面,其中所述第四界面包括第一建议的语音快捷方式短语。
14.根据权利要求1所述的电子设备,所述一个或多个程序还包括用于以下的指令:
在显示所述第一界面时,确定是否在阈值时间量内已经接收到所述自然语言语音输入;以及
根据确定在所述阈值时间量内尚未接收到所述自然语言语音输入,在所述第一界面上显示第二建议的语音快捷方式短语。
15.根据权利要求1所述的电子设备,所述一个或多个程序还包括用于以下的指令:
在将所述候选短语与所述任务相关联之后,检测第五用户输入;以及
响应于检测到所述第五用户输入,显示另外多个候选任务示能表示,其中所述另外多个候选任务示能表示不包括与所述任务相关联的所述候选任务示能表示。
16.根据权利要求1所述的电子设备,所述一个或多个程序还包括用于以下的指令:
将所述候选短语提供给另一电子设备。
17.一种方法,包括:
在具有显示器和音频输入设备的电子设备处:
显示包括与任务相关联的候选任务示能表示的多个建议的候选任务示能表示,其中来自所述多个建议的候选任务示能表示中的第一建议的候选任务示能表示是基于与所述电子设备相关联的第一上下文特性而被建议的,并且来自所述多个建议的候选任务示能表示中的第二建议的候选任务示能表示是基于与所述电子设备相关联的第二上下文特性而被建议的,其中所述第一上下文特性和所述第二上下文特性是不同的上下文特性;
检测一组输入,所述一组输入包括第一用户输入,所述第一用户输入对应于与所述任务相关联的所述候选任务示能表示的选择;
响应于检测到所述一组用户输入,显示用于生成与所述任务相关联的语音快捷方式的第一界面;
在显示所述第一界面时:
通过所述音频输入设备接收自然语言语音输入;以及
在所述第一界面中显示候选短语,其中所述候选短语基于所述自然语言语音输入;
在显示所述候选短语之后,检测第二用户输入;以及
响应于检测到所述第二用户输入,将所述候选短语与所述任务相关联。
18.一种非暂态计算机可读存储介质,存储有一个或多个程序,所述一个或多个程序被配置为由具有显示器和音频输入设备的电子设备的一个或多个处理器执行,所述一个或多个程序包括用于以下的指令:
显示包括与任务相关联的候选任务示能表示的多个建议的候选任务示能表示,其中来自所述多个建议的候选任务示能表示中的第一建议的候选任务示能表示是基于与所述电子设备相关联的第一上下文特性而被建议的,并且来自所述多个建议的候选任务示能表示中的第二建议的候选任务示能表示是基于与所述电子设备相关联的第二上下文特性而被建议的,其中所述第一上下文特性和所述第二上下文特性是不同的上下文特性;
检测一组输入,所述一组输入包括第一用户输入,所述第一用户输入对应于与所述任务相关联的所述候选任务示能表示的选择;
响应于检测到所述一组用户输入,显示用于生成与所述任务相关联的语音快捷方式的第一界面;
在显示所述第一界面时:
通过音频输入设备接收自然语言语音输入;以及
在所述第一界面中显示候选短语,其中所述候选短语基于所述自然语言语音输入;
在显示所述候选短语之后,检测第二用户输入;以及
响应于检测到所述第二用户输入,将所述候选短语与所述任务相关联。
19.根据权利要求17所述的方法,其中将所述候选短语与所述任务相关联包括:
将所述候选短语与第一动作相关联;以及
将所述候选短语与第二动作相关联。
20.根据权利要求17所述的方法,还包括:
通过所述音频输入设备接收用户语音输入;
确定所述用户语音输入是否包括所述候选短语;
根据确定所述用户语音输入包括所述候选短语,执行所述任务;以及
根据确定所述用户语音输入不包括所述候选短语,放弃执行所述任务。
21.根据权利要求17所述的方法,其中显示包括与任务相关联的候选任务示能表示的多个候选任务示能表示包括:显示包括所述多个候选任务示能表示的应用程序界面。
22.根据权利要求17所述的方法,还包括:
在接收所述自然语言语音输入时,提供所述自然语言语音输入的实时预览。
23.根据权利要求22所述的方法,其中所述自然语言语音输入的所述实时预览是所述自然语言语音输入的视觉波形。
24.根据权利要求17所述的方法,还包括:
响应于接收到所述自然语言语音输入,基于所述自然语言语音输入确定所述候选短语。
25.根据权利要求24所述的方法,其中基于所述自然语言语音输入确定所述候选短语包括:使用自然语言处理确定所述候选短语。
26.根据权利要求24所述的方法,其中基于所述自然语言语音输入确定所述候选短语包括:
向另一电子设备提供所述自然语言语音输入;以及
从所述另一电子设备接收所述候选短语的表示。
27.根据权利要求24所述的方法,其中基于所述自然语言语音输入确定所述候选短语包括:
确定所述自然语言语音输入是否满足短语相似度标准;以及
根据确定所述自然语言语音输入满足所述短语相似度标准,指示所述自然语言语音输入满足所述相似度标准。
28.根据权利要求17所述的方法,还包括:
在将所述候选短语与所述任务相关联之后,显示包括编辑示能表示的第二界面;
检测指示所述编辑示能表示的选择的第三用户输入;以及
响应于检测到所述第三用户输入,显示多个候选短语示能表示,所述多个候选短语示能表示包括对应于所述候选短语的第一候选短语示能表示和对应于另一候选短语的第二候选短语示能表示,其中所述另一候选短语基于所述自然语言语音输入。
29.根据权利要求28所述的方法,还包括:
检测另一组输入,所述另一组输入包括指示所述第二候选短语示能表示的选择的第四用户输入;以及
响应于检测到所述另一组输入,将所述另一候选短语与所述任务相关联。
30.根据权利要求17所述的方法,还包括:
响应于所述第一用户输入,显示与所述任务相关联的第四界面,其中所述第四界面包括第一建议的语音快捷方式短语。
31.根据权利要求17所述的方法,还包括:
在显示所述第一界面时,确定是否在阈值时间量内已经接收到所述自然语言语音输入;以及
根据确定在所述阈值时间量内尚未接收到所述自然语言语音输入,在所述第一界面上显示第二建议的语音快捷方式短语。
32.根据权利要求17所述的方法,还包括:
在将所述候选短语与所述任务相关联之后,检测第五用户输入;以及
响应于检测到所述第五用户输入,显示另外多个候选任务示能表示,其中所述另外多个候选任务示能表示不包括与所述任务相关联的所述候选任务示能表示。
33.根据权利要求17所述的方法,还包括:
将所述候选短语提供给另一电子设备。
34.根据权利要求18所述的非暂态计算机可读存储介质,其中将所述候选短语与所述任务相关联包括:
将所述候选短语与第一动作相关联;以及
将所述候选短语与第二动作相关联。
35.根据权利要求18所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
通过所述音频输入设备接收用户语音输入;
确定所述用户语音输入是否包括所述候选短语;
根据确定所述用户语音输入包括所述候选短语,执行所述任务;以及
根据确定所述用户语音输入不包括所述候选短语,放弃执行所述任务。
36.根据权利要求18所述的非暂态计算机可读存储介质,其中显示包括与任务相关联的候选任务示能表示的多个候选任务示能表示包括:显示包括所述多个候选任务示能表示的应用程序界面。
37.根据权利要求18所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
在接收所述自然语言语音输入时,提供所述自然语言语音输入的实时预览。
38.根据权利要求37所述的非暂态计算机可读存储介质,其中所述自然语言语音输入的所述实时预览是所述自然语言语音输入的视觉波形。
39.根据权利要求18所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
响应于接收到所述自然语言语音输入,基于所述自然语言语音输入确定所述候选短语。
40.根据权利要求39所述的非暂态计算机可读存储介质,其中基于所述自然语言语音输入确定所述候选短语包括:使用自然语言处理确定所述候选短语。
41.根据权利要求39所述的非暂态计算机可读存储介质,其中基于所述自然语言语音输入确定所述候选短语包括:
向另一电子设备提供所述自然语言语音输入;以及
从所述另一电子设备接收所述候选短语的表示。
42.根据权利要求39所述的非暂态计算机可读存储介质,其中基于所述自然语言语音输入确定所述候选短语包括:
确定所述自然语言语音输入是否满足短语相似度标准;以及
根据确定所述自然语言语音输入满足所述短语相似度标准,指示所述自然语言语音输入满足所述相似度标准。
43.根据权利要求18所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
在将所述候选短语与所述任务相关联之后,显示包括编辑示能表示的第二界面;
检测指示所述编辑示能表示的选择的第三用户输入;以及
响应于检测到所述第三用户输入,显示多个候选短语示能表示,所述多个候选短语示能表示包括对应于所述候选短语的第一候选短语示能表示和对应于另一候选短语的第二候选短语示能表示,其中所述另一候选短语基于所述自然语言语音输入。
44.根据权利要求43所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
检测另一组输入,所述另一组输入包括指示所述第二候选短语示能表示的选择的第四用户输入;以及
响应于检测到所述另一组输入,将所述另一候选短语与所述任务相关联。
45.根据权利要求18所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
响应于所述第一用户输入,显示与所述任务相关联的第四界面,其中所述第四界面包括第一建议的语音快捷方式短语。
46.根据权利要求18所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
在显示所述第一界面时,确定是否在阈值时间量内已经接收到所述自然语言语音输入;以及
根据确定在所述阈值时间量内尚未接收到所述自然语言语音输入,在所述第一界面上显示第二建议的语音快捷方式短语。
47.根据权利要求18所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
在将所述候选短语与所述任务相关联之后,检测第五用户输入;以及
响应于检测到所述第五用户输入,显示另外多个候选任务示能表示,其中所述另外多个候选任务示能表示不包括与所述任务相关联的所述候选任务示能表示。
48.根据权利要求18所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
将所述候选短语提供给另一电子设备。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862679972P | 2018-06-03 | 2018-06-03 | |
US62/679,972 | 2018-06-03 | ||
CN201811134435.XA CN110554761B (zh) | 2018-06-03 | 2018-09-27 | 加速的任务执行 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811134435.XA Division CN110554761B (zh) | 2018-06-03 | 2018-09-27 | 加速的任务执行 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111309136A true CN111309136A (zh) | 2020-06-19 |
CN111309136B CN111309136B (zh) | 2021-10-26 |
Family
ID=68736212
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010077771.6A Active CN111309136B (zh) | 2018-06-03 | 2018-09-27 | 加速的任务执行 |
CN202111177110.1A Active CN113867516B (zh) | 2018-06-03 | 2018-09-27 | 加速的任务执行 |
CN201811134435.XA Active CN110554761B (zh) | 2018-06-03 | 2018-09-27 | 加速的任务执行 |
CN202110612652.0A Pending CN113342156A (zh) | 2018-06-03 | 2018-09-27 | 加速的任务执行 |
CN201980003806.7A Pending CN111527491A (zh) | 2018-06-03 | 2019-05-31 | 加速任务执行 |
Family Applications After (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111177110.1A Active CN113867516B (zh) | 2018-06-03 | 2018-09-27 | 加速的任务执行 |
CN201811134435.XA Active CN110554761B (zh) | 2018-06-03 | 2018-09-27 | 加速的任务执行 |
CN202110612652.0A Pending CN113342156A (zh) | 2018-06-03 | 2018-09-27 | 加速的任务执行 |
CN201980003806.7A Pending CN111527491A (zh) | 2018-06-03 | 2019-05-31 | 加速任务执行 |
Country Status (4)
Country | Link |
---|---|
EP (2) | EP3646205B1 (zh) |
JP (5) | JP7245020B2 (zh) |
CN (5) | CN111309136B (zh) |
DK (4) | DK201870358A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112037784A (zh) * | 2020-08-14 | 2020-12-04 | 南京创维信息技术研究院有限公司 | 显示设备语音控制方法、显示设备和存储介质 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2021171851A1 (zh) * | 2020-02-27 | 2021-09-02 | ||
CN111538815B (zh) * | 2020-04-27 | 2023-09-22 | 北京百度网讯科技有限公司 | 一种文本查询方法、装置、设备及存储介质 |
WO2021247258A1 (en) * | 2020-06-01 | 2021-12-09 | Apple Inc. | Suggesting executable actions in response to detecting events |
US20220406301A1 (en) * | 2021-06-16 | 2022-12-22 | Google Llc | Passive disambiguation of assistant commands |
CN113992611A (zh) * | 2021-08-30 | 2022-01-28 | 北京百度网讯科技有限公司 | 一种任务信息管理方法、装置、设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070276651A1 (en) * | 2006-05-23 | 2007-11-29 | Motorola, Inc. | Grammar adaptation through cooperative client and server based speech recognition |
CN102137085A (zh) * | 2010-01-22 | 2011-07-27 | 谷歌公司 | 语音命令的多维消歧 |
US20150169336A1 (en) * | 2013-12-16 | 2015-06-18 | Nuance Communications, Inc. | Systems and methods for providing a virtual assistant |
US20160118048A1 (en) * | 2014-10-27 | 2016-04-28 | Toyota Motor Engineering & Manufacturing North America, Inc. | Providing voice recognition shortcuts based on user verbal input |
US20160203002A1 (en) * | 2015-01-09 | 2016-07-14 | Microsoft Technology Licensing, Llc | Headless task completion within digital personal assistants |
CN107480161A (zh) * | 2016-06-08 | 2017-12-15 | 苹果公司 | 用于媒体探究的智能自动化助理 |
CN107615378A (zh) * | 2015-05-27 | 2018-01-19 | 苹果公司 | 设备语音控制 |
CN107608998A (zh) * | 2016-06-11 | 2018-01-19 | 苹果公司 | 具有数字助理的应用集成 |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3859005A (en) | 1973-08-13 | 1975-01-07 | Albert L Huebner | Erosion reduction in wet turbines |
US4826405A (en) | 1985-10-15 | 1989-05-02 | Aeroquip Corporation | Fan blade fabrication system |
US6850252B1 (en) * | 1999-10-05 | 2005-02-01 | Steven M. Hoffberg | Intelligent electronic appliance system and method |
US6021403A (en) * | 1996-07-19 | 2000-02-01 | Microsoft Corporation | Intelligent user assistance facility |
WO1999038149A1 (en) | 1998-01-26 | 1999-07-29 | Wayne Westerman | Method and apparatus for integrating manual input |
WO2000026829A1 (en) * | 1998-11-03 | 2000-05-11 | British Telecommunications Public Limited Company | Co-ordinating apparatus |
JP3835032B2 (ja) * | 1998-12-18 | 2006-10-18 | 富士通株式会社 | 利用者照合装置 |
US7688306B2 (en) | 2000-10-02 | 2010-03-30 | Apple Inc. | Methods and apparatuses for operating a portable device based on an accelerometer |
US7218226B2 (en) | 2004-03-01 | 2007-05-15 | Apple Inc. | Acceleration-based theft detection system for portable electronic devices |
US6677932B1 (en) | 2001-01-28 | 2004-01-13 | Finger Works, Inc. | System and method for recognizing touch typing under limited tactile feedback conditions |
US6570557B1 (en) | 2001-02-10 | 2003-05-27 | Finger Works, Inc. | Multi-touch system and method for emulating modifier keys via fingertip chords |
US7657849B2 (en) | 2005-12-23 | 2010-02-02 | Apple Inc. | Unlocking a device by performing gestures on an unlock image |
US8250001B2 (en) * | 2008-12-18 | 2012-08-21 | Motorola Mobility Llc | Increasing user input accuracy on a multifunctional electronic device |
JP2011209787A (ja) * | 2010-03-29 | 2011-10-20 | Sony Corp | 情報処理装置、および情報処理方法、並びにプログラム |
US20140100847A1 (en) * | 2011-07-05 | 2014-04-10 | Mitsubishi Electric Corporation | Voice recognition device and navigation device |
US9117449B2 (en) | 2012-04-26 | 2015-08-25 | Nuance Communications, Inc. | Embedded system for construction of small footprint speech recognition with user-definable constraints |
WO2013169849A2 (en) | 2012-05-09 | 2013-11-14 | Industries Llc Yknots | Device, method, and graphical user interface for displaying user interface objects corresponding to an application |
KR101958582B1 (ko) | 2012-12-29 | 2019-07-04 | 애플 인크. | 터치 입력에서 디스플레이 출력으로의 관계들 사이에서 전환하기 위한 디바이스, 방법, 및 그래픽 사용자 인터페이스 |
US9112984B2 (en) * | 2013-03-12 | 2015-08-18 | Nuance Communications, Inc. | Methods and apparatus for detecting a voice command |
US10047970B2 (en) * | 2013-08-21 | 2018-08-14 | Honeywell International Inc. | Devices and methods for interacting with an HVAC controller |
US8719039B1 (en) * | 2013-12-05 | 2014-05-06 | Google Inc. | Promoting voice actions to hotwords |
US10019060B2 (en) * | 2014-01-30 | 2018-07-10 | Duane Matthew Cash | Mind-controlled virtual assistant on a smartphone device |
US9582246B2 (en) * | 2014-03-04 | 2017-02-28 | Microsoft Technology Licensing, Llc | Voice-command suggestions based on computer context |
US9886670B2 (en) * | 2014-06-30 | 2018-02-06 | Amazon Technologies, Inc. | Feature processing recipes for machine learning |
US10475448B2 (en) * | 2014-09-30 | 2019-11-12 | Mitsubishi Electric Corporation | Speech recognition system |
US9922475B2 (en) * | 2015-09-11 | 2018-03-20 | Comcast Cable Communications, Llc | Consensus based authentication and authorization process |
CN106601238A (zh) * | 2015-10-14 | 2017-04-26 | 阿里巴巴集团控股有限公司 | 一种应用操作的处理方法和装置 |
DK179343B1 (en) * | 2016-06-11 | 2018-05-14 | Apple Inc | Intelligent task discovery |
US20180052885A1 (en) * | 2016-08-16 | 2018-02-22 | Ebay Inc. | Generating next user prompts in an intelligent online personal assistant multi-turn dialog |
US10531227B2 (en) * | 2016-10-19 | 2020-01-07 | Google Llc | Time-delimited action suggestion system |
US10547729B2 (en) * | 2017-03-27 | 2020-01-28 | Samsung Electronics Co., Ltd. | Electronic device and method of executing function of electronic device |
JP6439853B2 (ja) * | 2017-12-26 | 2018-12-19 | 富士ゼロックス株式会社 | 処理装置およびプログラム |
-
2018
- 2018-06-11 DK DKPA201870358A patent/DK201870358A1/en not_active Application Discontinuation
- 2018-06-11 DK DKPA201870360A patent/DK201870360A1/en not_active Application Discontinuation
- 2018-06-11 DK DKPA201870357A patent/DK201870357A1/en not_active Application Discontinuation
- 2018-06-11 DK DKPA201870359A patent/DK180091B1/en active IP Right Grant
- 2018-09-27 CN CN202010077771.6A patent/CN111309136B/zh active Active
- 2018-09-27 CN CN202111177110.1A patent/CN113867516B/zh active Active
- 2018-09-27 CN CN201811134435.XA patent/CN110554761B/zh active Active
- 2018-09-27 CN CN202110612652.0A patent/CN113342156A/zh active Pending
- 2018-09-28 JP JP2018184477A patent/JP7245020B2/ja active Active
-
2019
- 2019-05-31 CN CN201980003806.7A patent/CN111527491A/zh active Pending
- 2019-05-31 EP EP19724002.1A patent/EP3646205B1/en active Active
- 2019-05-31 EP EP21175008.8A patent/EP3885938B1/en active Active
-
2021
- 2021-05-20 JP JP2021085549A patent/JP7050990B2/ja active Active
-
2022
- 2022-03-29 JP JP2022054176A patent/JP7128376B2/ja active Active
-
2023
- 2023-03-10 JP JP2023037748A patent/JP7300074B2/ja active Active
- 2023-06-16 JP JP2023099460A patent/JP2023134455A/ja active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070276651A1 (en) * | 2006-05-23 | 2007-11-29 | Motorola, Inc. | Grammar adaptation through cooperative client and server based speech recognition |
CN102137085A (zh) * | 2010-01-22 | 2011-07-27 | 谷歌公司 | 语音命令的多维消歧 |
US20150169336A1 (en) * | 2013-12-16 | 2015-06-18 | Nuance Communications, Inc. | Systems and methods for providing a virtual assistant |
US20160118048A1 (en) * | 2014-10-27 | 2016-04-28 | Toyota Motor Engineering & Manufacturing North America, Inc. | Providing voice recognition shortcuts based on user verbal input |
US20160203002A1 (en) * | 2015-01-09 | 2016-07-14 | Microsoft Technology Licensing, Llc | Headless task completion within digital personal assistants |
CN107615378A (zh) * | 2015-05-27 | 2018-01-19 | 苹果公司 | 设备语音控制 |
CN107480161A (zh) * | 2016-06-08 | 2017-12-15 | 苹果公司 | 用于媒体探究的智能自动化助理 |
CN107608998A (zh) * | 2016-06-11 | 2018-01-19 | 苹果公司 | 具有数字助理的应用集成 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112037784A (zh) * | 2020-08-14 | 2020-12-04 | 南京创维信息技术研究院有限公司 | 显示设备语音控制方法、显示设备和存储介质 |
CN112037784B (zh) * | 2020-08-14 | 2023-10-20 | 南京创维信息技术研究院有限公司 | 显示设备语音控制方法、显示设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113867516A (zh) | 2021-12-31 |
DK201870359A1 (en) | 2020-01-13 |
EP3646205B1 (en) | 2022-08-10 |
JP7050990B2 (ja) | 2022-04-08 |
EP3885938A1 (en) | 2021-09-29 |
DK201870360A1 (en) | 2019-12-20 |
CN113867516B (zh) | 2024-05-10 |
JP2022104947A (ja) | 2022-07-12 |
CN111527491A (zh) | 2020-08-11 |
JP2023081993A (ja) | 2023-06-13 |
JP2021166052A (ja) | 2021-10-14 |
EP3646205A1 (en) | 2020-05-06 |
JP7245020B2 (ja) | 2023-03-23 |
EP3885938B1 (en) | 2022-10-12 |
JP7300074B2 (ja) | 2023-06-28 |
CN113342156A (zh) | 2021-09-03 |
DK201870358A1 (en) | 2020-01-03 |
JP2019212266A (ja) | 2019-12-12 |
JP7128376B2 (ja) | 2022-08-30 |
CN110554761B (zh) | 2022-03-18 |
JP2023134455A (ja) | 2023-09-27 |
DK180091B1 (en) | 2020-04-22 |
DK201870357A1 (en) | 2019-12-20 |
CN111309136B (zh) | 2021-10-26 |
CN110554761A (zh) | 2019-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112416484B (zh) | 加速任务执行 | |
CN112567323B (zh) | 用户活动快捷方式建议 | |
CN113256768A (zh) | 将文本用作头像动画 | |
CN111309136B (zh) | 加速的任务执行 | |
CN111399714A (zh) | 用户活动快捷方式建议 | |
KR102666783B1 (ko) | 가속화된 태스크 수행 | |
CN110574023A (zh) | 脱机个人助理 |
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 |