AstraDB
DataStax Astra DB is a serverless vector-capable database built on Cassandra and made conveniently available through an easy-to-use JSON API.
Overview
The AstraDB Document Loader returns a list of Langchain Documents from an AstraDB database.
The Loader takes the following parameters:
api_endpoint: AstraDB API endpoint. Looks likehttps://01234567-89ab-cdef-0123-456789abcdef-us-east1.apps.astra.datastax.comtoken: AstraDB token. Looks likeAstraCS:6gBhNmsk135....collection_name: AstraDB collection namenamespace: (Optional) AstraDB namespacefilter_criteria: (Optional) Filter used in the find queryprojection: (Optional) Projection used in the find queryfind_options: (Optional) Options used in the find querynb_prefetched: (Optional) Number of documents pre-fetched by the loaderextraction_function: (Optional) A function to convert the AstraDB document to the LangChainpage_contentstring. Defaults tojson.dumps
The following metadata is set to the LangChain Documents metadata output:
{
    metadata : {
        "namespace": "...", 
        "api_endpoint": "...", 
        "collection": "..."
    }
}
Load documents with the Document Loader
from langchain_community.document_loaders import AstraDBLoader
API Reference:AstraDBLoader
from getpass import getpass
ASTRA_DB_API_ENDPOINT = input("ASTRA_DB_API_ENDPOINT = ")
ASTRA_DB_APPLICATION_TOKEN = getpass("ASTRA_DB_APPLICATION_TOKEN = ")
loader = AstraDBLoader(
    api_endpoint=ASTRA_DB_API_ENDPOINT,
    token=ASTRA_DB_APPLICATION_TOKEN,
    collection_name="movie_reviews",
    projection={"title": 1, "reviewtext": 1},
    find_options={"limit": 10},
)
docs = loader.load()
docs[0]
Document(page_content='{"_id": "659bdffa16cbc4586b11a423", "title": "Dangerous Men", "reviewtext": "\\"Dangerous Men,\\" the picture\'s production notes inform, took 26 years to reach the big screen. After having seen it, I wonder: What was the rush?"}', metadata={'namespace': 'default_keyspace', 'api_endpoint': 'https://01234567-89ab-cdef-0123-456789abcdef-us-east1.apps.astra.datastax.com', 'collection': 'movie_reviews'})
Related
- Document loader conceptual guide
 - Document loader how-to guides