How Kognite actually behaves

A real, end-to-end memory-QA harness — the same shape as LoCoMo / LongMemEval. Facts are ingested, then every question is answered using only what Kognite retrieves from the live API. We publish what we measure, including the gaps.

hybrid + graph Postgres full-text + vector (bge-small-en-v1.5) + knowledge-graph expansion, RRF fused, top-K·top-K = 5·run: July 3, 2026

End-to-end: memory formation + retrieval

The full pipeline as a real agent uses it: every conversation is ingested through the live /api/memories/ingest — raw episodes plus LLM-extracted atomic facts (coreference resolved, relative time converted to absolute dates) — then each of the 1,542 questions is answered from what the live API retrieves (deepseek-chat answers). Graded by GPT-4o — the judge model behind Mem0's published LoCoMo results (Mem0 66.9%, Mem0g 68.4%) — so this number is directly comparable to theirs.

70.0%
Accuracy · GPT-4o judge
71.4%
Accuracy · deepseek-chat judge
+16.5pt
vs verbatim storage
temporal
77.9%
multi-hop
51.4%
open-domain
39.6%
single-hop
76.7%

Per-category bars are GPT-4o-judged. Memory formation is what moves this number: storing the same turns verbatim scores 54.9% on the identical harness and judge (deepseek-chat) — the +16.5pt delta is same-judge. Retrieval is deterministic across both judged runs (identical recall). Runs: July 15, 2026 / July 15, 2026.

Retrieval engine in isolation

The same turns stored verbatim (formation off) — this isolates hybrid retrieval, and it is the corpus the Mem0 head-to-head below runs on. Recall@5 is defined over verbatim memories (a gold turn appears in the top-5), so it is reported for this mode.

71.3%
Recall@5
54.9%
Accuracy
870ms
Search p50
1454ms
Search p95

Per conversation

Every conversation in the corpus, showing both what retrieval found and what the agent then answered. The distance between the two dots is where answers are lost after the right memory was already returned.

0%25%50%75%100%median 71.5%locomo-0154qlocomo-181qlocomo-2152qlocomo-3199qlocomo-4178qlocomo-5123qlocomo-6150qlocomo-7191qlocomo-8156qlocomo-9158q
recall@5answer accuracydot size = questions in that conversation

Kognite vs Mem0

Same harness, apples-to-apples on LoCoMo (1,542 questions): identical corpus, the same bge-small embedder, the same deepseek-chat judge, the same recall method. Only the retrieval engine differs — Kognite's hybrid + graph + rerank vs Mem0's vector search (Mem0 OSS, infer=False).

Recall@5
Kognite
71.3%
Mem0
55.6%
Answer accuracy
Kognite
54.9%
Mem0
43.9%

By category

temporal
48.0%
multi-hop
36.9%
open-domain
28.1%
single-hop
66.6%
adversarial
100.0%

Methodology

1542 questions across 10 multi-session conversations (5882 memories ingested). For each question we retrieve top-5 from the live API, count a recall hit when a gold supporting fact is in the results, then an LLM answers from the retrieved context and a second LLM grades it against the gold answer.

Hybrid retrieval: Postgres full-text (BM25-ish) + self-hosted vector embeddings, reciprocal-rank fused, on the live /api/memories endpoint. Numbers reflect the deployed system as of the run date.

Two configurations are shown. End-to-end ingests raw conversation turns through the live formation pipeline (episodes + extracted atomic facts) and reports answer accuracy — the number that reflects what the product actually does; it is graded twice (GPT-4o and deepseek-chat) because LoCoMo scores are judge-sensitive and cross-system comparison requires the same judge. Retrieval in isolation stores the turns verbatim, which keeps recall@5 well-defined (gold turn in the top-5) and the corpus identical to the Mem0 comparison. Extracted facts rephrase their source turns, so turn-level recall is not a meaningful metric for the end-to-end run — accuracy is.