Reccage consists of 3 parts.
This is an engine for collaborative filtering, based off the algorithms found within the book Programming Collective Intelligence by Toby Segaran
Reccage C++ Core
This is contained in the
src. Currently, these are just used in the python
wrappers, but can be used standalone.
Python Reccage Package
These are the wrappers around the C++ Core. They are generated by Cython. The
pDataSet.pyx (the Cython code) is compiled into
pDataSet.cpp is committed to the git repo for your convenience, but can be
deleted if you modify
pDataSet.pyx. (You will also need the cython package)
To compile the bindings in-place (and not install them), run:
python setup.py build_ext --inplace
From the root directory.
To install the bindings as a python package, run (with root):
python setup.py install
from the root directory as well.
Now, you may use Reccage in you python applications by:
Reccage Twisted Server (reccaged)
Reccage is also packaged with an example REST HTTP server (it also has TCP bindings too for more efficient communication)
This is also the easiest way to interract with reccage
The server is located in the
It depends on the
twisted python package. If you don't have it already,
run (with root):
You will also need to install the python reccage package as described in the previous section.
To start the server, run:
twistd -ny reccaged.tac
To verify it works, you may run the test script:
bash tests/booktest.sh localhost:8080
You should see a bunch of JSON print out.