как игнорировать флаг командной строки Тензор неизвестный - PullRequest
0 голосов
/ 09 июля 2019

Я пытаюсь написать общий скрипт для запуска приложений tenorflow, таких как:



./laucher.py tensorflow_main.py --train_dir xxx --log_dir xxx --numWorker xxx --numPs xxx ...

Тогда tenorsflow_main.py может выбрать значения параметров по необходимости.

Но если использовать tf.app.flags.FLAGS для получения параметров, он получит исключение UnrecognizedFlagError, если я не получу все параметры:


Traceback (most recent call last):
  File "./main.py", line 19, in 
    log_dir = os.path.join(FLAGS.train_dir, 'log')
  File "/ma1gpu07_nfsv4/zhuangxy/anaconda3/envs/dlipy2/lib/python2.7/site-packages/tensorflow/python/platform/flags.py", line 84, in __getattr__
    wrapped(_sys.argv)
  File "/ma1gpu07_nfsv4/zhuangxy/anaconda3/envs/dlipy2/lib/python2.7/site-packages/absl/flags/_flagvalues.py", line 633, in __call__
    name, value, suggestions=suggestions)
absl.flags._exceptions.UnrecognizedFlagError: Unknown command line flag 'worker_hosts'

в этой задаче Как тензор потока игнорирует неопределенные флаги

Томас предложил использовать файл conf, который мог бы быть решением, но я все еще хочу знать, есть ли способ, которым я мог бы передать все параметры и получить только то, что есть в приложении tenorflow без этого исключения?

Большое спасибо!

...