录音文件识别请求

最近更新时间:2024-11-08 01:09:55

我的收藏

1. 接口描述

接口请求域名: asr.tencentcloudapi.com 。

本接口可对较长的录音文件进行识别。如希望直接使用带界面的语音识别产品,请访问产品体验中心。产品计费标准请查阅 计费概述(在线版)
• 接口默认限频:20次/秒。此处仅限制任务提交频次,与识别结果返回时效无关
• 返回时效:异步回调,非实时返回。最长3小时返回识别结果,大多数情况下,1小时的音频1-3分钟即可完成识别。请注意:上述返回时长不含音频下载时延,且30分钟内发送超过1000小时录音或2万条任务的情况除外
• 音频格式:wav、mp3、m4a、flv、mp4、wma、3gp、amr、aac、ogg-opus、flac
• 支持语言:在本页面上搜索 EngineModelType,或前往 产品功能 查看
• 音频提交方式:本接口支持音频 URL 、本地音频文件两种请求方式。推荐使用 腾讯云COS 来存储、生成URL并提交任务,此种方式将不产生外网和流量下行费用,可节约成本、提升任务速度(COS桶权限需要设置公有读私有写,或URL设置外部可访问)
• 音频限制:音频 URL 时长不能大于5小时,文件大小不超过1GB;本地音频文件不能大于5MB
• 如何获取识别结果:支持回调或轮询的方式获取结果,具体请参考 录音文件识别结果查询
• 识别结果有效时间:识别结果在服务端保存24小时
• 签名方法参考 公共参数 中签名方法 v3

默认接口请求频率限制:20次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:CreateRecTask。
Version String 公共参数,本接口取值:2019-06-14。
Region String 公共参数,此参数为可选参数。
EngineModelType String 引擎模型类型
识别引擎采用分级计费方案,标记为“大模型版”的引擎适用大模型计费方案,点击这里 查看产品计费说明

电话通讯场景引擎:
注意:电话通讯场景,请务必使用以下8k引擎
• 8k_zh:中文电话通讯;
• 8k_en:英文电话通讯;
8k_zh_large:普方大模型引擎【大模型版】。当前模型同时支持中文、多种中文方言等语言的识别,模型参数量极大,语言模型性能增强,针对电话音频中各类场景、各类中文方言的识别准确率极大提升,点击这里 对比常规版本与普方大模型版本的识别效果;

注意:如您有电话通讯场景识别需求,但发现需求语种仅支持16k,可将8k音频传入下方16k引擎,亦能获取识别结果。但16k引擎并非基于电话通讯数据训练,无法承诺此种调用方式的识别效果,需由您自行验证识别结果是否可用

通用场景引擎:
注意:除电话通讯场景以外的其它识别场景,请务必使用以下16k引擎
16k_zh:中文普通话通用引擎,支持中文普通话和少量英语,使用丰富的中文普通话语料训练,覆盖场景广泛,适用于除电话通讯外的所有中文普通话识别场景;
16k_zh_large:普方英大模型引擎【大模型版】。当前模型同时支持中文、英文、多种中文方言等语言的识别,模型参数量极大,语言模型性能增强,针对噪声大、回音大、人声小、人声远等低质量音频的识别准确率极大提升,点击这里 对比中文普通话常规版本与普方英大模型版本的识别效果;
16k_multi_lang:多语种大模型引擎【大模型版】。当前模型同时支持英语、日语、韩语、阿拉伯语、菲律宾语、法语、印地语、印尼语、马来语、葡萄牙语、西班牙语、泰语、土耳其语、越南语、德语的识别,可实现15个语种的自动识别(句子/段落级别);
16k_zh_dialect:中文普通话+多方言混合引擎,除普通话外支持23种方言(上海话、四川话、武汉话、贵阳话、昆明话、西安话、郑州话、太原话、兰州话、银川话、西宁话、南京话、合肥话、南昌话、长沙话、苏州话、杭州话、济南话、天津话、石家庄话、黑龙江话、吉林话、辽宁话);
16k_en:英语;
16k_yue:粤语;
16k_zh-PY:中英粤混合引擎,使用一个引擎同时识别中文普通话、英语、粤语三个语言;
16k_ja:日语;
16k_ko:韩语;
16k_vi:越南语;
16k_ms:马来语;
16k_id:印度尼西亚语;
16k_fil:菲律宾语;
16k_th:泰语;
16k_pt:葡萄牙语;
16k_tr:土耳其语;
16k_ar:阿拉伯语;
16k_es:西班牙语;
16k_hi:印地语;
16k_fr:法语;
16k_zh_medical:中文医疗引擎;
16k_de:德语;
示例值:16k_zh
ChannelNum Integer 识别声道数
1:单声道(16k音频仅支持单声道,请勿设置为双声道);
2:双声道(仅支持8k电话音频,且双声道应分别为通话双方)

注意:
• 16k音频:仅支持单声道识别,需设置ChannelNum=1
• 8k电话音频:支持单声道、双声道识别,建议设置ChannelNum=2,即双声道。双声道能够物理区分说话人、避免说话双方重叠产生的识别错误,能达到最好的说话人分离效果和识别效果。设置双声道后,将自动区分说话人,因此无需再开启说话人分离功能,相关参数(SpeakerDiarization、SpeakerNumber)使用默认值即可,返回的ResultDetail中的speakerId的值为0代表左声道,值为1代表右声道。
示例值:1
ResTextFormat Integer 识别结果返回样式
0:基础识别结果(仅包含有效人声时间戳,无词粒度的详细识别结果);
1:基础识别结果之上,增加词粒度的详细识别结果(包含词级别时间戳、语速值,不含标点);
2:基础识别结果之上,增加词粒度的详细识别结果(包含词级别时间戳、语速值和标点);
3:基础识别结果之上,增加词粒度的详细识别结果(包含词级别时间戳、语速值和标点),且识别结果按标点符号分段,适用字幕场景
4:【增值付费功能】基础识别结果之上,增加词粒度的详细识别结果(包含词级别时间戳、语速值和标点),且识别结果按nlp语义分段,适用会议、庭审记录转写等场景,仅支持8k_zh/16k_zh引擎
5:【增值付费功能】基础识别结果之上,增加词粒度的详细识别结果(包含词级别时间戳、语速值和标点),并输出口语转书面语转写结果,该结果去除语气词、重复词、精简冗余表达,并修正发言人口误,实现口语转书面语的效果,适用于线上、线下会议直接总结为书面会议纪要的场景,仅支持8k_zh/16k_zh引擎

注意:
如果传入参数值4,需确保账号已购买语义分段资源包,或账号开启后付费;若当前账号已开启后付费功能,并传入参数值4,将自动计费
如果传入参数值5,需确保账号已购买口语转书面语资源包,或账号开启后付费;若当前账号已开启后付费功能,并传入参数值5,将自动计费自动计费
示例值:0
SourceType Integer 音频数据来源
0:音频URL;
1:音频数据(post body)
示例值:0
Data String 音频数据base64编码
当 SourceType 值为 1 时须填写该字段,为 0 时不需要填写

注意:音频数据要小于5MB(含)
DataLen Integer 数据长度(此数据长度为数据未进行base64编码时的长度)
Url String 音频URL的地址(需要公网环境浏览器可下载)
当 SourceType 值为 0 时须填写该字段,为 1 时不需要填写

注意:
1. 请确保录音文件时长在5个小时(含)之内,否则可能识别失败;
2. 请保证文件的下载速度,否则可能下载失败
示例值:https://audio.cos.ap-guangzhou.myqcloud.com/example.wav
CallbackUrl String 回调 URL
用户自行搭建的用于接收识别结果的服务URL
回调格式和内容详见:录音识别回调说明

注意:

- 如果用户使用轮询方式获取识别结果,则无需提交该参数
- 建议在回调URL中带上您的业务ID等信息,以便处理业务逻辑
SpeakerDiarization Integer 是否开启说话人分离
0:不开启;
1:开启(仅支持以下引擎:8k_zh/16k_zh/16k_ms/16k_en/16k_id/16k_zh_large/16k_zh_dialect,且ChannelNum=1时可用);
默认值为 0

注意:
8k双声道电话音频请按 ChannelNum 识别声道数 的参数描述使用默认值
示例值:0
SpeakerNumber Integer 说话人分离人数
需配合开启说话人分离使用,不开启无效,取值范围:0-10
0:自动分离(最多分离出20个人);
1-10:指定人数分离;
默认值为 0
示例值:0
HotwordId String 热词表id
如不设置该参数,将自动生效默认热词表;
如设置该参数,将生效对应id的热词表;
点击这里查看热词表配置方法
CustomizationId String 自学习定制模型 id
如设置了该参数,将生效对应id的自学习定制模型;
点击这里查看自学习定制模型配置方法
EmotionRecognition Integer 【增值付费功能】情绪识别能力(目前仅支持16k_zh,8k_zh)
0:不开启;
1:开启情绪识别,但不在文本展示情绪标签;
2:开启情绪识别,并且在文本展示情绪标签(该功能需要设置ResTextFormat 大于0
默认值为0
支持的情绪分类为:高兴、伤心、愤怒

注意:
1. 本功能为增值服务,需将参数设置为1或2时方可按对应方式生效;
2. 如果传入参数值1或2,需确保账号已购买情绪识别资源包,或账号开启后付费;若当前账号已开启后付费功能,并传入参数值1或2,将自动计费
3. 参数设置为0时,无需购买资源包,也不会消耗情绪识别对应资源
示例值:0
EmotionalEnergy Integer 情绪能量值
取值为音量分贝值/10,取值范围:[1,10],值越高情绪越强烈
0:不开启;
1:开启;
默认值为0
示例值:0
ConvertNumMode Integer 阿拉伯数字智能转换(目前支持中文普通话引擎)
0:不转换,直接输出中文数字;
1:根据场景智能转换为阿拉伯数字;
3:打开数学相关数字转换(如:阿尔法转写为α);
默认值为 1
示例值:0
FilterDirty Integer 脏词过滤(目前支持中文普通话引擎)
0:不过滤脏词;
1:过滤脏词;
2:将脏词替换为 * ;
默认值为 0
示例值:0
FilterPunc Integer 标点符号过滤(目前支持中文普通话引擎)
0:不过滤标点;
1:过滤句末标点;
2:过滤所有标点;
默认值为 0
示例值:0
FilterModal Integer 语气词过滤(目前支持中文普通话引擎)
0:不过滤语气词;
1:过滤部分语气词;
2:严格过滤语气词;
默认值为 0
示例值:0
SentenceMaxLength Integer 单标点最多字数(目前支持中文普通话引擎)
可控制单行字幕最大字数,适用于字幕生成场景,取值范围:[6,40]
0:不开启该功能;
默认值为0

注意:需设置ResTextFormat为3,解析返回的ResultDetail列表,通过结构中FinalSentence获取单个标点断句结果
示例值:0
Extra String 附加参数(该参数无意义,忽略即可)
HotwordList String 临时热词表:该参数用于提升识别准确率。

- 单个热词限制:"热词|权重",单个热词不超过30个字符(最多10个汉字),权重[1-11]或者100,如:“腾讯云|5” 或“ASR|11”;

- 临时热词表限制:多个热词用英文逗号分割,最多支持128个热词,如:“腾讯云|10,语音识别|5,ASR|11”;

- 参数 hotword_id(热词表) 与 hotword_list(临时热词表) 区别:

- hotword_id:热词表。需要先在控制台或接口创建热词表,获得对应hotword_id传入参数来使用热词功能;

- hotword_list:临时热词表。每次请求时直接传入临时热词表来使用热词功能,云端不保留临时热词表。适用于有极大量热词需求的用户;

注意:

- 如果同时传入了 hotword_id 和 hotword_list,会优先使用 hotword_list;

- 热词权重设置为11时,当前热词将升级为超级热词,建议仅将重要且必须生效的热词设置到11,设置过多权重为11的热词将影响整体字准率。

- 热词权重设置为100时,当前热词开启热词增强同音替换功能(仅支持8k_zh,16k_zh),举例:热词配置“蜜制|100”时,与“蜜制”同拼音(mizhi)的“秘制”的识别结果会被强制替换成“蜜制”。因此建议客户根据自己的实际情况开启该功能。建议仅将重要且必须生效的热词设置到100,设置过多权重为100的热词将影响整体字准率。
KeyWordLibIdList.N Array of String 关键词识别ID列表,默认空为不进行识别,最多10个

3. 输出参数

参数名称 类型 描述
Data Task 录音文件识别的请求返回结果,包含结果查询需要的TaskId。
注意:TaskId有效期为24小时,不同日期可能出现重复TaskId,请不要依赖TaskId作为您业务系统里的唯一ID。
RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 通过音频Url来调用接口

用户通过音频Url的方式(SourceType为0)请求录音识别服务,请求模型为16k中文 (EngineModelType = 16k_zh),音频格式为wav(采样率为16k,单声道)

输入示例

POST / HTTP/1.1
Host: asr.tencentcloudapi.com
Content-Type: application/json; charset=utf-8
X-TC-Version: 2019-06-14
X-TC-Region: ap-shanghai
X-TC-Action: CreateRecTask
X-TC-Timestamp: 1599142560
Authorization: TC3-HMAC-SHA256 Credential=************************************************************/2020-09-03/asr/tc3_request, SignedHeaders=content-type;host, Signature=524ed61a4a71de417f4fa41249dcb428a0c51013890f24f3492068ca7cd16953
<公共请求参数>

{
    "Url": "http://test.cos.ap-guangzhou.myqcloud.com/test.wav",
    "ChannelNum": 1,
    "EngineModelType": "16k_zh",
    "ResTextFormat": 0,
    "SourceType": 0
}

输出示例

{
    "Response": {
        "RequestId": "3c140219-cfe9-470e-b241-907877d6fb03",
        "Data": {
            "TaskId": 1393265
        }
    }
}

示例2 通过音频数据来调用接口

用户通过上传音频数据(Data)的方式(SourceType为1)请求录音识别服务,请求模型为16k中文 (EngineModelType = 16k_zh),音频格式为wav(采样率为16k,单声道)

输入示例

POST / HTTP/1.1
Host: asr.tencentcloudapi.com
Content-Type: application/json; charset=utf-8
X-TC-Version: 2019-06-14
X-TC-Region: ap-shanghai
X-TC-Action: CreateRecTask
X-TC-Timestamp: 1599142560
Authorization: TC3-HMAC-SHA256 Credential=************************************************************/2020-09-03/asr/tc3_request, SignedHeaders=content-type;host, Signature=524ed61a4a71de417f4fa41249dcb428a0c51013890f24f3492068ca7cd16953
<公共请求参数>

{
    "ChannelNum": 1,
    "EngineModelType": "16k_zh",
    "ResTextFormat": 0,
    "Data": "eGNmYXNkZmFzZmFzZGZhc2RmCg==",
    "SourceType": 1
}

输出示例

{
    "Response": {
        "RequestId": "3c140219-cfe9-470e-b241-907877d6fb03",
        "Data": {
            "TaskId": 1396665
        }
    }
}

5. 开发者资源

腾讯云 API 平台

腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

API Inspector

用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

错误码 描述
AuthFailure.InvalidAuthorization 鉴权错误。
FailedOperation.CheckAuthInfoFailed 鉴权错误。
FailedOperation.ErrorDownFile 下载音频文件失败。
FailedOperation.ErrorRecognize 识别失败。
FailedOperation.ServiceIsolate 账号因为欠费停止服务,请在腾讯云账户充值。
FailedOperation.UserHasNoAmount 资源包耗尽,请购买资源包或开通后付费
FailedOperation.UserHasNoFreeAmount 资源包耗尽,请开通后付费或者购买资源包
FailedOperation.UserNotRegistered 服务未开通,请在腾讯云官网语音识别控制台开通服务。
InternalError.ErrorDownFile 下载音频文件失败。
InternalError.FailAccessDatabase 访问数据库失败。
InternalError.FailAccessRedis 访问Redis失败。
InvalidParameter 参数错误。
InvalidParameterValue 参数取值错误。
MissingParameter 缺少参数错误。
RequestLimitExceeded.UinLimitExceeded 超出请求频率。
UnknownParameter 未知参数错误。