OpenViSTAI · Agents · Blockchain · Crypto
Menu
Agent Memory & RAG

Sodamem

SodaMem is an open-source Python memory layer for AI agents that stores evolving facts, rebuilds entity profiles on demand and grounds retrieved context in its source conversation turns.

Independent OpenViST project profile, based on linked sources.

Sodamem — OpenViST project profile in Agent Memory & RAG.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use SodaMem when integrating an agent with persistent conversational memory that must account for changing facts and expose the evidence behind retrieved context.

Who it is for

  • Developers building conversational AI agents that must retain changing user facts.
  • Teams that need citations from recalled context back to the originating conversation turn.
  • Agent builders seeking repeatable retrieval without an LLM call for every query.

Documented uses

  • Ingest conversation turns and extract fact events for persistent memory.
  • Keep prior facts readable when newer facts supersede them.
  • Build prompt-ready context and citations for a query.
  • Reconstruct entity profiles from stored memory.
Before you choose

Requirements & limits

The repository is public and identifies the project as Apache-2.0 licensed. The quick-start documentation specifies Python 3.11 or later.

  • The core implementation is Python; the README also lists a TypeScript adapter for Vercel AI SDK.
  • Ingestion uses a fact extractor and configured LLM provider; read-only search and context building can use a store opened without the extractor.
  • The documented default installation makes a one-time MiniLM embedding-model download; the README says a pre-seeded cache enables air-gapped use.
  • MCP integrations and framework or client adapters provide distinct routes for connecting SodaMem to an existing agent stack.
  • The repository reports 92.8% on LongMemEval and 86.88% on LoCoMo; these are project-published benchmark results.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Install SodaMem and ingest a conversation turn

Set up a local Python memory store and add a user conversation turn using SodaMem’s documented quick-start flow.

Before you start

  • Python 3.11 or later.
  • Install the chroma and llm extras with pip.
  • An LLM provider configured through environment variables such as SODAMEM_LLM_API_KEY for ingestion.

Steps

  1. Install the package with the command below.

    Documented command
    pip install "sodamem[chroma,llm]"
  2. Create a SodaMem instance with SodaMem.open("./data", extractor=FactEventExtractorV2(create_provider_from_env())).

  3. Call mem.ingest() with conversation messages and the documented user_id, session_id, and session_time fields.

  4. Build context with mem.build_context(...) and inspect block.text and block.citations.

Expected outcome

A local store is created and receives the supplied turn; context can be rendered with citations to its supporting evidence.

Guide limitations

  • The documented example uses the FactEventExtractorV2 extractor for ingestion; search and context building can instead use a read-only store opened without an extractor.
  • The default install makes a one-time download of the 90 MB MiniLM embedding model; the README says pre-seeding the cache allows air-gapped operation.
  • The example’s context-building call is described as requiring zero LLM calls; this does not mean ingestion avoids provider configuration.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
12 October 2026
Original website title
SodaMem/SodaMem · Official homepage title · retained in its source language