Skip to content

Repository files navigation

juditha on pypi PyPI Downloads PyPI - Python Version Python test and package pre-commit Coverage Status AGPLv3+ License Pydantic v2

Juditha

A super-fast in-process lookup service for canonical names, backed by tantivy.

juditha exists to tame the noise that follows from Named Entity Recognition: given a huge list of known names (company registries, persons of interest, sanctions lists), it tells you whether a span produced by your NER pipeline corresponds to one of them, even when the casing, accents, token order, or spelling differs.

The implementation uses a pre-populated names database and index. Data is either FollowTheMoney entities or simply list of names.

Run as a service

juditha is an in-process library first, but the read-only half of the store can be served over gRPC so several workers share one built corpus:

JUDITHA_URI=/var/lib/juditha juditha serve --host 0.0.0.0

Clients just point JUDITHA_URI at it, and lookup / extract / percolate go over the wire unchanged:

JUDITHA_URI=grpc://localhost:50051 juditha lookup "Jane Doe"

There is no authentication, so keep it on a private network. Docker image: ghcr.io/dataresearchcenter/juditha, mount a built store at /data.

Documentation

https://docs.investigraph.dev/lib/juditha

The name

Juditha Dommer was the daughter of a coppersmith and raised seven children, while her husband Johann Pachelbel wrote a canon.

Versioning

To mark the compatibility with followthemoney, juditha follows the same major version, which is currently 4.x.x.

License and copyright

juditha, (C) 2024 investigativedata.io. (C) 2025, 2026 Data and Research Center – DARC. Licensed under AGPLv3 or later. See NOTICE and LICENSE.

Releases

Used by

Contributors

Languages