Skip to main content

Tablassert

PyPI Python License Docs

Extract knowledge assertions from tabular data into NCATS Translator-compliant KGX NDJSON — declaratively, with entity resolution built in and optional quality control.

pip install tablassert
tablassert build-kg config.yaml

Full Documentation — installation guides, tutorials, configuration reference, and API docs.

Installation

pip install tablassert

The base install includes everything needed to build knowledge graphs from CSV/TSV sources. Optional extras are available for CPU compatibility and quality control:

pip install "tablassert[rt]"  # Polars build for CPUs without the required instructions
pip install "tablassert[qc]"  # Enable QC (torch + sentence-transformers BioBERT, scikit-learn)

Excel (.xlsx) inputs are read through Polars' calamine engine and additionally require python-calamine (pip install python-calamine).

QC is opt-in: pass --qc to build-kg to run the three-stage audit (exact → fuzzy → BioBERT). See the CLI Reference for the full flag reference.

Quick Demo

from pathlib import Path
from tablassert.lib import resolve_many

# Resolve gene names to CURIEs against a fullmap database
results = resolve_many(
    col="gene",
    entities=["TP53", "BRCA1", "EGFR"],
    fullmap=Path("/path/to/fullmap"),
    taxon="9606",
)

for row in results:
    print(f"{row['original_gene']}{row['gene']} ({row['gene_name']})")
# TP53 → HGNC:11998 (TP53)
# BRCA1 → HGNC:1100 (BRCA1)
# EGFR → HGNC:3236 (EGFR)

Point resolve_many() at a fullmap database and resolve any iterable of entity strings to CURIEs — no LazyFrame setup or NLP preprocessing required. For full pipeline builds with YAML configuration, use tablassert build-kg config.yaml.

Key Features

  • Declarative Configuration — YAML-based, no code required
  • Entity Resolution — Maps text to biological entities (genes, diseases, chemicals)
  • Quality Control — Optional three-stage validation (exact → fuzzy → BERT embeddings)
  • KGX Compliance — NCATS Translator-compatible NDJSON output
  • Performance — Lazy evaluation pipelines with Polars and an embedded redb-accelerated entity resolution database

Developing

uv sync --group dev --extra qc
uv run maturin develop --manifest-path rust/Cargo.toml
make check

See CONTRIBUTING.md for the full development loop, quality gates, and pull request guidelines.

License

Apache License 2.0

Contributors

Skye Lane Goetz — Institute for Systems Biology

Gwênlyn Glusman — Institute for Systems Biology

Jared C. Roach — Institute for Systems Biology

Download files

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

Source Distribution

tablassert-8.0.0.tar.gz (164.1 kB view details)

Uploaded Source

Built Distributions

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

tablassert-8.0.0-cp314-cp314-manylinux_2_34_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.34+ x86-64

tablassert-8.0.0-cp314-cp314-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

tablassert-8.0.0-cp313-cp313-manylinux_2_34_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

tablassert-8.0.0-cp313-cp313-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

tablassert-8.0.0-cp312-cp312-manylinux_2_34_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

tablassert-8.0.0-cp312-cp312-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

tablassert-8.0.0-cp311-cp311-manylinux_2_34_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

tablassert-8.0.0-cp311-cp311-macosx_11_0_arm64.whl (1.1 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

File details

Details for the file tablassert-8.0.0.tar.gz.

File metadata

  • Download URL: tablassert-8.0.0.tar.gz
  • Upload date:
  • Size: 164.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for tablassert-8.0.0.tar.gz
Algorithm Hash digest
SHA256 bd2430852f9a9df3d80ecee556d845bd26f9c5e5f42aab148a91da63cd3d5736
MD5 3ee43f44a9848d9b6b11857888cadabe
BLAKE2b-256 4f2425c3ac2620bb13574d919c6ee77b6c7603c801634fa95a9f6b6c45ba3d75

See more details on using hashes here.

Provenance

The following attestation bundles were made for tablassert-8.0.0.tar.gz:

Publisher: pipy.yml on SkyeAv/Tablassert

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tablassert-8.0.0-cp314-cp314-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for tablassert-8.0.0-cp314-cp314-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 83fc6917e641468064500691178b0699ab6f2bcf3a90222509efb5f9d00d5b31
MD5 e8d294d4be3ad0b9e8655ebcbb4f9eb6
BLAKE2b-256 43e92a8e204fd2a5572ad6f80d6bc2c58aa861ab89c3b15be52687cb1e62392c

See more details on using hashes here.

Provenance

The following attestation bundles were made for tablassert-8.0.0-cp314-cp314-manylinux_2_34_x86_64.whl:

Publisher: pipy.yml on SkyeAv/Tablassert

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tablassert-8.0.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tablassert-8.0.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e375e347a805d4c48766adca413230601329854cf624c75a2904f798a00d0a23
MD5 72e3cb4baebfe90f8d898116bc7bf531
BLAKE2b-256 13fc268463ef62e09786db7fb869ce88f461fd5e6b631620513cf78d276c06e8

See more details on using hashes here.

Provenance

The following attestation bundles were made for tablassert-8.0.0-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: pipy.yml on SkyeAv/Tablassert

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tablassert-8.0.0-cp313-cp313-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for tablassert-8.0.0-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 d7cf4506b42bbd839d03d4cd8c495ab2c1eb9106742970c85ad9eb29dd38b286
MD5 7465bc6de5658523b16df9466f917e8c
BLAKE2b-256 64bbf96e7a7202f98656d2cf0f33033aeaf43917bf78167bf1b04d5b63f492a5

See more details on using hashes here.

Provenance

The following attestation bundles were made for tablassert-8.0.0-cp313-cp313-manylinux_2_34_x86_64.whl:

Publisher: pipy.yml on SkyeAv/Tablassert

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tablassert-8.0.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tablassert-8.0.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 dc72a8721704454ad626075e31ad8e2b6256537b0ddf16601da23723931a9cd0
MD5 4fb178ba6dc7da857b0dd8a8f40f86fa
BLAKE2b-256 de9046b1605093dab1ec7af6ee6e7b4be75ce0b2674247cb68704a40b15d524d

See more details on using hashes here.

Provenance

The following attestation bundles were made for tablassert-8.0.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: pipy.yml on SkyeAv/Tablassert

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tablassert-8.0.0-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for tablassert-8.0.0-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 8aa962d1b9858423234b43e1802f84c9428f42d1b30461f02a967e4084a718c0
MD5 40293c00213c18493ca5407c3cebf41c
BLAKE2b-256 e593b41b87e75c42bcb49c3e2290cba9f11d64f8c830e8837e8a1f04dcfb054b

See more details on using hashes here.

Provenance

The following attestation bundles were made for tablassert-8.0.0-cp312-cp312-manylinux_2_34_x86_64.whl:

Publisher: pipy.yml on SkyeAv/Tablassert

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tablassert-8.0.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tablassert-8.0.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 dbf535ec37c430fb5083f0737091459d933f2020c16d6f8db18967e2b2a51b89
MD5 d983e4f0cb56fa6318340ddbc784d65f
BLAKE2b-256 f14586cb5ff8fa75b5211aef7e0fcbd7a5c5b282dc20a45b417b29da9cfda5c7

See more details on using hashes here.

Provenance

The following attestation bundles were made for tablassert-8.0.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: pipy.yml on SkyeAv/Tablassert

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tablassert-8.0.0-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for tablassert-8.0.0-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 33cb46bd8fcc40e036a2e40ce1a7630c1a57a52b108a026e3995afc5b0fb0d4f
MD5 435d8e4ec437645127a227ac904cc31d
BLAKE2b-256 8cc7580b188ecd178a8b5a6a4b856228e82bd62fff302ed8921e67880fc22da0

See more details on using hashes here.

Provenance

The following attestation bundles were made for tablassert-8.0.0-cp311-cp311-manylinux_2_34_x86_64.whl:

Publisher: pipy.yml on SkyeAv/Tablassert

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tablassert-8.0.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tablassert-8.0.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a5a9c2ce6a58df2512a054fd29cb4d1ef0257fa50823981294d481d4dd8a42c7
MD5 c27b887efdb4bbb464242bfb96dda625
BLAKE2b-256 936aca22816aedfe07ec965a5b63851e3d758ac613e30d3391664da16e809c61

See more details on using hashes here.

Provenance

The following attestation bundles were made for tablassert-8.0.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: pipy.yml on SkyeAv/Tablassert

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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