Installation

The Synthesized SDK is a python 3 compatible package that is installed using the provided pre-built wheel (.whl) file. Currently, wheels can be provided for Python 3.6, 3.7 and 3.8 on both Windows and Linux x86_64 platforms.

It is assumed that you have an existing Python 3 installation that is compatible with the provided wheel file. Additionally, it is recommended to work within a clean Python environment (e.g created using virtualenv or venv) to ensure the compatibility of all dependencies.

Before starting, ensure that pip, setuptools and wheel are installed and up to date

python3 -m pip install --upgrade pip setuptools wheel
py -m pip install --upgrade pip setuptools wheel

Next, install the package using pip:

python3 -m pip install synthesized-<version>-linux_x86_64.whl
py -m pip install synthesized-<version>-win_amd64.whl

Setting the License Key

To use the Synthesized SDK, a valid license key is required. This can be set as an environment variable, for example:

export SYNTHESIZED_KEY="XXXX-XXXX-XXXX-XXXX-XXXX-XXXX-XXXX-XXXX"
$Env:SYNTHESIZED_KEY="XXXX-XXXX-XXXX-XXXX-XXXX-XXXX-XXXX-XXXX"

Alternatively, the key can be copied to a permanent hidden folder:

mkdir ~/.synthesized
echo YOUR_LICENSE_KEY > ~/.synthesized/key
mkdir ~/.synthesized
echo YOUR_LICENSE_KEY > ~/.synthesized/key

Testing the installation

To test the installation is correct, import the synthesized module in the python interpreter

python3 -c "import synthesized; print(synthesized.__version__)"
py -c "import synthesized; print(synthesized.__version__)"

Dependencies

Package

Minimum supported version

tensorflow

2.2.1

tensorflow-probability

0.10.1

numpy

1.18.4

scipy

1.5.4

scikit_learn

0.23.2

pandas

1.1.5

seaborn

0.11.0

faker

5.0.1

simplejson

3.17.2

pyyaml

5.3.1

rstr

2.2.6

For Python 3.6 compatibility, the following are also required:

Package

Minimum supported version

dataclasses

0.6

Additional Technical Details

There is no explicit limit for the size of a dataset; this is limited by the size of RAM.

The library can potentially leverage a GPU, but it is not required.