Installation
Liberate.FHE Installation Guide
Liberate.FHE natively supports python programming language. To install and use Liberate.FHE, please follow the steps below:
Liberate.FHE runs on single or multiple GPUs. Running Liberate.FHE on GPUs requires installing nvidia-driver. Additionally, you need to install CUDA that matches the version of PyTorch you intend to use. Theses settings are necessary for GPU-based operations.
Python setup (including Virtual Environment)
To build Liberate.FHE, you need to install poetry, a dependency manager and packaging tool for Python. It is recommended to set up a virtual environment to manage the project in an isolated environment.
Install Liberate.FHE
Clone Liberate.FHE github repository
Clone the github repository of Liberate.FHE to obtain the latest source codes.
Install dependencies
Use poetry to install the project dependencies. Open a terminal and run the command poetry install
. This will automatically install all the required packages for the Liberate.FHE.
Run CUDA compile script
To compile CUDA by running the setup.py
file. In the terminal, run the command poetry run python setup.py install
. This command will compile CUDA files.
Build a python package
Build the project by running the command poetry build
in the terminal. This will create a distributable format of the package.
Install Liberate.FHE library
Install the Liberate.FHE by running the command poetry run python -m pip install .
in the terminal. This will install the Liberate.FHE library into your system.
System Requirements
Operating System : Liberate.FHE is compatible with Ubuntu.
Python : Liberate.FHE requires Python version 3.10 or above. You can download and install Python from the official website. And we recommend using the python virtual environment.
PyTorch : Liberate.FHE uses the pyTorch package. When you install Liberate.FHE, it automatically installs PyTorch.
CUDA : If you want to utilize the GPU, install CUDA. Ensure that you choose a version of CUDA that is compatible with PyTorch, and install it accordingly.