【问题标题】:Why does Google AutoML Sample Python Code Not Run?为什么 Google AutoML 示例 Python 代码无法运行?
【发布时间】:2019-10-18 23:42:49
【问题描述】:

示例 Google AutoML 预测 Python 代码会导致执行错误。推荐执行是 "python predict.py YOUR_LOCAL_IMAGE_FILE YOUR_PROJECT_ID YOUR_MODEL_ID" 错误是:

文件“predict.py”,第 25 行 打印 get_prediction(内容,project_id,model_id) ^ SyntaxError: 无效语法

(提前致谢)

谷歌示例代码

import sys

from google.cloud import automl_v1beta1
from google.cloud.automl_v1beta1.proto import service_pb2


def get_prediction(content, project_id, model_id):
  prediction_client = automl_v1beta1.PredictionServiceClient()

  name = 'projects/{}/locations/us-central1/models/{}'.format(project_id, model_id)
  payload = {'image': {'image_bytes': content }}
  params = {}
  request = prediction_client.predict(name, payload, params)
  return request  # waits till request is returned

if __name__ == '__main__':
  file_path = sys.argv[1]
  project_id = sys.argv[2]
  model_id = sys.argv[3]

  with open(file_path, 'rb') as ff:
    content = ff.read()

  print get_prediction(content, project_id,  model_id)

【问题讨论】:

    标签: google-cloud-automl


    【解决方案1】:

    代码的最后一行print... 不应在行缩进中。

    import sys
    
    from google.cloud import automl_v1beta1
    from google.cloud.automl_v1beta1.proto import service_pb2
    
    
    def get_prediction(content, project_id, model_id):
      prediction_client = automl_v1beta1.PredictionServiceClient()
    
      name = 'projects/{}/locations/us-central1/models/{}'.format(project_id, model_id)
      payload = {'image': {'image_bytes': content }}
      params = {}
      request = prediction_client.predict(name, payload, params)
      return request  # waits till request is returned
    
    if __name__ == '__main__':
      file_path = sys.argv[1]
      project_id = sys.argv[2]
      model_id = sys.argv[3]
    
      with open(file_path, 'rb') as ff:
        content = ff.read()
    
    print get_prediction(content, project_id,  model_id)
    

    【讨论】:

      【解决方案2】:

      打印 (get_prediction(content, project_id, model_id))

      from google.cloud import automl_v1beta1
      from google.cloud.automl_v1beta1.proto import service_pb2
      
      
      # 'content' is base-64-encoded image data.
      def get_prediction(content, project_id, model_id):
          prediction_client = automl_v1beta1.PredictionServiceClient()
      
          name = 'projects/{}/locations/us-central1/models/{}'.format(project_id, model_id)
          payload = {'image': {'image_bytes': content }}
          params = {}
          request = prediction_client.predict(name, payload, params)
          return request  # waits till request is returned
      
      if __name__ == '__main__':
          file_path = sys.argv[1]
          project_id = sys.argv[2]
          model_id = sys.argv[3]
      
      with open(file_path, 'rb') as ff:
          content = ff.read()
      
      print (get_prediction(content, project_id, model_id))
      

      【讨论】:

      • 欢迎来到 Stack Overflow _ 当您发布的代码有解释时,答案会更好 _ 请花点时间访问 SO 帮助中心,特别是“回答”部分 >>> stackoverflow.com/help/how-to-answer
      猜你喜欢
      • 1970-01-01
      • 2017-01-26
      • 2020-04-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-09
      • 1970-01-01
      相关资源
      最近更新 更多