Skip to main content

BindAI Memory

bindai-memory provides memory abstractions and storage providers for the BindAI framework.

It provides a common memory API that allows applications and agents to store and retrieve memory records while supporting multiple provider implementations.

Features

  • Memory abstractions
  • Memory records and memory types
  • Memory management
  • Provider abstraction
  • Provider registry
  • In-memory storage
  • SQLite storage
  • Vector-based storage
  • Memory results

Public API

The package exposes the main memory components directly from bindai_memory:

from bindai_memory import (
    Memory,
    MemoryManager,
    MemoryProvider,
    MemoryRecord,
    MemoryRegistry,
    MemoryResult,
    MemoryType,
)

Provider implementations include:

from bindai_memory import (
    InMemoryProvider,
    SQLiteMemoryProvider,
    VectorMemoryProvider,
)

Memory Providers

MemoryProvider defines the common provider abstraction used by memory implementations.

BindAI Memory currently provides:

  • InMemoryProvider
  • SQLiteMemoryProvider
  • VectorMemoryProvider

This allows the memory layer to use different storage strategies behind a common provider interface.

Memory Registry

MemoryRegistry provides provider registration and lookup.

The package registers the in-memory provider under the in_memory key during package initialization.

from bindai_memory import MemoryRegistry

provider = MemoryRegistry.get("in_memory")

Provider registration allows memory implementations to be resolved through a common registry rather than coupling applications to a specific provider class.

Memory Records

MemoryRecord represents an individual memory entry, while MemoryType identifies the type of memory.

from bindai_memory import (
    MemoryRecord,
    MemoryType,
)

MemoryResult provides the result abstraction returned by memory operations.

Memory Manager

MemoryManager provides the higher-level management layer for memory operations.

from bindai_memory import MemoryManager

manager = MemoryManager()

The exact provider configuration depends on the selected memory implementation.

Architecture

The memory package is structured around a provider abstraction:

Application / Agent
        │
        ▼
  MemoryManager
        │
        ▼
   MemoryProvider
        │
   ┌────┼──────────────┐
   │    │              │
   ▼    ▼              ▼
InMemory  SQLite      Vector
Provider  Provider    Provider

This separation allows the higher-level memory API to remain independent of the underlying storage implementation.

BindAI Integration

bindai-memory integrates with the broader BindAI framework through its core and embedding abstractions.

It can be used by higher-level components such as agents while keeping memory storage concerns separate from agent execution logic.

Development

This package is part of the BindAI workspace.

From the repository root:

uv sync

Run the complete test suite:

uv run pytest

Run static type checking for this package:

uv run mypy packages/bindai-memory

Documentation

For complete BindAI framework documentation:

https://docs.bindai.dev

License

BindAI is released under the MIT License.

Release files for bindai-memory 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bindai-memory 0.1.1
File Size Uploaded
bindai_memory-0.1.1.tar.gz 15.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for bindai-memory 0.1.1
File Interpreter ABI Platform
bindai_memory-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 33.7 kB

Release files / bindai_memory-0.1.1.tar.gz

Download URL bindai_memory-0.1.1.tar.gz
Size 15.0 kB
Tags Source
SHA-256 checksum
How to use checksums
9861a31d475d31cddacf5142e39a43afc5076a44df8d8446786726438f9b010d
BLAKE2b-256 checksum
How to use checksums
9f389e7ea171dd180052adc03b9151f48d4ac1a2a4efdf568bb13c7547f29ca1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.2

Release files / bindai_memory-0.1.1-py3-none-any.whl

Download URL bindai_memory-0.1.1-py3-none-any.whl
Size 18.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f10eb6d534fc56e9df2c116d79c681d9e1c7f2fd08b2d806b17a5d496a9db01d
BLAKE2b-256 checksum
How to use checksums
6890e70d023c8fc4e3ec1e3d89cb0ba44f6df8fc50de280e5ec6ae77b5907b55
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.2

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page