# Interpretable AI System Image

Interpretable AI packages are provided using a precompiled system image for Julia. This is a file with the extension .dll for Windows, .dylib for macOS, or .so for Linux.

Each system image is compatible with a specific operating system and version of Julia, so when downloading, make sure you select the version that matches your environment.

## Installing the system image

First install the exact version of Julia corresponding to your system image using the standard installers. Then, configure Julia to use the new system image. There are two options.

##### Option 1: Replace default image

Replace the default system image file (sys.dll/sys.dylib/sys.so) with the one that has been supplied to you. You might also like to rename and keep the original file in case you want to revert to the default system image.

For a default Julia installation, the system image is located at:

OSDefault system image location
macOS/Applications/Julia-version.app/Contents/Resources/julia/lib/julia/
Linuxjulia_install_dir/lib/julia/

If you are unsure about where to find the system image file, you can run the following command in Julia to show the correct location:

julia> unsafe_string(Base.JLOptions().image_file)
##### Option 2: Specify the system image at runtime

Specify the system image file when starting Julia using the -J flag. For example, the following shell command will start Julia with the modified system image, assuming julia is on the system PATH:

\$ julia -J path/to/sys.dylib
Important

If you are intending to use the Python or R interfaces to the IAI algorithms, you must choose Option 1 and replace the default system image.

When you start Julia with the custom image for the first time, a number of packages will be installed in order to satisfy dependencies of the IAI modules. You will then receive a message that there is no license file, along with a machine ID:

Could not find Interpretable AI license file at ~/iai.lic. If you need to register a license for this machine, please send us the following machine ID:
478b884fa4f8fcd73a102ccffe3d347276f51cdf94d32b079226a8f9edb204c3

Please send us this machine ID so that we can create a license file for your machine. You will need to place this file in your home folder (which you can find by running homedir()) with the name iai.lic. By default, the path to the license file should be:

Alternatively, you can set the environment variable IAI_LICENSE_FILE to point to the location of your license file if you would like to place it elsewhere.

## Using the system image

When working with the system image, you can use Julia as you would normally, with the exception that the Interpretable AI modules are already loaded into the Julia session.

Important

There is no need to run using IAI - the IAI package is already loaded in every session.

You can find the version of the system image by running IAISysImg.VERSION.

## Other configuration

On some versions of Windows, you may see the following message when Julia starts:

Warning: LIBSVM libraries missing: could not load library "libsvm.dll"

This usually indicates that LIBSVM (used in OptImpute) is missing a dependency. To fix this, you should download and install the Microsoft Visual C++ Redistributable corresponding to your system:

On newer versions of macOS, you may receive a warning when you try to start Julia with the new system image:

"sys.dylib" cannot be opened because the developer cannot be verified

To fix this, go to the "General" tab under "Security & Privacy" in "System Preferences", and click "Allow Anyway".