langchain_community.storage.astradb
.AstraDBStore¶
- class langchain_community.storage.astradb.AstraDBStore(collection_name: str, token: Optional[str] = None, api_endpoint: Optional[str] = None, astra_db_client: Optional[AstraDB] = None, namespace: Optional[str] = None, *, async_astra_db_client: Optional[AsyncAstraDB] = None, pre_delete_collection: bool = False, setup_mode: SetupMode = SetupMode.SYNC)[source]¶
自版本 0.0.22 起已弃用:请使用
langchain_astradb.AstraDBStore
代替。使用 DataStax AstraDB 作为基础存储的 BaseStore 实现。
值类型可以是任何能通过 json.dumps 序列化的类型。可用于存储与 CacheBackedEmbeddings 一起使用的嵌入。
AstraDB 集合中的文档将具有以下格式
{ "_id": "<key>", "value": <value> }
- 参数
collection_name (字符串) – 创建/使用 Astra DB 集合的名称。
token (可选字符串) – Astra DB 使用时的 API 令牌。
api_endpoint (可选字符串) – API 端点的完整 URL,例如 https://<DB-ID>-us-east1.apps.astra.datastax.com。
astra_db_client (可选字符串) – 替代方法 token+api_endpoint,您可以传入已创建的 ‘astrapy.db.AstraDB’ 实例。
async_astra_db_client (可选:[AsyncAstraDB]) – token+api_endpoint的替代方案,您可以将已经创建的‘astrapy.db.AsyncAstraDB’实例传递。
namespace (可选:str) – 创建集合的命名空间(又称键空间)。默认为数据库的“默认命名空间”。
setup_mode (SetupMode) – 创建Astra DB集合所用模式(同步、异步或关闭)。
pre_delete_collection (bool) – 创建集合前是否删除它。如果为False并且集合已存在,则将使用现有集合。
方法
__init__
(collection_name[, token, ...])使用 DataStax AstraDB 作为基础存储的 BaseStore 实现。
amdelete
(keys)异步删除给定的键及其相关值。
amget
(keys)异步获取与给定的键相关联的值。
amset
(key_value_pairs)异步设置给定键的值。
ayield_keys
(*[, prefix])异步获取与给定前缀匹配的键的迭代器。
decode_value
(value)从Astra DB解码值
encode_value
(value)将值编码为Astra DB
mdelete
(keys)删除给定的键及其相关值。
mget
(keys)获取与给定键相关联的值。
mset
(key_value_pairs)为给定键设置值。
yield_keys
(*[, prefix])获取与给定前缀匹配的键的迭代器。
- __init__(collection_name: str, token: Optional[str] = None, api_endpoint: Optional[str] = None, astra_db_client: Optional[AstraDB] = None, namespace: Optional[str] = None, *, async_astra_db_client: Optional[AsyncAstraDB] = None, pre_delete_collection: bool = False, setup_mode: SetupMode = SetupMode.SYNC) None [源代码]¶
使用 DataStax AstraDB 作为基础存储的 BaseStore 实现。
值类型可以是任何能通过 json.dumps 序列化的类型。可用于存储与 CacheBackedEmbeddings 一起使用的嵌入。
AstraDB 集合中的文档将具有以下格式
{ "_id": "<key>", "value": <value> }
- 参数
collection_name (字符串) – 创建/使用 Astra DB 集合的名称。
token (可选字符串) – Astra DB 使用时的 API 令牌。
api_endpoint (可选字符串) – API 端点的完整 URL,例如 https://<DB-ID>-us-east1.apps.astra.datastax.com。
astra_db_client (可选字符串) – 替代方法 token+api_endpoint,您可以传入已创建的 ‘astrapy.db.AstraDB’ 实例。
async_astra_db_client (可选:[AsyncAstraDB]) – token+api_endpoint的替代方案,您可以将已经创建的‘astrapy.db.AsyncAstraDB’实例传递。
namespace (可选:str) – 创建集合的命名空间(又称键空间)。默认为数据库的“默认命名空间”。
setup_mode (SetupMode) – 创建Astra DB集合所用模式(同步、异步或关闭)。
pre_delete_collection (bool) – 创建集合前是否删除它。如果为False并且集合已存在,则将使用现有集合。
- 返回类型
None
- async amdelete(keys: Sequence[str]) None ¶
异步删除给定的键及其相关值。
- 参数
keys (序列[K]) – 要删除的键的序列。
- 返回类型
None
- async amget(keys: Sequence[str]) List[Optional[V]]¶
异步获取与给定的键相关联的值。
- 参数
keys (Sequence[K]) – 键的序列。
- 返回
与键关联的可选值的序列。如果找不到键,则对应的值将为None。
- 返回类型
List[Optional[V]]
- async amset(key_value_pairs: Sequence[Tuple[str, V]) None¶
异步设置给定键的值。
- 参数
key_value_pairs (Sequence[Tuple[K, V]]) – 一个键值对序列。
- 返回类型
None
- async ayield_keys(*, prefix: Optional[str] = None) AsyncIterator[str] ¶
异步获取与给定前缀匹配的键的迭代器。
- 参数
prefix (str) – 匹配的前缀。
- 产生
Iterator[K | str] – 一个迭代器,遍历与给定前缀匹配的键。此方法允许返回 K 或 str 的迭代器,具体取决于给定存储器的适用性。
- 返回类型
AsyncIterator[str]
- mdelete(keys: Sequence[str]) None ¶
删除给定的键及其相关值。
- 参数
keys (序列[K]) – 要删除的键的序列。
- 返回类型
None
- mget(keys: Sequence[str]) List[Optional[V]] ¶
获取与给定键相关联的值。
- 参数
keys (Sequence[K]) – 键的序列。
- 返回
与键关联的可选值的序列。如果找不到键,则对应的值将为None。
- 返回类型
List[Optional[V]]
- mset(key_value_pairs: Sequence[Tuple[str, V]]) None ¶
为给定键设置值。
- 参数
key_value_pairs (Sequence[Tuple[K, V]]) – 一个键值对序列。
- 返回类型
None
- yield_keys(*, prefix: Optional[str] = None) Iterator[str] ¶
获取与给定前缀匹配的键的迭代器。
- 参数
prefix (str) – 匹配的前缀。
- 产生
Iterator[K | str] – 一个迭代器,遍历与给定前缀匹配的键。此方法允许返回 K 或 str 的迭代器,具体取决于给定存储器的适用性。
- 返回类型
Iterator[str]