This project sets up a reproducible Conda environment for running unsupervised learning experiments using:
- MOMENT (time-series foundation model)
- 3W Toolkit (Petrobras 3W dataset utilities)
The setup is intentionally strict: Conda manages all dependencies, while pip is used only to install project code (without pulling dependencies).
Before starting, make sure you have:
- Conda installed (Miniconda or Anaconda)
- Git installed
- A Linux or macOS environment (tested on Linux)
You can verify Conda with:
conda --versionThe 3W repository must be cloned one directory above this project.
projects/
├── 3W/
│ └── (ThreeWToolkit source code)
│
├── 3W-unsupervised-learning/
│ ├── environment.yml
│ ├── setup.sh
│ └── README.md
cd projects
git clone --branch v.1.60.0 --single-branch https://github.com/petrobras/3W.git
git clone <THIS_REPOSITORY_URL>The entire setup is automated via setup.sh.
- Creates the Conda environment from
environment.yml - Activates the environment
- Installs project code (
3Wandmomentfm) usingpip --no-deps
From inside 3W-unsupervised-learning:
bash setup.shThis will create and configure the Conda environment named:
3W-unsupervised
After installation:
conda activate 3W-unsupervisedYou can quickly test that everything is working:
python - << 'EOF'
import torch
import momentfm
import ThreeWToolkit
print("Setup successful")
print("Torch version:", torch.__version__)
print("CUDA available:", torch.cuda.is_available())
EOF- Do not install project dependencies with pip
- All numerical, CUDA, and ML dependencies are managed by Conda
- Pip is used strictly to install source code
- This avoids dependency conflicts (e.g., NumPy, CUDA, PyTorch)
If you encounter ModuleNotFoundError:
- Add the missing package to
environment.yml - Update the environment using:
conda env update -f environment.yml