比较转写模型

本页面介绍了如何将特定的机器学习模型用于发送到 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 存储桶中的长音频文件(时长从几分钟到几小时不等)。这是一项异步操作。如需详细了解批量识别,请参阅批量识别
  1. 流式识别:非常适合实时采集和转写音频,例如来自麦克风馈送或直播的音频。如需详细了解流式传输识别,请参阅流式传输识别

后续步骤