LongMemEval-S retrieval benchmark

Did the right evidence make the first page of results?

By the Firekeep teamPublished Accepted run

Firekeep retrieved at least one labeled evidence-bearing session in the first ten results for 459 of 470 scored questions. A benchmark is most useful when the number travels with its denominator, protocol, limits, and artifacts. They are all here.

97.7% Evidence Recall@10
459 of 470 scored questions

For each question, Firekeep had ten chances to return a session containing the labeled evidence. It found one or more for 459 questions.

Open the machine-readable result

What 459 of 470 means.

LongMemEval-S contains 500 questions over synthetic chat histories. Thirty abstention questions are excluded from this aggregate, leaving 470 scored questions. Each scored question names the session or sessions containing its evidence.

Firekeep received the question, returned its first ten retrieval results, and earned one hit when any of those results came from a labeled evidence session. It earned 459 hits and missed 11. The exact ratio is 97.65957446808511%, displayed as 97.7%.

This measures retrieval. It asks whether the labeled evidence reached the context window. It does not score the final answer a language model might generate from that evidence.

The headline and the shape behind it.

Recall answers whether any labeled evidence appeared. Coverage asks how much of all labeled evidence appeared. Mean reciprocal rank rewards finding the first relevant result early. NDCG rewards relevant results throughout the top ten, with more weight near the top.

97.6596%Evidence Recall@10
92.8014%Evidence Coverage@10
91.7354%Mean reciprocal rank
76.8179%NDCG@10
Evidence Recall@10 by LongMemEval-S question type
Question typeHitsScoredRecall@10
Knowledge update7272100%
Multi-session121121100%
Single-session assistant5656100%
Single-session preference293096.6667%
Single-session user626496.875%
Temporal reasoning11912793.7008%

Exactly what ran.

The run began with empty, isolated Qdrant, Neo4j, and Redis stores. Authentication was disabled to match the benchmark's single-workspace posture. The fixture's sessions were serialized inside each namespace, with up to eight namespaces in flight.

Dataset

LongMemEval-S

Published LongMemEval benchmark; 500 questions, with 470 scored after excluding 30 abstentions. SHA-256 d6f21ea9d60a0d56f34a05b609c79c88a451d2ae03597821ea3d5a9678c3a442.

Embeddings

mxbai-embed-large

mxbai-embed-large:latest, digest 468836162de7f81e041c43663fedbbba921dcea9b9fefea135685a39b2d83dd8, through Ollama 0.32.4 on an NVIDIA GeForce RTX 5080.

Recall row

Raw, top ten

format=raw, top_k=10, token_budget=10000, with eight recall workers across independent namespaces.

Ingestion covered 23,867 fixture session rows and 124,366 /memory/learn calls, including 13 repeated session keys. HTTP 200 responses with status=partial were rejected and retried rather than counted as completed.

The run had to clear every gate before scoring.

Accepted artifact hashes

Recall JSONL
6797da4989244a946f1aaacf7e79a23ed4030a797e9b4b23f7e4bc3af2a2685f
Score JSON
5a1fee799c6f9104d30a1e33da42da26ca0c5396769305badca735a1059cc2f0
Qdrant payload
911a5c91963f8211f01a0824ce0e3b3d7cd4aba15f0449ec25b996d70b39a942
Lifecycle state
9df0b18b1422f7999413ca88df9488224fa88197e397ee9c217a15d4502c10bf

The same questions, paired with the August 3 result.

The 470 scored question IDs were paired against the previously published run. The current result adds 74 net hits, a change of 15.7447 percentage points. The comparison describes the measured difference; it does not assign that difference to a single cause.

385 → 459questions with labeled evidence in the top ten
Paired outcome for the same 470 scored question IDs
OutcomeQuestions
Evidence found in both runs384
Evidence missed in both runs10
Previous miss → current hit75
Previous hit → current miss1

The exact two-sided McNemar p-value is 2.0381730293306602e-21.

Follow the same frozen path.

  1. Check out the benchmarked Firekeep build.Use commit 1d4405a256e922a1494f251bb8ef78cd81f9d382.
  2. Verify both input digests.Match the LongMemEval-S dataset and embedding-model hashes published above.
  3. Start empty isolated stores.Require zero Qdrant, Neo4j, and Redis benchmark state before ingest.
  4. Execute every fixture call.Preserve ordering and repeated rows, and retry partial responses; require 124,366 successes.
  5. Clear the store and queue gates.Verify unique counts, queue depth, and dead-letter state before recall.
  6. Run the frozen retrieval row.Use raw output, top_k=10, and token_budget=10000 across all 500 questions.
  7. Score the 470 non-abstention questions.Reject the run on any recall, ledger, integrity, or immutability failure.

Read the result at the right altitude.

These boundaries make the number more useful: they say exactly where it applies.

Inspect the result data Read the methodology Install Firekeep See Firekeep in daily use