跳到主要内容
Open In ColabOpen on GitHub

CassandraByteStore

这将帮助您开始使用 Cassandra 键值存储。有关所有 CassandraByteStore 功能和配置的详细文档,请参阅API 参考

概述

Cassandra 是一个 NoSQL、面向行的、高度可伸缩且高可用的数据库。

集成详情

类别本地JS 支持包下载量最新包版本
CassandraByteStorelangchain_communityPyPI - DownloadsPyPI - Version

设置

CassandraByteStoreByteStore 的一个实现,它将数据存储在您的 Cassandra 实例中。存储键必须是字符串,并将映射到 Cassandra 表的 row_id 列。存储的 bytes 值映射到 Cassandra 表的 body_blob 列。

安装

LangChain 的 CassandraByteStore 集成位于 langchain_community 包中。根据您使用的初始化方法,您还需要安装 cassio 包或 cassandra-driver 包作为对等依赖项

%pip install -qU langchain_community
%pip install -qU cassandra-driver
%pip install -qU cassio

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

实例化

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

from cassandra.cluster import Cluster

cluster = Cluster()
session = cluster.connect()

然后您可以创建您的存储!您还需要提供 Cassandra 实例中现有 keyspace 的名称

from langchain_community.storage import CassandraByteStore

kv_store = CassandraByteStore(
table="my_store",
session=session,
keyspace="<YOUR KEYSPACE>",
)
API 参考:CassandraByteStore

使用

您可以使用 mset 方法像这样设置键下的数据

kv_store.mset(
[
["key1", b"value1"],
["key2", b"value2"],
]
)

kv_store.mget(
[
"key1",
"key2",
]
)

您可以使用 mdelete 方法删除数据

kv_store.mdelete(
[
"key1",
"key2",
]
)

kv_store.mget(
[
"key1",
"key2",
]
)

使用 cassio 初始化

也可以使用 cassio 来配置会话和 keyspace。

import cassio

cassio.init(contact_points="127.0.0.1", keyspace="<YOUR KEYSPACE>")

store = CassandraByteStore(
table="my_store",
)

store.mset([("k1", b"v1"), ("k2", b"v2")])
print(store.mget(["k1", "k2"]))

API 参考

有关所有 CassandraByteStore 功能和配置的详细文档,请参阅 API 参考: https://python.langchain.ac.cn/api_reference/community/storage/langchain_community.storage.cassandra.CassandraByteStore.html