Agent Memory, without drift.

Preserve semantic identity across long horizons using symbolic representations.

Stable semantic identity over time

Drift-resistant long-term memory

Compact symbolic persistence

Deterministic retrieval behavior

Why agent memory drifts

Most agent memory systems rely on continuous embeddings as their semantic base. Over time, embeddings shift due to context changes, re-embedding cycles, model updates, and numeric instability. While memory graphs may persist structurally, their semantic grounding drifts.

Canonical memory in a symbolic domain

SEMQ introduces a symbolic representation layer that canonicalizes embeddings into a discrete, directional semantic space. Memory entries are stored and compared in this symbolic domain, decoupled from numeric precision and magnitude.

Embed (t) model / provider output SEMQ Encode canonicalization Stabilizes semantic identity Store symbolic memory Retrieve & operate in symbolic domain Optional: decode for evaluation long-horizon memory loop

Stable Semantic Identity

Memory entries remain comparable across time.

Drift-Resistant Persistence

Canonicalization reduces semantic drift in repeated cycles.

Compact Long-Horizon Storage

Symbolic representations are inherently smaller to store and transmit.

Deterministic Retrieval

Predictable semantic matching beyond purely continuous embeddings.

How it works

embed → semq.encode → store(symbolic_code)
query → semq.encode(query) → retrieve(symbolic_code)
optional: semq.decode for evaluation

Evaluation and experiments

Drift behavior, semantic preservation, and storage trade-offs are evaluated under controlled experimental conditions.

View benchmarks

“Long-term agent memory requires a stable semantic representation layer underneath.”

— SEMQ

Build agent memory that persists.