AstraDB
DataStax Astra DB 是一个无服务器、已为AI准备好的数据库,它构建在
Apache Cassandra®之上,并通过易于使用的 JSON API 提供服务。
概述
Astra DB Document Loader 会返 回一个从 Astra DB 集合中读取的 Langchain Document 对象列表。
该加载器接受以下参数:
api_endpoint: Astra DB API 端点。形如https://01234567-89ab-cdef-0123-456789abcdef-us-east1.apps.astra.datastax.comtoken: Astra DB token。形如AstraCS:aBcD0123...collection_name: AstraDB 集合名称namespace: (可选) AstraDB 命名空间(在 Astra DB 中称为 keyspace)filter_criteria: (可选) 在 find 查询中使用的过滤器projection: (可选) 在 find 查询中使用的投影limit: (可选) 要检索的文档的最大数量extraction_function: (可选) 将 AstraDB 文档转换为 LangChainpage_content字符串的函数。默认为json.dumps
加载器为它读取的文档设置以下元数据:
metadata={
"namespace": "...",
"api_endpoint": "...",
"collection": "..."
}
设置
!pip install "langchain-astradb>=0.6,<0.7"
使用 Document Loader 加载文档
from langchain_astradb 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 = ")
ASTRA_DB_API_ENDPOINT = https://01234567-89ab-cdef-0123-456789abcdef-us-east1.apps.astra.datastax.com
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},
limit=10,
)
docs = loader.load()
docs[0]
Document(metadata={'namespace': 'default_keyspace', 'api_endpoint': 'https://01234567-89ab-cdef-0123-456789abcdef-us-east1.apps.astra.datastax.com', 'collection': 'movie_reviews'}, 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?"}')
Related
- Document loader conceptual guide
- Document loader how-to guides