This guide will help you get started with in-memory key-value stores. For detailed documentation of all InMemoryByteStore features and configurations head to the API reference.

Overview

The InMemoryByteStore is a non-persistent implementation of a ByteStore that stores everything in a Python dictionary. It’s intended for demos and cases where you don’t need persistence past the lifetime of the Python process.

Integration details

ClassPackageLocalJS supportPackage downloadsPackage latest
InMemoryByteStorelangchain-corePyPI - DownloadsPyPI - Version

Installation

The LangChain InMemoryByteStore integration lives in the langchain-core package:
%pip install -qU langchain-core

Instantiation

Now you can instantiate your byte store:
from langchain_core.stores import InMemoryByteStore

kv_store = InMemoryByteStore()

Usage

You can set data under keys like this using the mset method:
kv_store.mset(
    [
        ["key1", b"value1"],
        ["key2", b"value2"],
    ]
)

kv_store.mget(
    [
        "key1",
        "key2",
    ]
)
[b'value1', b'value2']
And you can delete data using the mdelete method:
kv_store.mdelete(
    [
        "key1",
        "key2",
    ]
)

kv_store.mget(
    [
        "key1",
        "key2",
    ]
)
[None, None]

API reference

For detailed documentation of all InMemoryByteStore features and configurations, head to the API reference: python.langchain.com/api_reference/core/stores/langchain_core.stores.InMemoryByteStore.html