No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
J. Fernando Sánchez 4ba30304a4 New schema for parameters 1 month ago
.makefiles Remove makefiles from auto push/pull 2 months ago
docs New schema for parameters 1 month ago
example-plugins Fix bug in py3.5 2 months ago
img Started readthedocs and improved README 3 years ago
k8s Deploy latest with its version tag 1 year ago
senpy New schema for parameters 1 month ago
tests New schema for parameters 1 month ago
.drone.yml Improved plugins API and loading 2 years ago
.gitignore Deployment changes 1 year ago
.gitlab-ci.yml Change CI to include `make push` 2 months ago
.pre-commit-config.yaml Fixed CI problem 1 year ago
.travis.yml Removed python 3.4 from travis versions 1 year ago
Dockerfile.template Fix schema issues and parameter validation 8 months ago
LICENSE.txt Refactoring, name change 4 years ago
MANIFEST.in Add extra-requirements for pip 9 months ago
Makefile Simplified makefile 1 year ago
NOTICE Refactoring, name change 4 years ago
Procfile Fix for heroku 2 years ago
README.rst Added data folder configuration 1 year ago
config.py Simple server 4 years ago
dev-requirements.txt PEP8 compliance 4 years ago
docker-compose.dev.yml Allow activation fails 7 months ago
docker-compose.test.yml Allow activation fails 7 months ago
docker-compose.yml Allow activation fails 7 months ago
extra-requirements.txt Refactor requirements 9 months ago
requirements.txt Fix typo in requirements 6 months ago
setup.cfg New schema for parameters 1 month ago
setup.py Refactor requirements 9 months ago
supervisord.conf Files for deployment 4 years ago
test-requirements.txt Remove dependencies and cache in pip 1 year ago

README.rst

.. image:: img/header.png
:width: 100%
:target: http://demos.gsi.dit.upm.es/senpy

.. image:: https://travis-ci.org/gsi-upm/senpy.svg?branch=master
:target: https://travis-ci.org/gsi-upm/senpy

Senpy lets you create sentiment analysis web services easily, fast and using a well known API.
As a bonus, senpy services use semantic vocabularies (e.g. `NIF <http://persistence.uni-leipzig.org/nlp2rdf/>`_, `Marl <http://www.gsi.dit.upm.es/ontologies/marl>`_, `Onyx <http://www.gsi.dit.upm.es/ontologies/onyx>`_) and formats (turtle, JSON-LD, xml-rdf).

Have you ever wanted to turn your sentiment analysis algorithms into a service?
With senpy, now you can.
It provides all the tools so you just have to worry about improving your algorithms:

`See it in action. <http://senpy.cluster.gsi.dit.upm.es/>`_

Installation
------------
The stable version can be installed in three ways.

Through PIP
***********

.. code:: bash

pip install -U --user senpy


Alternatively, you can use the development version:

.. code:: bash

git clone http://github.com/gsi-upm/senpy
cd senpy
pip install --user .

If you want to install senpy globally, use sudo instead of the ``--user`` flag.

Docker Image
************
Build the image or use the pre-built one: ``docker run -ti -p 5000:5000 gsiupm/senpy --default-plugins``.

To add custom plugins, add a volume and tell senpy where to find the plugins: ``docker run -ti -p 5000:5000 -v <PATH OF PLUGINS>:/plugins gsiupm/senpy --default-plugins -f /plugins``


Developing
----------

Developing/debugging
********************
This command will run the senpy container using the latest image available, mounting your current folder so you get your latest code:

.. code:: bash


# Python 3.5
make dev
# Python 2.7
make dev-2.7

Building a docker image
***********************

.. code:: bash


# Python 3.5
make build-3.5
# Python 2.7
make build-2.7

Testing
*******

.. code:: bash


make test

Running
*******
This command will run the senpy server listening on localhost:5000

.. code:: bash


# Python 3.5
make run-3.5
# Python 2.7
make run-2.7

Usage
-----

However, the easiest and recommended way is to just use the command-line tool to load your plugins and launch the server.

.. code:: bash


senpy

or, alternatively:

.. code:: bash


python -m senpy


This will create a server with any modules found in the current path.
For more options, see the `--help` page.

Alternatively, you can use the modules included in senpy to build your own application.

Deploying on Heroku
-------------------
Use a free heroku instance to share your service with the world.
Just use the example Procfile in this repository, or build your own.


`DEMO on heroku <http://senpy.herokuapp.com>`_


For more information, check out the `documentation <http://senpy.readthedocs.org>`_.
------------------------------------------------------------------------------------


Acknowledgement
---------------
This development has been partially funded by the European Union through the MixedEmotions Project (project number H2020 655632), as part of the `RIA ICT 15 Big data and Open Data Innovation and take-up` programme.


.. image:: img/me.png
:target: http://mixedemotions-project.eu
:height: 100px
:alt: MixedEmotions Logo

.. image:: img/eu-flag.jpg
:height: 100px
:target: http://ec.europa.eu/research/participants/portal/desktop/en/opportunities/index.html