| layout | default |
|---|---|
| title | python module |
Seldon provides a set of python modules to help construct feature pipelines for use inside Seldon.
You can install the python modules in three ways:
A Docker image contains the python modules and all dependencies needed.
{% highlight bash %} docker pull seldonio/pyseldon:1.17 {% endhighlight %}
There are dependencies for local software for the python/pip install to run successfully as well as dependencies for the libraries such as vowpal wabbit. For debian based systems these would be satisfied with:
{% highlight bash %} apt-get update apt-get install build-essential automake autoconf libxmu-dev g++ gcc libpthread-stubs0-dev libtool libboost-program-options-dev libboost-python-dev zlib1g-dev libc6 libgcc1 libstdc++6 libblas-dev liblapack-dev git telnet procps memcached libmemcached-dev {% endhighlight %}
For OSX you will need at least:
{% highlight bash %} brew install libmemcached mysql {% endhighlight %}
Two custom libraries are needed - a Seldon fork of wabbit_wappa and BayesianOptimization if you wish to optimize hyper parameters in pipeline estimators.
- Check you have the local software needed as given above
- We suggest you install Anaconda which will provide many of the dependencies needed.
pip install -e git+git://github.com/SeldonIO/wabbit_wappa#egg=wabbit-wappa-3.0.2pip install -e git+git://github.com/fmfn/BayesianOptimization#egg=bayes_optpip install seldon
- Check you have the local software needed as given above
- We suggest you install Anaconda which will provide many of the dependencies needed.
- If you want to use the module bayes_opt then {% highlight bash %} pip install -e git+git://github.com/fmfn/BayesianOptimization#egg=bayes_opt {% endhighlight %}
- Go to
pythonfolder of the seldon project and run {% highlight bash %} python setup.py install {% endhighlight %}
The core module dependencies are:
- pandas version >= 0.17
- scikit-learn version >= 0.17
- Vowpal Wabbit
- a Seldon fork of wabbit_wappa
- xgboost
- unicodecsv
- kazoo
- boto
- keras
- gensim
- annoy
- Flask
The above packages themselves have many dependencies so if you are starting from scratch it may be best to install Anaconda which will provide many of the dependencies. Depending on the version of anaconda you install you may need to upgrade some packages to their latest, e.g.
{% highlight bash %} pip install pandas --upgrade pip install sklearn --upgrade {% endhighlight %}
You should install the local software needed as gven above or follow the steps in the pyseldon Dockerfile which gives install commands of how to satisfy the dependencies if you wish to run a local custom install. The Dockerfile is inherited fron anaconda which uses a debian base image. For other linux based systems the commands to get the correct software may vary.