IFE Surrogate

PyPI Version License Python Version

IFE Surrogate is a modular Gaussian Process library designed for surrogate model training of electric circuits. It provides a flexible interface for defining kernels, training models, and generating surrogate predictions with ease.


Installation

ife-surrogate can be installed on Linux, macOS, and Windows. Because this library relies on JAX for high-performance computations, we recommend setting up your environment first to ensure hardware acceleration (GPU/TPU) is correctly configured.

Basic Installation (CPU)

For standard use on a laptop or CPU-bound server, you can install everything via pip:

# Upgrade pip and install JAX (CPU version)
pip install --upgrade pip
pip install --upgrade "jax[cpu]"

# Install the library
pip install ife-surrogate

GPU Installation (NVIDIA)

To leverage NVIDIA GPUs, JAX requires specific CUDA and cuDNN versions. It is highly recommended to install JAX with GPU support before installing ife-surrogate.

Via Pip:

# For CUDA 12 support
pip install --upgrade "jax[cuda12]"
pip install ife-surrogate

Via Conda:

# This installs jaxlib with the necessary CUDA toolkit
conda install -c conda-forge "jaxlib=*=*cuda*" jax
pip install ife-surrogate

Verify Installation

After installing, you can verify that the library and JAX are seeing your hardware correctly:

import jax
import ife_surrogate

print(f"JAX version: {jax.__version__}")
print(f"Devices detected: {jax.devices()}")

Support


License

The software is provided under the MIT License.


Index