ML引擎Python版本问题

ML引擎Python版本问题,python,virtualenv,google-cloud-ml,Python,Virtualenv,Google Cloud Ml,在进行一次测试时,我遇到了一个python问题。尝试使用命令运行培训师预处理脚本 python trainer/preprocess.py \ --input_dict "$DICT_FILE" \ --input_path "gs://cloud-ml-data/img/flower_photos/eval_set.csv" \ --output_path "${GCS_PATH}/preproc/eval" \ --cloud 我得到以下错误 Traceba

在进行一次测试时,我遇到了一个python问题。尝试使用命令运行培训师预处理脚本

python trainer/preprocess.py \
    --input_dict "$DICT_FILE" \
    --input_path "gs://cloud-ml-data/img/flower_photos/eval_set.csv" \
    --output_path "${GCS_PATH}/preproc/eval" \
    --cloud
我得到以下错误

Traceback (most recent call last):
  File "trainer/preprocess.py", line 71, in <module>
    import apache_beam as beam
  File "/Users/some_guy/Documents/Programs/ML/cmle-env/lib/python3.6/site-packages/apache_beam/__init__.py", line 72, in <module>
    'It is not supported on Python [%s].' % sys.version_info)
TypeError: not all arguments converted during string formatting
这可能是错误的,因为我的
cmle-env
被激活了(它是终端提示符的前缀),所以我认为
cmle-env
应该知道要使用的python版本,这样我就不会遇到依赖性问题。我一字不差地按照教程的说明进行操作,并且在之前的工作中(在同一个
gcloud
项目中)获得了一份工作经验

我对
gcloud
virtualenv
非常陌生,所以我可能错过了一些东西(例如,
python-V
返回了
anaconda 3.6
,它在我的主机上,我认为与激活的
cmle env
没有任何关系)

TLDR:如何让我的
cmle env
使用正确的python版本,以便运行flower tutorial trainer?我真的想继续——除了python问题之外,这些都是非常棒的


这是在MacOS High Sierra 10.13.3上运行的,这是Apache Beam中的一个bug,一年前已修复:

请确保在使用
--python
-p
选项创建virtualenv时指定所需的python版本,如下所示:

$ virtualenv -p /path/to/python2.7 cmle-env

条件命中是问题所在,而不是引发的消息。我更新了ApacheBeam,只需从修复程序中获取返回的错误消息。
$ virtualenv -p /path/to/python2.7 cmle-env