跳到主要内容
Cassandra 是一款 NoSQL、面向行、高度可扩展且高可用的数据库。从 5.0 版本开始,该数据库附带向量搜索功能

概览

Cassandra 文档加载器从 Cassandra 数据库返回一个 LangChain 文档列表。 您必须提供一个 CQL 查询或一个表名来检索文档。加载器接受以下参数:
  • table:(可选)从中加载数据的表。
  • session:(可选)cassandra 驱动会话。如果未提供,将使用 cassio 解析的会话。
  • keyspace:(可选)表的键空间。如果未提供,将使用 cassio 解析的键空间。
  • query:(可选)用于加载数据的查询。
  • page_content_mapper:(可选)一个将行转换为字符串页面内容的函数。默认将行转换为 JSON。
  • metadata_mapper:(可选)一个将行转换为元数据字典的函数。
  • query_parameters:(可选)调用 session.execute 时使用的查询参数。
  • query_timeout:(可选)调用 session.execute 时使用的查询超时时间。
  • query_custom_payload:(可选)调用 session.execute 时使用的查询 custom_payload。
  • query_execution_profile:(可选)调用 session.execute 时使用的查询 execution_profile。
  • query_host:(可选)调用 session.execute 时使用的查询主机。
  • query_execute_as:(可选)调用 session.execute 时使用的查询 execute_as。

使用文档加载器加载文档

from langchain_community.document_loaders import CassandraLoader

从 cassandra 驱动 Session 初始化

您需要创建一个 cassandra.cluster.Session 对象,如 Cassandra 驱动文档中所述。具体细节有所不同(例如网络设置和身份验证),但可能类似于
from cassandra.cluster import Cluster

cluster = Cluster()
session = cluster.connect()
您需要提供 Cassandra 实例的现有键空间名称
CASSANDRA_KEYSPACE = input("CASSANDRA_KEYSPACE = ")
创建文档加载器
loader = CassandraLoader(
    table="movie_reviews",
    session=session,
    keyspace=CASSANDRA_KEYSPACE,
)
docs = loader.load()
docs[0]
Document(page_content='Row(_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={'table': 'movie_reviews', 'keyspace': 'default_keyspace'})

从 cassio 初始化

也可以使用 cassio 来配置会话和键空间。
import cassio

cassio.init(contact_points="127.0.0.1", keyspace=CASSANDRA_KEYSPACE)

loader = CassandraLoader(
    table="movie_reviews",
)

docs = loader.load()

归属声明

Apache Cassandra、Cassandra 和 Apache 是Apache Software Foundation 在美国和/或其他国家的注册商标或商标。

以编程方式连接这些文档到 Claude、VSCode 等,通过 MCP 获取实时答案。
© . This site is unofficial and not affiliated with LangChain, Inc.