Read this first

The projects named here — mem0, Zep, Letta, cognee — are good at what they set out to do, and several of them are considerably more mature than RTFM is. They solve a different problem: remembering what happened in a conversation, cheaply, at scale, with hosted infrastructure you do not have to run.

RTFM is aimed at a narrower question: can a fact be checked, and can the system be trusted when it says it does not know. The comparison below is about design choices, not quality. Where those projects are ahead, that is said plainly.

None of the rows are benchmark results. They describe how each family is built. Measured numbers live on the research page, with the method and the failures.

Design choices, side by side

Axis Question Ordinary RAG Memory layers RTFM
Provenance Can you get from a claim back to the exact place in the exact version of a document? A chunk usually carries a document id, sometimes a page. The text may have changed since it was indexed. Memories generally record which conversation or document they came from, which is enough to audit a session. Document and revision on every fact. Old revisions are kept, so a quote stays checkable after the source is edited. A per-quote locator is in the payload but is not yet populated for every fact.
Not knowing What happens when the material does not cover the question? Chunks are retrieved anyway and a model writes something from them. Whether it refuses is a property of the prompt and the model. Same: retrieval feeds a generator, so an empty result can still become a fluent paragraph. An empty pack and an explicit note. There is no generator on the query path, so nothing can paper over a gap.
Versions Can it tell “true for 1.5” from “true for 2.0”? Not structurally. Both sentences are text, and the nearest neighbour wins. Recency is usually the tie-breaker, which answers “what did we learn last” rather than “what applies here”. Applicability is a field. Two scoped facts coexist instead of overwriting each other, and the scope comes back with the fact.
Conflicts What happens when two sources disagree? Both chunks may be retrieved; the model reconciles them silently, or picks one. Often resolved on write — the newer memory updates or replaces the older. Both are kept, flagged, and returned together with their sources. Nothing is resolved quietly.
Privacy Can a public caller learn that private knowledge exists? Depends entirely on how the index was partitioned. Hosted services isolate per user or per agent; the boundary is the vendor’s to enforce. Filtered in SQL before retrieval and on every graph step. Private rows are not returned and not counted, so totals do not betray them.
Where it lives If the tool disappeared tomorrow, what would you still have? A vector store you would need to re-embed, and the original documents. An export, in whatever shape the vendor provides. Markdown files with YAML front matter in your own repository. The index is derived and rebuildable; the files are the product.
Cost of a query What does asking cost? An embedding call plus a generation call. Retrieval, often plus a model call to compose or update memories. Zero tokens. Retrieval is mechanical. Tokens are spent once, when documents are loaded.

Where the others are stronger

Choosing RTFM costs you these things. They are real.

Conversational memory

mem0, Zep and Letta are built to absorb dialogue as it happens, decide what is worth keeping, and update it over time. RTFM ingests documents; it has no equivalent story for chat turns.

Semantic recall

Embedding-based retrieval finds material that shares no vocabulary with the question. RTFM’s retrieval is lexical — stemming, synonyms, ranking — so a question phrased in genuinely different words can miss. Our own benchmark shows this cost.

Maturity and operations

Hosted offerings, SDKs across languages, managed scaling, support. RTFM is a prototype you run yourself.

Prose answers

If what you want is a paragraph a person can read, a generator is the right tool and RTFM is not it. RTFM returns structured facts and expects an agent to do the talking.

When RTFM is the wrong choice

You need a chatbot

There is no synthesis here. Something else has to write the sentences.

Your knowledge is conversation, not documents

The ingest pipeline reads files and pages. Dialogue is not its shape.

You want someone else to run it

There is no hosted RTFM, and none is planned right now.