显然,没有一种简单的方法可以从cloud-ml
删除模型,而不是使用UI
或使用Python API
。是否有人知道从cloud-ml
删除模型及其所有版本的快速方法?
答案 0 :(得分:1)
我编写了一个python函数,用于从cloud-ml
及其所有版本中删除模型。它凌乱,但有效。
from googleapiclient import discovery
from googleapiclient import errors
import time
def remove_model_cloud_ml (
model_name,
gc_project_id
):
project_id = 'projects/{}'.format(gc_project_id)
model_id = '{}/models/{}'.format(project_id, model_name)
ml = discovery.build('ml','v1')
request = ml.projects().models().versions().list(parent=model_id)
response = request.execute()
# check if model has versions
if 'versions' in response.keys():
versions = response['versions']
while len(versions) >= 1:
for version in response['versions']:
request = ml.projects().models().versions().delete(name = version['name'])
try:
request.execute()
except errors.HttpError as err:
reason = err._get_reason()
if 'Cannot delete the default version' in reason:
next
request = ml.projects().models().versions().list(parent=model_id)
response = request.execute()
time.sleep(1)
try:
versions = response['versions']
except:
break
# remove the model
request = ml.projects().models().delete(name=model_id)
# make the call to remove
while True:
try:
response = request.execute()
# Any additional code on success goes here (logging, etc.)
except errors.HttpError as err:
# Something went wrong, print out some information.
print('There was an error deleting the model.' +
' Check the details:')
reason = err._get_reason()
print(reason)
# Wait for 1000 milliseconds.
if 'A model with versions cannot be deleted' in reason:
# this probably means that the last delete version call
# has not yet completed, so wait and retry
time.sleep(1)
continue
break
答案 1 :(得分:1)
要删除模型,您需要先删除版本[1],然后删除模型[2]。为此,您需要遵循以下步骤:
您可以通过使用UI,命令行或API来实现。所有需要的信息和命令都在我提供的链接上。
答案 2 :(得分:1)
以上建议的方法是删除模型的正确方法,即先删除版本(非默认,然后是默认),然后删除模型本身。我们知道这可能很麻烦,并且正在努力使我们的用户更容易使用此界面。一种方法是拥有一些基本上以递归方式删除版本和模型的东西。还有其他更合适的方法可以做到吗?
答案 3 :(得分:0)
您可以在云Shell中执行一个命令:
gcloud ai-platform versions list --model=NAMEOFYOURMODEL|xargs -n 1 gcloud ai-platform versions delete --model=NAMEOFYOURMODEL--quiet