CN110503959A - 语音识别数据分发方法、装置、计算机设备及存储介质 - Google Patents
语音识别数据分发方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN110503959A CN110503959A CN201910828784.XA CN201910828784A CN110503959A CN 110503959 A CN110503959 A CN 110503959A CN 201910828784 A CN201910828784 A CN 201910828784A CN 110503959 A CN110503959 A CN 110503959A
- Authority
- CN
- China
- Prior art keywords
- voice
- service access
- recognition data
- parties
- voice service
- 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
- 238000000034 method Methods 0.000 title claims abstract description 84
- 238000012545 processing Methods 0.000 claims description 31
- 230000004044 response Effects 0.000 claims description 22
- 238000012790 confirmation Methods 0.000 claims description 14
- 238000013473 artificial intelligence Methods 0.000 abstract description 20
- 230000008569 process Effects 0.000 abstract description 17
- 238000004891 communication Methods 0.000 description 27
- 238000005516 engineering process Methods 0.000 description 26
- 230000006870 function Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 13
- 230000002093 peripheral effect Effects 0.000 description 10
- 230000001133 acceleration Effects 0.000 description 9
- 238000011161 development Methods 0.000 description 8
- 238000010801 machine learning Methods 0.000 description 8
- 241000282414 Homo sapiens Species 0.000 description 7
- 238000003058 natural language processing Methods 0.000 description 7
- 230000006978 adaptation Effects 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 238000011160 research Methods 0.000 description 6
- 238000007726 management method Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 239000011230 binding agent Substances 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 239000000919 ceramic Substances 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012015 optical character recognition Methods 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000002354 daily effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000001976 improved effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000002618 waking effect Effects 0.000 description 1
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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请是关于一种语音识别数据分发方法、装置、计算机设备及存储介质,涉及人工智能领域。该方法包括:获取语音对应的语音识别数据;语音识别数据是根据对语音识别和语义理解的结果,按照指定的数据格式协议生成的数据;根据数据分发规则和语音识别数据的内容获取第一接入方;数据分发规则中包含语音识别数据的内容与第一接入方之间的对应关系;第一接入方是终端中安装的M个语音服务接入方中的至少一个;语音服务接入方是包括有统一的软件开发工具包SDK的程序;通过第一接入方中包括的统一的SDK,向第一接入方分发语音识别数据。本方案可以降低语音助手运行过程中接口适配部分的代码占用的内存,提高语音助手运行时的终端性能。
Description
技术领域
本申请涉及人工智能领域,特别是涉及一种语音识别数据分发方法、装置及存储介质。
背景技术
随着人工智能领域的发展,语音识别及处理在人们的日常生活中的应用也越来越广泛。比如,用户可以通过语音来控制终端中的不同应用执行不同的操作。
在相关技术中,在实现语音控制时,终端可以通过语音助手采集用户的语音,并通过语音助手控制终端中的其它应用执行该语音相关的操作。比如,终端中的第三方应用或者系统应用可以对外提供用于接收语音识别数据的接口,语音助手在开发过程中,针对其它应用做接口适配,在语音助手内增加对应其它应用的调用接口。语音助手在终端中运行时,接收用户输入的语音,并对用户输入的语音进行识别,然后通过与其它应用相对应的调用接口,向终端中的其它应用发送语音识别数据,以便其它应用根据语音识别数据执行相应的操作。
然而,相关技术中各个应用提供的对外接口各不相同,语音助手需要针对市面上各种应用的对外接口进行适配,导致语音助手运行过程中,接口适配部分的代码占用较多的内存资源,从影响语音助手运行时的终端性能。
发明内容
本申请实施例提供了一种语音识别数据分发方法、装置、计算机设备及存储介质,可以降低语音助手运行过程中接口适配部分的代码占用的内存,提高语音助手运行时的终端性能,技术方案如下:
一方面,提供了一种语音识别数据分发方法,所述方法由终端执行,所述方法包括:
接收在所述终端中输入的语音;
获取所述语音对应的语音识别数据;所述语音识别是根据对所述语音的识别和语义理解的结果,按照指定的数据格式协议生成的数据;
根据数据分发规则以及所述语音识别数据的内容获取第一接入方;所述数据分发规则中包含所述语音识别数据的内容与所述第一接入方之间的对应关系;所述第一接入方是所述终端中安装的M个语音服务接入方中的至少一个;所述M个语音服务接入方是包括有统一的软件开发工具包SDK的程序,M≥1,且M为整数;
通过所述第一接入方中包括的所述统一的SDK,向所述第一接入方分发所述语音识别数据。
一方面,提供了一种语音识别数据分发装置,用于终端中,该装置包括:
语音接收模块,用于接收在所述终端中输入的语音;
语音数据获取模块,用于获取所述语音对应的语音识别数据;所述语音识别是根据对所述语音的识别和语义理解的结果,按照指定的数据格式协议生成的数据;
接入方获取模块,用于根据数据分发规则以及所述语音识别数据的内容获取第一接入方;所述数据分发规则中包含所述语音识别数据的内容与所述第一接入方之间的对应关系;所述第一接入方是所述终端中安装的M个语音服务接入方中的至少一个;所述M个语音服务接入方是包括有统一的软件开发工具包SDK的程序,M≥1,且M为整数;
语音数据分发模块,用于通过所述第一接入方中包括的所述统一的SDK,向所述第一接入方分发所述语音识别数据。
在一种可能的实现方式中,所述语音识别数据中包含意图信息,所述意图信息用于指示所述语音对应的用户意图;所述数据分发规则中包含所述意图信息对应的语音服务接入方的标识;
所述接入方获取模块,用于,
读取所述M个语音服务接入方的标识;
从所述M个语音服务接入方的标识中,获取属于所述意图信息对应的语音服务接入方的第一标识;
将所述第一标识对应的语音服务接入方确定为所述第一接入方。
在一种可能的实现方式中,所述意图信息包括服务信息和操作信息中的至少一种;所述服务信息用于指示所述语音请求的目标服务,所述操作信息用于指示提供所述目标服务的操作。
在一种可能的实现方式中,所述装置还包括:
注册请求接收模块,用于在所述语音接收模块接收在所述终端中输入的语音之前,接收第二接入方发送的注册请求,所述注册请求中包含所述第二接入方的标识;所述第二接入方是所述M个语音服务接入方中的任意一个;
标识存储模块,用于将所述第二接入方的标识存在所述终端中的指定文件中;
在读取所述M个语音服务接入方的标识时,所述接入方获取模块,用于从所述指定文件中读取所述M个语音服务接入方的标识。
在一种可能的实现方式中,所述装置还包括:
规则获取模块,用于在所述语音接收模块接收在所述终端中输入的语音之前,从服务器获取所述数据分发规则。
在一种可能的实现方式中,所述语音数据分发模块,用于,
当所述第一接入方中包含N个语音服务接入方时,获取所述N个语音服务接入方各自的分发优先级,M≥N≥2,且N为整数;
根据所述N个语音服务接入方各自的分发优先级,通过所述N个语音服务接入方中包括的所述统一的SDK,将所述语音识别数据发送给所述N个语音服务接入方中的至少一个。
在一种可能的实现方式中,在获取所述N个语音服务接入方各自的分发优先级时,所述语音数据分发模块,用于,
获取所述数据分发规则中携带的,所述N个语音服务接入方各自的分发优先级;
或者,
从所述数据分发规则之外的本地配置文件中获取所述N个语音服务接入方各自的分发优先级。
在一种可能的实现方式中,所述装置还包括:
设置界面展示模块,用于在所述语音数据分发模块从所述数据分发规则之外的本地配置文件中获取所述N个语音服务接入方各自的分发优先级之前,展示优先级配置界面,所述优先级配置界面中包含所述M个语音服务接入方分别对应的配置选项,所述配置选项用于配置对应的语音服务接入方的分发优先级;
优先级更新模块,用于根据对第三接入方的配置选项执行的所述优先级配置操作,更新所述M个语音服务接入方各自的分发优先级,所述第三节接入方是所述M个语音服务接入方中的任意一个;
配置文件生成模块,用于根据所述M个语音服务接入方各自的分发优先级生成所述本地配置文件。
在一种可能的实现方式中,在根据所述N个语音服务接入方各自的分发优先级,通过所述N个语音服务接入方中包括的所述统一的SDK,将所述语音识别数据发送给所述N个语音服务接入方中的至少一个时,所述语音数据分发模块,用于,
按照分发优先级从高到低的顺序,从所述N个语音服务接入方中确定目标接入方;
通过所述目标接入方中包括的所述统一的SDK,将所述语音识别数据发送给所述目标接入方;
若在发送所述语音识别数据之后的指定时长内接收到所述目标接入方返回的确认响应,则结束所述语音识别数据的发送。
在一种可能的实现方式中,所述语音数据分发模块,还用于,
若在所述指定时长内未接收到所述目标接入方返回的所述确认响应,且所述N个语音服务接入方中存在未被分发过所述语音识别数据的接入方,则按照分发优先级从高到低的顺序,从所述N个语音服务接入方中确定新的目标接入方。
在一种可能的实现方式中,所述装置还包括:
数据处理模块,用于在满足指定条件时,在所述M个语音服务接入方之外对所述语音识别数据进行处理;
其中,所述指定条件包括:
在所述指定时长内未接收到所述目标接入方返回的所述确认响应,且所述N个语音服务接入方中不存在未被分发过所述语音识别数据的语音服务接入方;
或者,
根据所述数据分发规则以及所述语音识别数据的内容未获取到所述第一接入方。
在一种可能的实现方式中,所述终端是智能电视机,或者,智能电视机顶盒。
一方面,提供了一种计算机设备,该计算机设备包含处理器和存储器,存储器中存储由至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述语音识别数据分发方法。
一方面,提供了一种计算机可读存储介质,该存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述语音识别数据分发方法。
本申请提供的技术方案可以包括以下有益效果:
通过获取到根据对语音的识别和语义理解的结果,按照指定的数据格式协议生成的语音识别数据后,根据数据分发规则以及语音识别数据的内容获取终端中安装的M个语音服务接入方中的第一接入方,并通过第一接入方中包括的统一的SDK,向第一接入方分发该语音识别数据,由于M个语音服务接入方包括的SDK是统一的,语音助手类的应用只需要极少的接口部分代码,即可以支持各种不同的语音服务接入方,从而降低语音助手运行过程中接口适配部分的代码占用的内存,提高语音助手运行时的终端性能。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是本申请一个示例性的实施例提供的一种语音系统的系统构成图;
图2是本申请一个示例性的实施例提供的语音识别数据分发方法的流程示意图;
图3是图2所示实施例涉及的一种语音识别数据分发方案的示意图;
图4是本申请一个示例性的实施例提供的语音识别数据分发方法的流程示意图;
图5是图4所示实施例涉及的一种优先级配置界面示意图;
图6是本申请一示例性实施例提供的一种语音意图分发流程的示意图;
图7是图6所示实施例涉及的另一种语音意图分发流程的示意图;
图8是根据一示例性实施例示出的语音识别数据分发装置的结构方框图;
图9是根据一示例性实施例示出的终端的结构框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
应当理解的是,在本文中提及的“若干个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本申请提供一种语音识别数据分发方法,可以在基于人工智能(ArtificialIntelligence,AI)的语音应用中,保证语音助手类的应用(Application,APP)能够适配各种第三方应用或者系统应用的情况下,降低语音助手运行过程中接口适配部分的代码占用的内存,提高语音助手类的应用运行时的终端性能。为了便于理解,下面对本申请涉及的几个名词进行解释。
1)人工智能
人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
2)计算机视觉技术(Computer Vision,CV)
计算机视觉技术是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、光学字符识别(Optical Character Recognition,OCR)、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
3)语音技术(Speech Technology)
语音技术的关键技术有自动语音识别技术(Automatic Speech Recognition,ASR)和语音合成技术(text-to-speech,TTS)以及声纹识别技术。让计算机能听、能看、能说、能感觉,是未来人机交互的发展方向,其中语音成为未来最被看好的人机交互方式之一。
4)自然语言处理(Nature Language processing,NLP)
自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
5)机器学习(Machine Learning,ML)
机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
6)自动驾驶技术
自动驾驶技术通常包括高精地图、环境感知、行为决策、路径规划、运动控制等技术,自定驾驶技术有着广泛的应用前景。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请所示的方案,主要涉及人工智能技术中的语音技术、自然语言处理以及机器学习等方面。
请参考图1,其示出了本申请各个实施例涉及的一种语音系统的系统构成图。如图1所示,该系统包括终端110以及服务器120。
终端110可以是具有语音信号接收能力的终端设备。
比如,终端110可以是智能电视机、智能电视机顶盒等智能家居设备,或者终端110可以是智能手机、平板电脑以及电子书阅读器等移动式便携终端,或者,该终端110也可以是智能眼镜、智能手表等智能可穿戴设备。
其中,终端110中可以安装有语音助手类的应用,以及语音助手类的应用之外的语音服务接入方,该语音服务接入方可以是具有接收语音助手类的应用分发的语音识别数据,并根据接收到语音识别数据执行相应的操作的应用。
可选的,上述语音服务接入方可以是终端110中安装的第三方应用,或者,该语音服务接入方也可以是终端110的操作系统中自带的系统应用。
例如,上述第三方应用可以是视频类的应用、音频类的应用、即时通讯类的应用以及社交平台类的应用等等;上述系统应用可以是控制关机、音量调节、亮度调节以及频道调节等终端自带功能的应用。
服务器120可以是一台服务器,或者服务器120可以是由若干台服务器构成的服务器集群,或者服务器120可以包含一个或多个虚拟化平台,或者服务器120也可以是一个云计算服务中心。
服务器120可以是为上述终端110中安装的语音助手类的应用提供后台服务的服务器设备。
服务器120可以由一个或多个功能单元组成。可选的,如图1所示,服务器120可以包括语音识别服务器120a以及分发规则管理服务器120b等。
其中,语音识别服务器120a,可以用于接收终端110发送的语音,并对接收到的语音进行识别,根据识别结果获得语音识别数据,然后将语音识别数据反馈给终端110。
分发规则管理服务器120b,可以用于对分发规则进行维护和管理,并将分发规则提供给终端110,以便终端110中的语音助手类的应用按照分发规则将语音识别数据分发给终端中的其它语音服务接入方。
可选的,上述系统还可以包含数据库130。
上述数据库130可以是Redis数据库,或者,也可以是其它类型数据库。其中,数据库130用于存储各类数据,比如,语音识别服务器120a识别生成的语音识别数据,以及,分发规则管理服务器120b维护的分发规则等等。
终端110可以与服务器120之间通过通信网络相连。可选的,该通信网络是有线网络或无线网络。
可选的,该系统还可以包括管理设备(图1未示出),该管理设备与服务器130之间通过通信网络相连。可选的,通信网络是有线网络或无线网络。
可选的,上述的无线网络或有线网络使用标准通信技术和/或协议。网络通常为因特网、但也可以是任何网络,包括但不限于局域网(Local Area Network,LAN)、城域网(Metropolitan Area Network,MAN)、广域网(Wide Area Network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合)。在一些实施例中,使用包括超文本标记语言(Hyper Text Mark-up Language,HTML)、可扩展标记语言(Extensible MarkupLanguage,XML)等的技术和/或格式来代表通过网络交换的数据。此外还可以使用诸如安全套接字层(Secure Socket Layer,SSL)、传输层安全(Transport Layer Security,TLS)、虚拟专用网络(Virtual Private Network,VPN)、网际协议安全(Internet ProtocolSecurity,IPsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还可以使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
请参考图2,其示出了本申请一个示例性的实施例提供的语音识别数据分发方法的流程示意图。该语音识别数据分发方法可以由终端执行(比如,可以由终端通过语音助手类的应用来执行),也可以由终端和服务器交互执行。其中,上述终端可以是上述图1所示的终端110。如图2所示,该语音识别数据分发方法可以包括以下步骤:
步骤210,接收在该终端中输入的语音。
在本申请实施例中,终端可以内置或者外接语音采集组件,比如,该语音采集组件可以是麦克风、麦克风阵列或者拾音器等等。
用户需要通过语音控制对终端本身或者终端中安装的应用进行控制时,可以通过该语音采集组件向终端中输入语音。
步骤220,获取该语音对应的语音识别数据;该语音识别是根据对该语音的识别和语义理解的结果,按照指定的数据格式协议生成的数据。
在本申请实施例中,语音识别数据中包含对该语音的识别和语义理解的结果,比如,包含该语音的识别和语义理解获得的关键词。
其中,上述指定的数据格式协议可以是用于指示语音识别数据中的数据位,以及各个数据位上的关键词所属的类型的协议。
可选的,上述指定的数据格式协议可以是终端中的语音识别助手类的应用以及各个语音服务接入方所共知的协议。
步骤230,根据数据分发规则以及该语音识别数据的内容获取第一接入方;该数据分发规则中包含该语音识别数据的内容与该第一接入方之间的对应关系;该第一接入方是该终端中安装的M个语音服务接入方中的至少一个;该M个语音服务接入方是包括有统一的软件开发工具包SDK的程序,M≥1,且M为整数。
在本申请实施例中,各个语音服务接入方中集成有接口和协议都统一的SDK,也就是说,各个语音服务接入方对外提供的,用于接收语音识别数据的应用程序编程接口(Application Programming Interface,API)是相同。语音助手类的应用在开发过程中,只需要适配上述统一的SDK对应的API即可,不需要适配不同类型的接口,从而能够避免语音助手类的应用与各个语音服务接入方耦合,极大的简化降低语音助手类的应用开发的成本,提高语音助手类的应用的开发协作效率。
上述数据分发规则是用于指示将包含哪些内容的语音识别数据分发给哪些语音服务接入方的规则。
例如,终端中的语音服务接入方包括终端的系统应用1、视频播放类的应用2以及音频播放类的应用3;语音助手类的应用获取到语音识别数据后,可以根据上述数据分发规则,将包含对终端本身进行控制的内容(比如关闭终端、调节音量、调节亮度以及调节频道等内容)的语音识别数据分发给应用1,将包含视频播放相关的内容的语音识别数据分发给应用2,将包含音频播放相关的内容的语音识别数据分发给应用3。
步骤240,通过该第一接入方中包括的该统一的SDK,向该第一接入方分发该语音识别数据。
在本申请所示的方案中,终端通过语音助手类的应用接收到用户输入的语音,并进一步获得指定协议格式的语音识别数据后,还确定终端中与该语音识别数据的内容相适配的语音服务接入方,并将语音识别数据通过该语音服务接入方中包括的统一的SDK,发送给该语音服务接入方,以便语音服务接入方根据该语音识别数据执行相应的操作。在上述过程中,语音助手类的应用只需要设置单个格式的语音识别数据,并通过统一的SDK对语音识别数据进行发送,其接口部分代码不需要适配不同的接口或者协议,也不需要针对不同的接口或者协议生成不同格式的语音识别数据。
本申请实施例所示的方案,能够应用于任意安装有语音助手类的应用的终端中。比如,请参考图3,其示出了本申请实施例涉及的一种语音识别数据分发方案的示意图。如图3所示,终端中安装有语音助手类的应用1、系统服务应用2、视频播放类的应用3以及音频播放类的应用4等应用程序。并且,系统服务应用2、视频播放类的应用3以及音频播放类的应用4中分别包括有标准统一的SDK;其中,标准统一的SDK,可以是指接口类型、接口对应的数据传输协议以及接口传输的数据格式都统一。
在图3中,用户向终端中输入语音(S31),终端中安装的语音助手类的应用获取到输入的语音后,获取对该语音进行识别以及语义理解后的语音识别数据,该语音识别数据具有统一的数据格式(S32);语音助手类的应用根据数据分发规则,以及语音识别数据的内容,从系统服务应用2、视频播放类的应用3以及音频播放类的应用4中确定出目的应用,并将语音识别数据分发至目的应用中的标准统一的SDK(S33),以便目的应用可以执行相应的操作;例如,当语音识别数据的内容是指示关机的内容时,语音助手类的应用可以通过标准统一的SDK,将语音识别数据发送给系统服务应用2,由系统服务应用2执行关机操作;或者,当语音识别数据的内容是指示对视频进行快进的内容时,语音助手类的应用可以通过标准统一的SDK,将语音识别数据发送给视频播放类的应用3,由视频播放类的应用3执行对视频进行快进的操作;或者,当语音识别数据的内容是指示播放下一首歌曲的内容时,语音助手类的应用可以通过标准统一的SDK,将语音识别数据发送给音频播放类的应用4,由音频播放类的应用4执行切换播放下一首的操作。通过上述方案,能够实现语音助手类的应用与语音服务接入方之间的解耦和协作,使得语音助手类的应用能够通过间接的代码实现对任意包括有上述标准统一的SDK的语音服务接入方的支持,从而使得语音助手类的应用的覆盖能力更全面,开发效率更高。
综上所述,在本申请实施例所示的方案中,获取到根据对语音的识别和语义理解的结果,按照指定的数据格式协议生成的语音识别数据后,根据数据分发规则以及语音识别数据的内容获取终端中安装的M个语音服务接入方中的第一接入方,并通过第一接入方中包括的统一的SDK,向第一接入方分发该语音识别数据,由于M个语音服务接入方包括的SDK是统一的,语音助手类的应用只需要极少的接口部分代码,即可以支持各种不同的语音服务接入方,从而降低语音助手运行过程中接口适配部分的代码占用的内存,从而提高语音助手运行时的终端性能。
请参考图4,其示出了本申请一个示例性的实施例提供的语音识别数据分发方法的流程示意图。该语音识别数据分发方法可以由终端执行(比如,可以由终端通过语音助手类的应用来执行),也可以由终端和服务器交互执行。其中,上述终端可以是上述图1所示的终端110。如图2所示,该语音识别数据分发方法可以包括以下步骤。
步骤401,接收第二接入方发送的注册请求;该注册请求中包含该第二接入方的标识;该第二接入方是终端中安装的M个语音服务接入方中的任意一个。
在一种示例性的方案中,当语音助手类的应用在终端中安装时,语音助手类的应用可以向终端的操作系统查询该终端当前已经安装的,集成有语音助手类的应用的服务商提供的,统一的SDK(也可以称为标准SDK)的语音服务接入方,并向查询到的语音服务接入方发送注册通知,接收到该注册通知的语音服务接入方可以向语音助手类的应用发送包含自身标识的注册请求。
当语音助手类的应用安装之后,后续终端中有新的语音服务接入方被安装时,若该语音服务接入方中包括有上述统一的SDK,则新安装的语音服务接入方可以在初始化(比如在终端中安装之后的初始化)时,向终端中已安装的语音助手类的应用发送包含注册请求。
可选的,上述语音服务接入方的标识可以是语音服务接入方的ID以及包名(package)中的至少一种。
可选的,上述注册请求可以是终端中安装的语音服务接入方通过包括的上述统一的SDK向语音助手类的应用发送的。
可选的,上述注册通知可以是语音助手类的应用向已安装的各个语音服务接入方中包括的上述SDK发送的。
步骤402,将该第二接入方的标识存在该终端中的指定文件中。
在本申请实施例中,语音助手类的应用可以将发送了注册请求的各个语音服务接入方的标识存储在指定文件中。可选的,该指定文件可以是语音助手类的应用在终端中保存的接入方注册表,该注册表中存储有各个发送了注册请求的语音服务接入方的标识。
可选的,在本申请实施例中,当终端安装的某个语音服务接入方被删除时,该语音服务接入方在接收到删除指令后,可以通过上述的SDK向语音助手类的应用发送注销请求,语音助手类的应用接收到该注销请求后,可以将已存储的该语音服务接入方的标识删除,例如,将该语音服务接入方的标识从上述接入方注册表中删除。
步骤403,接收在该终端中输入的语音。
在一种可能的实现方式中,终端中可以自带有语音采集组件,比如,终端中可以自带麦克风或者麦克风阵列。
例如,用户可以通过唤醒语音唤醒终端的语音采集功能,终端自带的语音采集组件接收到唤醒语音之后,发出开始采集语音的声音提示,用户听到该声音提示之后,即可以输入语音,相应的,终端中的语音助手类的应用可以获取声音采集组件采集到的语音。
在另一种可能的实现方式中,终端也可以外接语音采集组件。比如,以终端是智能电视机或者智能电视机顶盒为例,智能电视机或者智能电视机顶盒的遥控器中集成有语音采集组件(比如麦克风),用户可以通过按住遥控器中的语音输入按钮来启动遥控器的语音采集功能,并向遥控器输入语音,遥控器检测到语音输入按钮被按住时,指示智能电视机或者智能电视机顶盒发出开始采集语音的声音提示,用户听到该声音提示之后,即可以对着遥控器输入语音,遥控器将采集到的语音实时传输给智能电视机或者智能电视机顶盒,例如,传输给智能电视机或者智能电视机顶盒中安装的语音助手类的应用。
步骤404,获取该语音对应的语音识别数据;该语音识别是根据对该语音的识别和语义理解的结果,按照指定的数据格式协议生成的数据。
在本申请实施例中,终端中的语音助手类的应用可以获取对该语音进行语音识别(ASR)以及语义理解(Natural Language Understanding,NLU)之后,根据语音识别和语义理解的结果生成的指定格式的语音识别数据。
其中,上述指定的数据格式协议的数据可以是语音经过识别后转化为文本,文本再经过自然语音理解后生成对用户语音输入意图可理解的、结构化的、完整的语义表达的协议数据。
在一种可能的实现方式中,上述语音识别数据可以由语音助手类的应用对应的服务器生成。例如,语音助手类的应用获取到上述语音后,向服务器发送语音识别请求,该语音识别请求中包含上述语音,服务器接收到该语音识别请求后,通过语音识别模型对该语音进行识别,获得对应的文本,然后通过语义理解模型对该文本进行处理,获得该文本对应的语义理解的一个或多个关键词,然后按照指定的数据格式协议对上述一个或多个关键词进行组织,生成指定格式的语音识别数据,服务器将生成的语音识别数据返回给终端中的语音助手类的应用。
在另一种可能的实现方式中,上述语音识别数据也可以由终端自行生成。例如,语音助手类的应用获取到上述语音后,在本地对语音进行语音识别以及语义理解,并生成指定格式的语音识别数据,该过程与服务器生成语音识别数据的过程类似,此处不再赘述。
在一种示例性的方案中,语音助手类的应用获取到的用户输入的语音之后,可以检测终端和服务器之间的网络连接,若终端和服务器之间的网络连接正常,则终端请求服务器生成上述语音识别数据,若终端和服务器之间的网络连接异常,则终端在本地生成上述语音识别数据。
或者,上述语音识别数据也可以由终端和服务器协同生成。
比如,终端中的语音助手类的应用获取到的用户输入的语音之后,可以在本地对语音进行识别,获得对应的文本,然后将识别获得的文本发送给服务器,由服务器对该文本进行语义理解并生成指定格式的语音识别数据,再将该语音识别数据返回给终端中的语音助手类的应用。
再比如,终端中的语音助手类的应用获取到的用户输入的语音之后,可以将该语音发送给服务器,服务器对该语音进行识别获得对应的文本后,将该文本返回给终端中的语音助手类的应用,该语音助手类的应用在终端中对该文本进行语义理解,并根据语义理解结果生成上述指定格式的语音识别数据。
在本申请实施例中,语音助手类的应用获取到语音识别数据后,即可以根据数据分发规则以及该语音识别数据的内容获取第一接入方,该步骤的实现流程可以参考后续步骤。
步骤405,从该指定文件中读取该终端中安装的M个语音服务接入方的标识。
在本申请实施例中,语音助手类的应用获取到语音识别数据后,可以读取该终端已经安装的,包括有上述SDK的M个语音服务接入方的标识。
例如,语音助手类的应用可以从上述指定文件中直接读取已经注册的M个语音服务接入方的标识。
步骤406,从该M个语音服务接入方的标识中,获取属于意图信息对应的语音服务接入方的第一标识,将该第一标识对应的语音服务接入方确定为该第一接入方。
其中,该语音识别数据中包含该意图信息,该意图信息用于指示该语音对应的用户意图;上述数据分发规则中可以包含各种预设的意图信息对应的语音服务接入方的标识。
在一种可能的实现方式中,在语音助手类的应用的开发过程中,开发人员可以根据市面上已经集成了上述SDK的各个语音服务接入方,设置上述数据分发规则。例如,开发人员可以人工分析上述语音服务接入方的应用类型、功能等信息,确定该语音服务接入方所对应的意图信息,并在上述数据分发规则中,对应分析出的意图信息添加该语音服务接入方的标识。
或者,在另一种可能的实现方式中,在语音助手类的应用发布后,该语音助手类的应用的维护人员可以继续收集新发布的,包括有上述SDK的各个语音服务接入方,并人工分析上述语音服务接入方的应用类型、功能等信息,确定该语音服务接入方所对应的意图信息,并在上述数据分发规则中,对应分析出的意图信息添加该语音服务接入方的标识,以实现数据分发规则的更新。
或者,上述数据分发规则也可以由服务器自动更新。例如,服务器对外提供可调用的接口或者界面,包括有上述SDK的语音服务接入方新发布时,该语音服务接入方的服务商可以通过该服务器提供的接口,向该服务器上传该语音服务接入方对应的意图信息,服务器在上述数据分发规则中,对应上述上传的意图信息添加该语音服务接入方的标识;或者,该语音服务接入方的开发人员可以登录该服务器提供的界面,在该界面中输入语音服务接入方的标识以及对应的意图信息,服务器在上述数据分发规则中,对应上述上传的意图信息添加该语音服务接入方的标识。
例如,上述语音识别数据可以按照固定的格式组织有各个关键信息,该关键信息中包含上述意图信息,语音助手类的应用可以根据意图信息在语音识别数据中的数据位,从语音识别数据中提取上述意图信息,并根据提取到的意图信息,查询上述数据分发规则,获得提取到的意图信息对应的标识集合,该标识集合中包含与该意图信息相对应的语音服务接入方的标识;然后,语音助手类的应用可以将终端中已经安装的M个语音服务接入方的标识,分别与标识集合中的标识进行匹配,当终端中已经安装的某个语音服务接入方的标识与标识集合中的某个标识匹配(比如两个标识相一致)时,语音助手类的应用可以将该语音服务接入方的标识添加为上述第一接入方的标识。
可选的,该意图信息包括服务信息和操作信息中的至少一种;该服务信息用于指示该语音请求的目标服务,该操作信息用于指示提供该目标服务的操作。
例如,上述目标服务可以是视频服务、音频服务、终端控制服务、智能问答服务等等。
上述提供目标服务的操作可以包括搜索、播放、指令执行等。
例如,上述语音识别数据中的关键信息包括服务信息(service)、操作信息(service),可选的还有槽位信息(slots)等,其中,槽位信息可以包含语音对应的文本中的各个关键词,而服务信息和操作信息可以是根据语音对应的文本进行语义理解获得的用户意图。比如,用户输入的语音识别出的文本为“我想看2018年郭富城的电影”,则语音助手类的应用获取到的语音识别数据可以按照如下格式进行组织:
本申请实施例中,意图信息对应的语音服务接入方具有执行包含该意图信息的语音识别数据所对应的操作的功能。
比如,以上述意图信息中的服务信息为"VIDEO",操作信息为"SEARCH"为例,该意图信息对应的语音服务接入方可以是具有视频搜索功能的视频播放类应用或者网络搜索应用。
可选的,上述接收在该终端中输入的语音之前,语音助手类的应用还可以从服务器获取该数据分发规则。
在本申请实施例中,语音助手类的应用可以定期或者非定期的从服务器获取上述数据分发规则,并对本地存储的数据分发规则进行更新。
例如,语音助手类的应用可以定期向服务器请求新的数据分发规则;或者,当服务器中的数据分发规则发生更新时,服务器可以主动向终端中的语音助手类的应用推送更新后的该数据分发规则。
上述步骤406之后,即可以通过该第一接入方中包括的该统一的SDK,向该第一接入方分发该语音识别数据,该过程可以参考后续步骤。
步骤407,当该第一接入方中包含N个语音服务接入方时,获取该N个语音服务接入方各自的分发优先级,M≥N≥2,且N为整数。
在本申请实施例中,终端中安装的各个语音服务接入方中,一项意图信息对应的语音服务接入方(即上述第一接入方)可以有多个,比如,以上述意图信息中的服务信息为"VIDEO",操作信息为"SEARCH"为例,假设终端中安装了一个视频播放类应用A、一个网络搜索应用B以及一个音频播放类应用C,其中,该应用A和应用B都具有视频搜索的功能,因此,语音助手类的应用可以将应用A和应用B获取为第一接入方。
然而,语音助手类的应用调用语音服务接入方执行语音识别数据对应的操作时,通常只需要调用一个语音服务接入方即可,因此,在本申请实施例中,当获取到的第一接入方包含多个时,语音助手类的应用还可以获取第一接入方中的各个接入方的分发优先级,并按照分发优先级进行分发。
可选的,在获取上述N个语音服务接入方各自的分发优先级时,语音助手类的应用可以按照以下两种方式中的一种来获取:
1)获取该数据分发规则中携带的,该N个语音服务接入方各自的分发优先级。
在一种可能的实现方式中,上述数据分发规则中除了包含各项意图信息对应的语音服务接入方的标识之外,还包含每项意图信息对应的语音服务接入方的分发优先级,语音助手类的应用在根据数据分发规则获取上述第一接入方时,还可以同时获取各个第一接入方的分发优先级。
可选的,语音服务接入方的分发优先级可以按照对应的意图信息分别设置,也就是说,对于不同的两项意图信息,若这两项意图信息都对应相同的两个语音服务接入方,则这两个语音服务接入方在不同的意图信息下的分发优先级也可能不同。
例如,假设意图信息1和意图信息2分别对应相同的两个语音服务接入方(比如语音接入方A和语音服务接入方B),则对于意图信息1,语音接入方A的分发优先级可以高于语音服务接入方B的分发优先级,而对于意图信息2,语音接入方A的分发优先级可以低于语音服务接入方B的分发优先级。
2)从该数据分发规则之外的本地配置文件中获取该N个语音服务接入方各自的分发优先级。
在另一种可能的实现方式中,上述终端中安装的M个语音服务接入方的分发优先级也可以由也可以在终端中单独配置,并以本地配置文件进行保存。
其中,上述终端中安装的M个语音服务接入方的分发优先级,可以是由用户手动配置的。比如,从该数据分发规则之外的本地配置文件中获取该N个语音服务接入方各自的分发优先级之前,语音助手类的应用还可以展示优先级配置界面,该优先级配置界面中包含该M个语音服务接入方分别对应的配置选项,该配置选项用于配置对应的语音服务接入方的分发优先级;根据对第三接入方的配置选项执行的该优先级配置操作,更新该M个语音服务接入方各自的分发优先级,该第三接入方是该M个语音服务接入方中的任意一个;然后根据该M个语音服务接入方各自的分发优先级生成该本地配置文件。
例如,请参考图5,其示出了本申请实施例涉及的一种优先级配置界面示意图。如图5所示,用户需要手动配置终端中安装的各个语音服务接入方的分发优先级时,可以触发终端展示语音助手类的应用提供的优先级配置界面50,该优先级配置界面50中包含有终端已安装的各个语音服务接入方分别对应的配置选项51,图5中示出为XX视频应用对应的配置选项、系统应用对应的配置选项以及YY视频对应的配置选项,其中,每个配置选项中包含一个优先级调整控件52,该优先级调整控件包括优先级提升控件52a(图5中示出为向上的三角),以及优先级提升控件52b(图5中示出为向下的三角),用户可以通过优先级提升控件52a或者优先级提升控件52b调整对应的语音服务接入方的分发优先级。优先级配置界面50中还包含确定按钮53,用户完成对各个语音服务接入方的分发优先级的调整后,可以点击确定按钮53,之后,语音助手类的应用可以根据调整后的各个语音服务接入方的分发优先级生成上述本地配置文件。
步骤408,根据该N个语音服务接入方各自的分发优先级,通过该N个语音服务接入方中包括的该统一的SDK,将该语音识别数据发送给该N个语音服务接入方中的至少一个。
可选的,在根据该N个语音服务接入方各自的分发优先级,通过该N个语音服务接入方中包括的该统一的SDK,将该语音识别数据发送给该N个语音服务接入方中的至少一个时,语音助手类的应用可以按照分发优先级从高到低的顺序,从该N个语音服务接入方中确定目标接入方;通过该目标接入方中包括的该统一的SDK,将该语音识别数据发送给该目标接入方;若在发送该语音识别数据之后的指定时长内接收到该目标接入方返回的确认响应,则结束该语音识别数据的发送;若在该指定时长内未接收到该目标接入方返回的该确认响应,且该N个语音服务接入方中存在未被分发过该语音识别数据的语音服务接入方,则按照分发优先级从高到低的顺序,从该N个语音服务接入方中确定新的目标接入方。
其中,上述确认响应可以是对应的语音服务接入方确认执行语音识别数据对应的操作后返回的响应。
在本申请实施例中,对于上述N个语音服务接入方,语音助手类的应用可以从其中对应分发优先级最高的接入方开始,依次发送语音识别数据,如果当前接收语音识别数据的接入方未返回确认响应,则向剩余接入方中优先级最高的接入方发送该语音识别数据,直至接收到确认响应,或者全部N个语音服务接入方都发送完语音识别数据。
例如,假设第一接入方中包含接入方A、接入方B和接入方C,其中,接入方A的分发优先级最高,接入方B的分发优先级次之,接入方C的分发优先级最低,则语音助手类的应用可以先向接入方A发送语音识别数据,如果接入方A未返回确认响应,则语音助手类的应用再向接入方B发送语音识别数据,如果接入方B返回了确认响应,则停止语音识别数据的分发,如果接入方B也没有返回确认响应,则语音助手类的应用再向接入方C发送语音识别数据。
可选的在满足指定条件时,在该终端中安装的M个语音服务接入方之外对该语音识别数据进行处理;其中,该指定条件包括:
在该指定时长内未接收到该目标接入方返回的该确认响应,且该N个语音服务接入方中不存在未被分发过该语音识别数据的语音服务接入方;
或者,
根据该数据分发规则以及该语音识别数据的内容未获取到该第一接入方。
在本申请实施例中,如果上述第一接入方都没有返回确认响应,则语音助手类的应用可以按照默认的处理方式,在语音助手类的应用中执行上述语音识别数据对应的操作。
或者,如果上述步骤406中未获取到第一接入方,比如,终端中不存在执行该与语音识别数据对应的操作的语音服务接入方,此时,语音助手类的应用也可以按照默认的处理方式,在语音助手类的应用中执行上述语音识别数据对应的操作。
可选的,当第一接入方只包含单个接入方时,语音助手类的应用可以直接通过该第一接入方中包括的统一的SDK,向第一接入方发送该语音识别数据,以便该第一接入方解析该语音识别数据,确定对应的操作并执行。
可选的,针对上述跨进程通信,以基于Android系统平台的智能电视机为例,以图SDK和语音助手类的因公之间的跨进程通信可以采用Android系统的Binder通信,其中,Binder是一种基于Client/Server架构的IPC(进程间通信)机制。
可选的,本申请所示的技术方案并不局限于Android平台,比如,基于其他操作系统的智能电视机也同样适用。上述语音识别数据分发依赖的进程间通信手段,也不局限于Binder通信,采用其他Android的进程间通信手段也同样适用,比如Broadcast广播、共享内存以及Socket通信等基本进程间通信机制也同样适用。
综上所述,在本申请实施例所示的方案中,获取到根据对语音的识别和语义理解的结果,按照指定的数据格式协议生成的语音识别数据后,根据数据分发规则以及语音识别数据的内容获取终端中安装的M个语音服务接入方中的第一接入方,并通过第一接入方中包括的统一的SDK,向第一接入方分发该语音识别数据,由于M个语音服务接入方包括的SDK是统一的,语音助手类的应用只需要极少的接口部分代码,即可以支持各种不同的语音服务接入方,从而降低语音助手运行过程中接口适配部分的代码占用的内存,从而提高语音助手运行时的终端性能。
在本申请实施例中,上述终端是运行智能操作系统的智能电视机,比如基于Android系统平台的智能电视机,该智能电视机具有一定的计算处理能力,并且具有联网通信能力。请参考图6,其示出了本申请实施例一示例性实施例提供的一种语音意图分发流程的示意图。如图6所示,本方案的技术框架如下:
语音助手类的应用的服务商向各个语音服务接入方的服务商提供上述统一的标准SDK,本申请实施例称为意图(Intent)SDK,该意图SDK负责与语音助手类的应用61建立跨进程通信,以接受语音助手类的应用61的语音意图分发,同时为上层提供简单可用的API接口,语音服务接入方的服务商在自己的语音服务接入方上集成该意图SDK,这些语音服务接入方包括但不限于电视系统服务62以及第三方应用63。在图6中,智能电视机60中安装了语音助手类的应用61,以及包括有上述意图SDK的电视系统服务62以及第三方应用63后,语音助手类的应用61接受用户语音输入时,语音助手类的应用61可以与服务器端64通信,完成ASR(语音识别)和NLU(语义理解)后获取到意图协议数据(即上述的语音识别数据),同时语音助手类的应用61会从服务器端64获取到意图分发规则配置数据(即上述数据分发规则)。语音助手类的应用61在智能电视机60中支持与各个意图SDK之间的一对多的关系,语音助手类的应用61通过语音意图主分发器61a、开放意图协议分发器61b以及开放意图服务61c的协作,通过跨进程通信完成根据获取到的意图分发规则配置数据,对电视系统服务62以及第三方应用63(APP)的意图协议数据的分发,电视系统服务62或者第三方应用63通过意图SDK获取到意图协议数据后进行处理并响应。
请参考图7,其示出了本申请实施例涉及的另一种语音意图分发流程的示意图。如图7所示,以语音助手类的应用包含语音意图主分发器、开放意图协议分发器以及开放意图服务为例,该意图分发流程可以如下:
S71,语音助手类的应用将终端接收到的语音提供给服务器端,服务器端将语音数据(对应上述指定格式的语音识别数据)发送给语音助手类的应用中的语音意图主分发器。
S72,语音意图主分发器首先将语音数据分发给开放意图协议分发器。
S73,开放意图协议分发器根据语音助手类的应用服务器端的开放意图协议分发规则配置表(即上述实施例中的数据分发规则)对语音数据进行分发,若开放意图协议分发规则配置表指示终端中有语音数据对应的目标接入方,则将语音数据分发给开放意图服务进行处理。
S74,开放意图服务与目标接入方的IntentSDK(即图7中的意图SDK)进行对接分发语音数据。
S75,若开放意图服务与目标接入方的IntentSDK对接成功(比如,接收到目标接入方发送的确认响应),则由目标接入方对语音数据进行意图协议处理。
S76,若开放意图服务与目标接入方的IntentSDK对接失败(比如,所有的目标接入方都没有返回确认响应),则开放意图服务将语音数据返回给语音意图主分发器。
S77,若开放意图协议分发规则配置表指示终端中没有语音数据对应的目标接入方,或者,开放意图服务将语音数据返回给语音意图主分发器,则语音意图主分发器将语音数据返还给语音意图主分发器,由语音意图主分发器分发给默认协议处理器进行处理。该默认协议处理器可以时语音助手类的应用自带的处理模块,该默认协议处理器可以根据语音识别以及语义理解得到的语音数据执行相应的操作,比如搜索视频,查询天气以及播放音乐等,也就是对语音数据在语音助手类的应用中进行内部处理。
图8是根据一示例性实施例示出的语音识别数据分发装置的结构方框图。该语音识别数据分发装置可以设置于终端(比如图1所示的语音系统中的终端)中,以执行图2或图4对应实施例所示的方法的全部或部分步骤。该语音识别数据分发装置可以包括:
语音接收模块810,用于接收在所述终端中输入的语音;
语音数据获取模块820,用于获取所述语音对应的语音识别数据;所述语音识别是根据对所述语音的识别和语义理解的结果,按照指定的数据格式协议生成的数据;
接入方获取模块830,用于根据数据分发规则以及所述语音识别数据的内容获取第一接入方;所述数据分发规则中包含所述语音识别数据的内容与所述第一接入方之间的对应关系;所述第一接入方是所述终端中安装的M个语音服务接入方中的至少一个;所述M个语音服务接入方是包括有统一的软件开发工具包SDK的程序,M≥1,且M为整数;
语音数据分发模块840,用于通过所述第一接入方中包括的所述统一的SDK,向所述第一接入方分发所述语音识别数据。
在一种可能的实现方式中,所述语音识别数据中包含意图信息,所述意图信息用于指示所述语音对应的用户意图;所述数据分发规则中包含所述意图信息对应的语音服务接入方的标识;
所述接入方获取模块830,用于,
读取所述M个语音服务接入方的标识;
从所述M个语音服务接入方的标识中,获取属于所述意图信息对应的语音服务接入方的第一标识;
将所述第一标识对应的语音服务接入方确定为所述第一接入方。
在一种可能的实现方式中,所述意图信息包括服务信息和操作信息中的至少一种;所述服务信息用于指示所述语音请求的目标服务,所述操作信息用于指示提供所述目标服务的操作。
在一种可能的实现方式中,所述装置还包括:
注册请求接收模块,用于在所述语音接收模块接收在所述终端中输入的语音之前,接收第二接入方发送的注册请求,所述注册请求中包含所述第二接入方的标识;所述第二接入方是所述M个语音服务接入方中的任意一个;
标识存储模块,用于将所述第二接入方的标识存在所述终端中的指定文件中;
在读取所述M个语音服务接入方的标识时,所述接入方获取模块830,用于从所述指定文件中读取所述M个语音服务接入方的标识。
在一种可能的实现方式中,所述装置还包括:
规则获取模块,用于在所述语音接收模块接收在所述终端中输入的语音之前,从服务器获取所述数据分发规则。
在一种可能的实现方式中,所述语音数据分发模块820,用于,
当所述第一接入方中包含N个语音服务接入方时,获取所述N个语音服务接入方各自的分发优先级,M≥N≥2,且N为整数;
根据所述N个语音服务接入方各自的分发优先级,通过所述N个语音服务接入方中包括的所述统一的SDK,将所述语音识别数据发送给所述N个语音服务接入方中的至少一个。
在一种可能的实现方式中,在获取所述N个语音服务接入方各自的分发优先级时,所述语音数据分发模块820,用于,
获取所述数据分发规则中携带的,所述N个语音服务接入方各自的分发优先级;
或者,
从所述数据分发规则之外的本地配置文件中获取所述N个语音服务接入方各自的分发优先级。
在一种可能的实现方式中,所述装置还包括:
设置界面展示模块,用于在所述语音数据分发模块从所述数据分发规则之外的本地配置文件中获取所述N个语音服务接入方各自的分发优先级之前,展示优先级配置界面,所述优先级配置界面中包含所述M个语音服务接入方分别对应的配置选项,所述配置选项用于配置对应的语音服务接入方的分发优先级;
优先级更新模块,用于根据对第三接入方的配置选项执行的所述优先级配置操作,更新所述M个语音服务接入方各自的分发优先级,所述第三接入方是所述M个语音服务接入方中的任意一个;
配置文件生成模块,用于根据所述M个语音服务接入方各自的分发优先级生成所述本地配置文件。
在一种可能的实现方式中,在根据所述N个语音服务接入方各自的分发优先级,通过所述N个语音服务接入方中包括的所述统一的SDK,将所述语音识别数据发送给所述N个语音服务接入方中的至少一个时,所述语音数据分发模块840,用于,
按照分发优先级从高到低的顺序,从所述N个语音服务接入方中确定目标接入方;
通过所述目标接入方中包括的所述统一的SDK,将所述语音识别数据发送给所述目标接入方;
若在发送所述语音识别数据之后的指定时长内接收到所述目标接入方返回的确认响应,则结束所述语音识别数据的发送。
在一种可能的实现方式中,所述语音数据分发模块840,还用于,
若在所述指定时长内未接收到所述目标接入方返回的所述确认响应,且所述N个语音服务接入方中存在未被分发过所述语音识别数据的接入方,则按照分发优先级从高到低的顺序,从所述N个语音服务接入方中确定新的目标接入方。
在一种可能的实现方式中,所述装置还包括:
数据处理模块,用于在满足指定条件时,在所述M个语音服务接入方之外对所述语音识别数据进行处理;
其中,所述指定条件包括:
在所述指定时长内未接收到所述目标接入方返回的所述确认响应,且所述N个语音服务接入方中不存在未被分发过所述语音识别数据的语音服务接入方;
或者,
根据所述数据分发规则以及所述语音识别数据的内容未获取到所述第一接入方。
在一种可能的实现方式中,所述终端是智能电视机,或者,智能电视机顶盒。
综上所述,在本申请实施例所示的方案中,终端获取到根据对语音的识别和语义理解的结果,按照指定的数据格式协议生成的语音识别数据后,根据数据分发规则以及语音识别数据的内容获取终端中安装的M个语音服务接入方中的第一接入方,并通过第一接入方中包括的统一的SDK,向第一接入方分发该语音识别数据,由于M个语音服务接入方包括的SDK是统一的,语音助手类的应用只需要极少的接口部分代码,即可以支持各种不同的语音服务接入方,从而降低语音助手运行过程中接口适配部分的代码占用的内存,提高语音助手运行时的终端性能。
图9示出了本申请一个示例性实施例提供的终端900的结构框图。该终端900可以是图1所示系统中的终端110。
通常,终端900包括有:处理器901和存储器902。
处理器901可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器901可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器901也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器901可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器901还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器902可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器902还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器902中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器901所执行以实现本申请中方法实施例提供的语音识别数据分发方法。
在一些实施例中,终端900还可选包括有:外围设备接口903和至少一个外围设备。处理器901、存储器902和外围设备接口903之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口903相连。具体地,外围设备包括:射频电路904、触摸显示屏905、摄像头906、音频电路907、定位组件908和电源909中的至少一种。
外围设备接口903可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器901和存储器902。在一些实施例中,处理器901、存储器902和外围设备接口903被集成在同一芯片或电路板上;在一些其他实施例中,处理器901、存储器902和外围设备接口903中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路904用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路904通过电磁信号与通信网络以及其他通信设备进行通信。射频电路904将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路904包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路904可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路904还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏905用于显示UI(UserInterface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏905是触摸显示屏时,显示屏905还具有采集在显示屏905的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器901进行处理。此时,显示屏905还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏905可以为一个,设置终端900的前面板;在另一些实施例中,显示屏905可以为至少两个,分别设置在终端900的不同表面或呈折叠设计;在再一些实施例中,显示屏905可以是柔性显示屏,设置在终端900的弯曲表面上或折叠面上。甚至,显示屏905还可以设置成非矩形的不规则图形,也即异形屏。显示屏905可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件906用于采集图像或视频。可选地,摄像头组件906包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件906还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路907可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器901进行处理,或者输入至射频电路904以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端900的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器901或射频电路904的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路907还可以包括耳机插孔。
定位组件908用于定位终端900的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件908可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。
电源909用于为终端900中的各个组件进行供电。电源909可以是交流电、直流电、一次性电池或可充电电池。当电源909包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端900还包括有一个或多个传感器910。该一个或多个传感器910包括但不限于:加速度传感器911、陀螺仪传感器912、压力传感器913、指纹传感器914、光学传感器915以及接近传感器916。
加速度传感器911可以检测以终端900建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器911可以用于检测重力加速度在三个坐标轴上的分量。处理器901可以根据加速度传感器911采集的重力加速度信号,控制触摸显示屏905以横向视图或纵向视图进行用户界面的显示。加速度传感器911还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器912可以检测终端900的机体方向及转动角度,陀螺仪传感器912可以与加速度传感器911协同采集用户对终端900的3D动作。处理器901根据陀螺仪传感器912采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器913可以设置在终端900的侧边框和/或触摸显示屏905的下层。当压力传感器913设置在终端900的侧边框时,可以检测用户对终端900的握持信号,由处理器901根据压力传感器913采集的握持信号进行左右手识别或快捷操作。当压力传感器913设置在触摸显示屏905的下层时,由处理器901根据用户对触摸显示屏905的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器914用于采集用户的指纹,由处理器901根据指纹传感器99采集到的指纹识别用户的身份,或者,由指纹传感器914根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器901授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器914可以被设置终端900的正面、背面或侧面。当终端900上设置有物理按键或厂商Logo时,指纹传感器914可以与物理按键或厂商Logo集成在一起。
光学传感器915用于采集环境光强度。在一个实施例中,处理器901可以根据光学传感器915采集的环境光强度,控制触摸显示屏905的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏905的显示亮度;当环境光强度较低时,调低触摸显示屏905的显示亮度。在另一个实施例中,处理器901还可以根据光学传感器915采集的环境光强度,动态调整摄像头组件906的拍摄参数。
接近传感器916,也称距离传感器,通常设置在终端900的前面板。接近传感器916用于采集用户与终端900的正面之间的距离。在一个实施例中,当接近传感器916检测到用户与终端900的正面之间的距离逐渐变小时,由处理器901控制触摸显示屏905从亮屏状态切换为息屏状态;当接近传感器916检测到用户与终端900的正面之间的距离逐渐变大时,由处理器901控制触摸显示屏905从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图9中示出的结构并不构成对终端900的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本申请实施例还提供一种计算机设备,该计算机设备包括存储器和处理器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并实现上述如图2或图4所述的语音识别数据分发方法。
本申请实施例还提供一种计算机可读存储介质,该可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如图2或图4所述的语音识别数据分发方法。
本申请还提供了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行上述各个方法实施例提供的语音识别数据分发方法。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,该计算机可读存储介质可以是上述实施例中的存储器中所包含的计算机可读存储介质;也可以是单独存在,未装配入终端中的计算机可读存储介质。该计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如图2或图4所述的语音识别数据分发方法。
可选地,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、固态硬盘(SSD,Solid State Drives)或光盘等。其中,随机存取记忆体可以包括电阻式随机存取记忆体(ReRAM,Resistance RandomAccess Memory)和动态随机存取存储器(DRAM,Dynamic Random Access Memory)。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (15)
1.一种语音识别数据分发方法,其特征在于,所述方法由终端执行,所述方法包括:
接收在所述终端中输入的语音;
获取所述语音对应的语音识别数据;所述语音识别数据是根据对所述语音的识别和语义理解的结果,按照指定的数据格式协议生成的数据;
根据数据分发规则以及所述语音识别数据的内容获取第一接入方;所述数据分发规则中包含所述语音识别数据的内容与所述第一接入方之间的对应关系;所述第一接入方是所述终端中安装的M个语音服务接入方中的至少一个;所述M个语音服务接入方是包括有统一的软件开发工具包SDK的程序,M≥1,且M为整数;
通过所述第一接入方中包括的所述统一的SDK,向所述第一接入方分发所述语音识别数据。
2.根据权利要求1所述的方法,其特征在于,所述语音识别数据中包含意图信息,所述意图信息用于指示所述语音对应的用户意图;所述数据分发规则中包含所述意图信息对应的语音服务接入方的标识;
所述根据数据分发规则以及所述语音识别数据的内容获取第一接入方,包括:
读取所述M个语音服务接入方的标识;
从所述M个语音服务接入方的标识中,获取属于所述意图信息对应的语音服务接入方的第一标识;
将所述第一标识对应的语音服务接入方确定为所述第一接入方。
3.根据权利要求2所述的方法,其特征在于,
所述意图信息包括服务信息和操作信息中的至少一种;所述服务信息用于指示所述语音请求的目标服务,所述操作信息用于指示提供所述目标服务的操作。
4.根据权利要求2所述的方法,其特征在于,所述接收在所述终端中输入的语音之前,还包括:
接收第二接入方发送的注册请求,所述注册请求中包含所述第二接入方的标识;所述第二接入方是所述M个语音服务接入方中的任意一个;
将所述第二接入方的标识存在所述终端中的指定文件中;
所述读取所述M个语音服务接入方的标识,包括:
从所述指定文件中读取所述M个语音服务接入方的标识。
5.根据权利要求1所述的方法,其特征在于,所述接收在所述终端中输入的语音之前,还包括:
从服务器获取所述数据分发规则。
6.根据权利要求1至5任一所述的方法,其特征在于,所述通过所述第一接入方中集成的所述统一的SDK,向所述第一接入方分发所述语音识别数据,包括:
当所述第一接入方中包含N个语音服务接入方时,获取所述N个语音服务接入方各自的分发优先级,M≥N≥2,且N为整数;
根据所述N个语音服务接入方各自的分发优先级,通过所述N个语音服务接入方中包括的所述统一的SDK,将所述语音识别数据发送给所述N个语音服务接入方中的至少一个。
7.根据权利要求6所述的方法,其特征在于,所述获取所述N个语音服务接入方各自的分发优先级,包括:
获取所述数据分发规则中携带的,所述N个语音服务接入方各自的分发优先级;
或者,
从所述数据分发规则之外的本地配置文件中获取所述N个语音服务接入方各自的分发优先级。
8.根据权利要求7所述的方法,其特征在于,所述从所述数据分发规则之外的本地配置文件中获取所述N个语音服务接入方各自的分发优先级之前,还包括:
展示优先级配置界面,所述优先级配置界面中包含所述M个语音服务接入方分别对应的配置选项,所述配置选项用于配置对应的语音服务接入方的分发优先级;
根据对第三接入方的配置选项执行的所述优先级配置操作,更新所述M个语音服务接入方各自的分发优先级,所述第三接入方是所述M个语音服务接入方中的任意一个;
根据所述M个语音服务接入方各自的分发优先级生成所述本地配置文件。
9.根据权利要求6所述的方法,其特征在于,所述根据所述N个语音服务接入方各自的分发优先级,通过所述N个语音服务接入方中包括的所述统一的SDK,将所述语音识别数据发送给所述N个语音服务接入方中的至少一个,包括:
按照分发优先级从高到低的顺序,从所述N个语音服务接入方中确定目标接入方;
通过所述目标接入方中包括的所述统一的SDK,将所述语音识别数据发送给所述目标接入方;
若在发送所述语音识别数据之后的指定时长内接收到所述目标接入方返回的确认响应,则结束所述语音识别数据的发送。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
若在所述指定时长内未接收到所述目标接入方返回的所述确认响应,且所述N个语音服务接入方中存在未被分发过所述语音识别数据的语音服务接入方,则按照分发优先级从高到低的顺序,从所述N个语音服务接入方中确定新的目标接入方。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括:
在满足指定条件时,在所述M个语音服务接入方之外对所述语音识别数据进行处理;
其中,所述指定条件包括:
在所述指定时长内未接收到所述目标接入方返回的所述确认响应,且所述N个语音服务接入方中不存在未被分发过所述语音识别数据的语音服务接入方;
或者,
根据所述数据分发规则以及所述语音识别数据的内容未获取到所述第一接入方。
12.根据权利要求1至5任一所述的方法,其特征在于,所述终端是智能电视机,或者,智能电视机顶盒。
13.一种语音识别数据分发装置,其特征在于,所述装置用于终端中,所述装置包括:
语音接收模块,用于接收在所述终端中输入的语音;
语音数据获取模块,用于获取所述语音对应的语音识别数据;所述语音识别是根据对所述语音的识别和语义理解的结果,按照指定的数据格式协议生成的数据;
接入方获取模块,用于根据数据分发规则以及所述语音识别数据的内容获取第一接入方;所述数据分发规则中包含所述语音识别数据的内容与所述第一接入方之间的对应关系;所述第一接入方是所述终端中安装的M个语音服务接入方中的至少一个;所述M个语音服务接入方是包括有统一的软件开发工具包SDK的程序,M≥1,且M为整数;
语音数据分发模块,用于通过所述第一接入方中包括的所述统一的SDK,向所述第一接入方分发所述语音识别数据。
14.一种计算机设备,其特征在于,计算机设备包含处理器和存储器,所述存储器中存储由至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至12任一所述的语音识别数据分发方法。
15.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至12任一所述的语音识别数据分发方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910828784.XA CN110503959B (zh) | 2019-09-03 | 2019-09-03 | 语音识别数据分发方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910828784.XA CN110503959B (zh) | 2019-09-03 | 2019-09-03 | 语音识别数据分发方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110503959A true CN110503959A (zh) | 2019-11-26 |
CN110503959B CN110503959B (zh) | 2022-02-22 |
Family
ID=68591011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910828784.XA Active CN110503959B (zh) | 2019-09-03 | 2019-09-03 | 语音识别数据分发方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110503959B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111028837A (zh) * | 2019-12-16 | 2020-04-17 | 深圳云之家网络有限公司 | 语音会话方法、语音识别系统及计算机存储介质 |
CN111145741A (zh) * | 2019-12-17 | 2020-05-12 | 中移(杭州)信息技术有限公司 | 多媒体内容的提供方法、装置、电子设备以及存储介质 |
CN111261156A (zh) * | 2019-12-30 | 2020-06-09 | 北京梧桐车联科技有限责任公司 | 语音采集方法、装置及计算机可读存储介质 |
CN111341308A (zh) * | 2020-02-12 | 2020-06-26 | 百度在线网络技术(北京)有限公司 | 用于输出信息的方法和装置 |
CN111354370A (zh) * | 2020-02-13 | 2020-06-30 | 百度在线网络技术(北京)有限公司 | 一种唇形特征预测方法、装置和电子设备 |
CN112181340A (zh) * | 2020-09-29 | 2021-01-05 | 联想(北京)有限公司 | 一种ar图像的共享方法及电子设备 |
CN112327789A (zh) * | 2020-11-26 | 2021-02-05 | 江西台德智慧科技有限公司 | 一种应用于智能语音助手的语音交互的系统及方法 |
CN113282264A (zh) * | 2020-02-20 | 2021-08-20 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置、智能设备及计算机存储介质 |
CN114697713A (zh) * | 2020-12-29 | 2022-07-01 | 深圳Tcl新技术有限公司 | 语音助手控制方法、装置、存储介质及智能电视 |
CN114726830A (zh) * | 2020-12-18 | 2022-07-08 | 阿里巴巴集团控股有限公司 | 语音服务访问方法、系统和车辆 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102427465A (zh) * | 2011-08-18 | 2012-04-25 | 青岛海信电器股份有限公司 | 语音服务代理方法及装置、通过代理集成语音应用的系统 |
CN103501382A (zh) * | 2013-09-17 | 2014-01-08 | 小米科技有限责任公司 | 语音服务提供方法、装置和终端 |
US20150310864A1 (en) * | 2013-01-06 | 2015-10-29 | Huawei Technologies Co., Ltd. | Method, interaction device, server, and system for speech recognition |
CN105740057A (zh) * | 2014-12-09 | 2016-07-06 | 阿里巴巴集团控股有限公司 | 一种信息处理方法与设备 |
US20190013024A1 (en) * | 2017-07-10 | 2019-01-10 | Samsung Electronics Co., Ltd. | Voice processing method and electronic device supporting the same |
CN109391734A (zh) * | 2018-09-26 | 2019-02-26 | Oppo广东移动通信有限公司 | 数据发送方法、装置、终端及存储介质 |
CN109545214A (zh) * | 2018-12-26 | 2019-03-29 | 苏州思必驰信息科技有限公司 | 基于语音交互系统的消息分发方法及装置 |
CN109918040A (zh) * | 2019-03-15 | 2019-06-21 | 百度在线网络技术(北京)有限公司 | 语音指令分发方法和装置、电子设备及计算机可读介质 |
-
2019
- 2019-09-03 CN CN201910828784.XA patent/CN110503959B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102427465A (zh) * | 2011-08-18 | 2012-04-25 | 青岛海信电器股份有限公司 | 语音服务代理方法及装置、通过代理集成语音应用的系统 |
US20150310864A1 (en) * | 2013-01-06 | 2015-10-29 | Huawei Technologies Co., Ltd. | Method, interaction device, server, and system for speech recognition |
CN103501382A (zh) * | 2013-09-17 | 2014-01-08 | 小米科技有限责任公司 | 语音服务提供方法、装置和终端 |
CN105740057A (zh) * | 2014-12-09 | 2016-07-06 | 阿里巴巴集团控股有限公司 | 一种信息处理方法与设备 |
US20190013024A1 (en) * | 2017-07-10 | 2019-01-10 | Samsung Electronics Co., Ltd. | Voice processing method and electronic device supporting the same |
CN109391734A (zh) * | 2018-09-26 | 2019-02-26 | Oppo广东移动通信有限公司 | 数据发送方法、装置、终端及存储介质 |
CN109545214A (zh) * | 2018-12-26 | 2019-03-29 | 苏州思必驰信息科技有限公司 | 基于语音交互系统的消息分发方法及装置 |
CN109918040A (zh) * | 2019-03-15 | 2019-06-21 | 百度在线网络技术(北京)有限公司 | 语音指令分发方法和装置、电子设备及计算机可读介质 |
Non-Patent Citations (1)
Title |
---|
王磊等: "智能语音控制系统的设计与实现", 《计算机测量与控制》 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111028837B (zh) * | 2019-12-16 | 2022-10-04 | 深圳云之家网络有限公司 | 语音会话方法、语音识别系统及计算机存储介质 |
CN111028837A (zh) * | 2019-12-16 | 2020-04-17 | 深圳云之家网络有限公司 | 语音会话方法、语音识别系统及计算机存储介质 |
CN111145741A (zh) * | 2019-12-17 | 2020-05-12 | 中移(杭州)信息技术有限公司 | 多媒体内容的提供方法、装置、电子设备以及存储介质 |
CN111145741B (zh) * | 2019-12-17 | 2022-12-27 | 中移(杭州)信息技术有限公司 | 多媒体内容的提供方法、装置、电子设备以及存储介质 |
CN111261156A (zh) * | 2019-12-30 | 2020-06-09 | 北京梧桐车联科技有限责任公司 | 语音采集方法、装置及计算机可读存储介质 |
CN111341308A (zh) * | 2020-02-12 | 2020-06-26 | 百度在线网络技术(北京)有限公司 | 用于输出信息的方法和装置 |
CN111341308B (zh) * | 2020-02-12 | 2023-07-21 | 百度在线网络技术(北京)有限公司 | 用于输出信息的方法和装置 |
CN111354370A (zh) * | 2020-02-13 | 2020-06-30 | 百度在线网络技术(北京)有限公司 | 一种唇形特征预测方法、装置和电子设备 |
CN113282264A (zh) * | 2020-02-20 | 2021-08-20 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置、智能设备及计算机存储介质 |
CN112181340A (zh) * | 2020-09-29 | 2021-01-05 | 联想(北京)有限公司 | 一种ar图像的共享方法及电子设备 |
CN112327789A (zh) * | 2020-11-26 | 2021-02-05 | 江西台德智慧科技有限公司 | 一种应用于智能语音助手的语音交互的系统及方法 |
CN112327789B (zh) * | 2020-11-26 | 2023-04-28 | 江西台德智慧科技有限公司 | 一种应用于智能语音助手的语音交互的系统及方法 |
CN114726830A (zh) * | 2020-12-18 | 2022-07-08 | 阿里巴巴集团控股有限公司 | 语音服务访问方法、系统和车辆 |
CN114697713A (zh) * | 2020-12-29 | 2022-07-01 | 深圳Tcl新技术有限公司 | 语音助手控制方法、装置、存储介质及智能电视 |
CN114697713B (zh) * | 2020-12-29 | 2024-02-06 | 深圳Tcl新技术有限公司 | 语音助手控制方法、装置、存储介质及智能电视 |
Also Published As
Publication number | Publication date |
---|---|
CN110503959B (zh) | 2022-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110503959B (zh) | 语音识别数据分发方法、装置、计算机设备及存储介质 | |
WO2021063343A1 (zh) | 语音交互方法及装置 | |
WO2021013230A1 (zh) | 机器人的控制方法、机器人、终端、服务器及控制系统 | |
CN111031386B (zh) | 基于语音合成的视频配音方法、装置、计算机设备及介质 | |
CN110136705A (zh) | 一种人机交互的方法和电子设备 | |
CN111104980B (zh) | 确定分类结果的方法、装置、设备及存储介质 | |
CN111739517B (zh) | 语音识别方法、装置、计算机设备及介质 | |
WO2022057435A1 (zh) | 基于搜索的问答方法及存储介质 | |
CN114594923A (zh) | 车载终端的控制方法、装置、设备及存储介质 | |
CN110493635B (zh) | 视频播放方法、装置及终端 | |
CN110837557A (zh) | 摘要生成方法、装置、设备及介质 | |
CN112561084B (zh) | 特征提取方法、装置、计算机设备及存储介质 | |
CN114328815A (zh) | 文本映射模型的处理方法、装置、计算机设备及存储介质 | |
CN111554314B (zh) | 噪声检测方法、装置、终端及存储介质 | |
WO2021031862A1 (zh) | 一种数据处理方法及其装置 | |
CN112287070A (zh) | 词语的上下位关系确定方法、装置、计算机设备及介质 | |
CN112119372B (zh) | 电子设备及其控制方法 | |
CN113518261A (zh) | 指引视频播放方法、装置、计算机设备及存储介质 | |
CN112100528A (zh) | 对搜索结果评分模型进行训练的方法、装置、设备、介质 | |
CN113742460A (zh) | 生成虚拟角色的方法及装置 | |
CN113763932B (zh) | 语音处理方法、装置、计算机设备及存储介质 | |
CN116860913A (zh) | 语音交互方法、装置、设备及存储介质 | |
WO2022152174A1 (zh) | 一种投屏的方法和电子设备 | |
CN114281937A (zh) | 嵌套实体识别模型的训练方法、嵌套实体识别方法及装置 | |
CN114153953A (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 |