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

Google Speech to Text中SpeechAsyncClient的speech_contexts短语列表失效求助

Google语音转文本speech_contexts不生效的排查与解决
  • 核心问题:单个短语无法单独设置boost值
    Google Speech-to-Text的SpeechContext不支持给列表里的每个短语单独分配boost,你之前给"Burrito"和"burrito"分别设10.0和5.0的写法不符合API规范,导致配置被忽略,这是最可能的原因。

  • 正确的speech_contexts构造方式
    每个SpeechContext对象对应一组短语,共享同一个boost值。如果要优先识别大写的"Burrito",只需要把它加入短语列表并设置较高的boost(最大值为20.0),示例代码如下:

    # 构造正确的speech_contexts
    speech_contexts = [
        speech.SpeechContext(
            phrases=["Burrito"],
            boost=20.0
        )
    ]
    
    Recognitionconfig = speech.RecognitionConfig(
        encoding=speech.RecognitionConfig.AudioEncoding.LINEAR16,
        sample_rate_hertz=16000,
        language_code="en-US",
        model="latest_long",
        speech_contexts=speech_contexts
    )
    
    streaming_config = speech.StreamingRecognitionConfig(
        config=Recognitionconfig,
        interim_results=True
    )
    
  • 其他排查点

    1. 确认模型兼容性:你用的latest_long模型支持speech_contexts,流式识别场景下也能正常生效,这点没问题。
    2. 测试简化配置:先只保留一个目标短语和最高boost值,测试是否生效,排除多短语干扰。
    3. 检查客户端版本:2.17.2版本的客户端没有已知的speech_contexts功能bug,无需降级或升级。
  • 补充说明
    boost值范围是-20.0到20.0,数值越高,系统越倾向于匹配该短语。如果音频里的发音是"burrito",通过设置短语为"Burrito"并提高boost,可以引导系统输出大写形式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 11:55:38