train_prior broken
Hey,
I love the project, but I'm not thrilled with the limited to non-existent documentation. However, I understand this is an early stage, and I've managed to get most things working without any issues so far.
The following command was used for all prior initializations:
rave train_prior --model /mnt/ai-models/flz_mono_95639eacc0 --db_path /mnt/d/dataset_mono --out_path /mnt/ai-models/flz_mono_95639eacc0_prior --name flz_mono_prior
Initially, I was running the version provided by pip, acquired using: pip install acids-rave. When running the train_prior command, the configuration was missing.
Traceback (most recent call last):
File "/root/miniconda3/envs/RAVE/bin/rave", line 8, in <module>
sys.exit(main())
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/scripts/main_cli.py", line 34, in main
app.run(train_prior.main)
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/absl/app.py", line 308, in run
_run_main(main, args)
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/absl/app.py", line 254, in _run_main
sys.exit(main(argv))
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/scripts/train_prior.py", line 99, in main
gin.parse_config_files_and_bindings(
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/config.py", line 2497, in parse_config_files_and_bindings
includes_and_imports = parse_config_file(config_file, skip_unknown)
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/config.py", line 2457, in parse_config_file
raise IOError(err_str.format(config_file, prefixes))
OSError: Unable to open file: prior/prior_v1.gin. Searched config paths: ['', PosixPath('/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/rave'), PosixPath('/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/rave/configs'), PosixPath('/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/rave/configs/augmentations')].
Since I could see the file in the repository, I decided to uninstall acids-rave and instead run:
pip install -e git+https://github.com/acids-ircam/[email protected]#egg=acids-rave
After a quick installation, I ran the command again, which resulted in:
Traceback (most recent call last):
File "/root/miniconda3/envs/RAVE/bin/rave", line 33, in <module>
sys.exit(load_entry_point('acids-rave', 'console_scripts', 'rave')())
File "/root/src/acids-rave/scripts/main_cli.py", line 34, in main
app.run(train_prior.main)
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/absl/app.py", line 308, in run
_run_main(main, args)
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/absl/app.py", line 254, in _run_main
sys.exit(main(argv))
File "/root/src/acids-rave/scripts/train_prior.py", line 99, in main
gin.parse_config_files_and_bindings(
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/config.py", line 2497, in parse_config_files_and_bindings
includes_and_imports = parse_config_file(config_file, skip_unknown)
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/config.py", line 2450, in parse_config_file
includes, imports = parse_config(f, skip_unknown=skip_unknown)
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/config.py", line 2322, in parse_config
for statement in parser:
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/config_parser.py", line 211, in __next__
statement = self.parse_statement()
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/config_parser.py", line 244, in parse_statement
statement, bindings = self._parse_binding_block(
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/config_parser.py", line 465, in _parse_binding_block
value = self.parse_value()
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/config_parser.py", line 280, in parse_value
success, value = parser()
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/config_parser.py", line 558, in _maybe_parse_configurable_reference
reference = self._delegate.configurable_reference(scoped_name, evaluate)
File "/root/miniconda3/envs/RAVE/lib/python3.9/contextlib.py", line 137, in __exit__
self.gen.throw(typ, value, traceback)
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/utils.py", line 60, in try_with_location
augment_exception_message_and_reraise(exception, _format_location(location))
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/utils.py", line 41, in augment_exception_message_and_reraise
raise proxy.with_traceback(exception.__traceback__) from None
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/utils.py", line 56, in try_with_location
yield
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/config_parser.py", line 558, in _maybe_parse_configurable_reference
reference = self._delegate.configurable_reference(scoped_name, evaluate)
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/config.py", line 844, in configurable_reference
return ConfigurableReference(scoped_selector, evaluate)
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/config.py", line 691, in __init__
self.initialize()
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/config.py", line 697, in initialize
_raise_unknown_reference_error(self)
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/config.py", line 644, in _raise_unknown_reference_error
raise ValueError(err_str.format(ref.selector, maybe_parens, additional_msg))
ValueError: No configurable matching reference '@get_model_sr()'.
In file "/root/src/acids-rave/rave/configs/prior/prior_v1.gin", line 8
sr=@get_model_sr()
Since I couldn't find any other definitions for @get_model_sr(), I edited the /root/src/acids-rave/rave/configs/prior/prior_v1.gin file directly and set sr=44100.
Running the command again resulted in:
Traceback (most recent call last):
File "/root/miniconda3/envs/RAVE/bin/rave", line 33, in <module>
sys.exit(load_entry_point('acids-rave', 'console_scripts', 'rave')())
File "/root/src/acids-rave/scripts/main_cli.py", line 34, in main
app.run(train_prior.main)
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/absl/app.py", line 308, in run
_run_main(main, args)
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/absl/app.py", line 254, in _run_main
sys.exit(main(argv))
File "/root/src/acids-rave/scripts/train_prior.py", line 106, in main
prior = rave.prior.VariationalPrior(pretrained_vae=pretrained)
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/config.py", line 1605, in gin_wrapper
utils.augment_exception_message_and_reraise(e, err_str)
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/utils.py", line 41, in augment_exception_message_and_reraise
raise proxy.with_traceback(exception.__traceback__) from None
File "/root/miniconda3/envs/RAVE/lib/python3.9/site-packages/gin/config.py", line 1582, in gin_wrapper
return fn(*new_args, **new_kwargs)
File "/root/src/acids-rave/rave/prior/model.py", line 36, in __init__
raise RuntimeError('please init Prior with either fidelity or latent_size keywords')
Since there was no option for this, I edited /root/src/acids-rave/rave/prior/model.py and set a default value of 0.95 for fidelity.
Quick re-run for anyone having the same issue:
pip uninstall acids-rave
pip install -e git+https://github.com/acids-ircam/[email protected]#egg=acids-rave
open acids-rave/rave/configs/prior/prior_v1.gin and replace @get_model_sr() with 44100
open acids-rave/rave/prior/model.py and set a default value for fidelity for example 0.95
The training can now be started.