Skip to content

jev-recall

Filters an assistant's memories by relevance, not resemblance: one Jev yes/no per memory in a single request, kept above a threshold.

ProjectbetaMIT

Overview

Jev Recall retrieves an AI assistant's memories by relevance rather than surface similarity. The README's example: a request to order an almond tart for a dinner party looks nothing like the memory that a guest has a severe tree-nut allergy, so embeddings miss it, while an LLM reranker would catch it but is too slow and costly to run every turn. Jev Recall puts every memory in one request's shared state with a short id and asks one yes/no question per memory, returning a probability for each.

Because results are thresholded rather than top-k, nothing is returned when nothing applies. Large stores are split across concurrent requests, and there are inline and shortlist modes (a multiple-choice ranking followed by verification of top candidates), plus an async API. A benchmark of 238 fictional memories and 18 requests where the relevant memory does not resemble the request compares BM25, dense retrieval, reranking, several Claude models and Jev modes. A live demo replays runs or runs live with your keys.

What the decision model decides

TypeQuestionAnswers
Yes / noIs this memory relevant to the current request?yes · no
ChoiceWhich memory is most relevant (shortlist mode)?—

How it works

  1. Put all memories with ids into one shared state
  2. Ask one Noul per memory referencing its id
  3. Keep memories above the threshold, best first
  4. Split large stores across concurrent requests

Strengths

  • Catches relevant memories that do not resemble the query
  • Threshold allows returning nothing
  • Reports cost and latency per call

Caveats

  • Memory text is sent to TypeSafe
  • Benchmark is small and fictional
  • Threshold needs tuning per application

Getting started

from jev_recall import Recall; Recall().filter(query, memories, threshold=0.5) with TYPESAFE_API_KEY set.

At a glance

Type
Project
Status
beta
Language
Python
Runtime
Library
Has code
yes
License
MIT

Use cases and integrations

How curated lists describe it

Frequently asked questions

What does Jev decide?

Whether each stored memory is relevant to the current request.

Why not embeddings?

The memories that change an answer often look nothing like the request.

Can it return no memories?

Yes. With a threshold, nothing is returned when nothing applies.

Related projects

  • Self-hosted memory MCP server on Cloudflare Workers where a Jev layer judges memory type, salience and durability and re-ranks recall.

    MCP serverprototypeTypeScript
  • Agent memory system where Jev or local Laya controls memory organisation, query routing, retrieval budgets and stopping.

    ProjectresearchPython
  • Local long-term memory for coding agents with an optional Jev reranker that orders recalled memories.

    ProjectproductionTypeScript
  • Volcengine's context database for agents, with a Jev rerank client that scores candidate documents with jev-latest as relevance.

    LibraryproductionPython
  • Multi-user MCP 'agents' cloud' on Cloudflare Workers with an optional search stage that reranks candidates with Workers AI Jev scores.

    MCP serverbetaTypeScript
  • Zilliz's cross-agent Markdown memory with an optional Jev reranker that asks yes/no relevance questions about retrieved chunks.

    LibraryproductionPython