--- title: "LangMem and past.dev: SDK memory vs memory service" description: "LangMem manages long-term memories over the LangGraph store. Compare its responsibilities, storage model and operation with the past.dev API." canonical: https://past.dev/compare/langmem last-updated: 2026-10-15 --- # LangMem and past.dev Source: https://past.dev/compare/langmem LangMem extracts and manages long-term memories for agents using a LangGraph store that the application configures and operates. past.dev accepts timestamped source text through an API and returns ranked documents with source excerpts. Choose based on whether memory belongs inside the application stack or behind a service contract. ## What LangMem provides [LangMem](https://langchain-ai.github.io/langmem/) provides utilities for extracting memories from conversations and storing them in a [LangGraph store](https://langchain-ai.github.io/langgraph/concepts/persistence/). Entries use namespaces and can include embeddings for semantic lookup. It provides cross-thread memory within the LangGraph ecosystem. ## What remains your job with an SDK - Operating the store: the backing persistence, its scaling and its versions are configuration you own. - The time model: store entries are keys with values; writing a key replaces it. Validity windows, supersession links and as-of queries are not part of the model. - Identity across sources: entries are namespaced by the keys you choose; joining the same person across email, chat and tickets is application logic. ## When to use each product - **Choose LangMem** for LangChain-native personalization where current-state preferences per user are the requirement and you are happy operating the store. - **Choose past.dev** when the application needs timestamped source text, identity-scoped recall, and dated source excerpts. The [LangGraph integration](/integrations/langgraph) uses checkpointers for graph state and the API for durable source-backed recall. ## Evaluation test Test a fact that changes, such as a user's employer. Ask for the current value and the value before the change. Supporting both requires [supersession](/glossary/fact-supersession) and [point-in-time recall](/glossary/point-in-time-recall). The [quickstart](/docs/memory-api/quickstart) demonstrates both. The [benchmarks page](/benchmarks) documents update tests. ## Frequently asked questions ### Can LangMem and past.dev be used together? Yes. A common split keeps LangMem for lightweight per-user preferences inside the app and routes durable, changing, shared facts through the API as tools. The LangChain and LangGraph integration pages show the wiring. ## Related - [Memory for LangChain](https://past.dev/integrations/langchain) - [Memory for LangGraph](https://past.dev/integrations/langgraph) - [Point-in-time recall](https://past.dev/glossary/point-in-time-recall) - [What is agent memory?](https://past.dev/what-is-agent-memory) - [Quickstart](https://past.dev/docs/memory-api/quickstart)