Skip to main content

Annotator based on entity-fishing

Project description

pyannotators-entityfishing

Annotator based on entity-fishing for named entity recognition and disambiguation against Wikidata.

Installation

pip install pyannotators-entityfishing

For noun-form filtering (optional):

pip install pyannotators-entityfishing[spacy]
python -m spacy download en_core_web_sm  # or other language models

Usage

from pymultirole_plugins.v1.schema import Document
from pyannotators_entityfishing.entityfishing import EntityFishingAnnotator, EntityFishingParameters

annotator = EntityFishingAnnotator()
parameters = EntityFishingParameters(
    default_label="ENTITY",
    minSelectorScore=0.3,
)

docs = annotator.annotate(
    [Document(text="Albert Einstein was born in Ulm.", metadata={"language": "en"})],
    parameters,
)

for ann in docs[0].annotations:
    print(f"{ann.start}:{ann.end} {ann.labelName} {ann.terms[0].identifier}")

Development

Install test dependencies:

uv pip install -e ".[test]"

Linting

uv run ruff check src/ tests/
uv run ruff format --check src/ tests/

Testing

uv run pytest

Coverage

uv run pytest --cov=src --cov-report=term-missing

SBOM & vulnerability check

Install the SBOM dependencies:

uv sync --extra sbom

Generate a CycloneDX SBOM from the current environment:

uv run cyclonedx-py environment -o sbom.cdx.json --output-format json

Audit dependencies for known vulnerabilities:

uv run pip-audit --format json --output audit-report.json

To fail on any known vulnerability (useful in CI):

uv run pip-audit --strict

Project details


Download files

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

Source Distribution

pyannotators_entityfishing-1.6.46.tar.gz (9.5 kB view details)

Uploaded Source

Built Distribution

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

pyannotators_entityfishing-1.6.46-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file pyannotators_entityfishing-1.6.46.tar.gz.

File metadata

  • Download URL: pyannotators_entityfishing-1.6.46.tar.gz
  • Upload date:
  • Size: 9.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.4 {"installer":{"name":"uv","version":"0.11.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"12","id":"bookworm","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pyannotators_entityfishing-1.6.46.tar.gz
Algorithm Hash digest
SHA256 698313fb71367da8ebe5d05609631250f0c89f1cbe7053b4998824f23fe5250b
MD5 4c9ce1ea9f66db1c7159484875950aac
BLAKE2b-256 42a6ebbace2a3b261a8401e9690bffda26bc483f008ba8faef87306425b646e8

See more details on using hashes here.

File details

Details for the file pyannotators_entityfishing-1.6.46-py3-none-any.whl.

File metadata

  • Download URL: pyannotators_entityfishing-1.6.46-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.4 {"installer":{"name":"uv","version":"0.11.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"12","id":"bookworm","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pyannotators_entityfishing-1.6.46-py3-none-any.whl
Algorithm Hash digest
SHA256 7315df6392b9da323def69ec88f0cff0c6f0623ab4bf8df8f28797d744681859
MD5 f4d1ee96bc8a252e1c0c6db175ab9e54
BLAKE2b-256 3c798b2a69bce596eb1794d6393d800af5e6699b33e305092da63d17b9c65a03

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 Pingdom Monitoring Sentry Error logging StatusPage Status page