如何配置Google Speech to Text API以在转录结果中保留um等口语填充词?
Google Speech-to-Text 保留口语填充词配置方案
要保留um、ar、like这类口语填充词,你需要在调用API时调整RecognitionConfig的相关配置,具体操作如下:
- 显式关闭默认过滤逻辑,将配置项
filter_profanity设置为false,该参数默认开启时除了过滤低俗内容,也会联动降低无实际语义的填充词识别权重,容易直接过滤这类词汇 - 开启口语场景适配,将
enable_spoken_punctuation设置为true,开启该参数后,接口不会强制将转录结果转为书面化表达,会保留口语场景下的语气词、填充词 - 通过
speech_contexts配置提升目标填充词的识别权重,把需要保留的填充词全部添加到短语列表中,同时设置boost参数为10以上的数值,进一步提高这类词被识别保留的概率
你可以参考以下Python调用示例配置:
from google.cloud import speech_v1p1beta1 as speech client = speech.SpeechClient() audio = speech.RecognitionAudio(uri="gs://your-bucket/your-audio-file.wav") config = speech.RecognitionConfig( encoding=speech.RecognitionConfig.AudioEncoding.LINEAR16, sample_rate_hertz=16000, language_code="en-US", # 关闭脏词过滤 filter_profanity=False, # 开启口语填充词识别 enable_spoken_punctuation=True, # 提升目标填充词权重 speech_contexts=[{ "phrases": ["um", "ar", "er", "like", "you know"], "boost": 15 }] ) response = client.recognize(config=config, audio=audio)
注意:
enable_spoken_punctuation参数需要使用v1p1beta1及以上版本的接口支持,建议优先使用对应版本的SDK调用。异步长音频转录的配置逻辑和上述一致,直接在LongRunningRecognizeConfig中加入相同参数即可。
内容的提问来源于stack exchange,提问作者Don Udawattage
相关产品推荐
相关产品推荐

