Python ml引擎预测:如何使googleapiclient.discovery.build持久化?

问题描述 投票:3回答:1

我需要根据在Cloud ml引擎中部署的模型进行在线预测。我在python中的代码类似于在文档(https://cloud.google.com/ml-engine/docs/tensorflow/online-predict)中找到的代码:

service = googleapiclient.discovery.build('ml', 'v1')
name = 'projects/{}/models/{}'.format(project, model)

if version is not None:
    name += '/versions/{}'.format(version)

response = service.projects().predict(
    name=name,
    body={'instances': instances}
    ).execute()

但是,我从脚本外部接收到“实例”数据,我想知道是否有一种方法可以在不使每个“ service = googleapiclient.discovery.build('ml','v1')”各不相同的情况下运行此脚本。请求之前的时间,因为这需要时间。pd:这是我关于gcp的第一个项目。谢谢。

python prediction google-api-python-client google-cloud-ml
1个回答
0
投票
然后,您可以执行以下操作:

def call_ai_platform(): response = AI_SERVICE.projects().predict(name=name, body={'instances': instances}).execute()

奖金!如果您对googleapiclient.discovery调用中的MemoryCache类感到好奇,那是从另一个SO借来的:

class MemoryCache(): """A workaround for cache warnings from Google. Check out: https://github.com/googleapis/google-api-python-client/issues/325#issuecomment-274349841 """ _CACHE = {} def get(self, url): return MemoryCache._CACHE.get(url) def set(self, url, content): MemoryCache._CACHE[url] = content

© www.soinside.com 2019 - 2024. All rights reserved.