CLAM is a tool that allows you to quickly and transparently transform your Natural Language Processing application into a RESTful webservice, with which both human end-users as well as automated clients can interact. CLAM takes a description of your system and wraps itself around the system, allowing end-users or automated clients to upload input files to your application, start your application with specific parameters of their choice, and download and view the output of the application once it is completed.
CLAM is set up in a universal fashion, requiring minimal effort on the part of the service developer. Your actual NLP application is treated as a black box, of which only the parameters, input formats and output formats need to be described. Your application itself needs not be network aware in any way, nor aware of CLAM, and the handling and validation of input can be taken care of by CLAM.
CLAM is entirely written in Python, runs on UNIX-derived systems, and is available as open source under the GNU Public License (v3). It is set up in a modular fashion, and offers an API, and as such is easily extendable. CLAM communicates in a transparent XML format, and using XSL transformation offers a full web 2.0 web-interface for human end users.
For installation instructions, make sure to read the provided 'INSTALL' file! For full documentation see the manual in docs/clam_manual.pdf , also accessible through the CLAM website at http://ilk.uvt.nl/clam . It is recommended to read this prior to starting with CLAM.
IMPORTANT NOTICE: It's discouraged to download the zip packages or tarballs from github, either properly use git instead, or install CLAM from the Python Package Index (http://pypi.python.org/pypi), through easy_install . Using git and github, or the Python Package Index, you can easily keep clam up to date, for developers of new webservices, the git/github approach is the recommended one. To obtain CLAM from github:
git clone git://github.com/proycon/clam.git
And to keep it up to date, regularly check back on github for changes and obtain the latest using a simple:
clam$ git pull
For installation instructions, please read the supplied INSTALL file.