This will help you get started with Astra DB key-value stores. For detailed documentation of all AstraDBByteStore features and configurations head to the API reference.

Overview

DataStax Astra DB is a serverless AI-ready database built on Apache Cassandra® and made conveniently available through an easy-to-use JSON API.

Integration details

ClassPackageLocalJS supportPackage downloadsPackage latest
AstraDBByteStorelangchain-astradbPyPI - DownloadsPyPI - Version

Setup

To create an AstraDBByteStore byte store, you’ll need to create a DataStax account.

Credentials

After signing up, set the following credentials:
from getpass import getpass

ASTRA_DB_API_ENDPOINT = getpass("ASTRA_DB_API_ENDPOINT = ")
ASTRA_DB_APPLICATION_TOKEN = getpass("ASTRA_DB_APPLICATION_TOKEN = ")

Installation

The LangChain AstraDB integration lives in the langchain-astradb package:
%pip install -qU langchain-astradb

Instantiation

Now we can instantiate our byte store:
from langchain_astradb import AstraDBByteStore

kv_store = AstraDBByteStore(
    api_endpoint=ASTRA_DB_API_ENDPOINT,
    token=ASTRA_DB_APPLICATION_TOKEN,
    collection_name="my_store",
)

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]
You can use an AstraDBByteStore anywhere you’d use other ByteStores, including as a cache for embeddings.

API reference

For detailed documentation of all AstraDBByteStore features and configurations, head to the API reference: python.langchain.com/api_reference/astradb/storage/langchain_astradb.storage.AstraDBByteStore.html