IDEA-Research / detrex

detrex is a research platform for DETR-based object detection, segmentation, pose estimation and other visual recognition tasks.
https://detrex.readthedocs.io/en/latest/
Apache License 2.0
2.01k stars 209 forks source link

hydra.errors.OverrideParseException: LexerNoViableAltException: --num-gpus #183

Closed ma3252788 closed 1 year ago

ma3252788 commented 1 year ago

When I use "--num-gpus 2", I got this error:

python tools/train_net.py --config-file projects/dino/configs/dino_swin_large_384_4scale_36ep.py train.init_checkpoint="./dino_swin_large_384_4scale_36ep.pth" --num-gpus 2
Traceback (most recent call last):
  File "tools/train_net.py", line 229, in <module>
    launch(
  File "/home/ubuntu/detrex/detectron2/detectron2/engine/launch.py", line 82, in launch
    main_func(*args)
  File "tools/train_net.py", line 214, in main
    cfg = LazyConfig.apply_overrides(cfg, args.opts)
  File "/home/ubuntu/detrex/detectron2/detectron2/config/lazy.py", line 336, in apply_overrides
    overrides = parser.parse_overrides(overrides)
  File "/home/ubuntu/anaconda3/envs/detrex/lib/python3.8/site-packages/hydra/core/override_parser/overrides_parser.py", line 96, in parse_overrides
    raise OverrideParseException(
hydra.errors.OverrideParseException: LexerNoViableAltException: --num-gpus
                           ^
See https://hydra.cc/docs/next/advanced/override_grammar/basic for details

Could you tell how to solve it? thanks!

HaoZhang534 commented 1 year ago

You should put "--num-gpus 2" before "train.init_checkpoint=./dino_swin_large_384_4scale_36ep.pth".

ma3252788 commented 1 year ago

You should put "--num-gpus 2" before "train.init_checkpoint=./dino_swin_large_384_4scale_36ep.pth".

Thank you!

RahulChandra2508 commented 1 year ago

when i use python mlops.py ${hydra_options} in MLproject file i get the below error

$ mlflow run . 2023/04/21 01:34:18 INFO mlflow.utils.conda: Conda environment mlflow-b8f95c0f4d3148333f81d807c125eb153363b2ba already exists. 2023/04/21 01:34:18 INFO mlflow.projects.utils: === Created directory C:\Users\rahul\AppData\Local\Temp\tmpula5wv8f for downloading remote URIs passed to arguments of type 'path' === 2023/04/21 01:34:18 INFO mlflow.projects.backend.local: === Running command 'conda activate mlflow-b8f95c0f4d3148333f81d807c125eb153363b2ba && python mlops.py $echo %""%' in run with ID 'b31fff421fbd4c3487dce5e3c38328a9' === Error parsing override '$echo' missing EQUAL at '' See https://hydra.cc/docs/1.2/advanced/override_grammar/basic for details

Set the environment variable HYDRA_FULL_ERROR=1 for a complete stack trace. 2023/04/21 01:34:19 ERROR mlflow.cli: === Run (ID 'b31fff421fbd4c3487dce5e3c38328a9') failed === (udacity_env) rahul@LAPTOP-CULO2TCU MINGW64 /d/Learning/Udacity/Assignments/cd0581-building-a-reproducible-model-workflow-exercises/mlops_understanding (main) $ mlflow run . 2023/04/21 01:34:40 INFO mlflow.utils.conda: Conda environment mlflow-b8f95c0f4d3148333f81d807c125eb153363b2ba already exists. 2023/04/21 01:34:40 INFO mlflow.projects.utils: === Created directory C:\Users\rahul\AppData\Local\Temp\tmptrhasct2 for downloading remote URIs passed to arguments of type 'path' === 2023/04/21 01:34:40 INFO mlflow.projects.backend.local: === Running command 'conda activate mlflow-b8f95c0f4d3148333f81d807c125eb153363b2ba && python mlops.py %""%' in run with ID '32f8ebec348f4a7087b367db9530393b' === LexerNoViableAltException: %""% ^ See https://hydra.cc/docs/1.2/advanced/override_grammar/basic for details

Set the environment variable HYDRA_FULL_ERROR=1 for a complete stack trace. 2023/04/21 01:34:41 ERROR mlflow.cli: === Run (ID '32f8ebec348f4a7087b367db9530393b') failed === (udacity_env) rahul@LAPTOP-CULO2TCU MINGW64 /d/Learning/Udacity/Assignments/cd0581-building-a-reproducible-model-workflow-exercises/mlopsunderstanding (main) $ mlflow run . 2023/04/21 01:36:31 INFO mlflow.utils.conda: Conda environment mlflow-b8f95c0f4d3148333f81d807c125eb153363b2ba already exists. 2023/04/21 01:36:31 INFO mlflow.projects.utils: === Created directory C:\Users\rahul\AppData\Local\Temp\tmpaswh3v4 for downloading remote URIs passed to arguments of type 'path' === Traceback (most recent call last): File "C:\Users\rahul\anaconda3\envs\udacity_env\lib\runpy.py", line 196, in _run_module_as_main return _run_code(code, main_globals, None, File "C:\Users\rahul\anaconda3\envs\udacity_env\lib\runpy.py", line 86, in _run_code exec(code, run_globals) File "C:\Users\rahul\anaconda3\envs\udacity_env\Scripts\mlflow.exe__main__.py", line 7, in File "C:\Users\rahul\anaconda3\envs\udacity_env\lib\site-packages\click\core.py", line 1130, in call return self.main(args, kwargs) File "C:\Users\rahul\anaconda3\envs\udacity_env\lib\site-packages\click\core.py", line 1055, in main rv = self.invoke(ctx) File "C:\Users\rahul\anaconda3\envs\udacity_env\lib\site-packages\click\core.py", line 1657, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "C:\Users\rahul\anaconda3\envs\udacity_env\lib\site-packages\click\core.py", line 1404, in invoke return ctx.invoke(self.callback, ctx.params) File "C:\Users\rahul\anaconda3\envs\udacity_env\lib\site-packages\click\core.py", line 760, in invoke return __callback(args, kwargs) File "C:\Users\rahul\anaconda3\envs\udacity_env\lib\site-packages\mlflow\cli.py", line 201, in run projects.run( File "C:\Users\rahul\anaconda3\envs\udacity_env\lib\site-packages\mlflow\projects__init.py", line 338, in run submitted_run_obj = _run( File "C:\Users\rahul\anaconda3\envs\udacity_env\lib\site-packages\mlflow\projects\init__.py", line 105, in _run submitted_run = backend.run( File "C:\Users\rahul\anaconda3\envs\udacity_env\lib\site-packages\mlflow\projects\backend\local.py", line 181, in run command_args += get_entry_point_command(project, entry_point, params, storage_dir) File "C:\Users\rahul\anaconda3\envs\udacity_env\lib\site-packages\mlflow\projects\utils.py", line 331, in get_entry_point_command project.get_entry_point(entry_point).compute_command(parameters, storage_dir_for_run) File "C:\Users\rahul\anaconda3\envs\udacity_env\lib\site-packages\mlflow\projects_project_spec.py", line 234, in compute_command command_with_params = self.command.format(params) KeyError: '"hydra_options"' (udacity_env) rahul@LAPTOP-CULO2TCU MINGW64 /d/Learning/Udacity/Assignments/cd0581-building-a-reproducible-model-workflow-exercises/mlops_understanding (main) $ mlflow run . 2023/04/21 01:38:56 INFO mlflow.utils.conda: Conda environment mlflow-b8f95c0f4d3148333f81d807c125eb153363b2ba already exists. 2023/04/21 01:38:56 INFO mlflow.projects.utils: === Created directory C:\Users\rahul\AppData\Local\Temp\tmp7sxz96hp for downloading remote URIs passed to arguments of type 'path' === 2023/04/21 01:38:56 INFO mlflow.projects.backend.local: === Running command 'conda activate mlflow-b8f95c0f4d3148333f81d807c125eb153363b2ba && python mlops.py $""' in run with ID '7e31ef8c2c564bc897578c048d46c928' === LexerNoViableAltException: $"" ^ See https://hydra.cc/docs/1.2/advanced/override_grammar/basic for details

Set the environment variable HYDRA_FULL_ERROR=1 for a complete stack trace. 2023/04/21 01:38:56 ERROR mlflow.cli: === Run (ID '7e31ef8c2c564bc897578c048d46c928') failed === (udacity_env)