本页面介绍了如何将特定的机器学习模型用于发送到 Speech-to-Text 的音频转录请求。
选择合适的转写模型
Speech-to-Text 会将输入与多个机器学习模型中的一个进行比较,以检测音频片段中的字词。每个模型都通过分析数百万个示例(在此是指大量实际的人物说话录音)进行过训练。
Speech-to-Text 具有众多专业模型,这些模型均通过特定来源的音频进行过训练。当将这些模型用来处理与它们所训练的数据类型类似的音频数据时,可以提供更好的结果。
下表显示了可用于 Speech-to-Text V2 API 的转写模型。
| 模型名称 | 说明 |
|---|---|
chirp_3 | 使用 Google 最新一代多语言自动语音识别 (ASR) 专用生成模型,该模型根据用户反馈和体验进行了优化,以更好地满足用户需求。Chirp 3 的准确率和速度比之前的 Chirp 模型有所提升,并提供讲话人区分和自动检测语言功能。 |
chirp_2 | 使用由我们的大语言模型 (LLM) 技术提供支持的通用大型语音模型 (USM),进行流式传输和批量处理,以及不同语言内容和多语言功能的转写和翻译。 |
telephony | 此模型用于源自音频通话的音频,通常以 8 kHz 的采样率录制。非常适合客户服务、电话会议和自动化自助服务终端应用。 |
选择用于音频转录的模型
如需转写短音频片段(时长不超过 60 秒),最简单的方法是使用同步识别。它会处理您的音频,并在处理完所有音频后以单个响应的形式返回完整的转写结果。
Python
from google.cloud.speech_v2 import SpeechClient from google.cloud.speech_v2.types import cloud_speech # TODO(developer): Update and un-comment below line # PROJECT_ID = "your-project-id" # Instantiates a client client = SpeechClient() # Reads a file as bytes with open("resources/audio.wav", "rb") as f: audio_content = f.read() config = cloud_speech.RecognitionConfig( auto_decoding_config=cloud_speech.AutoDetectDecodingConfig(), language_codes=["en-US"], model="chirp_3", ) request = cloud_speech.RecognizeRequest( recognizer=f"projects/{PROJECT_ID}/locations/global/recognizers/_", config=config, content=audio_content, ) # Transcribes the audio into text response = client.recognize(request=request) for result in response.results: print(f"Transcript: {result.alternatives[0].transcript}") 如需转写时长超过 60 秒的音频文件或实时转写音频,您可以使用以下方法之一:
- 批量识别:非常适合转写存储在 Cloud Storage 存储桶中的长音频文件(时长从几分钟到几小时不等)。这是一项异步操作。如需详细了解批量识别,请参阅批量识别。
- 流式识别:非常适合实时采集和转写音频,例如来自麦克风馈送或直播的音频。如需详细了解流式传输识别,请参阅流式传输识别。