google / model_search

Apache License 2.0
3.26k stars 462 forks source link

absl.flags._exceptions.UnparsedFlagAccessError: Trying to access flag --mlmd_default_sqllite_filename before flags were parsed #25

Closed lsiem closed 3 years ago

lsiem commented 3 years ago

I get the error when I run the code snippet from the project page:

Traceback (most recent call last): File "btc.py", line 14, in <module> trainer.try_models( File "/home/lasse/Development/projects/btcpred/model_search/model_search/single_trainer.py", line 56, in try_models phoenix_instance = phoenix.Phoenix( File "/home/lasse/Development/projects/btcpred/model_search/model_search/phoenix.py", line 239, in __init__ self._metadata = ml_metadata_db.MLMetaData(phoenix_spec, study_name, File "/home/lasse/Development/projects/btcpred/model_search/model_search/metadata/ml_metadata_db.py", line 84, in __init__ if FLAGS.mlmd_default_sqllite_filename: File "/home/lasse/Development/projects/btcpred/.env/lib/python3.8/site-packages/absl/flags/_flagvalues.py", line 498, in __getattr__ raise _exceptions.UnparsedFlagAccessError(error_message) absl.flags._exceptions.UnparsedFlagAccessError: Trying to access flag --mlmd_default_sqllite_filename before flags were parsed.

hadehuang commented 3 years ago

Please refer this issue #8

KevinRyu commented 3 years ago

Hello,

I also have similar problem. I read issue #8 but I don't understand what should I do.

In my case, if self.dict['__flags_parsed'] or fl[name].present: (in _flagvalues.py) --> Condition shows False & 0 in order.

FLAGS = flags.FLAGS in /model_search/metadata/ml_metadata_db.py Is this code line for parsing? What can I do before this line?

Would someone give me some hints?

KevinRyu commented 3 years ago

Hello,

I also have similar problem. I read issue #8 but I don't understand what should I do.

In my case, if self.dict['__flags_parsed'] or fl[name].present: (in _flagvalues.py) --> Condition shows False & 0 in order.

FLAGS = flags.FLAGS in /model_search/metadata/ml_metadata_db.py Is this code line for parsing? What can I do before this line?

Would someone give me some hints?

I solved this error by adding import sys and argv = FLAGS(sys.argv) in ml_metadata_db.py

lsiem commented 3 years ago

Hello,

I also have similar problem. I read issue #8 but I don't understand what should I do.

In my case, if self.dict['__flags_parsed'] or fl[name].present: (in _flagvalues.py) --> Condition shows False & 0 in order.

FLAGS = flags.FLAGS in /model_search/metadata/ml_metadata_db.py Is this code line for parsing? What can I do before this line?

Would someone give me some hints?

I was able to fix the problem by taking the commit from https://github.com/google/model_search/pull/8#issue-577118576

davidxiaozhi commented 3 years ago

from absl import app from absl import flags from absl import logging

FLAGS = flags.FLAGS

you must import it in your python script ,use app.run(main)

hanna-maz commented 3 years ago

This should be fixed in the new version from today.