Skip to main content

Annif

License Build Status codecov Code Climate Scrutinizer Code Quality codebeat badge BCH compliance LGTM: Python

Annif is an automated subject indexing toolkit. It was originally created as a statistical automated indexing tool that used metadata from the Finna.fi discovery interface as a training corpus.

This repo contains a rewritten production version of Annif based on the prototype. It is a work in progress, but already functional for many common tasks.

Basic install

You will need Python 3.5+ to install Annif.

The recommended way is to install Annif from PyPI into a virtual environment.

python3 -m venv annif-venv
source annif-venv/bin/activate
pip install annif

You will also need NLTK data files:

python -m nltk.downloader punkt

Start up the application:

annif

See Getting Started in the wiki for more details.

Development install

A development version of Annif can be installed by cloning the GitHub repository. Pipenv is used for managing dependencies for the development version.

Installation and setup

Clone the repository.

Switch into the repository directory. Install pipenv if you don't have it:

pip install pipenv  # or pip3 install pipenv

Install dependencies and download NLTK data:

pipenv install  # use --dev if you want to run tests etc.

Enter the virtual environment:

pipenv shell

You will also need NLTK data files:

python -m nltk.downloader punkt

Start up the application:

annif

Unit tests

Run pipenv shell to enter the virtual environment and then run pytest. To have the test suite watch for changes in code and run automatically, use pytest-watch by running ptw.

License

The code in this repository is licensed under Apache License 2.0, except for the dependencies included under annif/static/css and annif/static/js, which have their own licenses. See the file headers for details.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

annif-0.39.0.tar.gz (340.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

annif-0.39.0-py3-none-any.whl (362.2 kB view details)

Uploaded Python 3

File details

Details for the file annif-0.39.0.tar.gz.

File metadata

  • Download URL: annif-0.39.0.tar.gz
  • Upload date:
  • Size: 340.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7

File hashes

Hashes for annif-0.39.0.tar.gz
Algorithm Hash digest
SHA256 124c1e76a69149c19fb21fb95593fc1c85fe9dd044af96dfc66421762fa11f58
MD5 2b46e9e47540cec8a54ab1a67cfbff52
BLAKE2b-256 fa1895846ef0fabc5c45f5c3d4c15afd3a258e8c23887a506af4e7fe5d949fb9

See more details on using hashes here.

File details

Details for the file annif-0.39.0-py3-none-any.whl.

File metadata

  • Download URL: annif-0.39.0-py3-none-any.whl
  • Upload date:
  • Size: 362.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7

File hashes

Hashes for annif-0.39.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5328d27aadb7088d4f114db461149c77e1af6a92e8b5218d80d8898aee29ae81
MD5 25db5bc84a84e41cbc0bdf1de261672d
BLAKE2b-256 a837e97ae9c642a4964ff0f48cd36c42a59ad16d5dd8ad53ea3f5f68cc56e96c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page