Skip to content

Releases: Asyncinnovator/Noema

Release list

Noema v0.1.0

Choose a tag to compare

@50RISHU 50RISHU released this 24 Oct 07:10

First public release of Noema, a Python library that turns text into a deduplicated knowledge
graph and gives your LLM only the facts a question needs, in a compact notation. Built for
token-efficient RAG.

Larry Page founded Google in 1998. Sundar Pichai is the CEO of Google.

        becomes

#1 Larry Page :PERSON
#2 Google :ORG
#3 Sundar Pichai :PERSON
#1 -found-> #2
#3 -ceo_of-> #2

Install

pip install noema-rag
python -m spacy download en_core_web_sm

The package is named noema-rag on PyPI and imported as noema. Python 3.13 or newer is
required. Do not install the separate, unrelated noema package from PyPI, which uses the same
import name.

Quick start

import noema

kb = noema.KnowledgeBase()
kb.ingest(documents)
context = kb.retrieve("Who is Google's CEO?", max_tokens=200)

prompt = f"{context.text}\n\nQuestion: Who is Google's CEO?"

Highlights

  • Compress text with noema.compress() and get a round-trip confidence score
  • Build a knowledge base that merges duplicate facts across documents and updates incrementally
  • Retrieve with a token budget using vector search plus multi-hop graph expansion
  • Scale up with streaming ingestion, checkpoints, and optional Neo4j and RDF backends
  • Plug in LangChain and LlamaIndex retrievers, plus OpenAI and Anthropic token counting
  • Use the CLI: noema compress, build-graph, query, inspect and benchmark
  • Measure it yourself with the reproducible benchmark suite in benchmarks/

Known limitations

  • Only entities and relations are extracted automatically. Events exist in the data model but are
    not extracted by the built-in parser.
  • Relation extraction is rule-based and English specific. Coreference resolution and transformer
    relation extraction are optional, separate functions.
  • Embedding-based validation cannot detect reversed claims. Use validate_nli() for that.

Links