Description:
Currently, Objaverse uses a private variable _VERSIONED_PATH to determine where data is stored.
To override this behavior, users need to monkeypatch:
import objaverse as oxl
oxl._VERSIONED_PATH = "./data"
This approach has a few downsides:
- Relies on a private/internal variable
- Not stable across versions
- Not discoverable for users
- Can break unexpectedly if internal implementation changes
Proposed solution:
Expose a public way to configure the data directory, such as:
oxl.set_data_dir("./data")
or alternatively allow passing a download_dir parameter in relevant APIs.
Optionally, support an environment variable like:
OBJAVERSE_DATA_DIR=./data
Benefits:
- Cleaner and safer usage
- Avoids reliance on internal implementation
- Improves usability for large-scale dataset workflows
- Backward compatibility can be maintained by keeping the current default behavior when no directory is specified.
Description:
Currently, Objaverse uses a private variable _VERSIONED_PATH to determine where data is stored.
To override this behavior, users need to monkeypatch:
This approach has a few downsides:
Proposed solution:
Expose a public way to configure the data directory, such as:
or alternatively allow passing a download_dir parameter in relevant APIs.
Optionally, support an environment variable like:
Benefits: