-
Notifications
You must be signed in to change notification settings - Fork 1
Installation
This page describes TOGA2 installation process and potential caveats. Note that from-the-box installation process is subject to changes.
build directive first checks for availability of the following commands in $PATH:
- awk
- cargo
- gcc
These utilities are necessary for further TOGA2 installation. If any of those are missing, the installation halts, prompting the user to install them manually.
By default, TOGA2 uses Nextflow for parallel process management. During installation, nextflow availability in $PATH will be tested alongside with Nextflow-supported parallel job executors. In the absence of any supported manager, TOGA2 can still be run with local Nextflow executor (default mode), meaning executing parallel jobs on local CPUs.
Alternatively, TOGA2 supports Parasol as a wrapper over LSF/Slurm (Note: Currently installation code does not check for LSF/Slurm availability if para was found in $PATH). If neither Nextflow nor Parasol are available, the installation halts, prompting the user to instal either of the managers and the respective job executors.
The full list of required Python packages is listed in requirements.txt.
Note
TOGA2 was originally tested with Numpy v2, hence restricting the Numpy-reliant packages to newer versions. The listed versions might be further downgraded once the code is tested with Numpy v1 releases.
The required packages are installed globally. If you do not have permissions to modify the public Python environment or updating versions for existing packages is undesirable, consider creating a dedicated virtual environment:
python3 -m venv toga2
source toga2/bin/activate
make
Note, however, that availability of Cargo, gcc, Nextflow/Para, and cluster job managers within the created environment is left to user’s responsibility. If any of these essential programs is installed on your machine but is not available in the created environment, please modify your $PATH accordingly.
The final directive in the Makefile trains the models for TOGA2 projection classifier. The resulting models are dumped in the models/ folder via Python’s joblib package.
Note
Stored models are tied to xgboost and joblib versions they were trained with. If you want to run TOGA2 with environment different from the one TOGA2 was installed with, consider running src/python/train_models.py.
Mind that by default running the train script overrides the models currently stored at models/
Warning
TOGA2 is currently not available in conda. Please follow the TOGA2 repository for updates.