Skip to main content

hyper-kg

A small, typed knowledge-graph interface for reified-infon facts — ingest a pile of infons, store them as a property graph, and retrieve with typed primitives. Dependency-free core (stdlib SQLite), with a bring-your-own data layer via one protocol.

An infon is a reified hyperedge: a fact promoted to a first-class, addressable node binding typed role-participants (subject, object, …), carrying polarity, an evidence-mass triple, and provenance — so other facts can point at it.

from hyper_kg import KG

kg = KG.open("sqlite:///world.db")            # or "sqlite://:memory:", or a custom scheme

# write a pile of infons (the {subject,predicate,object,polarity,mass,...} dict shape)
kg.write_infons("doc1", pile)                 # dedup → fan out → one transaction → idempotent

# typed retrieval
kg.find(predicate="supplies", polarity="affirmed")
kg.neighbors("Samsung SDI", hops=2)

# optional: extract straight from text (needs `pip install hyper-kg[extract]`)
kg.ingest("Samsung SDI supplies cells to BMW.", doc_id="doc2")

What it does

  • write_infons(doc_id, pile) — each infon fans out into an :Infon node + canonical :Entity nodes + HAS_INFON/S_OF/O_OF edges, batched in one transaction. Idempotent by content-hash id (re-ingest is a no-op). Deduped by (subject, predicate, object, polarity).
  • Typed retrieval — find(...) (indexed by subject/predicate/object/polarity), neighbors(node, hops=...) (graph walk), get_infon(id), anchors().
  • Bring your own backend — implement the KGStore protocol and register it:
    KG.register_backend("mydb", MyStoreClass)
    kg = KG.open("mydb://...")
    

Design

  • Entities arrive canonical. Subject/object are expected to be already-normalized canonical ids (e.g. resolved at extraction time), so there is no entity-resolution pass — the graph stays connected by construction. Un-anchored novel entities can be flagged provisional.
  • Generic property graph. nodes(id, labels, props_json + virtual indexed columns) and edges(src, dst, type, props_json) — no per-fact schema migration.
  • Typed ops, not query strings. The interface is a small typed method API every backend implements natively, so SQL and custom backends are first-class. A graph-native backend may expose an optional query escape hatch.

License

Apache-2.0.

Release files for hyper-kg 0.1.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for hyper-kg 0.1.6
File Size Uploaded
hyper_kg-0.1.6.tar.gz 24.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for hyper-kg 0.1.6
File Interpreter ABI Platform
hyper_kg-0.1.6-py3-none-any.whl Python 3 none any Details

Total release size: 51.1 kB

Release files / hyper_kg-0.1.6.tar.gz

Download URL hyper_kg-0.1.6.tar.gz
Size 24.4 kB
Tags Source
SHA-256 checksum
How to use checksums
de63acf2098dc5b6c351238d7ac5c7fc616591bbcdcf054dab0cf96f4a07a648
BLAKE2b-256 checksum
How to use checksums
db48b6dcada3464de9332724d789d1e26b6bbe002c86edf38ae5eade7c3bd03c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.5

Release files / hyper_kg-0.1.6-py3-none-any.whl

Download URL hyper_kg-0.1.6-py3-none-any.whl
Size 26.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7a1be9b2a4ad874266ae3e0e8f5907b9fa72fbf2ab120924c917354261374c39
BLAKE2b-256 checksum
How to use checksums
ee6afe0e6cc0e5b5527d53031b55190f4993f619553d9004063a61e9342460a8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.5

Release history Release notifications | RSS feed

This release

0.1.6 This release

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page