CN115206303A - 语音编码方法、装置、计算机设备和存储介质 - Google Patents
语音编码方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN115206303A CN115206303A CN202210787930.0A CN202210787930A CN115206303A CN 115206303 A CN115206303 A CN 115206303A CN 202210787930 A CN202210787930 A CN 202210787930A CN 115206303 A CN115206303 A CN 115206303A
- Authority
- CN
- China
- Prior art keywords
- code
- editing
- voice
- current
- parameter
- 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
- 238000000034 method Methods 0.000 title claims abstract description 75
- 238000004590 computer program Methods 0.000 claims abstract description 25
- 238000012549 training Methods 0.000 claims description 81
- 230000006399 behavior Effects 0.000 claims description 71
- 230000008569 process Effects 0.000 claims description 18
- 238000009877 rendering Methods 0.000 claims description 11
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 230000008676 import Effects 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 3
- 230000000977 initiatory effect Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 11
- 238000011161 development Methods 0.000 description 7
- 230000003252 repetitive effect Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000000007 visual 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/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- 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
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/33—Intelligent editors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- 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/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- 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/26—Speech to text systems
-
- 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)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Acoustics & Sound (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请涉及一种语音编码方法、装置、计算机设备、存储介质和计算机程序产品。该方法包括:在代码编辑应用程序中接收语音编码指令,识别语音编码指令,得到编码参数信息;基于编码参数信息生成操作代码请求,根据操作代码请求获取当前焦点位置,当前焦点位置在代码编辑应用程序的当前编辑代码中;基于当前焦点位置确定当前编辑代码对应的文件存放路径和当前代码编辑位置,按照文件存放路径将代码标识参数对应的预设代码模板文件进行存储;当代码标识参数存在对应的引用代码时,按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置。采用本方法能够节省***资源,提高代码编写效率。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种语音编码方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
随着计算机技术的发展,开发人员通过开发出各种应用程序来满足各种需求。开发人员在开发应用程序时,通常是使用代码编辑器进行代码开发。即在代码编辑器中通过编写出应用程序对应的代码。然而,目前在使用代码编辑器进行开发时,开发人员需要进行很多重复性的操作,比如,通过键盘不断重复编写基础语法的组合代码,创建重复的函数等。该重复性的操作会浪费大量的***资源,造成代码编写的效率低下。
发明内容
基于此,有必要针对上述技术问题,提供一种能够节省***资源,提高代码编写效率的语音编码方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种语音编码方法。所述方法包括:
在代码编辑应用程序中接收语音编码指令,识别语音编码指令,得到编码参数信息,编码参数信息包括代码编辑行为参数和代码标识参数;
基于代码编辑行为参数和代码标识参数生成操作代码请求,根据操作代码请求获取当前焦点位置,当前焦点位置在代码编辑应用程序的当前编辑代码中;
基于当前焦点位置确定当前编辑代码对应的文件存放路径和当前代码编辑位置,按照文件存放路径将代码标识参数对应的预设代码模板文件进行存储;
当代码标识参数存在对应的引用代码时,按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置,调用代码用于调用预设代码模板文件中的代码。
第二方面,本申请还提供了一种语音编码装置。所述装置包括:
参数识别模块,用于在代码编辑应用程序中接收语音编码指令,识别语音编码指令,得到编码参数信息,编码参数信息包括代码编辑行为参数和代码标识参数;
位置获取模块,用于基于代码编辑行为参数和代码标识参数生成操作代码请求,根据操作代码请求获取当前焦点位置,当前焦点位置在代码编辑应用程序的当前编辑代码中;
存储模块,用于基于当前焦点位置确定当前编辑代码对应的文件存放路径和当前代码编辑位置,按照文件存放路径将代码标识参数对应的预设代码模板文件进行存储;
编辑模块,用于当代码标识参数存在对应的引用代码时,按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置,调用代码用于调用预设代码模板文件中的代码。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
在代码编辑应用程序中接收语音编码指令,识别语音编码指令,得到编码参数信息,编码参数信息包括代码编辑行为参数和代码标识参数;
基于代码编辑行为参数和代码标识参数生成操作代码请求,根据操作代码请求获取当前焦点位置,当前焦点位置在代码编辑应用程序的当前编辑代码中;
基于当前焦点位置确定当前编辑代码对应的文件存放路径和当前代码编辑位置,按照文件存放路径将代码标识参数对应的预设代码模板文件进行存储;
当代码标识参数存在对应的引用代码时,按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置,调用代码用于调用预设代码模板文件中的代码。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
在代码编辑应用程序中接收语音编码指令,识别语音编码指令,得到编码参数信息,编码参数信息包括代码编辑行为参数和代码标识参数;
基于代码编辑行为参数和代码标识参数生成操作代码请求,根据操作代码请求获取当前焦点位置,当前焦点位置在代码编辑应用程序的当前编辑代码中;
基于当前焦点位置确定当前编辑代码对应的文件存放路径和当前代码编辑位置,按照文件存放路径将代码标识参数对应的预设代码模板文件进行存储;
当代码标识参数存在对应的引用代码时,按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置,调用代码用于调用预设代码模板文件中的代码。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
在代码编辑应用程序中接收语音编码指令,识别语音编码指令,得到编码参数信息,编码参数信息包括代码编辑行为参数和代码标识参数;
基于代码编辑行为参数和代码标识参数生成操作代码请求,根据操作代码请求获取当前焦点位置,当前焦点位置在代码编辑应用程序的当前编辑代码中;
基于当前焦点位置确定当前编辑代码对应的文件存放路径和当前代码编辑位置,按照文件存放路径将代码标识参数对应的预设代码模板文件进行存储;
当代码标识参数存在对应的引用代码时,按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置,调用代码用于调用预设代码模板文件中的代码。
上述语音编码方法、装置、计算机设备、存储介质和计算机程序产品,通过在代码编辑应用程序中接收语音编码指令,识别语音编码指令,得到编码参数信息,编码参数信息包括代码编辑行为参数和代码标识参数;基于代码编辑行为参数和代码标识参数生成操作代码请求,根据操作代码请求获取当前焦点位置,当前焦点位置在代码编辑应用程序的当前编辑代码中;基于当前焦点位置确定当前编辑代码对应的文件存放路径和当前代码编辑位置,按照文件存放路径将代码标识参数对应的预设代码模板文件进行存储;当代码标识参数存在对应的引用代码时,按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置,调用代码用于调用预设代码模板文件中的代码。即在代码编辑应用程序中可以直接通过语音指令来自动编辑代码,自动将代码标识参数对应的预设代码模板文件存储到文件存放路径下,当代码标识参数存在对应的引用代码时,自动将代码标识参数对应的调用代码编辑到当前代码编辑位置,从而减少了重复性的编码操作,节省了***资源,提高了代码编写效率。
附图说明
图1为一个实施例中语音编码方法的应用环境图;
图2为一个实施例中语音编码方法的流程示意图;
图3为一个具体实施例中语音编码功能的界面示意图;
图4为一个实施例中接收语音编码指令的流程示意图;
图5为一个实施例中确定编码参数信息的流程示意图;
图6为一个实施例中语音识别模型训练的流程示意图;
图7为一个具体实施例中训练语音识别模型的流程示意图;
图8为一个具体实施例中语音编码的流程示意图;
图9为一个具体实施例中语音编码方法的流程示意图;
图10为一个具体实施例中语音编码的流程示意图;
图11为一个实施例中语音编码装置的结构框图;
图12为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
语音技术(Speech Technology)的关键技术有自动语音识别技术(ASR)和语音合成技术(TTS)以及声纹识别技术。让计算机能听、能看、能说、能感觉,是未来人机交互的发展方向,其中语音成为未来最被看好的人机交互方式之一。
本申请实施例提供的方案涉及人工智能的自动语音识别技术等技术,具体通过如下实施例进行说明:
本申请实施例提供的语音编码方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储***可以存储服务器104需要处理的数据。数据存储***可以集成在服务器104上,也可以放在云上或其他服务器上。终端102在代码编辑应用程序中接收语音编码指令,识别语音编码指令,得到编码参数信息,编码参数信息包括代码编辑行为参数和代码标识参数;终端102基于代码编辑行为参数和代码标识参数生成操作代码请求,根据操作代码请求获取当前焦点位置,当前焦点位置在代码编辑应用程序的当前编辑代码中;终端102基于当前焦点位置确定当前编辑代码对应的文件存放路径和当前代码编辑位置,按照文件存放路径将代码标识参数对应的预设代码模板文件进行存储;终端102当代码标识参数存在对应的引用代码时,按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置,调用代码用于调用预设代码模板文件中的代码。终端102可以从服务器104中获取到语音识别模型来进行语音识别。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种语音编码方法,以该方法应用于图1中的终端为例进行说明,可以理解的是,该方法也可以应用于服务器,还可以应用于包括终端和服务器的***,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:
步骤202,在代码编辑应用程序中接收语音编码指令,识别语音编码指令,得到编码参数信息,编码参数信息包括代码编辑行为参数和代码标识参数。
其中,代码编辑应用程序是进行代码编辑开发的应用程序,可以是代码编辑器,例如vs code(轻量级代码编译器)、IDE(集成代码开发工具)、Vim(高级文本编辑器)、Eclipse(一个开放源代码的、基于Java的可扩展开发平台)等等。语音编码指令是进行自动编码的语音指令,该语音编码指令是语音形式的指令。该语音编码指令对应的语音包括但不限于是中文语音、英文语音、日文语音、俄语语音等,该语音编码指令对应的语音也可以是各种不同类型语音的组合,比如,中文语音和英文语音的组合等。该语音编码指令可以是通过语音采集设备采集得到的,该语音采集设备是指用于采集语音的设备,比如麦克风等。编码参数信息是指进行自动编码时使用的参数信息,该编码参数信息包括代码编辑行为参数和代码标识参数。代码编辑行为参数是指用于描述代码编辑行为动作的参数。根据该代码编辑行为参数可以对相应的代码执行对应的操作,该代码编辑行为参数包括***动作参数、添加动作参数、引入动作参数等等。代码标识参数是指用于标识代码的参数,比如,可以是要***的组件名称或者可以是要***的模板代码的名称等。
具体地,终端接收到对代码编辑应用程序的启动操作,响应启动操作,运行代码编辑应用程序,并在代码编辑应用程序显示代码编辑界面。然后可以在代码编辑界面中进行代码编写。当需要语音编码时,终端通过在代码编辑应用程序中接收语音编码指令,然后对该语音编码指令进行识别,其中,可以使用语音识别模型进行识别,该语音识别模型可以是将语音转换为文本信息的神经网络模型。最后识别得到编码参数信息,该编码参数信息包括代码编辑行为参数和代码标识参数。
步骤204,基于代码编辑行为参数和代码标识参数生成操作代码请求,根据操作代码请求获取当前焦点位置,当前焦点位置在代码编辑应用程序的当前编辑代码中。
其中,操作代码请求是指用于对代码进行编写操作的请求,当前焦点位置在代码编辑应用程序的当前编辑代码中,该当前焦点位置是指当前鼠标光标点击的位置。当前编辑代码是指在代码编辑应用程序的正在编辑的代码即在代码编辑界面中显示的代码。
具体地,终端在运行代码编辑应用程序,同时运行代码编辑应用程序中的内置服务器,该内置服务器是逻辑服务器的一种,只存在于客户端中,用于对代码进行编写操作。当需要自动编写代码时,终端基于代码编辑行为参数和代码标识参数生成操作代码请求,将该操作代码请求发送该内置服务器,该内置服务器接收到该操作代码请求时,根据操作代码请求从在代码编辑应用程序的当前编辑代码中获取当前焦点位置。
步骤206,基于当前焦点位置确定当前编辑代码对应的文件存放路径和当前代码编辑位置,按照文件存放路径将代码标识参数对应的预设代码模板文件进行存储。
其中,文件存放路径是指当前编辑代码在终端操作***中的文件存储路径。该当前编辑代码是以文件的形式存储在终端操作***中的。当前代码编辑位置是指当前需要将代码编辑到的位置,该当前代码编辑位置包括行数信息和字符位置。预设代码模板文件是指预先设置好的可重复使用的代码的文件,该预设代码模板文件中的代码是可以直接运行的。比如,预设代码模板文件中的代码可以是可重复使用的组件对应的代码,或者可以是可重复使用的模板代码。
具体地,终端根据当前焦点位置使用代码编辑应用程序自身提供的文件路径确定方法确定当前编辑代码对应的文件存放路径和当前代码编辑位置,然后终端根据代码标识参数可以从预先设置好的本地存储空间中获取到对应的预设代码模板文件,也可以是从云服务器中获取到代码标识参数对应的预设代码模板文件。然后终端按照文件存放路径将代码标识参数对应的预设代码模板文件进行存储,比如,可以将本地存储空间中存储的代码标识参数对应的预设代码模板文件复制到该文件存放路径下。
步骤208,当代码标识参数存在对应的引用代码时,按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置,调用代码用于调用预设代码模板文件中的代码。
其中,引用代码是指预设代码模板文件中的代码被引用的代码。该引用代码用于表征将该引用代码对应的预设代码模板文件导入到当前编辑代码中。调用代码是指用于调用预设代码模板文件中的代码,比如,预设代码模板文件中的代码是组件代码时,该调用代码可以是组件代码标识,通过该组件代码标识可以调用预设代码模板文件中的组件代码并运行。
具体地,终端判断代码标识参数是否存在对应的引用代码,当代码标识参数存在对应的引用代码时,终端直接按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置,比如,终端可以按照代码***参数将代码标识参数对应的调用代码***到当前代码编辑位置。
上述语音编码方法,通过在代码编辑应用程序中接收语音编码指令,识别语音编码指令,得到编码参数信息,编码参数信息包括代码编辑行为参数和代码标识参数;基于代码编辑行为参数和代码标识参数生成操作代码请求,根据操作代码请求获取当前焦点位置,当前焦点位置在代码编辑应用程序的当前编辑代码中;基于当前焦点位置确定当前编辑代码对应的文件存放路径和当前代码编辑位置,按照文件存放路径将代码标识参数对应的预设代码模板文件进行存储;当代码标识参数存在对应的引用代码时,按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置,调用代码用于调用预设代码模板文件中的代码。即在代码编辑应用程序中可以直接通过语音指令来自动编辑代码,自动将代码标识参数对应的预设代码模板文件存储到文件存放路径下,当代码标识参数存在对应的引用代码时,自动将代码标识参数对应的调用代码编辑到当前代码编辑位置,从而减少了重复性的编码操作,节省了***资源,提高了代码编写效率。
在一个实施例中,步骤202,即在代码编辑应用程序中接收语音编码指令,包括步骤:
在代码编辑应用程序中显示语音编码界面;响应作用于语音编码界面中的语音编码操作,启动语音采集设备,并基于语音采集设备接收语音编码指令。
其中,语音编码界面是指开启使用语音编写代码的界面。可以是通过语音编码界面中的按钮开启语音编码操作,也可以是通过语音编码界面中的选项开启语音编码操作。语音编码操作是指来时进行语音编写代码的操作,该操作包括但不限于点击操作、选中操作、滑动操作、按压操作等等。语音采集设备是用于采集语音的设备,比如,可以是麦克风。
具体地,终端在代码编辑应用程序中显示语音编码界面,该语音编辑界面显示有语音编码,终端响应作用于语音编码界面中的语音编码操作,启动语音采集设备,该语音采集设备实时采集语音,即接收语音编码指令。
在一个实施例中,终端也可以在代码编辑应用程序中通过弹窗的方式显示语音编码选项,开发人员选中语音编码选项时,终端检测到作用于语音编码界面中的语音编码操作,终端响应该语音编码操作启动语音采集设备,并基于语音采集设备接收语音编码指令。
在一个具体的实施例中,如图3所示,为包括有语音编码功能的界面示意图,该界面是代码编辑器插件化界面,其中,显示有代码编辑应用程序中的各种插件功能的按钮,其中包括有语音编码功能按钮,当开发人员点击该语音编码按钮时,终端接收到对语音编码按钮的点击操作,响应该点击操作,即响应作用于语音编码界面中的语音编码操作,启动麦克风,并通过麦克风采集语音,得到语音编码指令。
在上述实施例中,通过在代码编辑应用程序中显示语音编码界面;响应作用于语音编码界面中的语音编码操作,启动语音采集设备,并基于语音采集设备接收语音编码指令,从而可以实时获取到语音编码指令,提高语音编码的效率。
在一个实施例中,如图4所示,响应作用于语音编码界面中的语音编码操作,启动语音采集设备,并基于语音采集设备接收语音编码指令,包括:
步骤402,响应作用于语音编码界面中的语音编码操作,在代码编辑应用程序中通过渲染进程向内置服务器发送浏览器启动指令。
步骤404,使用内置服务器接收浏览器启动指令,并根据浏览器启动指令异步启动内核浏览器。
其中,渲染进程是指终端中运行内核浏览器的进程。浏览器启动指令是用于启动浏览器的指令。内核浏览器是指在代码编辑应用程序中启动的浏览器。
具体地,终端响应作用于语音编码界面中的语音编码操作,在代码编辑应用程序中通过渲染进程向内置服务器发送浏览器启动指令,即终端使用渲染进程通过推送信息机制向内置服务器发送一个打开第三方浏览器指令。内置服务器通过轮询事件接收到打开第三方浏览器的指令,根据该指令异步开启完整版内核浏览器。在一个实施例中,代码编辑应用程序中的内置服务器在启动内核浏览器的同时加载语音识别模型来进行语音识别。
步骤406,通过内核浏览器启动语音采集设备,基于语音采集设备接收语音编码指令。
具体地,终端通过该内核浏览器启动语音采集设备,并通过语音采集设备实时采集,来接收语音编码指令。
在上述实施例中,在代码编辑应用程序中通过渲染进程向内置服务器发送浏览器启动指令。使用内置服务器接收浏览器启动指令,并根据浏览器启动指令异步启动内核浏览器。通过内核浏览器启动语音采集设备,基于语音采集设备接收语音编码指令。从而可以避免代码编辑应用程序中只采用弱核浏览器而无法启动语音采集设备的问题,通过内核浏览器实现了语音采集设备的启动,从而保证了语音编码的正常进行。
在一个实施例中,如图5所示,步骤202,即识别语音编码指令,得到编码参数信息,包括:
步骤502,获取语音识别模型文件,并启动代码编辑应用程序中的内核浏览器,并通过内核浏览器加载语音识别模型文件中的语音识别模型。
其中,语音识别模型文件是指存储有语音识别模型对应的模型信息的文件,该语音识别模型文件可以是以文件流的形式进行保存、下载、上传的。
具体地,终端可以从服务器中下载到语音识别模型文件,然后,在接收到语音编码指令时,通过渲染线程异步启动第三方完整的内核浏览器,然后通过该内核浏览器加载语音识别模型文件中的语音识别模型。即在渲染进程中加载内核浏览器,并采集和识别开发人员的语音指令。
步骤504,对语音识别模型进行预热训练,得到目标语音识别模型。
其中,预热训练是指对语音识别模型在终端中进行二次训练的过程。目标语音识别模型是指进行二次训练后得到的语音识别模型,该目标语音识别模型能够提高语音识别的准确性和效率。
具体地,终端获取到二次训练的训练语音和对应的标签结果,然后将训练语音输入到语音识别模型中进行训练,直到达到训练完成条件时,该训练完成条件可以是预先设置好的最大迭代次数,将达到最大迭代次数的语音识别模型作为目标语音识别模型。
步骤506,将语音编码指令输入到目标语音识别模型中进行识别,得到输出的语音文本,基于语音文本确定编码参数信息。
其中,语音文本是指语音指令中的语音对应的文本。语音文本是通过语音指令识别得到的。该语音文本中包括有编码参数信息。
具体地,终端将语音编码指令输入到目标语音识别模型中通过傅里叶变换参数进行语音识别,得到输出的预测分值,然后根据预测分值确定对应的语音文本。从语音文本中确定编码参数信息包括的代码编辑行为参数和代码标识参数。比如,当开发人员需要编码对应的按钮组件时候,可以通过语音口述“***Button”,或者***“***按钮”,麦克风采集到语音指令时,将语音指令输入到目标语音识别模型会识别出语音文本,该语音文本中包括有代码编辑行为参数“***”和代码标识参数“Button”或者“按钮”。然后根据代码编辑行为参数和代码标识参数可以在当前编辑代码中***对应的Button(按钮)代码和import引用。
在上述实施例中,通过在加载语音识别模型后再进行预热训练,得到目标语音识别模型,然后使用目标语音识别模型进行语音识别,从而提高了识别结果的准确性,即提高了得到的编码参数信息的准确性。
在一个实施例中,如图6所示,语音识别模型的训练步骤包括:
步骤602,获取初始化语音识别模型,初始化语音识别模型是基于傅里叶变换模型建立的。
其中,初始化语音识别模型是指模型参数初始化的语音识别模型,该语音识别模型是基于傅里叶变换模型建立的,即该初始化语音识别模型中是初始化的傅里叶变换参数,该初始化可以是为零初始化,随机初始化和高斯分布初始化等。初始化语音识别模型也可以是使用神经网络建立的。
具体地,终端可以从提供模型服务的服务器中获取到初始化语音识别模型,终端也可以从服务器中获取到初始化语音识别模型,终端也可以使用傅里叶变换算法来建立初始化语音识别模型。在一个具体的实施例中,终端可以使用tfjs(tensorflow.js,利用WebGl加速,在浏览器环境下训练、部署机器学习模型)包,进行语音初始模型搭建,初始使用tfjs来初始化创建一个模型,设置为傅里叶变换模型,然后在终端中加载该初始化语音识别模型。
步骤604,获取训练语音编码指令和文本标签,将训练语音编码指令输入到初始化语音识别模型中进行初始化识别,得到初始语音文本。
其中,训练语音编码指令是指训练时使用的进行代码编写的语音指令。文本标签是指训练语音编码指令对应的语音文本形成的标签。
具体地,终端可以通过语音采集设备来采集训练语音编码指令,比如,通过开发人员进行语音数据手机,通过浏览器打开麦克风,使用收集语音实例控制函数进行语音数据收集,保证每个语音编码指令至少50次的录入,得到训练语音编码指令数据集,然后使用训练语音编码指令数据集进行训练,即从训练语音编码指令数据集获取训练语音编码指令和对应的文本标签,然后将训练语音编码指令输入到初始化语音识别模型中使用初始化的模型参数进行初始化识别,得到初始语音文本。
步骤606,基于初始语音文本和文本标签进行损失计算,得到训练损失信息,使用训练损失信息更新初始化语音识别模型,得到更新语音识别模型。
其中,训练损失信息用于表征初始语音文本和文本标签之间的误差,该误差越小,说明语音识别模型识别的准确性越高。更新语音识别模型是指模型参数更新后的语音识别模型。
具体地,终端使用损失函数计算初始语音文本和文本标签进行损失之间的误差,得到训练损失信息,该损失函数可以是分类损失函数,例如损失函数可以是交叉熵损失函数、CTC(Connectionist temporal classification,基于神经网络的时序类分类)损失函数、RNN-T(循环神经网络变换)损失函数。然后通过训练损失信息使用梯度下降算法反向更新初始化语音识别模型中的初始化模型参数,得到更新参数后的更新语音识别模型。
步骤608,将更新语音识别模型作为初始化语音识别模型,并返回获取训练语音编码指令和文本标签的步骤执行,直到达到训练完成条件时,得到语音识别模型。
其中,训练完成条件是指预先设置好的训练语音识别模型结束的条件,包括但不限于训练次数达到最大迭代次数、模型参数不再发生变化或者训练损失达到预设阈值。在一个具体的实施例中,训练损失对应的最大可能性阈值参数设置为0.75,将重叠因子参数设置为0。
具体地,终端判断是否达到训练完成条件,当未达到训练完成条件时,将更新语音识别模型作为初始化语音识别模型,然后进行迭代训练,即终端返回获取训练语音编码指令和文本标签,将训练语音编码指令输入到初始化语音识别模型中进行初始化识别,得到初始语音文本的步骤循环执行,直到达到训练完成条件时,将达到训练完成条件的初始化语音识别模型作为最终训练完成的语音识别模型。
步骤610,将语音识别模型进行序列化转换,得到二进制语音识别模型数据,将二进制语音识别模型数据进行文件下载流转换,得到语音识别模型文件。
其中,二进制语音识别模型数据是指将语音识别模型转换后得到的二进制数据。
具体地,终端通过序列化将语音识别模型进行二进制转换,得到二进制语音识别模型数据,然后再将二进制语音识别模型数据转换为文件流,得到语音识别模型文件,该语音识别模型文件能够以文件流的形式下载并使用。在一个具体的实施例中,将语音识别模型通过序列化方法将模型数据转化为buffer(操作文件流的数据类型)数据类型,然后通过内置文件模块把buffer数据转化为文件下载流,就可以下载得到语音识别模型。
在一个具体的实施例中,如图7所示,为训练语音识别模型的流程示意图,具体来说:终端先进行初始化设置,即创建初始化的语音识别模型,该语音识别模型设置为傅里叶变换模型。然后创建转换器并获取识别器。然后进行语音数据的手机。即通过缓存识别器来获取训练样本,然后计算训练样本的数量是否达到预设数量,并获取到训练样本对应的文本标签。并建立麦克风和语音编码按钮之间的关联,从而使开发人员点击语音编码按钮时,能够开启麦克风获取语音。然后进行语音识别模型的训练。即获取到训练数据即训练语音编码指令,设置训练轮询的次数为200次。根据训练结果和文本标签调用损失函数计算损失信息,并不断循环迭代,直到达到训练完成条件时,得到训练完成的语音识别模型。然后进行语音识别模型的保存,即将语音识别模型序列化,并转换成二进制文件流进行保存。然后终端进行模型的加载。终端先创建加载器,通过该加载器加载语音识别模型,然后获取到模型训练数据源,从训练数据源获取到训练样本,然后对语音识别模型进行二次训练,得到目标语音识别模型。最后使用目标语音识别模型对语音进行识别,得到识别出的文本概率。其中,设置识别频率为0.7,识别的概率阈值为0.9。即文本概率超过0.9时,得到语音对应的识别结果为该文本。
在上述实施例中,通过使用训练语音编码指令和文本标签训练得到语音识别模型,提高了得到的语音识别模型的准确性,然后将语音识别模型以二进制文件流的形式进行保存,方便后续的使用。
在一个实施例中,步骤204,即基于代码编辑行为参数和代码标识参数生成操作代码请求,根据操作代码请求获取当前焦点位置,包括步骤:
基于代码编辑行为参数和代码标识参数生成操作代码请求,基于预设请求路由向内置服务器发送操作代码请求;通过内置服务器接收操作代码请求,并基于操作代码请求获取当前焦点位置。
其中,预设请求路由是预先设置好的向内置服务器发送请求的路由,内置服务器是指代码编辑应用程序中运行的服务。
具体地,终端根据代码编辑行为参数和代码标识参数生成操作代码请求,即在操作代码请求中携带代码编辑行为参数和代码标识参数。然后按照设请求路由向内置服务器发送操作代码请求。内置服务器接收到操作代码请求时,解析该操作代码请求获取到代码编辑行为参数和代码标识参数,然后根据操作代码请求通过当前编辑代码中上下文激活对象来获取到当前焦点位置。比如,在vscode代码编辑器中可以通过自身提供的方法来获取当前焦点位置,即可以通过vscode.window.activeTextEditor.selection获取到当前鼠标在当前编辑代码中的哪一行和对应行的第几个字符,即通过调用该方法获取当前代码编辑位置。然后再通过自身提供的方法vscode.window.activeTextEditor.document.fileName获取到当前编辑代码的文件存放路径,即通过调用该方法获取文件存放路径。
在上述实施例中,通过基于预设请求路由向内置服务器发送操作代码请求;通过内置服务器接收操作代码请求,并基于操作代码请求获取当前焦点位置,从而保证能获取到当前焦点位置,使获取到的当前焦点位置提高了准确性。
在一个实施例中,步骤208,即当代码标识参数存在对应的引用代码时,按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置,包括步骤:
基于代码标识参数确定对应的编辑代码类型,当编辑代码类型为引入代码类型时,检测当前编辑代码中是否存在代码标识参数对应的引用代码;当当前编辑代码中存在代码标识参数对应的引用代码时,按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置。
其中,编辑代码类型是指使用语音进行编写的代码对应的类型,该编辑代码类型包括但不限于引入代码类型和基础代码类型。引入代码类型是指代码需要进行在当前编辑代码中进行引入后才能使用的代码对应的类别,即需要通过import(引用)语句引入,只有通过import语句引入后才能正常使用对应的代码。基础代码类型是指基础语法的组合代码对应的类型,不需要引入。引用代码是指引用语句对应的代码,比如,引用代码可以是组件引用的代码。
具体地,终端根据代码标识参数对应的代码确定对应的编辑代码类型,然后判断编辑代码类型使不是引入代码类型,当编辑代码类型使引入代码类型时,终端检测当前编辑代码中是否存在代码标识参数对应的引用代码,其中,可以通过遍历当前编辑代码,查找当前编辑代码中是否存在代码标识参数对应的引用代码,当未查到时,说明该当前编辑代码中未存在代码标识参数对应的引用代码,当查到代码标识参数对应的引用代码,说明当前编辑代码中存在代码标识参数对应的引用代码。此时,可以直接进行调用代码的***,即按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置,比如,将按钮组件的调用代码<Button/>***到当前代码编辑位置中的具体行和该行对应的具体字符位置。
在上述实施例中,通过确定编辑代码类型,当编辑代码类型为引入代码类型时,先检测当前编辑代码中是否存在代码标识参数对应的引用代码,如果当前编辑代码中存在代码标识参数对应的引用代码时,直接按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置,即通过检测引用代码,防止遗漏引用代码,从而提高了语音编辑代码的准确性。
在一个实施例中,检测当前编辑代码中是否存在代码标识参数对应的引用代码,包括步骤:
获取当前编辑代码对应的抽象代码语法树;检测抽象代码语法树中是否存在代码标识参数对应的特殊标注,当抽象代码语法树中存在代码标识参数对应的特殊标注时,检测当前编辑代码中存在代码标识参数对应的引用代码;当抽象代码语法树中未存在代码标识参数对应的特殊标注时,检测当前编辑代码中未存在代码标识参数对应的引用代码。
其中,抽象代码语法树是源代码语法结构的一种抽象表示。它以树状的形式表现编程语言的语法结构,树上的每个节点都表示源代码中的一种结构。特殊标注是指预先设置好的代码标识参数对应的标注,不同的引入代码类型的代码具有不同的特殊标注,
具体地,终端获取当前编辑代码对应的抽象代码语法树,检测抽象代码语法树中是否存在代码标识参数对应的特殊标注,即在抽象代码语法树遍历查找该特殊标注,当抽象代码语法树中存在代码标识参数对应的特殊标注时,说明当前编辑代码中存在代码标识参数对应的引用代码;当抽象代码语法树中未存在代码标识参数对应的特殊标注时,说明当前编辑代码中未存在代码标识参数对应的引用代码。比如,A组件对应的特殊标注可以设置未A-special。然后在当前编辑代码对应的抽象代码语法树是否存在该特殊标注A-special,遍历该抽象代码语法树查找该特殊标注。当查找到该特殊标注A-special,说明当前编辑代码中已经存在A组件对应的引用语句。当未查找到该特殊标注A-special,说明当前编辑代码中未存在A组件对应的引用语句。
在上述实施例中,通过获取到当前编辑代码对应的抽象代码语法树,然后遍历抽象代码语法树来查找特殊标注,从而能够提高检测当前编辑代码中是否存在代码标识参数对应的引用代码的准确性。
在一个实施例中,语音编码方法还包括步骤:
当抽象代码语法树中存在代码标识参数对应的至少两个特殊标注时,基于至少两个特殊标注对应的引用代码进行去重合并操作,得到代码标识参数对应的目标引用代码;将目标引用代码编辑到至少两个特殊标注对应的引用代码的引用位置。
其中,目标引用代码是指代码标识参数对应的在当前编辑代码中的唯一引用代码。引用位置是指目标引用代码在当前编辑代码中的位置。
具体地,终端在遍历检测抽象代码语法树中的特殊标注时,如果检测到抽象代码语法树中存在代码标识参数对应的至少两个特殊标注时,即抽象代码语法树存在多个特殊标注,此时,说明该当前编辑代码中存在多条引用语句对应的引用代码。则终端对该多条引用代码进行去重合并操作,得到目标引用代码,其中,如果多条引用代码是相同的,就删除引用代码,只保留一条引用代码在当前编辑代码中。终端也可以通过遍历抽象代码语法树识别引用代码片段声明的周期进行引用代码的合并。
在上述实施例中,通过将至少两个特殊标注对应的引用代码进行去重合并操作,得到代码标识参数对应的目标引用代码;将目标引用代码编辑到至少两个特殊标注对应的引用代码的引用位置,从而可以避免重复编译运行引用代码,节省代码编译运行资源。
在一个实施例中,在当编辑代码类型为引入代码类型时,检测当前编辑代码中是否存在代码标识参数对应的引用代码之后,还包括步骤:
当当前编辑代码中未存在代码标识参数对应的引用代码时,基于当前编辑代码对应的抽象代码语法树确定代码标识参数对应的引用代码在当前编辑代码中的引用位置;将代码标识参数对应的引用代码编辑到引用位置。
具体地,终端判断当前编辑代码中未存在代码标识参数对应的引用代码时,需要在当前编辑代码中***该代码标识参数对应的引用代码。此时,终端获取到当前编辑代码对应的抽象代码语法树,从抽象代码语法树中确定用于***引用代码的位置,得到引用位置,然后将代码标识参数对应的引用代码编辑到当前编辑代码中的引用位置。
在上述实施例中,当当前编辑代码中未存在代码标识参数对应的引用代码时,将代码标识参数对应的引用代码编辑到引用位置,从而可以使语音编辑的代码能够正常使用,提高了语音编辑的准确性。
在一个实施例中,语音编码方法,还包括步骤:
基于代码标识参数确定对应的编辑代码类型,当编辑代码类型为基础代码类型时,获取代码标识参数对应的基础代码片段;将基础代码片段按照代码编辑行为参数编辑到当前代码编辑位置。
其中,基础代码类型是指基础语法的组合代码对应的类型,不需要引入。基础代码片段是指预先设置好的基础语法的组合代码语句。
具体地,终端使用预先设置好的代码标识参数和编辑代码类型的对应关系确定该代码标识参数对应的编辑代码类型。然后判断当编辑代码类型为基础代码类型时,终端直接获取代码标识参数对应的基础代码片段,将基础代码片段按照代码编辑行为参数编辑到当前代码编辑位置。比如,当开发人员语音输入“***if”、“***for”的语音编码指令,终端会自动向当前编辑代码的当前代码编辑位置中***基础语法的组合代码,if语句的判断组合代码或者for语句的循环组合代码。
在上述实施例中,当编辑代码类型为基础代码类型时,可以直接将基础代码片段按照代码编辑行为参数编辑到当前代码编辑位置,提高了语音编码的效率,从而提高开发效率和代码正确率。
在一个具体的实施例中,如图8所示,提供一种语音编码的流程示意图,具体来说:终端在IDE代码编辑器中通过插件的形式进行语音编码。即将语音编码方法预先内嵌集成到IDE(代码编辑器)插件中。开发人员在使用IDE代码编辑器编码时,可以使用语音编码方法插件进行语音编码。开发人员可以通过IDE代码编辑器中的插件面板启动语音编码方法插件,在启动时获取到,同时创建采集器,采集语音指令信息。同时加载语音识别模型,并对语音识别模型按照预先设置好的训练周期进行预热训练。然后通过麦克风接收语音编码指令,通过预热训练的语音识别模型进行识别,得到编码参数信息。然后通过IDE代码编辑器中的内置server(服务器)服务来提供内置服务器服务,即通过在启动IDE代码编辑器的插件时,开启内置服务器,同时设置好向内置服务器请求的请求路由,并设置好静态资源存储目录、请求跨域设置以及中央调度器。此时,根据编码参数信息生成请求,按照预设路由发送该请求到内置服务器,内置服务器进行执行代码编辑操作,此时,内置服务器获取到开发人员鼠标所在的鼠标焦点位置,根据鼠标焦点位置确定操作代码文件的路径和位置,然后将对应模板代码文件拷贝到对应代码文件的路径下。然后再通过抽象代码语法树遍历代码,识别引入代码片段声明的周期进行引入合并,通过特殊标注判断组件代码是否被引用,如果未引用,就***引用代码,如果存在同类引用代码,就进行去重合并操作。最后将对应调用代码***到当前编辑代码中定位的行数和字符位置中。
在一个具体的实施例中,如图9所示,提供一种语音编码方法的流程示意图,具体来说包括以下步骤:
步骤902,在代码编辑应用程序中显示语音编码界面,响应作用于语音编码界面中的语音编码操作,在代码编辑应用程序中通过渲染进程向内置服务器发送浏览器启动指令。
步骤904,使用内置服务器接收浏览器启动指令,并根据浏览器启动指令异步启动内核浏览器,通过内核浏览器启动语音采集设备同时加载语音识别模型,并对语音识别模型进行预热训练,得到目标语音识别模型。
步骤906,基于语音采集设备接收语音编码指令,使用目标语音识别模型识别语音编码指令,得到编码参数信息,编码参数信息包括代码编辑行为参数和代码标识参数;
步骤908,基于代码编辑行为参数和代码标识参数生成操作代码请求,基于预设请求路由向内置服务器发送操作代码请求,通过内置服务器接收操作代码请求,并基于操作代码请求获取当前焦点位置,当前焦点位置在代码编辑应用程序的当前编辑代码中。
步骤910,基于当前焦点位置确定当前编辑代码对应的文件存放路径和当前代码编辑位置,按照文件存放路径将代码标识参数对应的预设代码模板文件进行存储.
步骤912,基于代码标识参数确定对应的编辑代码类型,当编辑代码类型为引入代码类型时,获取当前编辑代码对应的抽象代码语法树。
步骤914,检测抽象代码语法树中是否存在代码标识参数对应的特殊标注,当抽象代码语法树中存在代码标识参数对应的特殊标注时,按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置。
步骤916,当抽象代码语法树中未存在代码标识参数对应的特殊标注时,基于当前编辑代码对应的抽象代码语法树确定代码标识参数对应的引用代码在当前编辑代码中的引用位置,将代码标识参数对应的引用代码编辑到引用位置。
在一个具体的实施例中,该语音编码方法应用到vscode代码编辑应用程序中,具体来说:如图10所示,为语音编码的流程示意图,终端运行vscode代码编辑应用程序,在vscode代码编辑应用程序的插件界面中启动语音编码插件,此时,vscode响应该插件启动指令,在渲染进程里通过推送信息机制向主进程(运行代码编辑应用程序的进程)发送打开第三方浏览器指令,主进程通过轮询事件接收到指令,异步开启完整版内核浏览器,加载我们语音识别模型和开启语音麦克风。此时通过语音麦克风接收到***循环语句的语音时,通过语音识别模型进行识别预测,得到***循环语句的文本,从该文本中确定行为参数和基础语法代码名称参数,然后生成操作代码请求,按照预设的请求路由向内置服务器发送该操作代码请求,内置服务器接收到操作代码请求时,开始执行代码的***,即内置服务器通过上下文激活对象获取到鼠标焦点位置,定位到具体要***代码的目标行数和目标行的目标字符位置,然后根据基础语法代码名称参数获取到基础语法的组合代码片段,将该组合代码片段***到定位的行数和字符位置处,即在当前编辑代码中的目标行的目标字符位置显示组合代码片段,此时就完成了语音编码,从而可以提高编码效率和代码正确率。其中,终端包括但不限于手机、电脑、智能语音交互设备、智能家电、车载终端、飞行器等。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的语音编码方法的语音编码装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个语音编码装置实施例中的具体限定可以参见上文中对于语音编码方法的限定,在此不再赘述。
在一个实施例中,如图11所示,提供了一种语音编码装置1100,包括:参数识别模块1102、位置获取模块1104、存储模块1106和编辑模块1108,其中:
参数识别模块1102,用于在代码编辑应用程序中接收语音编码指令,识别语音编码指令,得到编码参数信息,编码参数信息包括代码编辑行为参数和代码标识参数;
位置获取模块1104,用于基于代码编辑行为参数和代码标识参数生成操作代码请求,根据操作代码请求获取当前焦点位置,当前焦点位置在代码编辑应用程序的当前编辑代码中;
存储模块1106,用于基于当前焦点位置确定当前编辑代码对应的文件存放路径和当前代码编辑位置,按照文件存放路径将代码标识参数对应的预设代码模板文件进行存储;
编辑模块1108,用于当代码标识参数存在对应的引用代码时,按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置,调用代码用于调用预设代码模板文件中的代码。
在一个实施例中,参数识别模块1102,包括:
指令接收单元,用于在代码编辑应用程序中显示语音编码界面;响应作用于语音编码界面中的语音编码操作,启动语音采集设备,并基于语音采集设备接收语音编码指令。
在一个实施例中,指令接收单元还用于响应作用于语音编码界面中的语音编码操作,在代码编辑应用程序中通过渲染进程向内置服务器发送浏览器启动指令;使用内置服务器接收浏览器启动指令,并根据浏览器启动指令异步启动内核浏览器;通过内核浏览器启动语音采集设备,基于语音采集设备接收语音编码指令。
在一个实施例中,参数识别模块1102还用于获取语音识别模型文件,并启动代码编辑应用程序中的内核浏览器,并通过内核浏览器加载语音识别模型文件中的语音识别模型;对语音识别模型进行预热训练,得到目标语音识别模型;将语音编码指令输入到目标语音识别模型中进行识别,得到输出的语音文本,基于语音文本确定编码参数信息。
在一个实施例中,语音编码装置1100,还包括:
模型训练模块,用于获取初始化语音识别模型,初始化语音识别模型是基于傅里叶变换模型建立的;获取训练语音编码指令和文本标签,将训练语音编码指令输入到初始化语音识别模型中进行初始化识别,得到初始语音文本;基于初始语音文本和文本标签进行损失计算,得到训练损失信息,使用训练损失信息更新初始化语音识别模型,得到更新语音识别模型;将更新语音识别模型作为初始化语音识别模型,并返回获取训练语音编码指令和文本标签的步骤执行,直到达到训练完成条件时,得到语音识别模型;将语音识别模型进行序列化转换,得到二进制语音识别模型数据,将二进制语音识别模型数据进行文件下载流转换,得到语音识别模型文件。
在一个实施例中,位置获取模块1104还用于基于代码编辑行为参数和代码标识参数生成操作代码请求,基于预设请求路由向内置服务器发送操作代码请求;通过内置服务器接收操作代码请求,并基于操作代码请求获取当前焦点位置。
在一个实施例中,编辑模块1108,包括:
引用检测单元,用于基于代码标识参数确定对应的编辑代码类型,当编辑代码类型为引入代码类型时,检测当前编辑代码中是否存在代码标识参数对应的引用代码;当当前编辑代码中存在代码标识参数对应的引用代码时,按照代码编辑行为参数将代码标识参数对应的调用代码编辑到当前代码编辑位置。
在一个实施例中,引用检测单元还用于获取当前编辑代码对应的抽象代码语法树;检测抽象代码语法树中是否存在代码标识参数对应的特殊标注,当抽象代码语法树中存在代码标识参数对应的特殊标注时,检测当前编辑代码中存在代码标识参数对应的引用代码;当抽象代码语法树中未存在代码标识参数对应的特殊标注时,检测当前编辑代码中未存在代码标识参数对应的引用代码。
在一个实施例中,语音编码装置1100,还包括:
引用去重模块,用于当抽象代码语法树中存在代码标识参数对应的至少两个特殊标注时,基于至少两个特殊标注对应的引用代码进行去重合并操作,得到代码标识参数对应的目标引用代码;将目标引用代码编辑到至少两个特殊标注对应的引用代码的引用位置。
在一个实施例中,语音编码装置1100,包括:
引用编辑模块,用于当当前编辑代码中未存在代码标识参数对应的引用代码时,基于当前编辑代码对应的抽象代码语法树确定代码标识参数对应的引用代码在当前编辑代码中的引用位置;将代码标识参数对应的引用代码编辑到引用位置。
在一个实施例中,语音编码装置1100,包括:
基础代码编辑模块,用于基于代码标识参数确定对应的编辑代码类型,当编辑代码类型为基础代码类型时,获取代码标识参数对应的基础代码片段;将基础代码片段按照代码编辑行为参数编辑到当前代码编辑位置。
上述语音编码装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图12所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过***总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到***总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种语音编码方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (15)
1.一种语音编码方法,其特征在于,所述方法包括:
在代码编辑应用程序中接收语音编码指令,识别所述语音编码指令,得到编码参数信息,所述编码参数信息包括代码编辑行为参数和代码标识参数;
基于所述代码编辑行为参数和代码标识参数生成操作代码请求,根据所述操作代码请求获取当前焦点位置,所述当前焦点位置在所述代码编辑应用程序的当前编辑代码中;
基于所述当前焦点位置确定所述当前编辑代码对应的文件存放路径和当前代码编辑位置,按照所述文件存放路径将所述代码标识参数对应的预设代码模板文件进行存储;
当所述代码标识参数存在对应的引用代码时,按照所述代码编辑行为参数将所述代码标识参数对应的调用代码编辑到所述当前代码编辑位置,所述调用代码用于调用所述预设代码模板文件中的代码。
2.根据权利要求1所述的方法,其特征在于,所述在代码编辑应用程序中接收语音编码指令,包括:
在所述代码编辑应用程序中显示语音编码界面;
响应作用于所述语音编码界面中的语音编码操作,启动语音采集设备,并基于所述语音采集设备接收所述语音编码指令。
3.根据权利要求2所述的方法,其特征在于,所述响应作用于所述语音编码界面中的语音编码操作,启动语音采集设备,并基于所述语音采集设备接收所述语音编码指令,包括:
响应作用于所述语音编码界面中的语音编码操作,在所述代码编辑应用程序中通过渲染进程向所述内置服务器发送浏览器启动指令;
使用所述内置服务器接收所述浏览器启动指令,并根据所述浏览器启动指令异步启动内核浏览器;
通过所述内核浏览器启动语音采集设备,基于所述语音采集设备接收所述语音编码指令。
4.根据权利要求1所述的方法,其特征在于,所述识别所述语音编码指令,得到编码参数信息,包括:
获取语音识别模型文件,并启动所述代码编辑应用程序中的内核浏览器,并通过所述内核浏览器加载所述语音识别模型文件中的语音识别模型;
对所述语音识别模型进行预热训练,得到目标语音识别模型;
将所述语音编码指令输入到目标语音识别模型中进行识别,得到输出的语音文本,基于所述语音文本确定所述编码参数信息。
5.根据权利要求4所述的方法,其特征在于,所述语音识别模型的训练步骤包括:
获取初始化语音识别模型,所述初始化语音识别模型是基于傅里叶变换模型建立的;
获取训练语音编码指令和文本标签,将所述训练语音编码指令输入到所述初始化语音识别模型中进行初始化识别,得到初始语音文本;
基于初始语音文本和所述文本标签进行损失计算,得到训练损失信息,使用所述训练损失信息更新所述初始化语音识别模型,得到更新语音识别模型;
将所述更新语音识别模型作为初始化语音识别模型,并返回获取训练语音编码指令和文本标签的步骤执行,直到达到训练完成条件时,得到所述语音识别模型;
将所述语音识别模型进行序列化转换,得到二进制语音识别模型数据,将所述二进制语音识别模型数据进行文件下载流转换,得到所述语音识别模型文件。
6.根据权利要求1所述的方法,其特征在于,所述基于所述代码编辑行为参数和代码标识参数生成操作代码请求,根据所述操作代码请求获取当前焦点位置,包括:
基于所述代码编辑行为参数和代码标识参数生成操作代码请求,基于预设请求路由向内置服务器发送所述操作代码请求;
通过所述内置服务器接收所述操作代码请求,并基于所述操作代码请求获取当前焦点位置。
7.根据权利要求1所述的方法,其特征在于,所述当所述代码标识参数存在对应的引用代码时,按照所述代码编辑行为参数将所述代码标识参数对应的调用代码编辑到所述当前代码编辑位置,包括:
基于所述代码标识参数确定对应的编辑代码类型,当所述编辑代码类型为引入代码类型时,检测所述当前编辑代码中是否存在所述代码标识参数对应的引用代码;
当所述当前编辑代码中存在所述代码标识参数对应的引用代码时,按照所述代码编辑行为参数将所述代码标识参数对应的调用代码编辑到所述当前代码编辑位置。
8.根据权利要求1所述的方法,其特征在于,所述检测所述当前编辑代码中是否存在所述代码标识参数对应的引用代码,包括:
获取所述当前编辑代码对应的抽象代码语法树;
检测所述抽象代码语法树中是否存在所述代码标识参数对应的特殊标注,当所述抽象代码语法树中存在所述代码标识参数对应的特殊标注时,检测所述当前编辑代码中存在所述代码标识参数对应的引用代码;
当所述抽象代码语法树中未存在所述代码标识参数对应的特殊标注时,检测所述当前编辑代码中未存在所述代码标识参数对应的引用代码。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
当所述抽象代码语法树中存在所述代码标识参数对应的至少两个特殊标注时,基于所述至少两个特殊标注对应的引用代码进行去重合并操作,得到所述代码标识参数对应的目标引用代码;
将所述目标引用代码编辑到所述至少两个特殊标注对应的引用代码的引用位置。
10.根据权利要求1所述的方法,其特征在于,在所述当所述编辑代码类型为引入代码类型时,检测所述当前编辑代码中是否存在所述代码标识参数对应的引用代码之后,还包括:
当所述当前编辑代码中未存在所述代码标识参数对应的引用代码时,基于所述当前编辑代码对应的抽象代码语法树确定所述代码标识参数对应的引用代码在所述当前编辑代码中的引用位置;
将所述代码标识参数对应的引用代码编辑到所述引用位置。
11.根据权利要求1所述的方法,其特征在于,所述方法,还包括:
基于所述代码标识参数确定对应的编辑代码类型,当所述编辑代码类型为基础代码类型时,获取所述代码标识参数对应的基础代码片段;
将所述基础代码片段按照所述代码编辑行为参数编辑到所述当前代码编辑位置。
12.一种语音编码装置,其特征在于,所述装置包括:
参数识别模块,用于在代码编辑应用程序中接收语音编码指令,识别所述语音编码指令,得到编码参数信息,所述编码参数信息包括代码编辑行为参数和代码标识参数;
位置获取模块,用于基于所述代码编辑行为参数和代码标识参数生成操作代码请求,根据所述操作代码请求获取当前焦点位置,所述当前焦点位置在所述代码编辑应用程序的当前编辑代码中;
存储模块,用于基于所述当前焦点位置确定所述当前编辑代码对应的文件存放路径和当前代码编辑位置,按照所述文件存放路径将所述代码标识参数对应的预设代码模板文件进行存储;
编辑模块,用于当所述代码标识参数存在对应的引用代码时,按照所述代码编辑行为参数将所述代码标识参数对应的调用代码编辑到所述当前代码编辑位置,所述调用代码用于调用所述预设代码模板文件中的代码。
13.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至11中任一项所述的方法的步骤。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至11中任一项所述的方法的步骤。
15.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至11中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210787930.0A CN115206303A (zh) | 2022-07-06 | 2022-07-06 | 语音编码方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210787930.0A CN115206303A (zh) | 2022-07-06 | 2022-07-06 | 语音编码方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115206303A true CN115206303A (zh) | 2022-10-18 |
Family
ID=83578249
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210787930.0A Pending CN115206303A (zh) | 2022-07-06 | 2022-07-06 | 语音编码方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115206303A (zh) |
-
2022
- 2022-07-06 CN CN202210787930.0A patent/CN115206303A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109002510B (zh) | 一种对话处理方法、装置、设备和介质 | |
US11948058B2 (en) | Utilizing recurrent neural networks to recognize and extract open intent from text inputs | |
CN108121490B (zh) | 用于处理多模式输入的电子装置、方法和服务器 | |
CN111274815B (zh) | 用于挖掘文本中的实体关注点的方法和装置 | |
KR102204740B1 (ko) | 대화 시스템에서의 의도 불분명 질의를 처리하는 방법 및 시스템 | |
CN107924483B (zh) | 通用假设排序模型的生成与应用 | |
Reddy et al. | Speech to text conversion using android platform | |
CN111428010B (zh) | 人机智能问答的方法和装置 | |
CN110223695B (zh) | 一种任务创建方法及移动终端 | |
CN111027327A (zh) | 机器阅读理解方法、设备、存储介质及装置 | |
US10754885B2 (en) | System and method for visually searching and debugging conversational agents of electronic devices | |
CN105074816A (zh) | 促进口述自然语言接口的开发 | |
CN107015964B (zh) | 面向智能机器人开发的自定义意图实现方法及装置 | |
CN111144128A (zh) | 语义解析方法和装置 | |
CN111399629B (zh) | 一种终端设备的操作引导方法、终端设备及存储介质 | |
Primorac et al. | Android application for sending SMS messages with speech recognition interface | |
CN116701811B (zh) | 一种网页处理方法、装置、设备及计算机可读存储介质 | |
CN117520498A (zh) | 基于虚拟数字人交互处理方法、***、终端、设备及介质 | |
CN117520497A (zh) | 大模型交互处理方法、***、终端、设备及介质 | |
CN111124627B (zh) | 应用程序的调起者确定方法、装置、终端及存储介质 | |
CN116645956A (zh) | 语音合成方法、语音合成***、电子设备及存储介质 | |
CN112328308A (zh) | 用于识别文本的方法和装置 | |
CN110716859A (zh) | 自动为修改的代码推送测试用例的方法及相关装置 | |
CN115206303A (zh) | 语音编码方法、装置、计算机设备和存储介质 | |
CN116304014A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40075310 Country of ref document: HK |