Skip to content
Compound Pulse · Learned Memory

Give your chatbot a memory that learns how to remember.

Most chatbot memory uses one retrieval rule chosen by an engineer. This layer keeps memory explicit, then learns which named strategy to use as conversations stretch across sessions, updates and changing preferences.

Evaluation in progress. The live lab exposes current V1 behavior; benchmark superiority is not claimed until measured against long-context, compaction and retrieval baselines.
01

Explicit

Memories are inspectable records, not hidden latent state.

02

Adaptive

Feedback updates the value of named store and retrieval strategies.

03

Revisable

New facts can update or supersede old ones without erasing the audit history.

04

Bounded

The context builder selects useful memory under a hard token budget.

Live product surface

Memory Lab

Use a real isolated memory store tied to this browser. Add turns, change facts, ask for context, inspect the decision trace, reward or penalize it, and delete everything whenever you want.

Checking memory service…
Conversation
The controller decides whether to store, update, supersede or ignore.
Context assembly
Selected context0 tokens
No context built yet.
Current explicit state

Your memories

No memories yet.

Why did it do that?

Latest decision trace

No decision yet.

Your control: this demo uses a random 256-bit browser capability to isolate its memory. You can delete individual items or clear the full memory, decision history and learned policy state. Resetting browser storage creates a new isolated memory identity.
Developer interface

One memory layer. Any chatbot.

The product boundary is provider-neutral: observe turns, assemble context, send outcomes back as feedback, and inspect every decision. The LLM can be OpenAI-compatible, Anthropic, Gemini, local inference or something else.

memory.observe(message)
context = memory.build_context(current_turn, token_budget=8000)
answer = chatbot(context)
memory.feedback(context.decision_id, reward=1)
memory.explain(context.decision_id)
rememberupdateretrievemergecompressforgetexplain
Integration intake

Integrate Learned Memory into a real chatbot or agent.

Start with a non-confidential technical brief. We need enough context to understand the memory contract, not your private prompts, credentials, model weights or production traces.

Model / provider

OpenAI-compatible, Anthropic, Gemini, local inference, custom serving stack or another provider. Include the deployment environment if it constrains integration.

Memory semantics

What should be remembered, updated, superseded or forgotten? Which facts or preferences must never be silently rewritten?

Context budget

What memory-token budget can the product consume per turn, and what current long-context or retrieval cost are you trying to reduce?

Data locality

Where may memory records and decision traces live: browser, private database, region-bound service, on-prem or another controlled environment?

Feedback signal

What observable outcome tells the controller that a memory/retrieval decision helped or hurt: user correction, task success, rating, conversion, latency/cost or another signal?

Evaluation baseline

What should we compare against—no memory, long context, compaction, vector retrieval, existing memory service—and what metric would make the integration worth keeping?

What V1 proves

Useful now. Built to learn more.

Runtime today

Explicit durable memory, updates/supersession, adaptive named retrieval, hard context budgets, feedback and traceability.

Research track

LongMemEval/LoCoMo-style chatbot environments, compaction and long-context baselines, and deeper long-horizon RL behind the same policy interface.

Advanced deployment

Pulse Brain can later add authority, provenance, validity and execution constraints without making the general memory layer enterprise-specific.