跳至主要内容

AstraDB

DataStax Astra DB 是一个基于 Cassandra 构建的、支持向量的无服务器数据库,并通过易于使用的 JSON API 方便地提供。

概述

AstraDB 文档加载器从 AstraDB 数据库返回 Langchain 文档列表。

加载器采用以下参数

  • api_endpoint:AstraDB API 端点。类似于 https://01234567-89ab-cdef-0123-456789abcdef-us-east1.apps.astra.datastax.com
  • token:AstraDB 令牌。类似于 AstraCS:6gBhNmsk135....
  • collection_name:AstraDB 集合名称
  • namespace:(可选)AstraDB 命名空间
  • filter_criteria:(可选)在查找查询中使用的过滤器
  • projection:(可选)在查找查询中使用的投影
  • find_options:(可选)在查找查询中使用的选项
  • nb_prefetched:(可选)加载器预取的文档数量
  • extraction_function:(可选)一个函数,用于将 AstraDB 文档转换为 LangChain 的 page_content 字符串。默认为 json.dumps

以下元数据设置为 LangChain 文档元数据输出

{
metadata : {
"namespace": "...",
"api_endpoint": "...",
"collection": "..."
}
}

使用文档加载器加载文档

from langchain_community.document_loaders import AstraDBLoader
API 参考: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'})

此页面是否有帮助?


您也可以留下详细的反馈 在 GitHub 上.