当前位置: 首页 > 科技观察

如何使用Node.js将语音转为文字

时间:2023-03-17 12:19:53 科技观察

Translator|李睿评论|SunShujuan转录MP3和WAV文件格式的音频。此演示将包括使用“立即运行Node.js代码”示例调用此API的分步说明。语音识别技术概述语音识别技术通常被视为当代技术领域的一个相对较新的补充,这只是部分正确。语音识别技术已经存在了半个多世纪,从1950年代早期先驱公司开发的有限数字/文本识别系统开始。尽管语音识别技术历史悠久,在过去的十年中已广泛应用于智能消费设备领域,但语音识别仍然是当今市场上较为抽象的技术之一。这是因为各种语音识别技术跨越计算机科学、计算语言学和数学/统计学等领域,需要每个领域的大量输入才能获得准确的语音转文本结果。在(非常)高的水平上,为了让语音识别技术执行其最基本的任务,必须首先对给定的音频文件进行预处理以优化其质量。然后将其分解为更小的分量信号并进行分类。这些排序后的信号必须足够小,以便数学模型可以将它们与某些音素(组合成单词的特定语言的声音;例如“eeee”或“ahhh”噪音)相匹配,这有助于匹配比较短语或句子语言。归根结底,语音识别服务的目标很简单:尽可能准确地猜测录制的音频中使用了哪些词,并不断改进和扩展其语言数据库,直到猜测达到可接受的准确度。这种复杂且本质上有限的信息猜测系统使得即使是最基本的语音识别服务也依赖于语言和方言,就像它们依赖于音频质量一样。语言、口音、词汇的变化以及背景噪音的存在都会产生单个语音到文本模型难以克服的界限。此外,这种复杂性反映了一个基本事实,即语音识别服务是高度资源密集型的,依赖于庞大且不断增长的参考数据集进行语音比较,需要相当大的计算能力才能有效地利用这些数据集。这些因素结合在一起,使训练全新的语音转文本模型成为一项艰巨的任务。语音识别的应用语音识别在很大程度上归功于更大的技术市场中一些无处不在的创新,尤其是近乎无限的云计算数据存储解决方案的增长,语音识别现在已经成为人们生活的一部分。日常生活中公认的高效和有用的消费者服务。人们可以直接与手机、固定电话和办公设备进行交流和对话,以自动查找所需信息、记录和整理想法以备后用、收听短信朗读等。目前,消费类应用只是语音识别技术应用的冰山一角。许多相互关联的语音识别过程的进步为扩展音频转录的输出创造了机会,并鼓励越来越多的语音到文本转换的商业应用。人们身边有很多这样的例子。许多虚拟会议平台现在使用语音识别服务(通常是实时的)来转录团队演示,并且可以方便地存储生成的文本以供可能错过会议的任何人使用。聊天机器人使用语音识别来帮助人们在手机上做出选择,从这些对话中转录的音频可以用于其他用途:为未来更好的客户服务实践提供信息。可以从个人设备记录和转录人们可能参加的讲座、采访、演示和其他演讲活动,以消除手动转录笔记的工作。例如,这些转录可以通过自然语言处理(NLP)模型进行处理,以从转录的文本中找到以前看不见(或闻所未闻)的见解。值得一提的是,有用的内容审核和搜索引擎优化功能也可从可扩展的语音到文本分析服务获得——这次是在企业数据存储环境中。鉴于大多数客户端上传的不可靠性,上传到网站的音频文件的自动转录可以轻松调整父音频文件的语言,以确保所有听众的安全(例如,查看它是否包含极具争议的语言、仇恨言论或对个人或团体的任何形式的骚扰)。这显着减少了内容管理员的工作量并提高了他们的效率。这些相同的转录文件也可用于生成有用的关键字,使音频文件更容易从大型数据库中搜索和检索。演示:CloudMersiveSpeech-to-TextAPI将语音识别作为一项服务加以利用的一种方法是包含CloudmersiveSpeech-to-TextAPI。API目前支持MP3或WAV格式,利用深度学习人工智能模型提供高精度的音频转录。它的API参数非常简单,你只需要输入音频文件和CloudmersiveAPIkey(APIkey可以通过在他们的网站上注册一个免费账户获得,每月最多产生800次API调用)。下面将演示如何使用互补的Node.js代码片段构建API调用。第一步是安装Node.jsSDK。这可以通过运行以下命令来完成:npminstallcloudmersive-speech-api-client--save或者,可以将以下片段添加到它的包中。"dependencies":{"cloudmersive-speech-client":"^1.1.5"}安装完成后,可以使用以下代码块构建API调用。此时,您需要确保准备好以下参数:(1)MP3或WAV音频文件。(2)CloudMersiveAPI密钥。varCloudmersiveSpeechApiClient=require('cloudmersive-speech-api-client');vardefaultClient=CloudmersiveSpeechApiClient.ApiClient.instance;//配置API密钥授权:ApikeyvarApikey=defaultClient.authentications['Apikey'];Apikey.apiKey='YOURAPIKEY';varapiInstance=newCloudmersiveSpeechApiClient.RecognizeApi();varspeechFile=Buffer.from(fs.readFileSync("C:\\temp\\inputfile").buffer);//文件|要对其执行操作的语音文件。支持WAV、MP3等常见文件格式。varcallback=function(error,data,response){if(error){控制台。错误(错误);}else{控制台。log('API调用成功,返回数据:'+data);}};apiInstance.recognizeFile(语音文件,回调);这样就完成了API的构建,不需要进一步的代码片段。成功的API调用将返回包含API转录结果的Textresult字符串。请务必记住,输入文件中的音频质量会对API创建准确转录的能力产生重大影响,因此建议在实施此操作之前尽可能预处理和优化音频质量。原标题:HowtoLeverageSpeech-to-TextWithNode.js,作者:BrianO'Neill