CN116368459A - 用于智能听写的自动化助理的话音命令 - Google Patents
用于智能听写的自动化助理的话音命令 Download PDFInfo
- Publication number
- CN116368459A CN116368459A CN202180068959.7A CN202180068959A CN116368459A CN 116368459 A CN116368459 A CN 116368459A CN 202180068959 A CN202180068959 A CN 202180068959A CN 116368459 A CN116368459 A CN 116368459A
- Authority
- CN
- China
- Prior art keywords
- transcription
- spoken utterance
- recognized text
- client device
- user
- 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.)
- Pending
Links
- 238000013518 transcription Methods 0.000 claims abstract description 450
- 230000035897 transcription Effects 0.000 claims abstract description 450
- 238000000034 method Methods 0.000 claims abstract description 140
- 238000010801 machine learning Methods 0.000 claims description 51
- 230000002452 interceptive effect Effects 0.000 claims description 49
- 230000004044 response Effects 0.000 claims description 37
- 238000012545 processing Methods 0.000 claims description 27
- 230000015654 memory Effects 0.000 claims description 10
- 230000000977 initiatory effect Effects 0.000 claims description 7
- 230000008569 process Effects 0.000 abstract description 38
- 230000008859 change Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 230000000007 visual effect Effects 0.000 description 9
- 238000009877 rendering Methods 0.000 description 7
- 230000026676 system process Effects 0.000 description 7
- 238000013145 classification model Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 230000033001 locomotion Effects 0.000 description 6
- 239000000463 material Substances 0.000 description 6
- 230000001755 vocal effect Effects 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 229910052799 carbon Inorganic materials 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
Images
Classifications
-
- 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/26—Speech to text systems
-
- 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
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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
-
- 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
- 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
- G10L2015/223—Execution procedure of a spoken command
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Acoustics & Sound (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本文描述的***和方法涉及确定是将对应于客户端设备的用户的口头话语的所识别的文本并入在客户端设备处显示的转录中,或者使得客户端设备实施的自动化助理执行与转录相关联并且基于所识别的文本的助理命令。在所述用户和所述自动化助理之间的听写会话期间接收口头话语。实现方式可以使用自动语音识别模型来处理捕获口头话语的音频数据,以生成所识别的文本。此外,实现方式可以基于触摸输入被指向转录、转录的状态和/或口头话语的基于音频的特征来确定是将所识别的文本并入转录中还是使得助理命令被执行。
Description
背景技术
人类可以利用本文中被称为“自动化助理”(也称为“聊天机器人”、“交互式个人助理”、“智能个人助理”、“个人话音助理”、“谈话代理”等)的交互式软件应用来参与人机对话会话。例如,人(当与自动化助理交互时,可被称为“用户”)可向自动化助理提供输入(例如,命令、查询和/或请求),所述输入可使自动化助理生成并提供响应输出,以控制一个或多个物联网(IoT)设备,和/或执行一个或多个其他功能性。用户提供的输入可以是例如口头自然语言输入(即口头话语),其在一些情况下可以被转换成文本(或其他语义表示)然后被进一步处理,和/或键入自然语言输入。
自动化助理通常依赖于组件流水线来解释和响应用户输入。例如,自动语音识别(ASR)引擎可用于处理捕获用户的口头话语的音频数据,并生成ASR输出,诸如口头话语的转录(即,术语和/或其他令牌的序列)。此外,可以使用自然语言理解(NLU)引擎来处理ASR输出,并生成NLU输出,诸如用户在提供口头话语时的意图以及可选地与所述意图相关联的参数的时隙值。此外,实现引擎可用于处理NLU输出,并生成实现输出,诸如获得响应于口头话语的内容或响应于口头话语导致执行某个动作的结构化请求。
在一些情况下,可以利用自动化助理来为各种不同的目的听写转录。例如,用户可以向自动化助理提供口头话语,并且自动化助理可以使用ASR引擎来处理口头话语,以生成作为文本消息、电子邮件、便签和任何其他文本的转录,供相应的软件应用或与自动化助理相关联的自动化助理应用使用。在这些情况中的一些情况下,在自动化助理代表用户听写文本时接收到的口头话语可以附加地或替代地包括助理命令,所述助理命令指示用户希望自动化助理响应于口头话语执行某个动作。然而,自动化助理可能无法区分应该听写的口头话语部分和应该使自动化助理执行某个动作的口头话语部分。结果,用户可能不得不手动编辑这些转录或者重复已经提供的相同的口头话语,从而增加了在客户端设备处接收的用户输入的数量,延长了人机对话会话,并且浪费了计算资源。
发明内容
本文所描述的实现方式涉及确定是将对应于客户端设备的用户的口头话语的所识别的文本并入在客户端设备处显示的转录中,还是使得客户端设备实施的自动化助理执行与转录相关联并且基于所识别的文本的助理命令。在用户和自动化助理之间的听写会话期间接收口头话语。如本文所使用的,术语听写会话可以指用户和自动化助理之间的任何人机对话会话,其中自动化助理被用来代表用户听写一个或多个文本段,并且被包括在与在客户端设备处可访问的一个或多个软件应用相关联的转录中。在一些实现方式中,可以接收口头话语以发起和完成基于单个口头话语的听写会话,而在其他实现方式中,口头话语可以作为基于多个口头话语的正在进行的听写会话的一部分被接收。一个或多个软件应用可以包括用户可以在其中听写文本的任何软件应用,诸如电子邮件应用、文本消息接发应用、日历应用、便签应用、自动化助理应用(例如,其可以将听写文本传输到其他软件应用),和/或用户可以在其中听写文本并且在客户端设备处可访问的任何其他软件应用。转录可以包括正文,并且可选地与基于与转录相关联的给定软件应用的一个或多个字段相关联。例如,当转录是与电子邮件应用相关联的电子邮件时,转录可以与“发给”字段和“主题”字段相关联,当转录是与文本消息接发应用相关联的文本消息时,转录可以与“收件人”字段相关联,当转录是与日历应用相关联的日历条目时,转录可以与“日期”字段和/或“时间”字段相关联,当转录是与便签应用相关联的便签时,转录可以与“标题”字段相关联,以此类推。
在一些实现方式中,确定是将所识别的文本并入转录中还是使得自动化助理执行助理命令可以基于客户端设备的用户指向转录的触摸输入。触摸输入可以指向转录的一个或多个区域,诸如转录的正文(或其一个或多个文本段)、转录的一个或多个字段、转录中包括的一个或多个空格、和/或转录的任何其他区域。在一些实现方式中,只有当触摸输入是与口头话语一起接收的同时触摸输入时,才可以考虑触摸输入。如果在口头话语的同时或者在阈值持续时间内接收到触摸输入,则触摸输入可以被认为是同时触摸输入。
例如,假设用户正在通过在客户端设备处可访问的电子邮件应用起草电子邮件。进一步假设用户提供了“send it to Tom”(将其发送给Tom)的口头话语作为起草电子邮件的听写会话的一部分。在一些实现方式中,“send it to Tom”可以被并入电子邮件的正文中,而在其他实现方式中,可以执行添加与实体“Tom”相关联的收件人的助理命令。例如,假设当接收到口头话语时,用户没有提供任何触摸输入。在这种情况下,可以将对应于口头话语的所识别的文本并入电子邮件的正文中,而不执行任何助理命令。相反,假设当接收到口头话语时,用户还提供了指向电子邮件的“发给”字段的触摸输入。在这种情况下,可以执行添加与实体“Tom”相关联的收件人的助理命令,而不将任何所识别的文本并入电子邮件的正文中。
在附加的或替代的实现方式中,确定是将所识别的文本并入转录中还是使自动化助理执行助理命令可以基于捕获口头话语的音频数据的一个或多个基于音频的特征。基于音频的特征可以基于使用一个或多个基于音频的机器学习(ML)模型处理音频数据来确定。在一些实现方式中,可以使用端点指示模型来处理捕获口头话语的音频数据,以确定口头话语是否包括一个或多个停顿以及可选地一个或多个停顿在口头话语中的位置。在附加的或替代的实现方式中,可以使用暖词模型(warm word model)来处理捕获口头话语的音频数据,以确定口头话语是否包括一个或多个特定的词语或短语(例如,暖词,诸如“send”(发送)、“set”(设置)、“change”(改变)、“highlight”(突出显示),和/或与可以相对于转录执行的助理命令相关联的任何其他词语或短语)以及可选地一个或多个特定的词语或短语在口头话语中的位置。暖词模型可以是音频关键词分类模型,其被训练来检测捕获口头话语的音频数据中的一个或多个特定的词语或短语,和/或基于文本的分类模型,其利用来自处理对应于口头话语的音频数据的其他ML模型的信号来检测一个或多个特定的词语或短语(例如,利用使用ASR模型生成的ASR输出和/或使用端点指示模型生成的端点指示输出)。
例如,假设用户正在通过在客户端设备处可访问的文本消息接发来起草文本消息。进一步假设用户提供了口头话语“Hey Alex,how are you?Send it”(嘿Alex,你好吗?发送消息)作为起草文本消息的听写会话的一部分。在这个示例中,自动化助理可确定“send it”(发送消息)是应被并入文本消息的正文中,还是应引起使文本消息被传输给另一用户(例如,“Alex”)的助理命令。例如,假设使用端点指示模型来处理捕获口头话语的音频数据,该端点指示模型生成指示用户在“you”(你)和“send”之间停顿的输出。进一步假设使用生成指示“send”的输出的暖词模型来处理捕获口头话语的音频数据,所述输出可以是使文本消息被发送给另一用户的助理命令。在这个示例中,基于一个或多个停顿(和/或其在口头话语中的位置)和暖词“send”的存在(和/或其在口头话语中的位置),自动化助理可以确定执行使文本消息(例如,“Hey Alex,how are you?”(嘿Alex,你好吗?))被传输给另一用户(例如,“Alex”)的助理命令。
相反,假设用户再次正在通过在客户端设备处可访问的文本消息接发来起草文本消息。然而,假设用户提供了口头话语“Hey Alex,did you send it to Julia?”(嘿Alex,你把消息发给Julia了吗?)作为起草文本消息的听写会话的一部分。在这个示例中,自动化助理可确定“send it”是应被并入文本消息的正文中,还是应引起使文本消息被传输给另一用户(例如,“Alex”)的助理命令。在这种情况下,假设使用端点指示模型来处理捕获口头话语的音频数据,所述端点指示模型生成指示用户没有停顿的输出。进一步假设使用生成指示“send”可以是使文本消息被发送给另一用户的助理命令的输出的暖词模型来处理捕获口头话语的音频数据。在这个示例中,基于一个或多个停顿(或没有停顿),尽管存在暖词“send”,但是自动化助理也可以确定将“send it”并入转录中。此外,在这种情况下,暖词“send”的位置可以指示其不旨在使助理命令被执行,因为在口头话语中会有另外的词语跟随在“send it”之后。
在附加的或替代的实现方式中,确定是将所识别的文本并入转录中还是使自动化助理执行助理命令可以基于转录的状态。转录的状态可以包括,例如,与转录相关联的一个或多个字段是否被填充,所识别的文本是否可以被用来填充与转录相关联的一个或多个字段,转录是完成还是未完成,转录的稳定性度量(例如,基于在生成转录中使用的一个或多个语音假设的度量来指示转录有多稳定),和/或可以表示转录的状态的其他信息。在一些实现方式中,转录的状态可以基于分析转录的正文和/或与转录相关联的字段来确定。在这些实现方式的一些版本中,在分析转录时,可以使用被训练来确定转录的状态的一个或多个ML模型(例如,语言模型)来处理转录的正文和/或与转录相关联的字段。在那些实现方式的附加或替代版本中,在分析转录时,可以使用启发来处理转录的正文、与转录相关联的字段,以确定转录的状态。
例如,假设用户正在通过在客户端设备处可访问的电子邮件应用起草电子邮件。进一步假设用户提供口头话语“change the subject to yesterday’s meeting”(将主题改为昨天的会议)作为起草电子邮件的听写会话的一部分。在一些实现方式中,“changethe subject to yesterday’s meeting”可以被并入电子邮件的正文中,而在其他实现方式中,可以执行将与电子邮件相关联的“主题”字段改为“yesterday’smeeting”(昨天的会议)的助理命令。例如,假设草稿电子邮件在电子邮件的“主题”字段中不包括任何内容。在这种情况下,由于在“主题”字段中没有要改变的当前文本,所以可以将对应于口头话语的所识别的文本并入电子邮件的正文中,而不执行任何助理命令。相反,假设草稿电子邮件在电子邮件的“主题”字段中确实包括“today’smeeting”(今天的会议)的内容。在这种情况下,可以执行将与电子邮件相关联的“主题”字段改变为“yesterday’s meeting”的助理命令,而不将任何所识别的文本并入电子邮件的正文中。
尽管本文中使用用于确定是将所识别的文本并入转录中还是使自动化助理执行助理命令的特定信号来描述特定示例,但是应当理解,这是为了示例的目的,而不意味着限制。例如,在各种实现方式中,可以利用一个或多个信号的任何组合来确定是将所识别的文本并入转录中,还是使自动化助理执行助理命令。在这些实现方式中,可以使用一个或多个ML模型或规则(例如,ML规则或启发式定义的规则)来处理本文中描述的一个或多个信号,以确定是将所识别的文本并入转录中,还是使自动化助理执行助理命令。
例如,假设用户正在通过在客户端设备处可访问的电子邮件应用起草电子邮件。进一步假设用户提供了“send it to Tom”的口头话语作为起草电子邮件的听写会话的一部分。在一些实现方式中,可以将“send it to Tom”并入电子邮件的正文中,而在其他实现方式中,可以执行添加与实体“Tom”相关联的收件人的助理命令。例如,假设当接收到口头话语时,用户没有提供任何触摸输入。在这种情况下,如果仅考虑触摸输入,则可以将对应于口头话语的所识别的文本并入电子邮件的正文中,而不执行任何助理命令。然而,假设转录的状态指示电子邮件看起来是完整的,但是与电子邮件相关联的“发给”字段是空的。因此,在这种情况下,可以执行添加与实体“Tom”相关联的收件人的助理命令,而不将任何所识别的文本并入电子邮件的正文中。
在各种实现方式中,自动化助理可以确定转录完成。自动化助理可以基于例如指示转录完成的上述转录的状态来确定转录完成。在这些实现方式的一些版本中,自动化助理可以自动启动转录的交互式编辑模式。在那些实现方式的其他版本中,自动化助理可以基于用户输入来启动交互式编辑模式。例如,用户可以基于提供指向客户端设备的特定手势、包括一个或多个特定的词语或短语的口头话语、对显示在客户端设备处的按钮(例如,硬件或软件)或图形可选元素的选择等,来使自动化助理启动交互式编辑模式。在交互式编辑模式下,从客户端设备的用户接收的口头话语可被用来导览转录和/或编辑转录。例如,假设转录包括四个段落。在启动交互式编辑模式时,自动化助理可以最初突出显示转录的第一段(或者提供某个其他图形指示来指示自动化助理正在将编辑集中在转录的第一段上)。客户端设备的用户可以提供重复第一段落的特定部分以及他们希望如何编辑第一段落的特定部分的口头话语。例如,假设第一段是三个句子,第二句包括词语“great”(很棒)的一个实例。在这个示例中,用户可以简单地提供“all caps‘great’in the secondsentence”(第二句中‘great’全部大写)的口头话语,以使得“great”实例的每个字符都被大写。假设用户对第一段没有其他编辑,则用户可以提供“next”(下一个)的另外的话语,并且自动化助理然后可以突出显示第一段之后的转录的第二段。为了返回到第一段,用户可以提供“back”(返回)或“return to the first paragraph”(返回到第一段)的进一步的另外的话语来继续编辑第一段。
通过使用本文描述的技术,可以实现一个或多个技术优势。作为一个非限制性示例,本文中描述的技术使自动化助理能够区分旨在被并入转录中的口头话语(或其部分)和旨在使助理命令被执行的口头话语(或其部分)。结果,使用本文中描述的技术生成的转录更加准确,并且可以让转录的手动编辑更少,从而减少在客户端设备处接收的用户输入的数量,并且节省客户端设备的计算资源。此外,可以通过更准确地标识口头话语(或其部分)中的助理命令并对其采取行动来减少过早地通过一个或多个网络传输的转录(例如,电子邮件、文本消息等)的数量,从而减少一个或多个网络上的网络资源消耗。此外,本文中描述的技术使得自动化助理能够在生成转录时接收多模态输入,从而使得听写会话以更快和更高效的方式结束,并且节省客户端设备的计算资源并减少客户端设备的电池消耗。
以上描述仅提供为本公开的一些实现方式的概述。本文中更详细地描述了这些实现方式以及其他实现方式的进一步描述。作为一个非限制性示例,在本文包括的权利要求和详细描述中更详细地描述了各种实现方式。
附图说明
图1是可以实施本文公开的实现方式的示例环境的框图。
图2是根据各种实现方式的利用来自图1的示例环境的框图的各种组件的示例过程流。
图3是示出根据各种实现方式的示例方法的流程图,所述方法基于用户的多模态输入来确定是将所识别的文本并入转录中还是使得与转录相关联并且基于所识别的文本的助理命令被执行。
图4A和图4B示出了根据各种实现方式的利用图3的方法来确定是将所识别的文本并入转录中还是使得助理命令被执行的各种非限制性示例。
图5是示出根据各种实现方式的基于转录的状态来确定是将所识别的文本并入转录中还是使得与转录相关联并且基于所识别的文本的助理命令被执行的示例方法的流程图。
图6A和图6B示出了根据各种实现方式的利用图5的方法来确定是将所识别的文本并入转录中还是使得助理命令被执行的各种非限制性示例。
图7是示出根据各种实现方式的基于口头话语的至少一个或多个基于音频的特征来确定是将所识别的文本并入转录中还是使得与转录相关联并且基于所识别的文本的助理命令被执行的示例方法的流程图。
图8A和图8B示出了根据各种实现方式的利用图7的方法来确定是将所识别的文本并入转录中还是使得助理命令被执行的各种非限制性示例。
图9示出了根据各种实现方式的计算设备的示例架构。
具体实施方式
转向图1,描绘了展示了本公开的各个方面并且可以实施本文公开的实现方式的示例环境的框图。示例环境包括客户端设备110和听写***160。在一些实现方式中,听写***160可以在客户端设备110处本地实施。在附加的或替代的实现方式中,听写***160可以远离客户端设备110实施,如图1所示。在这些实现方式中,客户端设备110和听写***160可以经由一个或多个网络190彼此通信地耦合,网络190诸如是一个或多个有线或无线局域网(“LAN”,包括Wi-Fi LAN、网状网络、蓝牙、近场通信等)或广域网(“WAN”,包括互联网)。
客户端设备110可以是例如以下的一个或多个:台式计算机、笔记本计算机、平板计算机、移动电话、车辆的计算设备(例如,车载通信***、车载娱乐***、车载导航***)、独立的交互式扬声器(可选地具有显示器)、诸如智能电视的智能电器、和/或包括计算设备的用户的可穿戴装置(例如,具有计算设备的用户的手表、具有计算设备的用户的眼镜、虚拟或增强现实计算设备)。可以提供附加的和/或替代的客户端设备。
客户端设备110可以执行自动化助理客户端113。自动化助理客户端113的实例可以是与客户端设备110的操作***分离的应用(例如,安装在操作***的“顶部”)——或者可以替代地由客户端设备110的操作***直接实施。自动化助理客户端113可以经由一个或多个网络190与听写***160交互。自动化助理客户端113(并且可选地通过其与听写***160的交互)可以形成从用户的角度看起来是自动化助理115的逻辑实例,用户可以利用该逻辑实例进行人机对话。自动化助理115的实例在图1中被描绘,并且被虚线包围,该虚线包括客户端设备110的自动化助理客户端113和听写***160。因此,应当理解,参与在客户端设备110上执行的自动化助理客户端113的用户实际上可以参与他或她自己的自动化助理115的逻辑实例(或者在家庭或其他用户组之中共享的自动化助理115的逻辑实例)。为了简洁和简单起见,本文中使用的自动化助理115将指在客户端设备110和/或听写***160上执行的自动化助理客户端113。
在各种实现方式中,客户端设备110可以包括用户输入引擎111,其被配置为检测客户端设备110的用户使用一个或多个用户界面输入设备提供的用户输入。例如,客户端设备110可以配备有检测声波(或压力波)的一个或多个麦克风,所述声波诸如是用户的话语或客户端设备110的环境中的其他声音。附加地或替代地,客户端设备110可以配备有一个或多个视觉组件,这些视觉组件被配置成捕获并提供指示在一个或多个视觉组件的视野中检测到的运动(例如,手势)的信号。附加地或替代地,客户端设备110可以配备有一个或多个触敏组件(例如,键盘和鼠标、触笔、触摸屏、触摸面板、一个或多个硬件按钮等),其被配置成捕获并提供指示指向客户端设备110的触摸输入的信号。
在各种实现方式中,客户端设备110可以包括渲染引擎112,渲染引擎112被配置为使用一个或多个用户界面输出设备向客户端设备110的用户提供可听和/或视觉呈现的内容。例如,客户端设备110可以配备有一个或多个扬声器,其使得内容能够经由客户端设备110被提供给用户以供可听呈现。附加地或替代地,客户端设备110可以配备有显示器或投影仪,所述显示器或投影仪使得能够经由客户端设备110向用户提供用于视觉呈现的内容。
此外,客户端设备110和/或听写***160可以包括用于存储数据和软件应用195的一个或多个存储器、用于访问数据和执行软件应用195的一个或多个处理器、以及便于通过一个或多个网络190进行通信的其他组件。在一些实现方式中,一个或多个软件应用195可以本地安装在客户端设备110处,而在其他实现方式中,一个或多个软件应用195可以远程托管(例如,由一个或多个服务器托管)并且可以由客户端设备110通过一个或多个网络190访问。
在一些实现方式中,由自动化助理115执行的操作可以在客户端设备110处本地实施。如上所述,在各种实现方式中,客户端设备110可以操作自动化助理客户端113。如图1所示,自动化助理客户端113可以包括自动语音识别(ASR)引擎120A1、自然语言理解(NLU)引擎130A1和文本到语音(TTS)引擎140A1。在一些实现方式中,由自动化助理115执行的操作可以分布在多个计算机***中,诸如当听写***160如图1所示远离客户端设备110实施时。在这些实现方式中,自动化助理115可以利用听写***160的ASR引擎120A2、NLU引擎130A2和TTS引擎140A2。
这些引擎中的每一个都可以被配置成执行一个或多个功能。例如,ASR引擎120A1和/或120A2可以使用存储在机器学习(ML)模型数据库199中的ASR模型来处理捕获口头话语并且由客户端设备110的麦克风生成的音频数据,以生成ASR输出。此外,NLU引擎130A1和/或130A2可以使用存储在ML模型数据库199中的NLU模型来处理ASR输出以生成NLU输出。此外,TTS引擎140A1和/或140A2可以使用存储在ML模型数据库199中的TTS模型来处理文本数据(例如,由自动化助理115制定的文本)以生成包括计算机生成的合成语音的合成语音音频数据。
在各种实现方式中,ASR输出可以包括例如被预测为对应于在音频数据中捕获的用户的口头话语的一个或多个语音假设、一个或多个语音假设中的每一个的一个或多个对应的预测值(例如,概率、对数似然和/或其他值)、被预测为对应于在音频数据中捕获的用户的口头话语的多个音素和/或其他ASR输出。在这些实现方式的一些版本中,ASR引擎120A1和/或120A2可以选择一个或多个语音假设作为对应于口头话语的所识别的文本(例如,基于对应的预测值)。
在各种实现方式中,NLU输出可以包括例如带注释的所识别的文本,其包括所识别的文本的一个或多个(例如,全部)术语的所识别的文本的一个或多个注释。例如,NLU引擎130A1和/或130A2可以包括被配置成用术语的语法角色来注释术语的词性标注器(未示出)。附加地或替代地,NLU引擎130A1和/或130A2可以包括实体标记器(未示出),所述实体标记器被配置成注释所识别的文本的一个或多个片段中的实体指代,诸如对人的指代(包括例如文学人物、名人、公众人物等)、组织、位置(真实的和想象的)等等。在一些实现方式中,关于实体的数据可以存储在一个或多个数据库中,诸如知识图(未示出)中。在一些实现方式中,知识图可以包括表示已知实体(以及在一些情况下,实体属性)的节点,以及连接节点并表示实体之间的关系的边。实体标记器可以在高粒度级别(例如,使得能够标识对诸如人的实体类的所有指代)和/或较低粒度级别(例如,使得能够标识对诸如特定人的特定实体的所有指代)注释对实体的指代。实体标记器可以依靠自然语言输入的内容来解析特定的实体,和/或可以可选地与知识图或其他实体数据库通信来解析特定的实体。附加地或替代地,NLU引擎130A1和/或130A2可以包括共指解析器(未示出),所述共指解析器被配置成基于一个或多个上下文线索来分组或“聚类”对同一实体的指代。例如,基于紧接在接收到输入“buy them”(购买它们)之前渲染的客户端设备通知中提到的“theatre tickets”(剧院门票),共指解析器可用于将自然语言输入“buy them”中的术语“them”(它们)解析为“buy theatre tickets”(购买剧院门票)。在一些实现方式中,NLU引擎130A1和/或130A2的一个或多个组件可以依赖于来自NLU引擎130A1和/或130A2的一个或多个其他组件的注释。例如,在一些实现方式中,实体标记器可以依赖来自共指解析器的注释来注释对特定实体的所有提及。此外,例如,在一些实现方式中,共指解析器可以依赖于来自实体标记器的注释来聚类对同一实体的指代。
如本文所述,自动化助理115可以确定是将对应于客户端设备110的用户的口头话语的所识别的文本并入在客户端设备110处显示的转录中,还是在用户和自动化助理115之间的听写会话期间使得自动化助理115执行与转录相关联并且基于所识别的文本的助理命令。自动化助理115可以使用听写引擎150来做出这一确定。在各种实现方式中,听写引擎150可以包括如图1所示的模态引擎151、状态引擎152、基于音频的ML引擎153和分类引擎154。
在一些实现方式中,当接收到口头话语时,模态引擎151可以确定触摸输入是否指向在客户端设备110上显示的转录。换句话说,模态引擎151可以确定用户是否在听写会话期间同时提供口头输入和触摸输入两者,使得用户参与多模态听写会话。如果在接收到口头话语的同时或者在口头话语的阈值持续时间内检测到触摸输入,则可以认为触摸输入与口头话语是同时的。在一些实现方式中,并且假设当接收到口头话语时,模态引擎151确定触摸输入指向在客户端设备110上显示的转录,模态引擎151可以确定触摸输入所指向的客户端设备110的显示器的一个或多个区域。模态引擎151可以可选地标识与触摸输入所指向的客户端设备110的显示器的一个或多个区域相关联的元数据。例如,客户端设备110的显示器的一个或多个区域可以包括由用户以图形方式划分(例如,突出显示、加下划线或以其他方式以图形方式划分)的转录中包括的一个或多个文本段、与转录相关联的一个或多个字段(例如,“发给”字段、“发自”字段、“主题”字段、“标题”字段、转录的“正文”等)或转录的其他区域。此外,与客户端设备110的显示器的一个或多个区域相关联的元数据可以包括触摸输入正指向什么文本(如果有的话)、用户是否选择了与转录一起显示的特定图形元素、用户是否选择了客户端设备110处的特定按钮(例如,硬件或软件按钮)等的指示。如本文所述(例如,参考图3、图4A和图4B),自动化助理115可以基于触摸输入和/或触摸输入所指向的客户端设备110的显示器的一个或多个区域来确定是将对应于口头话语的所识别的文本并入转录中还是使得助理命令被执行。
在附加的或替代的实现方式中,状态引擎152可以确定转录的状态和/或与转录相关联的软件应用195之一的状态。转录的状态可以包括,例如,与转录相关联的一个或多个字段是否被填充,所识别的文本是否可以被用来填充与转录相关联的一个或多个字段,转录是否完成,或者转录的稳定性度量(例如,基于在生成转录中使用的一个或多个语音假设的度量来指示转录有多稳定)。如本文中所描述的(例如,参考图5、图6A和图6B),自动化助理115可以基于转录的状态来确定是将对应于口头话语的所识别的文本并入转录中还是使得助理命令被执行。
在附加的或替代的实现方式中,基于音频的ML引擎153可以使用存储在ML模型数据库199中的一个或多个基于音频的ML模型来处理捕获口头话语的音频数据,以确定口头话语的一个或多个基于音频的特征。在一些实现方式中,用于处理捕获口头话语的音频数据的一个或多个基于音频的ML模型包括端点指示模型,所述端点指示模型被训练来检测口头话语中的一个或多个停顿。在这些实现方式中,一个或多个停顿可以被用作口头话语的一个或多个基于音频的特征。换句话说,一个或多个停顿,以及可选地一个或多个停顿出现在口头话语中的位置,可以指示口头话语中包括的一个或多个术语是旨在被并入转录中还是旨在使得助理命令被执行。在附加的或替代的实现方式中,用于处理捕获口头话语的音频数据的一个或多个基于音频的ML模型包括暖词模型(例如,音频关键词分类模型),所述暖词模型被训练来检测口头话语中的一个或多个特定的词语或短语(例如,暖词,诸如“send”、“set”、“change”以及在一些情况下可以是转录的一部分或者在其他情况下使得助理命令被执行的其他词语)。(一个或多个)暖词模型可以是(一个或多个)音频关键词分类模型,其被训练来检测捕获口头话语的音频数据中的一个或多个特定的词语或短语。例如,暖词模型可以被训练来检测口头话语中的特定的词语或短语,或者特定的词语或短语的子集,当被检测到时,这些特定的词语或短语或者特定的词语或短语的子集使得自动化助理115执行特定动作(并且可选地绕过ASR和NLU)。附加地或替代地,暖词模型可以是基于文本的分类模型,其利用来自本文中描述的其他ML模型的信号,这些ML模型处理对应于口头话语的音频数据以检测一个或多个特定的词语或短语。例如,暖词模型可以被训练来处理ASR输出、NLU输出、端点指示输出和/或来自本文中描述的其他ML模型的任何其他输出,以检测一个或多个特定的词语或短语。
在这些实现方式中,一个或多个特定的词语或短语可以被用作口头话语的一个或多个基于音频的特征。换句话说,一个或多个特定的词语或短语,以及可选地一个或多个特定的词语或短语在口头话语中出现的位置,可以指示口头话语中包括的一个或多个术语是旨在被并入转录中还是旨在使得助理命令被执行。如本文所述(例如,参考图7、图8A和图8B),自动化助理115可以基于口头话语的一个或多个基于音频的特征来确定是将对应于口头话语的所识别的文本并入转录中还是使得助理命令被执行。
在各种实现方式中,分类引擎154可以处理由模态引擎151、状态引擎152和/或基于音频的ML引擎153做出的确定,以确定是将对应于口头话语的所识别的文本并入转录中还是使得助理命令被执行。在一些实现方式中,分类引擎154可以利用一个或多个规则(例如,ML规则或启发式定义的规则)来处理这些确定中的一个或多个,以确定是将对应于口头话语的所识别的文本并入转录中还是使得助理命令被执行。在附加的或替代的实现方式中,分类引擎154可以使用存储在ML模型数据库199中的分类模型来处理这些确定中的一个或多个,以确定是将对应于口头话语的所识别的文本并入转录中还是使得助理命令被执行。
例如,参考图2,描绘了利用来自图1的示例环境的框图的各种组件的示例过程流。参考图2,假设捕获客户端设备110的用户的口头话语的音频数据201由客户端设备110的麦克风生成。自动化助理115可以使得ASR引擎120A1和/或120A2使用存储在ML模型数据库199中的ASR模型来处理音频数据,以生成ASR输出。例如,如图2所示,ASR输出可以包括所识别的文本220A。所识别的文本220A可以包括例如被预测为对应于在音频数据201中捕获的口头话语的一个或多个术语或文本段。此外,自动化助理115可以使得NLU引擎130A1和/或130A2使用存储在ML模型数据库199中的NLU模型来处理ASR输出(例如,所识别的文本220A)以生成NLU输出。例如,如图2所示,NLU输出可以包括带注释的所识别的文本230A。带注释的所识别的文本230A可以包括例如用各种注释被注释的所识别的文本220A的一个或多个术语或文本段。注释可以包括例如一个或多个术语或文本段的词性、与一个或多个术语或文本段相关联的实体、一个或多个术语或文本段被预测为对应于听写文本还是助理命令的指示、和/或其他注释。
然而,在各种实现方式中,对一个或多个术语或文本段是被预测为对应于听写文本还是助理命令的指示可能不足以确定是将对应于口头话语的所识别的文本220A并入转录中,还是使自动化助理115执行基于所识别的文本220A确定并响应于口头话语的助理命令。因此,自动化助理115可以附加地或替代地利用听写引擎150的各种引擎中的一个或多个来做出该确定。
例如,在一些实现方式中,并且假设在听写会话期间,触摸输入202被指向正经由一个或多个软件应用195在客户端设备110处显示的转录,则自动化助理115可以附加地或替代地使得模态引擎151处理触摸输入202以生成模态信息251A。模态信息251A可以包括客户端设备110的用户正在将触摸输入202指向在客户端设备110处显示的转录的指示,并且可以可选地包括触摸输入202所指向的转录的一个或多个区域的指示。在那些实现方式的一些版本中,模态引擎151可以向分类引擎154提供模态信息251A,并且分类引擎154可以至少部分地基于模态信息251A确定是将对应于口头话语的所识别的文本220A并入转录中(例如,使用渲染引擎112),还是使得自动化助理115执行基于所识别的文本220A确定的并且响应于口头话语的助理命令(例如,在框299)。换句话说,分类引擎154可以根据口头话语来解释如模态信息251A所指示的触摸输入202,以确定是将所识别的文本202A并入经由一个或多个软件应用195在客户端设备110处显示的转录中,还是使得助理命令被执行(例如,如参考图3、图4A和图4B所描述的)。
作为另一示例,在附加或替代的实现方式中,自动化助理115可以使状态引擎152处理转录212A(例如,在客户端设备110处显示的转录)以生成转录的状态252A。如上所述,转录的状态252A可以例如包括与转录212A相关联的一个或多个字段是否被填充,所识别的文本220A是否可以被用来填充与转录212A相关联的一个或多个字段,或者转录212A是否完成,和/或与转录212A相关联的其他状态信息。转录的状态252A可以使用一个或多个ML模型(例如,语言ML模型)或一个或多个规则(例如,ML规则或启发式定义的规则)来确定。在这些实现方式的一些版本中,状态引擎152可以向分类引擎154提供转录的状态252A,并且分类引擎154可以至少部分地基于转录的状态252A确定是将对应于口头话语的所识别的文本220A并入转录212A中(例如,使用渲染引擎112)还是使得自动化助理115执行基于所识别的文本220A确定的并且响应于口头话语的助理命令(例如,在框299)。换句话说,分类引擎154可以附加地或替代地根据口头话语来解释由转录的状态252A所指示的转录212A,以确定是经由一个或多个软件应用195将所识别的文本202A并入在客户端设备110处显示的转录中,还是使得助理命令被执行(例如,如参考图5、图6A和图6B所描述的)。
作为又一示例,在附加或替代的实现方式中,自动化助理115可以使基于音频的ML引擎153处理音频数据201(以及可选地,如图2所示的注释的所识别的文本230A)以生成音频数据201的一个或多个基于音频的特征253A。如上所述,基于音频的ML引擎153可以使用存储在ML模型数据库199中的各种基于音频的ML模型来处理音频数据201(以及可选地处理带注释的所识别的文本230A),所述基于音频的ML模型诸如是被训练来检测由音频数据201捕获的口头话语中的停顿的端点指示模型、被训练来检测由音频数据201捕获的口头话语中的一个或多个特定的词语或短语的暖词模型、和/或其他基于音频的ML模型。音频数据201的一个或多个基于音频的特征253A可以包括例如跨一个或多个这些基于音频的ML模型生成的预测输出的指示。例如,一个或多个基于音频的特征253A可以包括使用端点指示模型生成的包括在口头话语中的一个或多个停顿的指示以及可选的一个或多个停顿在口头话语中的位置(例如,在口头话语的开始、在口头话语的中间、在口头话语的结尾等),使用暖词模型生成的在口头话语中是否存在一个或多个特定的词语或短语(例如,暖词)的指示以及可选的一个或多个特定的词语或短语在口头话语中的位置(例如,在口头话语的开始、在口头话语的中间、在口头话语的结尾等),和/或音频数据的其他基于音频的特征。在这些实现方式的一些版本中,基于音频的ML引擎153可以向分类引擎154提供一个或多个基于音频的特征253A,并且分类引擎154可以至少部分地基于一个或多个基于音频的特征253A确定是将对应于口头话语的所识别的文本220A并入转录212A中(例如,使用渲染引擎112)还是使自动化助理115执行基于所识别的文本220A确定的并且响应于口头话语的助理命令(例如,在框299)。换句话说,分类引擎154可以根据转录来解释口头话语的一个或多个基于音频的特征253A,以确定是经由一个或多个软件应用195将所识别的文本202A并入在客户端设备110处显示的转录中,还是使得助理命令被执行(例如,如参考图7、图8A和图8B所描述的)。
值得注意的是,尽管分类引擎154在本文中被描述为基于模态信息251A、转录的状态252A或者一个或多个基于音频的特征来确定是经由一个或多个软件应用195将所识别的文本202A并入在客户端设备110处显示的转录中,或者使得助理命令被执行,但是应当理解,这是为了示例的目的,而不意味着是限制性的。例如,分类引擎154可以在做出该确定时基于模态信息251A、转录的状态252A和一个或多个基于音频的特征253A的任何组合来做出该确定。例如,分类引擎154可以使用一个或多个规则来处理模态信息251A、转录的状态252A和一个或多个基于音频的特征253A中的一个或多个以做出该确定,诸如如果这些信号中的大多数指示自动化助理应该执行与转录相关联的并且基于所识别的文本220A的助理命令,则确定执行助理命令。此外,例如,分类引擎154可以使用分类ML模型来处理模态信息251A、转录的状态252A和一个或多个基于音频的特征253A中的一个或多个以做出该确定,诸如处理这些信号中的一个或多个的指示以确定自动化助理115是否应该执行与转录相关联并且基于所识别的文本220A的助理命令。
在各种实现方式中,自动化助理115可以确定转录完成。自动化助理115可以基于例如指示转录完成的转录的状态252A来确定转录完成。在那些实现方式的一些版本中,自动化助理115可以自动启动转录的交互式编辑模式。在那些实现方式的其他版本中,自动化助理115可以使得向客户端设备110的用户视觉地和/或可听地呈现提示,该提示提示用户启动交互式编辑模式,并且自动化助理115可以在客户端设备110的用户响应于该提示提供另外的用户输入时启动交互式编辑模式。在那些实现方式的其他版本中,自动化助理115可以响应于从客户端设备110的用户接收到请求自动化助理115启动交互式编辑模式的口头话语来启动转录的交互式编辑模式。在那些实现方式的其他版本中,自动化助理115可以响应于从客户端设备110的用户接收到触摸输入来启动转录的交互式编辑模式,所述触摸输入指向图形可选元素或按钮(例如,硬件或软件),并且当被选择时,使得自动化助理115启动交互式编辑模式。在那些实现方式的其他版本中,自动化助理115可以响应于从客户端设备110的用户接收到特定手势(例如,双击转录、跟踪特定绘画、特定手部运动等)来启动转录的交互式编辑模式,当接收到所述手势时,所述手势使自动化助理115启动交互式编辑模式。
在交互式编辑模式下,从客户端设备110的用户接收的口头话语可被用来导览转录和/或编辑转录。例如,假设转录包括四个段落。自动化助理115在启动交互式编辑模式后,可最初突出显示转录的第一段(或提供某一其他图形指示来指示自动化助理115正集中于转录的第一段上进行编辑)。客户端设备110的用户可以提供重复第一段的特定部分以及他们希望如何编辑第一段的特定部分的口头话语。例如,假设第一段是三个句子,第二句包括词语“great”的一个实例。在这个示例中,用户可以简单地提供“bold‘great’in thesecond sentence”(在第二句中加粗‘great’)的口头话语,以使“great”的实例被加粗。假设用户对第一段没有其他编辑,则用户可提供“next”(下一个)的另外的话语,并且自动化助理随后可突出显示第一段之后的转录的第二段(或提供某一其他图形指示来指示自动化助理115正集中于转录的第二段上的编辑)。如果用户希望返回编辑第一段,用户可以提供“return to the first paragraph”(返回到第一段)的口头话语。虽然上面的示例是关于段落描述的,但是应该理解的是,这是为了举例,而不是为了限制。例如,本文中所描述的技术可用于导览和编辑要点(bullet point)列表、编号列表、具有行和/或列的电子表格或表格等。在一些实现方式中,自动化助理115可以最初突出显示转录中被预测为包括拼写或语法错误的部分,以帮助用户高效地编辑转录。
值得注意的是,在交互式编辑模式下,可以假定口头话语对应于助理命令。然而,这些口头话语中的一些可能使得文本被添加、编辑或从转录中移除。继续上面的示例,当转录的第一段被突出显示用于编辑时,用户可以提供“add a sentence that says‘I lovethe enthusiasm’to the end”(在结尾添加‘我喜欢激情’这句话)的口头话语。在这个示例中,句子“I love the enthusiasm”(我喜欢激情)可以被合并作为第一段的最后一句,因为第一段是正被编辑的突出显示的段落。然而,无论转录的哪一部分正被突出显示以供编辑,都可以使用一些命令。例如,并且假设转录对应于电子邮件,用户可以提供“insert mysignature block”(***我的签名栏)的口头话语,并且用户的签名栏可以被附加到电子邮件的末尾。此外,在交互式编辑模式下,其他用户输入可以被假定为对应于助理命令(例如,触摸输入和/或用户提供的手势)。继续以上示例,当转录的第一段被突出显示以供编辑时,用户可以双击一个或多个文本段。在这个示例中,可以执行与转录相关联的助理命令,诸如使得一个或多个文本段被加粗、加下划线、斜体等。尽管这里描述了特定的助理命令,但是应该理解,这是为了示例的目的,并不意味着限制。相反,用户可用的助理命令可能取决于与转录相关联的软件应用。
通过使用本文中描述的技术,可以实施一个或多个技术优势。作为一个非限制性示例,本文中描述的技术使得自动化助理能够区分旨在被并入转录中的口头话语(或其部分)和旨在使助理命令被执行的口头话语(或其部分)。结果,使用本文中描述的技术生成的转录更加准确,并且可以引起转录的更少的手动编辑,从而减少在客户端设备处接收的用户输入的数量,并且节省客户端设备的计算资源。此外,可以通过更准确地标识口头话语(或其部分)中的助理命令并对其采取行动来减少过早地通过一个或多个网络传输的转录(例如,电子邮件、文本消息等)的数量,从而减少一个或多个网络上的网络资源消耗。此外,本文中描述的技术使得自动化助理能够在生成转录时接收多模态输入,从而使得听写会话以更快和更高效的方式结束,并且节省客户端设备的计算资源并减少客户端设备的电池消耗。
现在转向图3,示出了示出基于用户的多模态输入来确定是将所识别的文本并入转录中还是使得与转录相关联并且基于所识别的文本的助理命令被执行的示例方法300的流程图。为了方便起见,参考执行操作的***来描述方法300的操作。方法300的该***包括一个或多个处理器、存储器和/或计算设备的其他组件(例如,图1、图4A、图4B、图6A、图6B、图8A和图8B的客户端设备110,图9的计算设备910,一个或多个服务器和/或其他计算设备)。此外,尽管方法300的操作以特定顺序示出,但这并不意味着是限制性的。一个或多个操作可以被重新排序、省略和/或添加。
在框352,***经由用户的客户端设备的一个或多个麦克风接收捕获用户的口头话语的音频数据,所述音频数据是在正经由客户端设备处可访问的软件应用在客户端设备处显示转录时接收的。口头话语可以作为用户和至少部分地在客户端设备处实施的自动化助理之间的听写会话的一部分来接收。此外,口头话语可以启动听写会话(例如,“Heyassistant,send a text to Alex“Did you send it to Julia?”(嘿助理,给Alex发个文本“你给Julia发送它了吗?”))或者可以是正在进行的听写会话的一部分。
在框354,***使用自动语音识别(ASR)模型处理音频数据,以生成对应于口头话语的所识别的文本。在一些实现方式中,***可以仅响应于通过以下情况确定已经调用了自动化助理来使用ASR模型处理音频数据:检测到调用自动化助理的口头话语或先前口头话语中的一个或多个特定的词语或短语(例如,热词,诸如“Assistant”(助理)、“HeyAssistant”(嘿助理)以及其他可以调用自动化助理的词语),致动调用自动化助理的硬件或软件按钮,检测到视觉数据中调用自动化助理的一个或多个手势(例如,指向客户端设备并由客户端设备的视觉组件捕获的手部运动、嘴唇运动和/或眼睛凝视),和/或用于调用自动化助理的任何其他手段。在这些实现方式的一些版本中,在听写会话的剩余部分期间,可能不需要重新调用自动化助理。在附加的或替代的实现方式中,可以不需要调用自动化助理来启动听写会话或不需要在听写会话期间调用自动化助理(并且可选地基于客户端设备的用户同意自动化助理处理在客户端设备处检测到的口头话语)。在一些实现方式中,所述***可以附加地或替代地生成其他ASR输出(例如,如上文关于图1的ASR引擎120A1和/或120A2所描述的)。
在框356,***使用自然语言理解(NLU)模型来处理对应于口头话语的所识别的文本,以生成带注释的所识别的文本。带注释的所识别的文本可以包括例如用各种注释被注释的所识别的文本的一个或多个术语或文本段。注释可以包括例如一个或多个术语或文本段的词性、与一个或多个术语或文本段相关联的实体、一个或多个术语或文本段是否被预测为对应于听写文本或助理命令的指示、和/或其他注释。在一些实现方式中,所述***可以附加地或替代地生成其他NLU输出(例如,如上关于图1的NLU引擎130A1和/或130A2所述)。
在框358,当在框352接收到对应于口头话语的音频数据时,***确定在客户端设备处是否接收到指向转录的同时触摸输入。可以通过触摸屏、触笔、鼠标和/或指示器等在客户端设备的显示器上接收触摸输入。如果在接收口头话语的同时或者在口头话语的阈值持续时间内检测到触摸输入,则可以认为触摸输入与口头话语是同时的。此外,触摸输入可以指向转录的一个或多个区域。例如,转录的显示的一个或多个区域可以包括转录中包括的由用户以图形方式划分的一个或多个文本段(例如,突出显示、加下划线或以其他方式以图形方式划分)、与转录相关联的一个或多个字段(例如,“发给”字段、“发自”字段、“主题”字段、“标题”字段、转录的“正文”等),或转录的其他区域。如果在框358的迭代中,***确定在客户端设备处没有接收到同时触摸输入,则***前进到框364。下面描述框364。如果在框358的迭代中,***确定在客户端设备处接收到同时触摸输入,则***前进到框360。
在框360,***确定是将对应于口头话语的所识别的文本并入转录中,还是执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令。所述***可以基于触摸输入和口头话语来确定是将所识别的文本并入转录中还是使得助理命令被执行。如果在框360的迭代中,***确定执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令,则***前进到框362。在框362,***使得自动化助理执行与转录相关联的并且基于对应于口头话语的所识别的文本的助理命令。例如,假设转录是电子邮件,假设在听写会话期间接收的口头话语对应于“send it to Scott H”(把邮件发送给Scott H),并且假设用户已经将触摸输入指向与电子邮件相关联的“发给”字段。在该示例中,***可以确定用户提供的口头话语旨在作为添加电子邮件的收件人“Scott H”的助理命令。因此,***可以前进到框362,并且使得与收件人“Scott H”相关联的电子邮件地址被添加到电子邮件的“发给”字段。
如果在框360的迭代中,***确定将对应于口头话语的所识别的文本并入转录中,则***前进到框364。在框364,***自动将对应于口头话语的所识别的文本并入转录中。例如,再次假设转录是电子邮件,并且假设在听写会话期间接收的口头话语对应于“send itto Scott H”。然而,在这个示例中,假设没有触摸输入指向电子邮件。与上面的示例相反,如果触摸输入没有指向与电子邮件相关联的“发给”字段,则“send it to Scott H”可以作为转录的一部分被并入电子邮件的正文中。
现在转向图4A和图4B,描绘了利用图3的方法300来确定是将所识别的文本并入转录中还是使得助理命令被执行的各种非限制性示例。自动化助理可以至少部分地在客户端设备110处实施(例如,参考图1描述的自动化助理115)。自动化助理可以利用听写***(例如,关于图1描述的听写***160)基于用户的多模态输入和口头话语(例如,如关于图3的方法300所描述的)来确定是将所识别的文本并入转录中,还是基于所识别的文本来执行助理命令。
图4A和图4B中描绘的客户端设备110可以包括各种用户界面组件,包括例如用于基于口头话语和/或其他可听输入生成音频数据的麦克风、用于可听地渲染合成语音和/或其他可听输出的扬声器、以及用于接收触摸输入和/或视觉地渲染转录和/或其他视觉输出的显示器180。此外,客户端设备110的显示器180包括各种***界面元素181、182和183(例如,硬件和/或软件界面元素),客户端设备110的用户可以与这些***界面元素进行交互,以使客户端设备110执行一个或多个动作。客户端设备110的显示器180使得用户能够通过触摸输入(例如,通过将用户输入指向显示器180或其一些部分(例如,指向文本输入框184、键盘186或显示器180的其他部分))和/或通过口头输入(例如,通过选择麦克风界面元素185-或仅通过说话而不必选择麦克风界面元素185(即,自动化助理可在客户端设备10处监视一个或多个术语或短语、手势、凝视、嘴部运动、嘴唇运动和/或激活口头输入的其他条件)与在显示器180上渲染的内容交互。
具体参考图4A,假设客户端设备110的用户正在利用在客户端设备110处可访问的电子邮件应用480来起草电子邮件。在这个示例中,电子邮件可以对应于转录,并且电子邮件可以包括正文452A和各种字段,诸如填充有收件人电子邮件“[email protected]”的“发给”字段481、未填充的“抄送”字段482、以及填充有主题“Marketing Material”(营销材料)的“主题”字段483。进一步假设在自动化助理起草电子邮件的听写会话期间接收到任何另外的口头或文本输入之前,电子邮件的正文452A已经包括“The marketing materiallooks great,but please…”(营销材料看起来很棒,但是请……)的文本。此外,假设客户端设备110的用户提供了“make it bold”(把它加粗)的口头话语454A(并且可选地响应于对麦克风界面元素185的选择或调用自动化助理的任何其他手段)。值得注意的是,在图4A的示例中,没有客户端设备110的用户的触摸输入被指向电子邮件的转录。例如,没有客户端设备110的用户的任何触摸输入被指向电子邮件的转录的正文452A或与转录相关联的任何字段481、482或483的指示。因此,在这个示例中,自动化助理可确定对应于“make itbold”的口头话语454A的所识别的文本应被并入转录中,如在电子邮件的正文452A中的括号中偏移的“make it bold”所指示的。
相反,具体参照图4B,再次假设客户端设备110的用户正在利用在客户端设备110处可访问的电子邮件应用480来起草电子邮件,如以上参照图4A所述。进一步假设客户端设备110的用户提供了“make it bold”的口头话语454B(并且可选地响应于对麦克风界面元素185的选择或调用自动化助理的任何其他手段)。然而,在图4B的示例中,客户端设备110的用户的触摸输入指向电子邮件的转录(例如,如用手401在电子邮件的正文454B中以图形方式划分文本段“great”所指示的)。例如,当用户提供口头话语454B时,客户端设备110的用户的触摸输入正在突出显示电子邮件的正文452B中的文本段“great”。因此,在这个示例中,自动化助理可以确定应当执行与转录相关联的并且基于与对应于“make it bold”的口头话语454B的所识别的文本来确定的助理命令。结果,突出显示的文本段“great”可以被加粗,如图4B中转录的正文所示。
值得注意的是,图4A的口头话语454A和图4B的口头话语454B都对应于同一话语——“make it bold”。然而,在这些示例中,自动化助理基于用户在听写会话期间的多模态输入,针对是将所识别的文本并入电子邮件中(例如,如参考图4A所描述的)还是执行与转录相关联的助理命令(例如,如参考图4B所描述的)做出不同的确定。尽管图4A和4B的示例是相对于关于电子邮件应用480发生的听写会话,并且相对于与正在执行的转录相关联的特定助理命令来描述的,但是应当理解,这是为了示例的目的,而不意味着限制。
例如,听写会话可以相对于在客户端设备110处可访问的并且可以利用听写的任何软件应用而发生。例如,软件应用可以附加地或替代地是文本消息接发应用、便签应用、日历应用、自动化助理应用,其可以基于触摸和/或口头输入为在客户端设备110处可访问的其他软件应用生成文本,并且将生成的文本传输到在客户端设备110处可访问的那些其他软件应用和/或在客户端设备110处可访问的任何其他软件应用。值得注意的是,与这些各种相关联的转录可以与不同的字段相关联。例如,如图4A和图4B所示,图4A和图4B所示的电子邮件应用包括“发给”字段481、“抄送”字段482和“主题”字段483。此外,例如,文本消息接发应用可以包括“发给”或“收件人”字段,但是没有“抄送”字段或“主题”字段,便笺应用可以包括“标题”字段或“日期”字段,但是没有图4A和图4B中描绘的字段。因此,应当理解,与给定软件应用相关联的字段可以基于正在使用的给定软件应用。结果,与转录相关联的助理命令也可以基于字段和所选择的文本段从一个软件应用到下一个软件应用变化。
例如,在图4A和图4B的示例中,用户可以附加地或替代地提供包括其他助理命令的口头话语,以各种方式修改“great”的所选择的文本段,诸如通过提供“underline it”(给它加下划线)、“italicize it”(把它变成斜体)、“highlight it”(把它突出显示)、“capitalize it”(把它变成大写)、“change color of text to red”(把文本颜色改成红色)的口头话语,和/或包括以其他方式操纵“great”的所选择的文本段的外观的助理命令的任何其他口头话语。此外,例如,用户可以附加地或替代地提供包括以各种方式加标点、格式化或编辑转录的其他助理命令的口头话语,诸如通过选择转录的区域(例如,与转录相关联的字段或转录的正文)并提供“add period”(添加句号)、“add comma”(添加逗号)、“insert line”(***行)、“new paragraph”(新段落)、“new bullet point”(新要点)的口头话语,和/或包括以其他方式加标点、格式化或编辑转录的助理命令的任何其他口头话语。此外,例如,用户可以附加地或替代地提供包括以各种方式填充或重新填充与转录相关联的字段的其他助理命令的口头话语,诸如通过选择与转录相关联的字段,并提供“sendto[recipient]”(发送给[收件人])、“cc[recipient]”(抄送[收件人])、“set subject to[subject]”(将主题设置为[主题])、“change subject to[subject]”(将主题改为[主题])、“date[date]”(日期[日期])、“send on[date and/or time]”(在[日期和/或时间]发送)、“set title to[title]”(将标题设置为[标题])的口头话语,和/或包括以其他方式填充或重新填充与转录相关联的任何字段的助理命令的任何其他口头话语。
在一些实现方式中,自动化助理可以基于与转录相关联的字段来偏置是将所识别的文本并入转录中还是使得助理命令被执行的确定。例如,如果在图4B的示例中由用户提供的口头话语454B是“change the date to May 1,2021”(将日期改为2021年5月1日),则自动化助理将可能将相应的所识别的文本并入转录的正文中,因为在图4B的示例中没有与电子邮件应用480相关联的“日期”字段(并且不管用户是否已经提供了指向正文452B的字段之一或一个或多个文本段的同时触摸输入)。然而,如果在客户端设备110的用户听写日历条目的同时提供了相同的口头话语,则自动化助理将可能使得将与日历条目相关联的日期设置为“May 1,2021”(2021年5月1日)的助理命令被执行。值得注意的是,无论客户端设备110的用户是否正在提供多模态输入(例如,诸如关于图6A、图6B、图8A和图8B描述的示例),都可以利用该偏置。
现在转向图5,描绘了示出基于转录的状态来确定是将所识别的文本并入转录中还是使得与转录相关联并且基于所识别的文本的助理命令被执行的示例方法500的流程图。为了方便起见,参考执行操作的***来描述方法500的操作。方法500的该***包括一个或多个处理器、存储器和/或计算设备的其他组件(例如,图1、图4A、图4B、图6A、图6B、图8A和图8B的客户端设备110,图9的计算设备910,一个或多个服务器和/或其他计算设备)。此外,尽管方法500的操作以特定顺序示出,但这并不意味着是限制性的。一个或多个操作可以被重新排序、省略和/或添加。
在框552,***经由用户的客户端设备的一个或多个麦克风接收捕获用户的口头话语的音频数据,所述音频数据是在正经由客户端设备处可访问的软件应用在客户端设备处显示转录时接收的。在框554,***使用自动语音识别(ASR)模型处理音频数据,以生成对应于口头话语的所识别的文本。在框556,***使用自然语言理解(NLU)模型来处理对应于口头话语的所识别的文本,以生成带注释的所识别的文本。所述***可以以与上面分别关于图3的框352、354和356的操作描述的相同或相似的方式执行图5的框552、554和556的操作。
在框558,***确定经由客户端设备处的软件应用显示的转录的状态。转录的状态可以包括例如与转录相关联的一个或多个字段是否被填充,所识别的文本是否可以被用来填充与转录相关联的一个或多个字段,转录是完成还是未完成(例如,与转录相关联的一个或多个字段是否被填充,转录的正文是否完成,等等)、转录的稳定性度量(例如,基于用于生成转录的一个或多个语音假设的度量来指示转录有多稳定),和/或与转录相关联的其他状态信息。在一些实现方式中,可以基于分析转录来确定转录的状态。在这些实现方式的一些版本中,在分析转录时,***可以使用被训练来确定转录的状态的一个或多个ML模型(例如,一个或多个语言模型)来处理转录。在那些实现方式的附加或替代版本中,在分析转录时,***可以使用启发来处理转录以确定转录的状态。
在框560,***确定是将对应于口头话语的所识别的文本并入转录中,还是执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令。所述***可以基于转录的状态来确定是将所识别的文本并入转录中还是使助理命令被执行。如果在框560的迭代中,***确定执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令,则***前进到框562。在框562,***使得自动化助理执行与转录相关联的并且基于对应于口头话语的所识别的文本的助理命令。例如,假设转录是电子邮件,假设在听写会话期间接收的口头话语对应于“send it to Scott H”,并且假设转录的状态指示电子邮件的正文是完整的,但是电子邮件的“发给”字段是空的。在这个示例中,***可以确定用户提供的口头话语旨在作为添加电子邮件的收件人“Scott H”的助理命令。因此,***可以前进到框562,并且使得与收件人“Scott H”相关联的电子邮件地址被添加到电子邮件的“发给”字段。
如果在框560的迭代中,***确定将对应于口头话语的所识别的文本并入转录中,则***前进到框564。在框564,***自动将对应于口头话语的所识别的文本并入转录中。例如,再次假设转录是电子邮件,并且假设在听写会话期间接收的口头话语对应于“send itto Scott H”。然而,在这个示例中,假设转录的状态指示电子邮件的正文不完整(并且可选地不管“发给”字段是被填充还是未填充)。与上面的示例相反,“send it to Scott H”可以作为转录的一部分并入电子邮件的正文中。
现在转向图6A和图6B,描绘了利用图5的方法500来确定是将所识别的文本并入转录中还是使得助理命令被执行的各种非限制性示例。自动化助理可以至少部分地在客户端设备110(例如,关于图1描述的自动化助理115)处实施。自动化助理可以利用听写***(例如,关于图1描述的听写***160)基于转录的状态和口头话语来确定是将所识别的文本并入转录中,还是使得基于所识别的文本执行助理命令(例如,如关于图5的方法500描述的)。图6A和图6B中描绘的客户端设备110可以与以上参照图4A和图4B描述的客户端设备110相同或基本相似。
具体参考图6A,假设客户端设备110的用户正在利用在客户端设备110处可访问的电子邮件应用680来起草电子邮件。在这个示例中,电子邮件可以对应于转录,并且电子邮件可以包括正文652A和各种字段,诸如填充有收件人电子邮件“[email protected]”的“发给”字段681、未填充的“抄送”字段682、以及填充有主题“Marketing Material”的“主题”字段683。进一步假设在自动化助理起草电子邮件的听写会话期间接收到任何另外的口头或文本输入之前,电子邮件的正文452A已经包括“The marketing material looksgreat,but please…”的文本。此外,假设客户端设备110的用户提供了“send it to Tom”的口头话语654A(并且可选地响应于对麦克风界面元素185的选择或调用自动化助理的任何其他手段)。值得注意的是,在图6A的示例中,没有客户端设备110的用户的触摸输入被指向电子邮件的转录。例如,没有客户端设备110的用户的任何触摸输入正被指向电子邮件的转录的正文652A或与转录相关联的任何字段681、682或683的指示。此外,在图6A的示例中,“发给”字段681已经填充有收件人电子邮件“[email protected]”。结果,由自动化助理确定的转录的状态可以指示电子邮件与“发给”字段681相关联,但是“发给”字段681已经被填充。因此,在这个示例中,自动化助理可确定对应于口头话语654A“send it to Tom”的所识别的文本应被并入转录中,如在电子邮件的正文652A中的括号中偏移的“send it toTom”所指示的。
相反,具体参照图6B,再次假设客户端设备110的用户正在利用在客户端设备110处可访问的电子邮件应用680来起草电子邮件,如以上参照图6A所述。进一步假设客户端设备110的用户提供了“send it to Tom”的口头话语454B(并且可选地响应于对麦克风界面元素185的选择或调用自动化助理的任何其他手段)。然而,在图6B的示例中,假设当提供口头话语654B时,“发给”字段681先前没有被填充“[email protected]”。结果,由自动化助理确定的转录的状态可以指示电子邮件与“发给”字段681相关联,并且“发给”字段681未被填充。因此,在此示例中,自动化助理可确定对应于“send it to Tom”的口头话语654B的所识别的文本应使得助理命令被执行,诸如添加联系人条目“Tom”的收件人电子邮件,如在图6A的示例中由在与电子邮件相关联的“发给”字段681中的括号中偏移的电子邮件地址“[email protected]”所指示的。
值得注意的是,图6A的口头话语654A和图6B的口头话语654B都对应于同一个话语——“send it to Tom”。然而,在这些示例中,自动化助理基于转录的状态来作出是将所识别的文本并入电子邮件中(例如,如关于图6A所描述的)还是执行与转录相关联的助理命令(例如,如关于图6B所描述的)的不同确定。尽管图6A和图6B的示例是关于仅基于转录的状态来确定是否将收件人添加到电子邮件地址来描述的,但是应当理解,这是为了示例的目的,而不意味着是限制性的。例如,假设转录的状态指示当接收到口头话语652A时,电子邮件的“发给”字段681已经被填充。然而,进一步假设客户端设备110的用户正在将同时触摸输入指向电子邮件的“发给”字段681。在这个示例中,由电子邮件地址“[email protected]”指示的联系人条目“Tom”的收件人电子邮件可被添加到该电子邮件,尽管转录的状态指示“发给”字段681已经被填充。因此,在做出是将所识别的文本并入转录中还是使得与转录相关联的并且基于所识别的文本的助理命令被执行的确定时,自动化助理可以考虑附加的或替代的信号。
此外,尽管图6A和图6B是关于基于与电子邮件相关联的字段是否被填充而确定的转录的状态来描述的,但是应当理解,这是为了示例的目的,并不意味着是限制性的。例如,口头话语654A和654B“send it to Tom”也可以与使得电子邮件从客户端设备110被传输到与“Tom”相关联的另外的客户端设备的助理命令相关联。然而,在图6A和图6B的示例中,转录的状态也可以指示转录未完成。自动化助理可基于使用可用于确定转录的状态的一个或多个ML模型、规则或启发来处理转录(例如,正文652A和/或652B、字段681、682和/或683、和/或与其相关联的任何文本段)来确定转录未完成。在处理图6A和图6B的正文652A和/或652B和/或字段681、682和/或683时,自动化助理可以基于在接收口头话语654A和/或654B之前正文652A和/或652B的语法问题来确定转录不完整,即正文652A和/或652B是不完整的句子。因此,自动化助理可以避免响应于接收到口头话语654A和/或654B使电子邮件被传输到与收件人“Tom”相关联的另外的客户端设备。
现在转到图7,示出了示出示例方法700的流程图,该方法基于口头话语的至少一个或多个基于音频的特征来确定是将所识别的文本并入转录中还是使得与转录相关联并且基于所识别的文本的助理命令被执行。为了方便起见,参考执行操作的***来描述方法700的操作。方法700的这个***包括一个或多个处理器、存储器和/或计算设备的其他组件(例如,图1、图4A、图4B、图6A、图6B、图8A和图8B的客户端设备110,图9的计算设备910,一个或多个服务器和/或其他计算设备)。此外,尽管方法700的操作以特定顺序示出,但这并不意味着是限制性的。一个或多个操作可以被重新排序、省略和/或添加。
在框752,***经由用户的客户端设备的一个或多个麦克风接收捕获用户的口头话语的音频数据,所述音频数据是在正经由客户端设备处可访问的软件应用在客户端设备处显示转录时接收的。在框754,***使用自动语音识别(ASR)模型处理音频数据,以生成对应于口头话语的所识别的文本。在框756,***使用自然语言理解(NLU)模型来处理对应于口头话语的所识别的文本,以生成带注释的所识别的文本。所述***可以以与上文分别关于图3的框352、354和356的操作描述的相同或相似的方式来执行图7的框752、754和756的操作。
在框758,***使用一个或多个基于音频的ML模型来处理捕获口头话语的音频数据,以确定口头话语的一个或多个基于音频的特征。一个或多个基于音频的ML模型可以包括例如被训练来检测由音频数据捕获的口头话语中的停顿的端点指示模型、被训练来检测由音频数据捕获的口头话语中的一个或多个特定的词语或短语的暖词模型、和/或其他基于音频的ML模型。此外,音频数据的一个或多个基于音频的特征可以包括,例如,使用端点指示模型生成的包括在口头话语中的一个或多个停顿的指示以及可选的包括一个或多个停顿在口头话语中的位置(例如,在口头话语的开始、在口头话语的中间、在口头话语的结尾等),使用暖词模型生成的在口头话语中是否存在一个或多个特定的词语或短语(例如,暖词)的指示以及可选的一个或多个特定的词语或短语在口头话语中的位置(例如,在口头话语的开始、在口头话语的中间、在口头话语的结尾等),和/或音频数据的其他基于音频的特征。
在框760,***确定是将对应于口头话语的所识别的文本并入转录中,还是执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令。所述***可以基于一个或多个基于音频的特征或带注释的所识别的文本以及口头话语来确定是将所识别的文本并入转录中还是使得助理命令被执行。如果在框760的迭代中,***确定执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令,则***前进到框762。在框762,***使得自动化助理执行与转录相关联的并且基于对应于口头话语的所识别的文本的助理命令。例如,假设转录是文本消息,假设在听写会话期间接收的口头话语对应于“Hey Alex,how are you?Send it”,并假设基于音频的特征指示用户在“you”之后停顿和/或“send”是使得自动化助理发送文本消息的暖词。在这个示例中,***可以确定用户提供的口头话语旨在作为发送文本消息“Hey Alex,how are you?”(嘿Alex,你好吗?)给文本消息的联系人“Alex”的助理命令。因此,***可以前进到框762,并使得文本消息被发送给联系人。
如果在框760的迭代中,***确定将对应于口头话语的所识别的文本并入转录中,则***前进到框764。在框764,***自动将对应于口头话语的所识别的文本并入转录中。例如,再次假设转录是文本消息,并且假设在听写会话期间接收的口头话语对应于“HeyAlex,did you send it to Julia?”(嘿Alex,你把消息发送给Julia了吗?)。在这个示例中,假设基于音频的特征仍可指示“send”是使自动化助理发送文本消息的暖词。然而,进一步假设基于音频的特征指示用户没有停顿。与上面的示例相反,“Hey Alex,did you sendit to Julia?”可以并入文本消息中,但是文本消息可能不被发送。
现在转向图8A和图8B,描绘了利用图7的方法700来确定是将所识别的文本并入转录中还是使得助理命令被执行的各种非限制性示例。自动化助理可以至少部分地在客户端设备110(例如,关于图1描述的自动化助理115)处实施。自动化助理可以利用听写***(例如,关于图1描述的听写***160)基于一个或多个基于音频的特征或带注释的所识别的文本的以及口头话语来确定是将所识别的文本并入转录中,还是使得基于所识别的文本来执行助理命令(例如,如关于图7的方法700描述的)。图8A和图8B中描绘的客户端设备110可以与以上关于图4A和图4B描述的客户端设备110相同或基本相似。
具体参考图8A,假设客户端设备110的用户正在利用在客户端设备110处可访问的自动化助理应用880来起草文本消息。在这个示例中,假设客户端设备110的用户提供了口头话语852A“’Hey Alex,how are you?’Send it””(‘嘿Alex,你好吗?’发送消息)(并且可选地响应于麦克风界面元素185的选择或调用自动化助理的任何其他手段)。在这个示例中,转录可以对应于所识别的文本,所述文本对应于旨在给收件人“Alex”的口头话语852A的一部分(例如,“Hey Alex,how are you?”),并且助理命令可以对应于口头话语852A的另外的部分,所述另外的部分指示用户想要将消息发送给收件人“Alex”(例如,“Send it”)。然而,在这个示例中,自动化助理必须确定口头话语852A的哪些部分旨在包含口头话语,以及口头话语852A的哪些部分(如果有的话)旨在使得助理命令被执行。
在一些实现方式中,自动化助理可以附加地或替代地使用在客户端设备110处可访问的一个或多个基于音频的ML模型来处理对应于口头话语852A的音频数据,以确定是将“Send it”并入转录中,以包括在要发送给与“Alex”相关联的联系人条目的文本消息中,还是使文本消息(例如,“Hey Alex,how are you?”)发送到与“Alex”相关联的联系人条目。例如,自动化助理可以使用一个或多个端点指示模型来处理对应于口头话语852A的音频数据,以确定口头话语是否包括一个或多个停顿以及一个或多个停顿在口头话语中的位置。此外,例如,自动化助理可以使用一个或多个暖词模型来处理对应于口头话语852A的音频数据,以确定口头话语是否包括一个或多个特定的词语或短语(例如,暖词),以及一个或多个特定的词语或短语在口头话语中的位置。
例如,假设在提供口头话语852A时,假设用户在“you”之后和“send”之前停顿。在这个示例中,自动化助理可以基于使用端点指示模型处理音频数据来识别口头话语852A中的停顿以及停顿在口头话语852A中的位置。在这种情况下,自动化助理可以确定口头话语852A中旨在给收件人“Alex”的部分(例如,“Hey Alex,how are you?”)在“you”之后结束。附加地或替代地,在提供口头话语852A时,假设“send”对应于在口头话语852A中检测到的暖词,并且基于使用暖词模型处理音频数据,暖词的位置接近口头话语852A的末尾。因此,基于口头话语852A中的停顿和口头话语852A中的暖词(并且可选地,跟随在“send”的暖词之后的唯一词语是“it”(消息),其指的是使用自动化助理应用880起草的文本消息),自动化助理可以确定对应于口头话语852A的部分“Hey Alex,how are you?”的所识别的文本是旨在给收件人“Alex”的,并且确定对应于口头话语852A的部分“Send it”的所识别的文本旨在引起将口头话语的部分传输到与“Alex”相关联的另外的客户端设备的助理命令。在图8A的示例中,这通过使得提供来自自动化助理的合成语音854A“Okay,I sent the message‘Hey Alex,how are you?’to Alex”(好的,我给Alex发送了消息“Hey Alex,how areyou?”)以供经由客户端设备110呈现给用户(例如,可听地和/或视觉地)来指示。
相反,具体参照图8B,再次假设客户端设备110的用户正在利用在客户端设备110处可访问的自动化助理应用880来起草文本消息,如以上关于图8A所述。然而,在这个示例中,假设客户端设备110的用户提供了口头话语852B“Hey Alex,did you send it toJulia?”(并且可选地响应于对麦克风界面元素185的选择或调用自动化助理的任何其他手段)。在这个示例中,转录可以对应于与旨在给收件人“Alex”的口头话语852B相对应的所识别的文本(例如,“Hey Alex,did you send it to Julia?”),并且口头话语852B不包括助理命令。
在一些实现方式中,并且类似于以上关于图8A描述的示例,自动化助理可以使用在客户端设备110处可访问的一个或多个基于音频的ML模型来处理对应于口头话语852B的音频数据,以确定口头话语是否包括与转录相关联并且基于所识别的文本的助理命令。例如,自动化助理可以使用一个或多个端点指示模型来处理对应于口头话语852B的音频数据,以确定口头话语是否包括一个或多个停顿以及一个或多个停顿在口头话语中的位置。此外,例如,自动化助理可以使用一个或多个暖词模型来处理对应于口头话语852B的音频数据,以确定口头话语是否包括一个或多个特定的词语或短语(例如,暖词),以及一个或多个特定的词语或短语在口头话语中的位置。
例如,假设在提供口头话语852B时,假设用户在“you”之后和“send”之前停顿。在这个示例中,自动化助理可以基于使用端点指示模型处理音频数据来识别口头话语852B中的停顿以及停顿在口头话语852B中的位置。附加地或替代地,在提供口头话语852B时,假设“send”对应于在口头话语852B中检测到的暖词,并且基于使用暖词模型处理音频数据,暖词的位置在口头话语852B的中间。因此,尽管口头话语852A中有停顿,但自动化助理可以确定对应于整个口头话语852B“Hey Alex,did you send it to Julia?”的所识别的文本是旨在给收件人“Alex”,并且确定对应于口头话语852A的部分“send it”(发送它)的所识别的文本不是旨在使得将口头话语的部分传输到与“Alex”相关联的另外的客户端设备的助理命令。相反,自动化助理可以确定“send it”指代了Alex应该发送给“Julia”的其他东西。在图8A的示例中,这通过引起来自自动化助理的合成语音854B“Okay,I drafted themessage‘Hey Alex,did you send it to Julia?’for Alex.Do you want me to sendit?”(好的,我为Alex起草了消息“Hey Alex,did you send it to Julia?”。你想要我发送消息吗?)经由客户端设备110向用户呈现(例如,可听地和/或视觉地)来指示。
值得注意的是,图8A的口头话语852A和图8B的口头话语852B在话语中包括相同的部分——“send it”。然而,在这些示例中,自动化助理基于话语的基于音频的特征,针对是将所识别的文本并入电子邮件中(例如,如关于图8A所描述的)还是执行与转录相关联的助理命令(例如,如关于图8B所描述的)做出不同的确定。尽管图8A和图8B的示例是关于仅基于所述基于音频的特征来确定是否发送文本消息来描述的,但是应当理解,这是为了示例的目的,而不意味着是限制性的。例如,关于图8B,假设自动化助理基于口头话语852B的基于音频的特征确定“send it”对应于助理命令。然而,假设自动化助理附加地或替代地考虑转录的状态。在这个示例中,自动化助理可以确定要发送给收件人“Alex”的文本消息的转录对应于“Hey Alex,did you”(嘿Alex,你……”)而没有任何另外的文本。结果,自动化助理可以确定转录是不完整的(例如,如以上参考图6A和图6B所描述的),并确定对应于“sendit to Julia”(把它发送给Julia)的所识别的文本应被并入转录中。因此,在确定是将所识别的文本并入转录中还是使得与转录相关联的并且基于所识别的文本的助理命令被执行时,自动化助理可以考虑附加的或替代的信号。
此外,尽管关于特定的基于音频的ML模型和特定的基于音频的特征描述了图8A和图8B,但是应当理解,这是为了示例的目的,并不意味着是限制性的。例如,可以利用使用相应的基于音频的ML模型生成的附加或替代的基于音频的特征。例如,一个或多个基于音频的特征可以附加地或替代地包括客户端设备110的用户是否继续提供口头话语而不必显式地调用使用继续对话模型生成的自动化助理的指示,提供了使用话音标识模型生成的口头话语的客户端设备110的用户的身份的指示(例如,基于生成话音嵌入以与客户端设备110的用户和/或客户端设备110或另外的客户端设备的其他用户的已知话音嵌入进行比较),使用话音活动检测模型生成的客户端设备110的用户实际上正在说话的指示,和/或口头话语852A和/或852B的其他基于音频的特征。
此外,应当理解,本文描述的技术还可以利用各种技术来消除本文描述的实体指代的歧义。例如,在图8A和图8B的示例中,自动化助理可以基于处理口头话语852A和/或852B来确定文本消息的预期收件人是与联系人条目“Alex”相关联的实体。在这个示例中,自动化助理可访问在客户端设备110处可访问的客户端设备110的用户的联系人列表,以标识与联系人条目“Alex”相关联的一个或多个实体。如果只有单个实体与联系人条目“Alex”相关联,则自动化助理可以选择该实体作为文本消息的收件人。然而,如果存在与联系人条目“Alex”相关联的多个实体(例如,“Alex A”和“Alex B”),则自动化助理可以提示用户从与联系人条目“Alex”相关联的多个实体中进行选择以标识收件人。附加地或替代地,自动化助理可以自动选择与客户端设备110的用户最频繁交互的联系人条目“Alex”相关联的给定实体。
现在转到图9,描绘了可以可选地用于执行本文描述的技术的一个或多个方面的示例计算设备910的框图。在一些实现方式中,客户端设备110、听写***160和/或其他组件中的一个或多个可以包括示例计算设备910的一个或多个组件。
计算设备910通常包括至少一个处理器914,其经由总线子***912与多个***设备通信。这些***设备可以包括存储子***924,包括例如存储器子***925和文件存储子***926,用户界面输出设备920,用户界面输入设备922和网络接口子***916。输入和输出设备允许用户与计算设备910交互。网络接口子***916提供到外部网络的接口,并耦合到其他计算设备中的相应接口设备。
用户界面输入设备922可以包括键盘、诸如鼠标、轨迹球、触摸板或图形输入板的定点设备、扫描仪、结合到显示器中的触摸屏、诸如话音识别***的音频输入设备、麦克风和/或其他类型的输入设备。一般而言,术语“输入设备”的使用旨在包括将信息输入到计算设备910中或通信网络上的所有可能类型的设备和方式。
用户界面输出设备920可以包括显示子***、打印机、传真机或者诸如音频输出设备的非视觉显示器。显示子***可以包括阴极射线管(CRT)、诸如液晶显示器(LCD)的平板设备、投影设备或用于创建可视图像的某个其他机制。显示子***还可以例如经由音频输出设备提供非视觉显示。一般而言,术语“输出设备”的使用旨在包括从计算设备910向用户或另一机器或计算设备输出信息的所有可能类型的设备和方式。
存储子***924存储提供本文中描述的一些或所有模块的功能的程序和数据结构。例如,存储子***924可以包括执行本文中描述的方法的选定方面以及实施图1中描绘的各种组件的逻辑。
这些软件模块通常由处理器914单独执行或者与其他处理器结合执行。存储子***924中使用的存储器925可以包括多个存储器,包括用于在程序执行期间存储指令和数据的主随机存取存储器(RAM)930和存储固定指令的只读存储器(ROM)932。文件存储子***926可以为程序和数据文件提供持久存储,并且可以包括硬盘驱动器、软盘驱动器以及相关联的可移除介质、CD-ROM驱动器、光驱或可移除介质盒。实施某些实现方式的功能的模块可以由文件存储子***926存储在存储子***924中,或者存储在处理器914可访问的其他机器中。
总线子***912提供了一种机制,用于让计算设备910的各种组件和子***如预期的那样相互通信。尽管总线子***912被示意性地示为单条总线,但是总线子***的替代实现方式可以使用多条总线。
计算设备910可以是各种类型,包括工作站、服务器、计算集群、刀片服务器、服务器群或任何其他数据处理***或计算设备。由于计算机和网络的不断变化的性质,图9中描绘的计算设备910的描述仅旨在作为用于说明一些实现方式的具体示例。计算设备910的许多其他配置可能具有比图9中描绘的计算设备更多或更少的组件。
在本文中讨论的某些实现方式可以收集或使用关于用户的个人信息(例如,从其他电子通信中提取的用户数据、关于用户的社交网络的信息、用户的位置、用户的时间、用户的生物测定信息、以及用户的活动和人口统计信息、用户之间的关系等)的情况下,向用户提供一个或多个机会来控制是否收集信息、是否存储个人信息、是否使用个人信息以及如何收集、存储和使用关于用户的信息。也就是说,本文讨论的***和方法仅在接收到来自相关用户的收集、存储和/或使用用户个人信息的明确授权时才收集、存储和/或使用用户个人信息。
例如,向用户提供对程序或特征是否收集关于该特定用户或与该程序或特征相关的其他用户的用户信息的控制。向要收集其个人信息的每个用户呈现一个或多个选项,以允许控制与该用户相关的信息收集,提供关于是否收集信息以及要收集信息的哪些部分的许可或授权。例如,可以通过通信网络向用户提供一个或多个这样的控制选项。此外,在存储或使用某些数据之前,可能会以一种或多种方式对其进行处理,以便删除个人身份信息。作为一个示例,可以处理用户的身份,使得不能确定任何个人身份信息。作为另一个示例,用户的地理位置可以被概括为更大的区域,使得用户的特定位置不能被确定。
在一些实现方式中,提供了一种由一个或多个处理器实施的方法,所述方法包括:接收捕获客户端设备的用户的口头话语的音频数据,所述音频数据是由客户端设备的一个或多个麦克风生成的,并且所述音频数据是在用户的触摸输入被指向经由在客户端设备处可访问的软件应用在客户端设备处显示的转录时接收的;基于用户的触摸输入被指向转录和口头话语,确定:是将对应于口头话语的所识别的文本并入转录中,还是执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令;响应于确定将对应于口头话语的所识别的文本并入转录中:自动将对应于口头话语的所识别的文本并入转录中;并且响应于确定执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令:使得自动化助理执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令。
本文中公开的技术的这些和其他实现方式可以包括一个或多个以下特征。
在一些实现方式中,所述方法还可以包括使用自动语音识别(ASR)模型来处理捕获口头话语的音频数据,以生成对应于口头话语的所识别的文本。在这些实现方式的一些版本中,所述方法还可以包括使用自然语言理解(NLU)模型来处理对应于口头话语的所识别的文本,以生成带注释的所识别的文本。在那些实现方式的一些进一步的版本中,所述方法还可以包括确定与转录相关联的并且基于对应于口头话语的所识别的文本的助理命令。确定与转录相关联并且基于对应于口头话语的所识别的文本的助理命令可以基于带注释的所识别的文本。
在一些实现方式中,用户的触摸输入可以指向在客户端设备处显示的转录的一个或多个文本段。在那些实现方式的一些版本中,用户的触摸输入可以以图形方式划分在客户端设备处显示的转录的一个或多个文本段。在那些实现方式的一些进一步的版本中,确定是将对应于口头话语的所识别的文本并入转录中,还是执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令,可以包括基于用户的触摸输入以图形方式划分转录的一个或多个文本段来确定执行助理命令。
在一些实现方式中,用户的触摸输入可以指向在客户端设备处显示的转录的一个或多个字段。在那些实现方式的一些版本中,确定是将对应于口头话语的所识别的文本并入转录中,还是执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令,可以包括基于用户的触摸输入被指向转录的一个或多个字段来确定执行助理命令。
在一些实现方式中,自动将对应于口头话语的所识别的文本并入转录中可以包括使得所识别的文本作为转录的一部分经由在客户端设备处可访问的软件应用视觉地显示给用户。在那些实现方式的一些版本中,使得所识别的文本作为转录的一部分经由在客户端设备处可访问的软件应用视觉地显示给用户可以包括在另外的文本被并入转录中之后使得所识别的文本保持在转录中。
在一些实现方式中,提供了一种由一个或多个处理器实施的方法,所述方法包括接收捕获客户端设备的用户的口头话语的音频数据,所述音频数据是由客户端设备的一个或多个麦克风生成的,并且所述音频数据是在正经由在客户端设备处可访问的软件应用在客户端设备处显示转录时接收的;使用自动语音识别(ASR)模型处理捕获口头话语的音频数据,以生成对应于口头话语的所识别的文本;使用自然语言理解(NLU)模型处理对应于口头话语的所识别的文本,以生成带注释的所识别的文本;使用基于音频的机器学习(ML)模型来处理捕获口头话语的音频数据,以确定口头话语的一个或多个基于音频的特征;基于一个或多个带注释的所识别的文本或口头话语的一个或多个基于音频的特征,确定:是将对应于口头话语的所识别的文本并入转录中,还是执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令;响应于确定将对应于口头话语的所识别的文本并入转录中:自动将对应于口头话语的所识别的文本并入转录中;并且响应于确定执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令:使得自动化助理执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令。
本文中公开的技术的这些和其他实现方式可以包括一个或多个以下特征。
在一些实现方式中,所述方法还可以包括确定与转录相关联并且基于对应于口头话语的所识别的文本的助理命令。确定与转录相关联并且基于对应于口头话语的所识别的文本的助理命令可以基于带注释的所识别的文本。
在一些实现方式中,基于音频的ML模型可以是端点指示模型,其被训练来检测口头话语中的停顿,并且口头话语的一个或多个基于音频的特征可以对应于口头话语中的一个或多个停顿。在那些实现方式的一些版本中,确定是将对应于口头话语的所识别的文本并入转录中,还是执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令,可以包括基于口头话语中的一个或多个停顿来确定执行与转录相关联的助理命令。在那些实现方式的一些进一步的版本中,确定是将对应于口头话语的所识别的文本并入转录中,还是执行与转录相关联的、与转录相关联的并且基于对应于口头话语的所识别的文本的助理命令,还可以包括基于带注释的所识别的文本包括对应于助理命令的一个或多个术语来确定执行助理命令。
在一些实现方式中,基于音频的ML模型可以是被训练来检测口头话语中的一个或多个特定的词语或短语的暖词模型,并且口头话语的一个或多个基于音频的特征可以对应于口头话语是否包括一个或多个特定的词语或短语。在那些实现方式的一些版本中,确定是将对应于口头话语的所识别的文本并入转录中,还是执行与转录相关联的、与转录相关联的并且基于对应于口头话语的所识别的文本的助理命令可以包括基于口头话语包括一个或多个特定的词语或短语来确定执行与转录相关联的助理命令。在那实现方式的一些进一步的版本中,确定是将对应于口头话语的所识别的文本并入转录中,还是执行与转录相关联的、与转录相关联的并且基于对应于口头话语的所识别的文本的助理命令,还可以包括基于带注释的所识别的文本包括对应于助理命令的一个或多个术语来确定执行助理命令。
在一些实现方式中,自动将对应于口头话语的所识别的文本并入转录中可以包括使得所识别的文本作为转录的一部分经由在客户端设备处可访问的软件应用视觉地显示给用户。在那些实现方式的一些进一步的版本中,使得所识别的文本作为转录的一部分经由在客户端设备处可访问的软件应用视觉地显示给用户可以包括在另外的文本被并入转录中之后使得所识别的文本保持在转录中。
在一些实现方式中,提供了一种由一个或多个处理器实施的方法,所述方法包括:接收捕获客户端设备的用户的口头话语的音频数据,所述音频数据是由客户端设备的一个或多个麦克风生成的,并且所述音频数据是在正通过在客户端设备处可访问的软件应用在客户端设备处显示转录时接收的;确定经由在客户端设备处可访问的软件应用显示的转录的状态;基于转录的状态和口头话语,确定:是将对应于口头话语的所识别的文本并入转录中,还是执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令;响应于确定将对应于口头话语的所识别的文本并入转录中:自动将对应于口头话语的所识别的文本并入转录中;并且响应于确定执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令:使得自动化助理执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令。
本文中公开的技术的这些和其他实现方式可以包括一个或多个以下特征。
在一些实现方式中,所述方法还可以包括使用自动语音识别(ASR)模型来处理捕获口头话语的音频数据,以生成对应于口头话语的所识别的文本。在那些实现方式的一些版本中,所述方法还可以包括使用自然语言理解(NLU)模型来处理对应于口头话语的所识别的文本,以生成带注释的所识别的文本。在那些实现方式的一些进一步的版本中,所述方法还可以包括确定与转录相关联并且基于对应于口头话语的所识别的文本的助理命令。确定与转录相关联并且基于对应于口头话语的所识别的文本的助理命令可以基于带注释的所识别的文本。
在一些实现方式中,确定转录的状态可以包括以下一个或多个:确定与转录相关联的一个或多个字段是否被填充;确定所识别的文本是否可以用来填充与转录相关联的一个或多个字段;或者确定转录是否完成。在那些实现方式的一些版本中,确定是将对应于口头话语的所识别的文本并入转录中,还是执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令,可以包括基于确定所识别的文本可以用于填充与转录相关联的一个或多个字段来确定执行与转录相关联的助理命令。在那些实现方式的一些进一步的版本中,确定是将对应于口头话语的所识别的文本并入转录中,还是执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令,可以包括确定与转录相关联的一个或多个字段当前没有被填充。在那些实现方式的附加或替代版本中,确定是将对应于口头话语的所识别的文本并入转录中,还是执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令,可以包括基于确定转录完成来确定执行与转录相关联并且基于对应于口头话语的所识别的文本的助理命令。
在一些实现方式中,自动将对应于口头话语的所识别的文本并入转录中可以包括使得所识别的文本作为转录的一部分经由在客户端设备处可访问的软件应用视觉地显示给用户。在那些实现方式的一些版本中,使得所识别的文本作为转录的一部分经由在客户端设备处可访问的软件应用视觉地显示给用户可以包括在另外的文本被并入转录中之后使得所识别的文本保持在转录中。
在一些实现方式中,提供了一种由一个或多个处理器实施的方法,所述方法包括确定经由在客户端设备处可访问的软件应用在客户端设备处显示的转录完成;响应于确定转录完成,启动转录的交互式编辑模式;当处于转录的交互式编辑模式时:选择转录的一部分以在交互式编辑模式下编辑;接收捕获客户端设备的用户的口头话语的音频数据,所述音频数据是由客户端设备的一个或多个麦克风生成的,并且所述音频数据是在正经由在客户端设备处可访问的软件应用在客户端设备处显示转录时接收的;以及基于处理捕获口头话语的音频数据来确定:是基于口头话语来编辑转录的所选部分,还是选择转录的另外的部分以在交互式编辑模式下编辑;响应于确定基于口头话语编辑转录的所选部分:使得转录的所选部分基于口头话语被编辑;以及响应于确定选择转录的另外的部分以在交互式编辑模式下编辑:使得自动化助理选择转录的另外的部分以在交互式编辑模式下编辑。
本文中公开的技术的这些和其他实现方式可以包括一个或多个以下特征。
在一些实现方式中,确定在客户端设备处显示的转录完成可以基于转录的状态。在一些实现方式中,所述方法还可以包括响应于确定转录完成而自动启动转录的交互式编辑模式。在一些实现方式中,所述方法还可以包括,响应于确定转录完成,接收启动转录的交互式编辑模式的用户输入。在那些实现方式的一些版本中,所述方法还可以包括响应于确定转录完成,生成请求用户启动转录的交互式编辑模式的提示;以及使得请求用户启动交互式编辑模式的提示被提供以经由客户端设备呈现给用户。响应于使得所述提示被提供以经由客户端设备呈现给用户,可以接收启动转录的交互式编辑模式的用户输入。在那些实现方式的附加或替代版本中,启动转录的交互式编辑模式的用户输入可以是在客户端设备处检测到的用户的手势。在一些实现方式中,选择转录的部分以在交互式编辑模式下编辑可以包括选择转录的初始部分以进行编辑。在一些实现方式中,选择转录的部分以在交互式编辑模式下编辑可以包括选择转录的第一部分以进行编辑,转录的第一部分包括一个或多个预测错误。
此外,一些实现方式包括一个或多个计算设备的一个或多个处理器(例如,中央处理单元(CPU)、图形处理单元(GPU)和/或张量处理单元(TPU)),其中一个或多个处理器可操作以执行存储在相关联的存储器中的指令,并且其中指令被配置成引起任何前述方法的执行。一些实现方式还包括一个或多个存储计算机指令的非暂时性计算机可读存储介质,所述计算机指令可由一个或多个处理器执行以实行任何上述方法。一些实现方式还包括计算机程序产品,所述计算机程序产品包括可由一个或多个处理器执行以实行任何上述方法的指令。
应当理解,本文中更详细描述的前述概念和另外的概念的所有组合被认为是在本文中公开的主题的一部分。例如,出现在本公开末尾的所要求保护的主题的所有组合被认为是本文中公开的主题的一部分。
Claims (41)
1.一种由一个或多个处理器实施的方法,所述方法包括:
接收捕获客户端设备的用户的口头话语的音频数据,所述音频数据是由所述客户端设备的一个或多个麦克风生成的,并且所述音频数据是在所述用户的触摸输入被指向经由在所述客户端设备处可访问的软件应用显示在所述客户端设备处的转录时接收的;
基于所述用户的所述触摸输入被指向所述转录和所述口头话语,确定:
是将对应于所述口头话语的所识别的文本并入所述转录中,还是
执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的助理命令;
响应于确定将对应于所述口头话语的所识别的文本并入所述转录中:
自动将对应于所述口头话语的所识别的文本并入所述转录中;以及
响应于确定执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令:
使得自动化助理执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令。
2.根据权利要求1所述的方法,还包括:
使用自动语音识别(ASR)模型来处理捕获所述口头话语的所述音频数据,以生成对应于所述口头话语的所识别的文本。
3.根据权利要求2所述的方法,还包括:
使用自然语言理解(NLU)模型处理对应于所述口头话语的所识别的文本,以生成带注释的所识别的文本。
4.根据权利要求3所述的方法,还包括:
确定与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令,其中确定与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令是基于所述带注释的所识别的文本。
5.根据任一前述权利要求所述的方法,其中,所述用户的所述触摸输入指向显示在所述客户端设备处的所述转录的一个或多个文本段。
6.根据权利要求5所述的方法,其中,所述用户的所述触摸输入以图形方式划分显示在所述客户端设备处的所述转录的一个或多个文本段。
7.根据权利要求6所述的方法,其中,确定是将对应于所述口头话语的所识别的文本并入所述转录中,还是执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令,包括基于所述用户的所述触摸输入以图形方式划分所述转录的一个或多个文本段来确定执行所述助理命令。
8.根据任一前述权利要求所述的方法,其中,所述用户的所述触摸输入指向显示在所述客户端设备处的所述转录的一个或多个字段。
9.根据权利要求8所述的方法,其中,确定是将对应于所述口头话语的所识别的文本并入所述转录中,还是执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令,包括基于所述用户的所述触摸输入指向所述转录的一个或多个字段来确定执行所述助理命令。
10.根据任一前述权利要求所述的方法,其中,自动将对应于所述口头话语的所识别的文本并入所述转录中包括:
使得所识别的文本作为所述转录的一部分经由在所述客户端设备处可访问的所述软件应用视觉地显示给所述用户。
11.根据权利要求10所述的方法,其中,使得所识别的文本作为所述转录的一部分经由在所述客户端设备处可访问的所述软件应用视觉地显示给所述用户包括在另外的文本被并入所述转录中之后使所识别的文本保持在所述转录中。
12.一种由一个或多个处理器实施的方法,所述方法包括:
接收捕获客户端设备的用户的口头话语的音频数据,所述音频数据是由所述客户端设备的一个或多个麦克风生成的,并且所述音频数据是在正经由在所述客户端设备处可访问的软件应用在所述客户端设备处显示转录时接收的;
使用自动语音识别(ASR)模型处理捕获所述口头话语的所述音频数据,以生成对应于所述口头话语的所识别的文本;
使用自然语言理解(NLU)模型处理对应于所述口头话语的所识别的文本,以生成带注释的所识别的文本;
使用基于音频的机器学习(ML)模型来处理捕获所述口头话语的所述音频数据,以确定所述口头话语的一个或多个基于音频的特征;
基于一个或多个带注释的所识别的文本或所述口头话语的一个或多个基于音频的特征,确定:
是将对应于所述口头话语的所识别的文本并入所述转录中,还是
执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的助理命令;
响应于确定将对应于所述口头话语的所识别的文本并入所述转录中:
自动将对应于所述口头话语的所识别的文本并入所述转录中;以及
响应于确定执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令:
使得自动化助理执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令。
13.根据权利要求12所述的方法,还包括:
确定与所述转录相关联并且基于对应于所述口头话语的所识别的文本的助理命令,其中,确定与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令是基于所述带注释的所识别的文本。
14.根据权利要求12或权利要求13所述的方法,其中,所述基于音频的ML模型是端点指示模型,所述端点指示模型被训练来检测所述口头话语中的停顿,并且其中,所述口头话语的一个或多个基于音频的特征对应于所述口头话语中的一个或多个停顿。
15.根据权利要求14所述的方法,其中,确定是将对应于所述口头话语的所识别的文本并入所述转录中,还是执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令,包括基于所述口头话语中的一个或多个停顿来确定执行与所述转录相关联的所述助理命令。
16.根据权利要求15所述的方法,其中,确定是将对应于所述口头话语的所识别的文本并入所述转录中,还是执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令,还包括基于所述带注释的所识别的文本包括对应于所述助理命令的一个或多个术语来确定执行所述助理命令。
17.根据权利要求12或权利要求13所述的方法,其中,所述基于音频的ML模型是暖词模型,所述暖词模型被训练来检测所述口头话语中的一个或多个特定的词语或短语,并且其中,所述口头话语的一个或多个基于音频的特征对应于所述口头话语是否包括一个或多个特定的词语或短语。
18.根据权利要求17所述的方法,其中,确定是将对应于所述口头话语的所识别的文本并入所述转录中,还是执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令,包括基于所述口头话语包括一个或多个特定的词语或短语来确定执行与所述转录相关联的所述助理命令。
19.根据权利要求18所述的方法,其中,确定是将对应于所述口头话语的所识别的文本并入所述转录中,还是执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令,还包括基于所述带注释的所识别的文本包括对应于所述助理命令的一个或多个术语来确定执行所述助理命令。
20.根据权利要求12至19中的任一项所述的方法,其中,自动将对应于所述口头话语的所识别的文本并入所述转录中包括:
使得所识别的文本作为所述转录的一部分经由在所述客户端设备处可访问的所述软件应用视觉地显示给所述用户。
21.根据权利要求20所述的方法,其中,使得所识别的文本作为所述转录的一部分经由在所述客户端设备处可访问的所述软件应用视觉地显示给所述用户包括在另外的文本被并入所述转录中之后使所识别的文本保持在所述转录中。
22.一种由一个或多个处理器实施的方法,所述方法包括:
接收捕获客户端设备的用户的口头话语的音频数据,所述音频数据是由所述客户端设备的一个或多个麦克风生成的,并且所述音频数据是在正经由在所述客户端设备处可访问的软件应用在所述客户端设备处显示转录时接收的;
确定经由在所述客户端设备处可访问的所述软件应用显示的所述转录的状态;
基于所述转录的状态和所述口头话语,确定:
是将对应于所述口头话语的所识别的文本并入所述转录中,还是
执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的助理命令;
响应于确定将对应于所述口头话语的所识别的文本并入所述转录中:
自动将对应于所述口头话语的所识别的文本并入所述转录中;以及
响应于确定执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令:
使得自动化助理执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令。
23.根据权利要求22所述的方法,还包括:
使用自动语音识别(ASR)模型来处理捕获所述口头话语的所述音频数据,以生成对应于所述口头话语的所识别的文本。
24.根据权利要求23所述的方法,还包括:
使用自然语言理解(NLU)模型处理对应于所述口头话语的所识别的文本,以生成带注释的所识别的文本。
25.根据权利要求24所述的方法,还包括:
确定与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令,其中,确定与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令是基于所述带注释的所识别的文本。
26.根据权利要求22至25中的任一项所述的方法,其中,确定所述转录的状态包括以下中的一个或多个:
确定与所述转录相关联的一个或多个字段是否被填充;
确定所识别的文本是否能够用来填充与所述转录相关联的一个或多个字段;或者
确定所述转录是否完成。
27.根据权利要求26所述的方法,其中,确定是将对应于所述口头话语的所识别的文本并入所述转录中,还是执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令,包括基于确定所识别的文本能够用于填充与所述转录相关联的一个或多个字段来确定执行与所述转录相关联的所述助理命令。
28.根据权利要求27所述的方法,其中,确定是将对应于所述口头话语的所识别的文本并入所述转录中,还是执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令,包括确定与所述转录相关联的一个或多个字段当前未被填充。
29.根据权利要求26所述的方法,其中,确定是将对应于所述口头话语的所识别的文本并入所述转录中,还是执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令,包括基于确定所述转录完成,确定执行与所述转录相关联并且基于对应于所述口头话语的所识别的文本的所述助理命令。
30.根据权利要求22至29中的任一项所述的方法,其中,自动将对应于所述口头话语的所识别的文本并入所述转录中包括:
使得所识别的文本作为所述转录的一部分经由在所述客户端设备处可访问的所述软件应用视觉地显示给所述用户。
31.根据权利要求30所述的方法,其中,使得所识别的文本作为所述转录的一部分经由在所述客户端设备处可访问的所述软件应用视觉地显示给所述用户包括在另外的文本被并入所述转录中之后使所识别的文本保持在所述转录中。
32.一种由一个或多个处理器实施的方法,所述方法包括:
确定经由在所述客户端设备处可访问的软件应用在客户端设备处显示的转录完成;
响应于确定所述转录完成,启动所述转录的交互式编辑模式;
在处于所述转录的所述交互式编辑模式下时:
选择所述转录的一部分以在所述交互式编辑模式下编辑;
接收捕获所述客户端设备的用户的口头话语的音频数据,所述音频数据是由所述客户端设备的一个或多个麦克风生成的,并且所述音频数据是在正经由在所述客户端设备处可访问的所述软件应用在所述客户端设备处显示所述转录时接收的;以及
基于处理捕获所述口头话语的所述音频数据,确定:
是基于所述口头话语编辑所述转录的所选部分,还是
选择所述转录的另外的部分以在所述交互式编辑模式下编辑;
响应于确定基于所述口头话语编辑所述转录的所选部分:
使得所述转录的所选部分基于所述口头话语被编辑;以及响应于确定选择所述转录的另外的部分以在所述交互式编辑模式下编辑:
使得自动化助理选择所述转录的所述另外的部分以在所述交互式编辑模式下编辑。
33.根据权利要求32所述的方法,其中,确定显示在所述客户端设备处的所述转录完成是基于所述转录的状态。
34.根据权利要求32或权利要求33所述的方法,还包括:
响应于确定所述转录完成,自动启动所述转录的所述交互式编辑模式。
35.根据权利要求32至34中的任一项所述的方法,响应于确定所述转录完成,还包括:
接收用于启动所述转录的所述交互式编辑模式的用户输入。
36.根据权利要求35所述的方法,响应于确定所述转录完成,还包括:
生成请求所述用户启动所述转录的所述交互式编辑模式的提示;以及
使得请求所述用户启动所述交互式编辑模式的所述提示被提供以经由所述客户端设备呈现给所述用户,
其中,响应于使得所述提示被提供以经由所述客户端设备呈现给所述用户,接收启动所述转录的所述交互式编辑模式的所述用户输入。
37.根据权利要求35所述的方法,其中,启动所述转录的所述交互式编辑模式的所述用户输入是在所述客户端设备处检测到的所述用户的手势。
38.根据权利要求32至36中的任一项所述的方法,其中,选择所述转录的所述部分以在所述交互式编辑模式下编辑包括选择所述转录的初始部分以进行编辑。
39.根据权利要求32至37中的任一项所述的方法,其中,选择所述转录的所述部分以在所述交互式编辑模式下编辑包括选择所述转录的第一部分以进行编辑,所述转录的所述第一部分包括一个或多个预测错误。
40.一种***,包括:
至少一个处理器;以及
存储指令的存储器,所述指令在被执行时使得所述至少一个处理器执行对应于根据权利要求1至38中的任一项所述的操作。
41.一种存储指令的非暂时性计算机可读存储介质,所述指令在被执行时使得至少一个处理器执行对应于根据权利要求1至38中的任一项所述的操作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/322,765 US20220366910A1 (en) | 2021-05-17 | 2021-05-17 | Voice commands for an automated assistant utilized in smart dictation |
US17/322,765 | 2021-05-17 | ||
PCT/US2021/062613 WO2022245395A1 (en) | 2021-05-17 | 2021-12-09 | Voice commands for an automated assistant utilized in smart dictation |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116368459A true CN116368459A (zh) | 2023-06-30 |
Family
ID=79287640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180068959.7A Pending CN116368459A (zh) | 2021-05-17 | 2021-12-09 | 用于智能听写的自动化助理的话音命令 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220366910A1 (zh) |
EP (1) | EP4115278A1 (zh) |
CN (1) | CN116368459A (zh) |
WO (1) | WO2022245395A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112052835B (zh) * | 2020-09-29 | 2022-10-11 | 北京百度网讯科技有限公司 | 信息处理方法、信息处理装置、电子设备和存储介质 |
US11941345B2 (en) * | 2021-10-26 | 2024-03-26 | Grammarly, Inc. | Voice instructed machine authoring of electronic documents |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8379801B2 (en) * | 2009-11-24 | 2013-02-19 | Sorenson Communications, Inc. | Methods and systems related to text caption error correction |
US10304444B2 (en) * | 2016-03-23 | 2019-05-28 | Amazon Technologies, Inc. | Fine-grained natural language understanding |
US10854192B1 (en) * | 2016-03-30 | 2020-12-01 | Amazon Technologies, Inc. | Domain specific endpointing |
US10923121B2 (en) * | 2017-08-11 | 2021-02-16 | SlackTechnologies, Inc. | Method, apparatus, and computer program product for searchable real-time transcribed audio and visual content within a group-based communication system |
CN114144789A (zh) * | 2019-10-15 | 2022-03-04 | 谷歌有限责任公司 | 图形用户界面中的内容的声控输入 |
US20210225377A1 (en) * | 2020-01-17 | 2021-07-22 | Verbz Labs Inc. | Method for transcribing spoken language with real-time gesture-based formatting |
-
2021
- 2021-05-17 US US17/322,765 patent/US20220366910A1/en active Pending
- 2021-12-09 WO PCT/US2021/062613 patent/WO2022245395A1/en unknown
- 2021-12-09 EP EP21840274.1A patent/EP4115278A1/en active Pending
- 2021-12-09 CN CN202180068959.7A patent/CN116368459A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US20220366910A1 (en) | 2022-11-17 |
WO2022245395A1 (en) | 2022-11-24 |
EP4115278A1 (en) | 2023-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102461920B1 (ko) | 컨퍼런스 기능을 갖는 자동화된 어시스턴트 | |
AU2021202694B2 (en) | Facilitating end-to-end communications with automated assistants in multiple languages | |
US11670289B2 (en) | Multi-command single utterance input method | |
US11762865B2 (en) | Automatically augmenting message exchange threads based on tone of message | |
KR102394289B1 (ko) | 맥락을 인식하는 인간-대-컴퓨터 대화 | |
US11113481B2 (en) | Adapting automated assistants for use with multiple languages | |
CN117059097A (zh) | 基于第三方代理内容的语音到文本转换 | |
CN115769220A (zh) | 经由自动化助理交互的文档创建和编辑 | |
CN116368459A (zh) | 用于智能听写的自动化助理的话音命令 | |
US20240029728A1 (en) | System(s) and method(s) to enable modification of an automatically arranged transcription in smart dictation | |
US20230230578A1 (en) | Personalized speech query endpointing based on prior interaction(s) | |
US20240078374A1 (en) | System(s) and method(s) for causing contextually relevant emoji(s) to be visually rendered for presentation to user(s) in smart dictation | |
EP3899927B1 (en) | Adapting automated assistants for use with multiple languages | |
WO2024019766A1 (en) | System(s) and method(s) to enable modification of an automatically arranged transcription in smart dictation | |
WO2022104297A1 (en) | Multimodal input-based data selection and command execution | |
CN116348844A (zh) | 布置和/或清除语音到文本的内容而无需用户提供明确指令 | |
CN115605950A (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 |