Technologies · Context

Context Exploration Engine: ask for data by what it says.

Once data is in the stack, the next question is which of it matters. The Context Exploration Engine is one small interface for finding and reading data by name, by content or by time, whichever technology wrote it, and handing it to an analysis, a model or an agent.

Python
import clio_cee
C++
iowarp::ContextInterface
Queries
Regex, BM25 keywords, time window
Scope
Every node, one call

Key takeaways

  • One small API in C++ and Python: bundle, query, retrieve and destroy.
  • Finds data by name pattern, by keyword relevance (BM25) or by time window, across every node at once.
  • Sees everything written through Context FS, the Context Transfer Engine or the assimilation engine, with no import step.
  • Returns matches packed into one size-bounded buffer, ready for an analysis or a model.

Three ways to ask

  • By name: regular expressions over tag and blob names.
  • By content: a prompt ranked by keyword relevance (BM25) against the indexed text, including labels written by the summarizer.
  • By time: what was modified in a time window.

Every query is broadcast, so each node answers for the data it owns and the runtime merges the result.

python
import clio_cee as cee

ctx = cee.ContextInterface()
hits = ctx.context_query("run42.*", ".*", max_results=5,
                         prompt="sea ice extent anomaly")
data = ctx.context_retrieve("run42.*", ".*", max_results=5,
                            max_context_size=64 << 20,
                            prompt="sea ice extent anomaly")

One view over everything

The engine stores nothing of its own. Files written through a Context FS mount, objects put through the Context Transfer Engine and data imported by the assimilation engine are all tags and blobs, so they are all queryable the moment they are written. context_bundle imports new sources through the assimilation engine in the same call style.

What the engine can find depends on the stack you compose: keep the indexer in the chain so every writer is indexed, add the summarizer for content labels, and give retrieval a fast tier. The defaults already do the first; the docs show the rest.

Where to go next