腾讯云智聆口语评测请求示例-教育服务解决方案

一次性评测

使用中文单词模式做演示。适合初次接入,使用较短文件来进行评测。
单词模式只支持单词(缩写,组合词)/单字。

请求参数

UserVoiceData 需要使用音频数据的 base64 格式。音频数据转成 base64。格式要求参考音频上传格式

UserVoiceData = "UklGRka1CQBXQVZFZm10IBAAAAABAAEAgD4AAAB9AAACABAATElTVDQAAABJTkZPSUNSRBEAAAAyMDIxLTA3LTAxIDEzOjQzAABJU0ZUDgAAAE*"

SessionId 是音频的唯一标识,为了避免重复,推荐使用 uuid 作为唯一标识

SessionId = "820993ae-fcfb-11ec-91fc-acde48001122"

EvalMode 是评测模式,参考 评测模式介绍。

EvalMode = 0

其他参数信息可以参考 官方文档。

SeqId = 1IsEnd = 1VoiceFileType = 3 VoiceEncodeType = 1RefText = "我"WorkMode = 1ScoreCoeff = 1.0ServerType = 1

返回结果

所有评测模式都需要关注的字段。

SuggestedScore:作为总分使用PronAccuracy:准确度PronFluency:流利度PronCompletion:完整度Phone:音素DetectedStress:用户是否重音Stress:是否应该重音MatchTag:当前词匹配情况。评分为0情况下观察是否漏读,错读。

流式评测

使用英文句子演示流式评测。由于一次性评测评测不了过长的音频数据,所以需要使用流式评测,将音频数据分片传输。
句子模式可以支持30单词/单字以下的文本。

请求参数

流式评测情况下 SeqId 从1开始依次累加(index+1),IsEnd 在尾包的时为1,其他时候为0。UserVoiceData 需要音频 base64 的数据,会根据 SeqId 顺序拼接成完整的音频。使用流式评测需要将 WorkMode 设置为0。
流式分片评测可以根据我们 SDK 的方法实现,或者百度搜索大文件分片传输,如图所示(将音频分成三个分片):


SeqId = 1IsEnd = 0WorkMode = 0UserVoiceData = "UklGRka1CQBXQVZFZm10IBAAAAABAAEAgD4AAAB9AAACABAATElTVDQAAABJTkZPSU*"
SeqId = 2IsEnd = 0WorkMode = 0UserVoiceData = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA*"
SeqId = 3IsEnd = 1WorkMode = 0UserVoiceData = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA*"

句子模式支持实时,可以通过设置 SentenceInfoEnabled=1,获取实时中间结果。

SentenceInfoEnabled = 1

其他参数信息可以参考 官方文档 或上方参数描述。

VoiceFileType = 3VoiceEncodeType = 1SessionId = "820993ae-fcfb-11ec-91fc-acde48001122"RefText = "i have a car"EvalMode = 1ScoreCoeff = 1.0ServerType = 0TextMode = 0

返回结果

实时评测需要关注参数。

SentenceInfo:可以返回评测中间结果Status:中间结果为Evaluating,最终结果为Finished

指定单词发音

使用英文句子模式演示指定单词发音。
当需要使用音标评测或文本中出现不常见人名,地名,返回结果 MatchTag:4(不在字典)的时候,需要指定单词发音,否则会按照我们词库生成发音或报错。

请求参数

使用指定发音需要设置 TextMode = 1。使用 Wordlist 的结构来表示音素结构。音素结构 Word 需要填写指定的单词,Pron 需要填写智聆音素(可以参考音素映射表)。没有 Pron 则不指定发音,Pron 为空或非智聆音素会报错。

RefText = "{\"wordlist\": [{\"word\": \"english\"},{\"word\": \"tencent\",\"pron\": [[\"t\",\"ah\",\"n\",\"s\",\"ah\",\"n\",\"t\"]]},{\"word\": \"smart oral evaluation\"}]}"TextMode = 1

音标评测

不指定音标的情况下一般发字母音或报错,所以需要对音标进行评测。

请求参数

文本参考Word 需要填入国际音标,Pron 需要填入智聆音素,例如国际音标 e,对应智聆音素 eh。详情参考音素映射表。

RefText = "{\"wordlist\": [{\"word\": \"e\",\"pron\": [[\"eh\"]]}]}"TextMode = 1

Word 无法直接传入部分音标,所以需要做替换处理。例如 æ,可以使用 ae。文本参考

RefText = "{"wordlist": [{"word": "ae","pron": [["ae"]]}]}"TextMode = 1

多音词评测

当一个单词有是多音词且发音都算正确时,可以使用多音词评测。

请求参数

文本参考

RefText = "{\"wordlist\": [{\"word\": \"bikeOrabout\",\"pron\": [[\"b\",\"ay\",\"k\"],[\"ah\",\"b\",\"ao\",\"t\"]]}]}"TextMode = 1

其他参数信息可以参考 官方文档 或上方参数描述。

SeqId = 1IsEnd = 1VoiceFileType = 3 VoiceEncodeType = 1UserVoiceData = "UklGRka1CQBXQVZFZm10IBAAAAABAAEAgD4AAAB9AAACABAATElTVDQAAABJTkZP*"SessionId = "820993ae-fcfb-11ec-91fc-acde48001122"WorkMode = 0EvalMode = 1ScoreCoeff = 1.0ServerType = 0

指定汉字发音

使用中文段落模式演示指定汉字发音。

请求参数

指定汉字发音和指定单词发音类似,都是属于指定发音。Word 填入需要指定的汉字,Pron 填入拼音。

RefText = "{\"wordlist\": [{\"word\": \"靠山吃山,靠水吃水。仪\"},{\"word\": \"陇\",\"pron\": [[\"long2\"]]},{\"word\": \"是山区,有山林竹木,有山货药材,一定要根据山区特点,多搞副业,广开财路。除了粮食,还要抓好棉花、油料生产。多养猪,多喂鸡鸭牛羊,把改善老百姓的生活作为大事来抓。还要动员老百姓在田边地角、河坡路旁多种树,比如桑树、果树、茶树、白蜡树等。要搞好发展规划,定目标要切合实际,不要搞一刀切、瞎指挥。办事要老老实实,统计的数字要真实,遇事多和群众商量。\"}]}"TextMode = 1

其他参数信息可以参考 官方文档 或上方参数描述。

SeqId = 1IsEnd = 1VoiceFileType = 3 VoiceEncodeType = 1UserVoiceData = "UklGRka1CQBXQVZFZm10IBAAAAABAAEAgD4AAAB9AAACABAATElTVDQAAABJTkZP*"SessionId = "820993ae-fcfb-11ec-91fc-acde48001122"WorkMode = 0EvalMode = 2ScoreCoeff = 1.0ServerType = 1

异步轮询

使用中文自由说模式演示结果查询。

请求参数

自由说模块可以不填写参考文本,根据用户阅读的内容来进行打分。

SeqId = 1IsEnd = 1VoiceFileType = 3 VoiceEncodeType = 1UserVoiceData = "UklGRka1CQBXQVZFZm10IBAAAAABAAEAgD4AAAB9AAACABAATElTVDQAAABJTkZP*"SessionId = "a61eb16c-fd04-11ec-9898-acde48001122"RefText = ""WorkMode = 1EvalMode = 3ScoreCoeff = 1.0ServerType = 1IsAsync = 1

在请求结束之后,一般会返回评测结果。如果需要再次对结果查询(10分钟内),可以设置 IsQuery = 1,使用对应 SessionId 查询相应的结果。如果不存在会报错:结果缓存已过期。

IsQuery = 1SessionId = "a61eb16c-fd04-11ec-9898-acde48001122"

其他参数信息可以参考 官方文档 或上方参数描述。

SeqId = 1IsEnd = 1VoiceFileType = 3VoiceEncodeType = 1UserVoiceData ="UklGRka1CQBXQVZFZm10IBAAAAABAAEAgD4AAAB9AAACABAATElTVDQAAABJTkZP*"RefText = ""WorkMode = 1EvalMode = 3ScoreCoeff = 1.0ServerType = 1

音素到字母映射

使用英文单词纠错模式做演示。

请求参数

音素纠错模式可以返回用户发音内容和文本标准内容,标明客户读错的具体内容。RefText 与单词模式一致。

RefText = "hello"EvalMode = 4

音素到字母的映射 RefText 需要使用{::cmd{F_P2L=true}}+单词 开启音素到字母映射。

RefText = "{::cmd{F_P2L=true}}hello"EvalMode = 4

其他参数信息可以参考 官方文档 或上方参数描述。

SeqId = 1IsEnd = 1VoiceFileType = 3 VoiceEncodeType = 1UserVoiceData = "UklGRka1CQBXQVZFZm10IBAAAAABAAEAgD4AAAB9AAACABAATElTVDQAAABJTkZP*"SessionId = "820993ae-fcfb-11ec-91fc-acde48001122"WorkMode = 1ScoreCoeff = 1.0ServerType = 0

返回结果

音素纠错模式需要关注字段。

Phone:音频对应音素ReferencePhone:文本对应标准音素

映射需要关注参数。

Phone:当前音素ReferenceLetter:当前音素对应字母

中文句子多分支模式

需要使用单选题的场景。

请求参数

RefText 使用 | 来划分不同的句子,| 表示或

RefText = "苹果|香蕉|菠萝"EvalMode = 6

其他参数信息可以参考 官方文档 或上方参数描述。

SeqId = 1IsEnd = 1VoiceFileType = 3 VoiceEncodeType = 1UserVoiceData = "UklGRka1CQBXQVZFZm10IBAAAAABAAEAgD4AAAB9AAACABAATElTVDQAAABJTkZP*"SessionId = "820993ae-fcfb-11ec-91fc-acde48001122"WorkMode = 1ScoreCoeff = 1.0ServerType = 1

单词实时模式

使用单词实时模式,可以中间就拿到单词的评测结果。

请求参数

RefText 使用 | 来划分不同的单词,| 表示或

RefText = "apple | bagworm | first"EvalMode = 7

单词实时模式如果需要普通文本和指定发音混合评测,需要使用 单词+{::pron{智聆音素}} 来进行指定发音。

RefText = "apple | bagworm | first | happy{::pron{hh,ae,p,iy}}"EvalMode = 7TextMode = 0

其他参数信息可以参考 官方文档 或上方参数描述。

SeqId = 1IsEnd = 0VoiceFileType = 3 VoiceEncodeType = 1UserVoiceData = "UklGRka1CQBXQVZFZm10IBAAAAABAAEAgD4AAAB9AAACABAATElTVDQAAABJTkZP*"SessionId = "820993ae-fcfb-11ec-91fc-acde48001122"WorkMode = 0ScoreCoeff = 1.0ServerType = 0
SeqId = 2IsEnd = 0VoiceFileType = 3 VoiceEncodeType = 1UserVoiceData = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA*"SessionId = "820993ae-fcfb-11ec-91fc-acde48001122"WorkMode = 0ScoreCoeff = 1.0ServerType = 0
SeqId = 3IsEnd = 1VoiceFileType = 3 VoiceEncodeType = 1UserVoiceData = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA*"SessionId = "820993ae-fcfb-11ec-91fc-acde48001122"WorkMode = 0ScoreCoeff = 1.0ServerType = 0

拼音模式

请求参数

拼音模式需要使用中文模式,RefText 使用1,2,3,4,表示声调。

RefText = "sh an1"EvalMode = 8ServerType = 1

声调检测

请求参数

RefText需要使用 {::cmd{F_TDET=true}} + 拼音 开启声调检测。

RefText = "{::cmd{F_TDET=true}}sh an1"EvalMode = 8ServerType = 1

其他参数信息可以参考 官方文档 或上方参数描述。

SeqId = 1IsEnd = 1VoiceFileType = 3VoiceEncodeType = 1UserVoiceData = "UklGRka1CQBXQVZFZm10IBAAAAABAAEAgD4AAAB9AAACABAATElTVDQAAABJTkZP*"SessionId = "820993ae-fcfb-11ec-91fc-acde48001122"WorkMode = 1ScoreCoeff = 1.0

返回结果

声调评测需要关注参数。

word:原始评测文本ReferenceWord:标准发音phone:真实发音音素ReferencePhone:标准发音音素,可依此判断声调是否正确。

中英文混合评测

中文评测下可以支持一些简单的英文,也可以通过音素结构来指定发音。

RefText = "我有一座house"ServerType = 1

其他参数信息可以参考 官方文档 或上方参数描述。

SeqId = 1IsEnd = 1VoiceFileType = 3 VoiceEncodeType = 1UserVoiceData = "UklGRka1CQBXQVZFZm10IBAAAAABAAEAgD4AAAB9AAACABAATElTVDQAAABJTkZP*"SessionId = "820993ae-fcfb-11ec-91fc-acde48001122"WorkMode = 0EvalMode = 1ScoreCoeff = 1.0

业务应用

为了区分不同的业务,需要使用不同的业务应用 ID 来区分。例如同一公司,不同的产品,不同的应用平台,不同地域划分。
需要在 应用管理控制台 新建应用,新建应用内容根据需要填写。


请求参数

在请求参数填入对应 SoeAppId。

SoeAppId = "soe_100xxxxx"

其他参数信息可以参考 官方文档 或上方参数描述。

SeqId = 1IsEnd = 1VoiceFileType = 3 VoiceEncodeType = 1UserVoiceData = "UklGRka1CQBXQVZFZm10IBAAAAABAAEAgD4AAAB9AAACABAATElTVDQAAABJTkZP*"SessionId = "a61eb16c-fd04-11ec-9898-acde48001122"RefText = "hello"WorkMode = 1EvalMode = 0ScoreCoeff = 1.0ServerType = 0

苛刻度

设置不同的苛刻度,对应不同年龄段。

影响范围

取三段不同的数据,苛刻度在1.0 – 4.0之间的变化曲线如下所示:


按需设值

具体需要设置值,可以根据反馈情况,收集音频数据进行打分对比,调整为更符合的苛刻度。

ScoreCoeff = 1.0

其他参数信息可以参考 官方文档 或上方参数描述。

SeqId = 1IsEnd = 1VoiceFileType = 3 VoiceEncodeType = 1UserVoiceData = "UklGRka1CQBXQVZFZm10IBAAAAABAAEAgD4AAAB9AAACABAATElTVDQAAABJTkZP*"SessionId = "a61eb16c-fd04-11ec-9898-acde48001122"RefText = "hello"WorkMode = 1EvalMode = 0ServerType = 0



腾讯云官网1折活动,限时活动,即将结束,速速收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠

发表评论