Annif

Latest version: v1.3.1

Safety actively analyzes 723177 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 7 of 9

0.45.2

This bugfix release fixes a problem with the Maui backend that was introduced by the parameter overriding support in 0.45:

* 372/373: Adapt the Maui backend for parameter overriding

(Annif 0.45.1 was an intermediate patch release where a Docker image build issue was fixed, with no changes in the Python codebase)

0.45.0

This release includes a new [omikuji backend](https://github.com/NatLibFi/Annif/wiki/Backend%3A-Omikuji) to support tree-based extreme multilabel classification machine learning algorithms, which give a big improvement to the quality of the subject indexing results. The `--backend-param/-p` option is introduced to the CLI `train` and `learn` commands (previously that option was only available for `suggest` and `eval`); the option can be used to override the parameters from the config file. Also Python 3.8 support is introduced - however, the `nn_ensemble` backend requires TensorFlow 2.0, which is not yet available for Python 3.8. The Vowpal Wabbit ensemble backend has been removed, as the neural network ensemble has similar features and gives better results.

New features:
- 343/366/368/371 Omikuji backend
- 250/289 Support backend param option in train and learn commands
- 345/370 Support for Python 3.8

Bug fixes:
- 369 Fix for spurious "analyzer setting is missing" errors under WSGI
- 360/361 Launching Gunicorn

Improvements/Maintenance:
- 367 Disable unnecessary Drone build dryruns for pushes
- 365 Remove vw_ensemble backend
- 359 Refactor backend project
- 358 Mauiserver dockerization

0.44.0

This release includes a new `maui` backend for integrating Annif with [Maui Server](https://github.com/TopQuadrant/MauiServer), a REST service wrapper for the Maui tool that will replace the similar but more limited Maui Service. The `eval` command has been enhanced by adding the F15 metric (F1 score for the top 5 suggestions) that is commonly used for comparing algorithms. There are also small improvements to the nn_ensemble backend and some bug fixes.

New features
* 269/344/352 Add Maui Server backend
* 354 Always compute F15 metric when evaluating

Improvements
* 355/356 Support `learn-epochs` parameter in nn_ensemble backend

Bug fixes
* 350/351 Fail gracefully if trying to evaluate an empty corpus
* 307/353 Accept UTF-8 files with Byte Order Mark (BOM)

0.43.1

This is a patch release that fixes two bugs in the 0.43.0 release. There are also some additions to the top level README file.

Bugs fixed:

* 346/347 Fix "float32 not JSON serializable" error in Web UI and REST API
* 348/349 Enable learn command for nn_ensemble backend

0.43.0

This release includes a new trainable ensemble backend based on a neural network ([nn_ensemble](https://github.com/NatLibFi/Annif/wiki/Backend%3A-nn_ensemble)) and support for default parameters for backend configuration settings, making it easier to configure projects. There are also several performance and memory usage optimizations (e.g. TFIDF training is now around 5x faster!) and some bug fixes.


New features:

* 330/331 Neural network ensemble backend
* 273/324 Default values for backend configuration

Improvements:

* 340 Reduce vector memory usage
* 335 Optimizations to tfidf backend training
* 336 Further optimizations to tfidf backend + rearchitecting
* 318/322 Handle missing or invalid path input in CLI
* 334 Use layer caching in Docker image builds in Drone

Bug fixes:

* 332/333 Eval crash on TFIDF with multiple training files
* 341 Fix Docker image build error by pinning base image version

0.42.0

This release brings improvements to command line functionality and many robustness enhancements. The Docker images in the [quay.io repository](https://quay.io/repository/natlibfi/annif?tab=tags) now have tags in line with release versions and the documentation in ReadTheDocs has both [stable](https://annif.readthedocs.io/en/stable/) (latest release) and [latest](https://annif.readthedocs.io/en/latest/) (current `master`) versions. There are also a lot of small improvements to the Docker image build pipeline.

New features:
- 251/306 CLI `clear` command for clearing project data

Robustness improvements:
- 281/299 Handle invalid lines in training data `.tsv` files
- 282/300 Handling errors in projects.cfg file
- 325 Always use UTF-8 encoding when parsing TSV file document corpora
- 291/296/317 Pin down more specific versions of dependencies

Bug fixes:
- 303/309/313 Fix typos in documentation and bug in training from `.key` files with only subject labels
- 320 Turn AnnifException into an abstract base class and fix message prefix behavior

Container pipeline and ReadTheDocs build related fixes and enhancements
323, 312, 311, 310, 305, 304, 297/298, 314, 319, 295

Page 7 of 9

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.