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

使用Google Cloud Speech-to-Text API转写长音频遇GCS文件检测错误

解决Google Cloud Speech-to-Text无法访问GCS音频文件的问题

我来帮你排查这个问题——我之前也碰到过类似的GCS文件访问报错,咱们一步步拆解可能的原因和解决方案:

1. 先确认GCS URI格式是否正确

这是最常见的问题!Speech-to-Text要求GCS URI必须以gs://开头,格式为gs://[你的桶名]/[文件路径/文件名],比如gs://my-audio-storage/long-interview.flac。如果你的URI少了gs://前缀,代码会默认把它当成本地文件路径去找,自然就会报No such file or directory错误。

2. 检查服务账号的权限配置

Speech-to-Text的服务账号需要有访问GCS文件的权限:

  • 给你使用的服务账号添加Storage Object Viewer角色(或者更细粒度的storage.objects.get权限),确保它能读取GCS桶里的文件。
  • 同时确认本地环境已经正确设置了GOOGLE_APPLICATION_CREDENTIALS环境变量,指向你的服务账号密钥JSON文件。如果没设置,API会默认用本地的默认凭证,可能没有访问GCS的权限。

3. 验证文件确实存在于指定路径

GCS的路径是区分大小写的,一定要确保代码里的URI和GCS控制台里的文件路径完全一致:

  • 直接登录GCS控制台,导航到对应的桶,检查文件名、子路径的拼写和大小写是否匹配。
  • 也可以在终端用命令gsutil ls [你的GCS URI]测试,如果这个命令返回文件不存在,那就是路径问题无疑了。

4. 修正代码里的小问题

看你的代码第一行time(gcs_uri),这里应该是写错了吧?如果要使用time模块,得先import time,比如用来记录耗时的话应该是start_time = time.time()之类的写法。这个虽然不是导致当前报错的直接原因,但可能会引发其他问题,建议修正。

修正后的示例代码

def transcribe_gcs(gcs_uri):
    """Asynchronously transcribes the audio file specified by the gcs_uri."""
    import time
    from google.cloud import speech
    from google.cloud.speech import enums
    from google.cloud.speech import types

    # 先校验GCS URI格式
    if not gcs_uri.startswith("gs://"):
        raise ValueError("GCS URI必须以gs://开头,例如:gs://bucket-name/audio-file.flac")

    client = speech.SpeechClient()

    audio = types.RecognitionAudio(uri=gcs_uri)
    config = types.RecognitionConfig(
        encoding=enums.RecognitionConfig.AudioEncoding.FLAC,
        sample_rate_hertz=16000,
        language_code='en-US')

    operation = client.long_running_recognize(config, audio)

    print('Waiting for operation to complete...')
    response = operation.result(timeout=90)

    # 遍历输出转写结果
    for result in response.results:
        print(u'Transcript: {}'.format(result.alternatives[0].transcript))
        print('Confidence: {}'.format(result.alternatives[0].confidence))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 07:11:37