Я пытаюсь создать приложение, используя Google Cloud Platform AutoML
, используя Python
. Мой общий поток кода выглядит так:
Взаимодействие с пользователем -> данные, отправленные в PubSub -> обратный вызов, вызывает мой AutoML -> Результат
Фрагмент, который вызывает pubsub
, выглядит следующим образом:
blob=blob+bytes(doc_type,'utf-8')
publisher.publish(topic,blob)
future=subscriber.subscribe(subscription,callback=callback)
#flash("The object is "+future,'info')
try:
future.result()
except Exception as ex:
subscriber.close()
В PubSub
обратный вызов:
def callback(message):
new_message=message.data
display_name,score=predict_value(new_message,"modelID","projectid",'us-central1')
message.ack()
А мой predict_value
получает model_id
, project id
и вычисляет region
и выполняет прогноз.
Когда я напрямую звоню predict_value
без использования PubSub
, он работает нормально. Если мне это нравится, я получаю сообщение об ошибке ниже:
google.api_core.exceptions.PermissionDenied: 403 Permission 'automl.models.predict' denied on resource 'projects/projectID/locations/us-central1/models/' (or it may not exist).
Пожалуйста, помогите мне решить проблему