Skip to main content

Visual Learning Lab utility files and pipelines

Project description

vllpy

This is a package with common utility functions, files and pipelines for the Visual Learning Lab. This package uses python>=3.11.

It is recommended you create a conda environment to start using this package but this step is optional. To do so, run the commands below:

conda create -n vislearnlabpy python=3.12
conda activate vislearnlabpy

Then, activate the environment and simply install vislearnlabpy and CLIP by running the commands below in your terminal.

pip install --upgrade vislearnlabpy
pip install git+https://github.com/openai/CLIP.git

You may also have to install PyTorch manually, ensuring that you have the right version but the right version may also be installed by default with CLIP. To install the right version of PyTorch on the Tversky server, run:

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

Here is as an example of how to generate a CSV file with embeddings from a list of images in a directory. You can also use this to generate npy files and doc files by changing the output type in the command below, and generate the embeddings from a CSV file instead by using input_file instead of input_dir

python embedding_generator.py --input_dir examples/input --output_path examples/output --output_type csv --overwrite --model_name clip

Here is an example of how to generate npy files for embeddings from a list of images within subdirectories in a folder on Tversky using the dinov3-babyview model (other available models include dinov3, dinov2, dino_say_vitb14, dino_imagenet100_vitb14 and clip). For certain models, you will need a HuggingFace account and a HuggingFace access token. Set HF_TOKEN=xxxx in a .env file in the main directory of your project to be able to access restricted models. Also note that by default, npy files are generated in parallel using Ray with all available GPUs. To use specific GPUs, like the first and second GPUs for example, try using export CUDA_VISIBLE_DEVICES=0,1 Ideally run this command in a tmux window if you have a large input directory.

python embedding_generator.py --input_dir /labs/vislearnlab/data/THINGS-dataset/object_images --output_path /labs/vislearnlab/data/THINGS-dataset/things_embeddings --output_type npy --overwrite --model_name dinov3-babyview --subdirs --batch_size 1000 --ray_temp_dir /Scratch/tmp/ray

For more detailed examples, please look at the demo in the Jupyter notebooks within the examples folder.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vislearnlabpy-0.0.4.3.tar.gz (54.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vislearnlabpy-0.0.4.3-py3-none-any.whl (62.1 kB view details)

Uploaded Python 3

File details

Details for the file vislearnlabpy-0.0.4.3.tar.gz.

File metadata

  • Download URL: vislearnlabpy-0.0.4.3.tar.gz
  • Upload date:
  • Size: 54.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for vislearnlabpy-0.0.4.3.tar.gz
Algorithm Hash digest
SHA256 24dcf331216832504198fb9e17c0fe3c1839cca4fa39d3864bd55dfb72387ce7
MD5 1dc32fbbaa334b6eefa2bb2f8317efbf
BLAKE2b-256 bb9195ccf828e357e7bd982ad30ec495de4e126dcf79ac8cce6d3cccc0dca766

See more details on using hashes here.

File details

Details for the file vislearnlabpy-0.0.4.3-py3-none-any.whl.

File metadata

File hashes

Hashes for vislearnlabpy-0.0.4.3-py3-none-any.whl
Algorithm Hash digest
SHA256 bf63167427b94d5ae49135b0307f1fb667402a4529859bf5aa0d5c91aa8ff961
MD5 858e20fb0d7e0f08e4342273f5958a0d
BLAKE2b-256 76eb003820a00297c52ae6e70e8c4d4e52ab839fe08a02d89262d6edca40b310

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page