Skip to content

justin-nevins/ai-memory-system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AI Memory System

A reusable AI memory layer for persistent context across sessions.

Features

  • Multiple memory types: Short-term, episodic, semantic, and procedural
  • Pluggable storage: SQLite included, extensible for PostgreSQL, Redis, etc.
  • Semantic retrieval: Optional embedding-based search (requires embeddings extra)
  • REST API: Optional standalone service deployment (requires api extra)
  • Async-first: Built on asyncio for efficient I/O

Installation

# Basic installation
pip install -e .

# With development tools
pip install -e ".[dev]"

# With embedding support
pip install -e ".[embeddings]"

# Everything
pip install -e ".[all]"

Quick Start

import asyncio
from ai_memory import MemoryStore, MemoryType
from ai_memory.storage import SQLiteStorage

async def main():
    # Initialize
    storage = SQLiteStorage("memories.db")
    memory = MemoryStore(storage=storage, source="my_app")

    # Add a memory
    await memory.add(
        content="User prefers dark mode",
        type=MemoryType.SEMANTIC,
        importance=0.8,
    )

    # Recall relevant memories
    results = await memory.recall("user preferences", limit=5)
    for m in results:
        print(f"[{m.type.value}] {m.content}")

    await storage.close()

asyncio.run(main())

Memory Types

Type Purpose Lifespan
SHORT_TERM Session context, recent messages Minutes to hours
EPISODIC Specific events/interactions Days to months
SEMANTIC Facts, preferences, knowledge Long-term
PROCEDURAL Learned patterns, workflows Long-term

Project Structure

ai-memory-system/
├── src/ai_memory/
│   ├── core/           # Core types and memory store
│   ├── storage/        # Storage backends (SQLite, etc.)
│   ├── retrieval/      # Retrieval strategies
│   └── api/            # REST API (optional)
├── tests/              # Test suite
├── examples/           # Usage examples
└── docs/               # Documentation

Development

# Install dev dependencies
pip install -e ".[dev]"

# Run tests
pytest

# Format code
black src tests
ruff check src tests

# Type checking
mypy src

Status

Phase: Design/MVP

See docs/DESIGN-QUESTIONS.md for architecture decisions.

License

MIT

About

Hybrid neuro-symbolic memory system for AI applications

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages