Skip to content

Customer Memory Agent

Remembers each customer’s history across conversations.

Industry Level Difficulty Recommended mode
Customer support 4 of 5 Expert flat
  • Customers repeat themselves to every agent.
  • History is spread across systems.
  • Context is lost between channels.
  1. One SrvDB database per tenant, or per customer segment.
  2. Conversation summaries are stored and recalled by meaning.
  3. Screenshots matched with image embeddings.
  4. Old data removed with delete and compact().
Today With Customer Memory Agent on SrvDB
Customers repeat themselves Context recalled automatically
Channel silos One memory
Retention handled manually Delete and compact by policy
  1. Summarise conversations.
  2. Store per customer.
  3. Recall on contact.
  4. Update after each case.
  5. Apply retention.
  • Several databases: each database is a directory, so different data types or tenants stay separate.
  • upsert: inserts new items and replaces changed ones, so the knowledge base stays current.
  • delete and compact(): remove items immediately from search, then reclaim disk space.
  • Crash-safe persist(): after it returns, data survives a crash or power loss and reopens exactly as committed.
  • Personalised support
  • Escalation context
  • Account managers’ briefings
  • SaaS tenant isolation
  • Voice transcript recall
  • Retention compliance

embed() is your embedding model (for example sentence-transformers, or a function that turns your records into feature vectors).

import json
import srvdb
db = srvdb.Database("./customer-memory-agent-db", dimension=384)
def ingest(items):
"""items: list of (id, text, metadata dict)"""
db.upsert(
ids=[i for i, _, _ in items],
embeddings=[embed(t) for _, t, _ in items],
metadatas=[json.dumps(m) for _, _, m in items],
)
db.persist() # crash-safe checkpoint
def recall_customer(context, k=5):
hits = db.search(embed(context), k)
return [(json.loads(db.get(i)), round(score, 3)) for i, score in hits]
  • Respect privacy and retention rules.
  1. Prototype: load a sample of real data with flat mode and check that searches return what an expert expects.
  2. Measure: if you move to an approximate mode, compare its results with flat on the same queries (recall).
  3. Pipeline: add continuous upsert and decide when to call persist().
  4. Harden: test restarts and crashes, add logging, review every output path with domain experts.
  5. Deploy: ship the database directory with the application or service.
Level Project What it does
1 · Beginner Knowledge Base Search Customers and agents find the right article from their own words.
2 · Intermediate Helpdesk Answer Bot Drafts replies from similar solved tickets and articles.
3 · Advanced Ticket Deduplicator Finds duplicate tickets and emerging issue clusters.
4 · Expert Customer Memory Agent (this page) Remembers each customer’s history across conversations.
5 · Frontier Offline Support Kiosk A self-service assistant that works without internet.

See also: Use cases · Live examples (coming soon)