Hi SteadySeagull18 ! The docs are correct.
How do you run the pipeline controller? Is it remotely, locally, locally with an agent? If you run os.path.exists(model.url[len("file://"):])
does it return True
?
Can you provide a minimal example that could help us reproduce the issue?
Thank you
I'm wondering if I've run into a bug, or am not understanding something correctly. In a pre_execute_callback
in a pipeline step, I am calling model.get_local_copy()
on a clearml.Model
. The docs say this:
Retrieve a valid link to the model file(s). If the model URL is a file system link, it will be returned directly. If the model URL is points to a remote location (http/s3/gs etc.), it will download the file(s) and return the temporary location of the downloaded model.
In this case, the model is a file system link. Printing out model.url
right before the call to model.get_local_copy()
is giving me file:///home/c.miles/<rest_of_path/model.tckpt
(and indeed that file exists). However, the call to model.get_local_copy(raise_on_error=True)
returns a ValueError:Could not retrieve a local copy of model weights <hash>, failed downloading file:///home/c.miles/<rest_of_path>/model.tckpt
But, this is just a file system link, why is it not being returned directly?