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]

[Deprecated]

Notes

Deprecated since version 0.0.22.

使用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: token+api_endpoint的替代

您可以传递一个已创建的’astrapy.db.AsyncAstraDB’实例。

namespace: 创建集合的命名空间(又名键空间)。

默认为数据库的“默认命名空间”。

setup_mode: 用于创建Astra DB集合的模式(SYNC、ASYNC或OFF)。 pre_delete_collection: 是否在创建集合之前删除集合。

如果为False且集合已经存在,则将直接使用该集合。

Methods

__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])

获取与给定前缀匹配的键的迭代器。

Parameters
  • collection_name (str) –

  • token (Optional[str]) –

  • api_endpoint (Optional[str]) –

  • astra_db_client (Optional[AstraDB]) –

  • namespace (Optional[str]) –

  • async_astra_db_client (Optional[AsyncAstraDB]) –

  • pre_delete_collection (bool) –

  • setup_mode (SetupMode) –

Return type

None

__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[source]

使用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: token+api_endpoint的替代

您可以传递一个已创建的’astrapy.db.AsyncAstraDB’实例。

namespace: 创建集合的命名空间(又名键空间)。

默认为数据库的“默认命名空间”。

setup_mode: 用于创建Astra DB集合的模式(SYNC、ASYNC或OFF)。 pre_delete_collection: 是否在创建集合之前删除集合。

如果为False且集合已经存在,则将直接使用该集合。

Parameters
  • collection_name (str) –

  • token (Optional[str]) –

  • api_endpoint (Optional[str]) –

  • astra_db_client (Optional[AstraDB]) –

  • namespace (Optional[str]) –

  • async_astra_db_client (Optional[AsyncAstraDB]) –

  • pre_delete_collection (bool) –

  • setup_mode (SetupMode) –

Return type

None

async amdelete(keys: Sequence[str]) None

删除给定的键及其关联的值。

参数:

keys(Sequence[K]):要删除的键的序列。

Parameters

keys (Sequence[str]) –

Return type

None

async amget(keys: Sequence[str]) List[Optional[V]]

获取与给定键相关联的值。

参数:

keys(Sequence[K]):键的序列。

返回:

与键相关联的可选值序列。 如果未找到键,则相应的值将为None。

Parameters

keys (Sequence[str]) –

Return type

List[Optional[V]]

async amset(key_value_pairs: Sequence[Tuple[str, V]]) None

设置给定键的值。

参数:

key_value_pairs(Sequence[Tuple[K,V]]):键值对的序列。

Parameters

key_value_pairs (Sequence[Tuple[str, V]]) –

Return type

None

async ayield_keys(*, prefix: Optional[str] = None) AsyncIterator[str]

获取与给定前缀匹配的键的迭代器。

参数:

prefix(str):要匹配的前缀。

返回:

Iterator[K | str]:一个迭代器,用于匹配给定前缀的键。

该方法允许返回一个K或str类型的迭代器,具体取决于给定存储的情况。

Parameters

prefix (Optional[str]) –

Return type

AsyncIterator[str]

decode_value(value: Any) Any[source]

从Astra DB解码值

Parameters

value (Any) –

Return type

Any

encode_value(value: Any) Any[source]

为Astra DB编码数值

Parameters

value (Any) –

Return type

Any

mdelete(keys: Sequence[str]) None

删除给定的键及其关联的值。

参数:

keys(Sequence[K]):要删除的键的序列。

Parameters

keys (Sequence[str]) –

Return type

None

mget(keys: Sequence[str]) List[Optional[V]]

获取与给定键相关联的值。

参数:

keys(Sequence[K]):键的序列。

返回:

与键相关联的可选值序列。 如果未找到键,则相应的值将为None。

Parameters

keys (Sequence[str]) –

Return type

List[Optional[V]]

mset(key_value_pairs: Sequence[Tuple[str, V]]) None

设置给定键的值。

参数:

key_value_pairs(Sequence[Tuple[K,V]]):键值对的序列。

Parameters

key_value_pairs (Sequence[Tuple[str, V]]) –

Return type

None

yield_keys(*, prefix: Optional[str] = None) Iterator[str]

获取与给定前缀匹配的键的迭代器。

参数:

prefix(str):要匹配的前缀。

返回:

Iterator[K | str]:一个迭代器,用于匹配给定前缀的键。

该方法允许返回一个K或str类型的迭代器,具体取决于给定存储的情况。

Parameters

prefix (Optional[str]) –

Return type

Iterator[str]

Examples using AstraDBStore