我想将Colab连接到付费TPU(从免费TPU升级)。我使用以下指南创建了一个JSON key :https://cloud.google.com/docs/authentication/production#auth-cloud-explicit-python,然后将其上传到Colab。我可以连接到我的存储设备,但不能连接到TPU:

%tensorflow_version 2.x
import tensorflow as tf
import os
os.environ['GOOGLE_APPLICATION_CREDENTIALS'] = './gcp-permissions.json'

# Authenticated API request - works.
storage_client = storage.Client.from_service_account_json(
    'gcp-permissions.json')
print(list(storage_client.list_buckets())

#Accessing the TPU - does not work. Request times out.
cluster_resolver = tf.distribute.cluster_resolver.TPUClusterResolver(
    tpu='My-TPU-Name',
    zone='us-central1-a',
    project='My-Project-Name'
)

我还尝试了仅使用tpu名称和'credentials = gcp-permissions.json'的TPUClusterResolver调用-相同的结果。我仔细检查了我的TPU是否已在GCP控制台中启动并运行。这不是抢先的。我想念什么?

谢谢!

最佳答案

因此,您似乎正在尝试通过Colab笔记本从自己的Google Cloud项目连接到付费TPU,对吗?由于Colab运行时由GCE VM(与您自己的My-project-name不同的项目)支持,因此无法正常工作。因此,相反,您还想在同一项目中创建GCE VM,并从该VM运行您的训练脚本。查看本教程:https://cloud.google.com/tpu/docs/quickstart

关于google-cloud-platform - 将Colab连接到付费TPU,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59796410/

10-12 23:16