You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Speech-to-text显式标点识别失效问题咨询(附代码)

问题原因与解决方案

问题原因

  1. 配置传递渠道错误:当使用OutputFormat.Detailed时,punctuation参数通过ServicePropertyChannel.UriQueryParameter传递无法生效,Azure Speech服务在Detailed输出模式下,需要通过ServicePropertyChannel.ServiceJson渠道接收标点配置。
  2. 默认行为覆盖:未正确配置时,服务会默认将语音中的“问号”“句号”转换为符号,而非保留文本表述。

解决方案

1. 修正SpeechConfig的标点配置渠道

修改标点启用逻辑中的SetServiceProperty调用,将传递渠道改为ServicePropertyChannel.ServiceJson:

SpeechConfig config = SpeechConfig.FromSubscription("key", "region");
config.OutputFormat = OutputFormat.Detailed;
if (Properties.Settings.Default.Punctuation)
{
    // 替换渠道为ServiceJson,确保Detailed模式下配置生效
    config.SetServiceProperty("punctuation", "explicit", ServicePropertyChannel.ServiceJson);
}
recognizer = new SpeechRecognizer(config);
recognizer.Recognized += SpeechRecognizer_Recognized; // 修正原代码中的语法错误

注:原代码中recognizer. Recognizer. Recognizedecognizer_Recognized;为语法错误,需修正为正确的事件绑定写法。

2. 验证结果输出逻辑

配置修正后,bestResults.Words中的项会正确返回“问号”“句号”等文本,而非符号。原有的遍历输出逻辑可直接使用,无需额外修改。

额外检查点

  • 确认订阅密钥和区域配置正确,避免因权限或区域不支持导致功能失效。
  • 确保语音输入清晰,无背景噪音干扰识别精度。

内容的提问来源于stack exchange,提问作者Babar Ali

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 21:55:27