请求参数
本文介绍在使用 AmiVoice API 发送语音识别请求时可以设置的参数。虽然 HTTP 和 WebSocket 接口的发送方式不同,但可以设置的参数是相同的。
参数列表
authorization
(认证信息)和grammarFileNames
(连接引擎名称)是必需的。其他参数是可选的。某些参数可能不适用于所有接口,请参考下表。
参数名称 | 说明 | 必需 | 同步HTTP | WebSocket | 异步HTTP |
---|---|---|---|---|---|
authorization | 认证信息 | ● | ● | ● | ● |
grammarFileNames | 连接引擎名称 | ● | ● | ● | ● |
profileId | profile ID | ● | ● | ● | |
profileWords | 单词注册列表 | ● | ● | ● | |
keepFillerToken | 控制自动删除填充词(无意义词语) | ● | ● | ● | |
segmenterProperties | 语音段检测参数 | ● | ● | ||
resultUpdatedInterval | 识别中事件的间隔 | ● | |||
loggingOptOut | 更改日志保存的有无 | ● | |||
contentId | 用户定义 ID | ● | |||
compatibleWithSync | 结果格式的兼容性 | ● | |||
speakerDiarization | 说话人区分启用选项 | ● | |||
diarizationMinSpeaker | 说话人区分的最小预估说话人数 | ● | |||
diarizationMaxSpeaker | 说话人区分的最大预估说话人数 | ● | |||
sentimentAnalysis | 情绪分析启用选项 | ● |
有关这些请求参数的发送方法,请参阅以下部分:
参数详情
以下是各参数的详细说明。
必需参数
authorization
认证信息
使用 API 时必须设置认证信息。认证信息是在个人页面上显示的 [APPKEY],或者通过一次性 APPKEY 发行 API获取的一次性 APPKEY。
从浏览器应用程序连接到语音识别服务器时,为避免将 APPKEY 写入 HTML 文件,请使用一次性 APPKEY。详情请参阅一次性 APPKEY。
grammarFileNames
连接引擎名称
指定该会话中要使用的语音识别引擎。每个会话指定一个。可设置的值请参考连接引擎名称列表或个人页面。详情请参阅语音识别引擎。
可选参数
profileId
profile ID
profile 是存在于语音识别服务器上的每个用户的数据文件,用户可以为其命名并保存注册的单词。profile ID 是用于指定该数据文件的标识符。详情请参阅单词注册。
profileWords
单词注册列表
可以注册在会话中有效的单词。每个单词以"显示(半角空格)读音"的格式注册。如果要指定类名,请使用"显示<半角空格>读音 <半角空格> 类名"的格式。注册多个单词时,用"|"(半角竖线)分隔单词。值的格式如下(以下是未指定类名的示例):
显示1 读音1|显示2 读音2|显示3 读音3|显示4 读音4
详情请参阅单词注册。
keepFillerToken
控制自动删除填充词(无意义词语)
指定1
或0
。默认值为0
。当不想自动删除语音识别结果中包含的填充词(如"あー"或"えー"等)时,指定1
。另请参阅填充词自动删除。
填充词前后用半角"%"包围。以下是填充词的示例:
%あー%
%えー%
%おー%
%えっと%
另请参阅 AmiVoice Tech Blog 上的如何在 AmiVoice API 中选择显示或删除无意义词语(填充词)。
segmenterProperties
语音段检测参数
可以设置以下参数:
useDiarizer
- 设置为
1
时,在同步 HTTP 或 WebSocket 接口中启用说话人区分。默认为禁用。详情请参阅说话人区分。
- 设置为
diarizerAlpha
- 控制同步 HTTP 或 WebSocket 接口中说话人区分新说话人出现的容易程度的参数。指定较大的值会使新说话人更容易出现,指定较小的值会使新说话人更难出现。
diarizerAlpha=0
是特殊情况,会被视为指定了 1e0,即 1。如果未设置,则默认为diarizerAlpha=0
。
- 控制同步 HTTP 或 WebSocket 接口中说话人区分新说话人出现的容易程度的参数。指定较大的值会使新说话人更容易出现,指定较小的值会使新说话人更难出现。
diarizerTransitionBias
- 控制同步 HTTP 或 WebSocket 接口中说话人区分说话人切换容易程度的参数。指定较大的值会使说话人更容易切换,指定较小的值会使说话人更难切换。
diarizerTransitionBias=0
是特殊情况,会被视为指定了 1e-40。但是,对于支持 8KHz 音频的引擎,例如使用通用引擎(-a-general
)并发送采样率为 8kHz 的音频时,会被视为指定了 1e-20。如果未设置,则默认为diarizerTransitionBias=0
。
- 控制同步 HTTP 或 WebSocket 接口中说话人区分说话人切换容易程度的参数。指定较大的值会使说话人更容易切换,指定较小的值会使说话人更难切换。
WebSocket API 特有参数
resultUpdatedInterval
识别中事件的间隔
以毫秒为单位指定发送识别中事件的间隔。
- 设置为 0 时不发送识别中事件。
- 每处理指定时间的音频数据就发送一次识别中事件。识别中事件不是根据实际经过的时间发送,而是根据处理的音频数据量发送。如果指定的值包含小于 100 的小数部分,将向上取整到 100 的倍数。
异步 HTTP 接口特有参数
loggingOptOut
更改日志保存的有无
loggingOptOut=<True|False>
指定是否保存日志。设置为 True 时,系统在会话期间不会保存日志。默认为 False。
contentId
用户定义 ID
contentId=<任意字符串>
可以指定用户自定义的任意字符串。该字符串将包含在会话期间的状态和结果响应中。默认为 None。
compatibleWithSync
结果格式的兼容性
compatibleWithSync=<True|False>
以与同步 HTTP 接口兼容的格式输出结果。默认为 False。
speakerDiarization
说话人区分启用选项
speakerDiarization=<True|False>
启用说话人区分。默认为 False。详情请参阅说话人区分。
diarizationMinSpeaker
说话人区分的最小预估说话人数
diarizationMinSpeaker=<int>
仅在启用说话人区分时有效,可以指定音频中包含的最小说话人数。需要设置为 1 或更大。默认为 1。详情请参阅说话人区分。
diarizationMaxSpeaker
说话人区分的最大预估说话人数
diarizationMaxSpeaker=<int>
仅在启用说话人区分时有效,可以指定音频中包含的最大说话人数。需要设置为不小于 diarizationMinSpeaker 的值。默认为 10。详情请参阅说话人区分。
sentimentAnalysis
情绪分析启用选项
sentimentAnalysis=<True|False>
启用情绪分析。默认为 False。
详情请参阅情绪分析。