langchain_mongodb.cache
.MongoDBCache¶
- class langchain_mongodb.cache.MongoDBCache(connection_string: str, collection_name: str = 'default', database_name: str = 'default', **kwargs: Dict[str, Any])[来源]¶
MongoDB Atlas高速缓存
使用MongoDB Atlas作为后端的高速缓存
初始化Atlas高速缓存。在实例化时创建集合
- 参数
collection_name (str) – 保存缓存数据使用的集合名称。默认为“default”。
connection_string (str) – 连接到MongoDB Atlas的连接URI。默认为“default”。
database_name (str) – 保存缓存数据使用的数据库名称。默认为“default”。
kwargs (Dict[str, Any]) –
属性
LLM
PROMPT
RETURN_VAL
collection
返回用于存储缓存值使用的集合。
database
返回用于存储缓存值的数据库。
方法
__init__
(connection_string[, ...])初始化Atlas高速缓存。
aclear
(**kwargs)异步清除缓存,可以接收额外的关键字参数。
alookup
(prompt, llm_string)根据提示和llm_string进行异步查找。
aupdate
(prompt, llm_string, return_val)根据提示和llm_string异步更新缓存。
clear
(**kwargs)清除缓存,可以接收额外的关键字参数。
lookup
(prompt, llm_string)根据提示和llm_string进行查找。
update
(prompt, llm_string, return_val)根据提示和llm_string更新缓存。
- __init__(connection_string: str, collection_name: str = 'default', database_name: str = 'default', **kwargs: Dict[str, Any]) None [源代码]¶
初始化Atlas高速缓存。在实例化时创建集合
- 参数
collection_name (str) – 保存缓存数据使用的集合名称。默认为“default”。
connection_string (str) – 连接到MongoDB Atlas的连接URI。默认为“default”。
database_name (str) – 保存缓存数据使用的数据库名称。默认为“default”。
kwargs (Dict[str, Any]) –
- 返回类型
None
- async aclear(**kwargs: Any) None ¶
异步清除缓存,可以接收额外的关键字参数。
- 参数
kwargs (Any) –
- 返回类型
None
- async alookup(prompt: str, llm_string: str) Optional[Sequence[Generation]] ¶
根据提示和llm_string进行异步查找。
期望缓存实现能够从提示(prompt)和LLM字符串(llm_string)的二元组生成一个键(例如,通过分隔符拼接它们)。
- 参数
prompt (str) – 提示的字符串表示形式。对于Chat模型,提示被非平凡序列化为语言模型。
llm_string (str) – LLM配置的字符串表示形式。这用于捕获LLM的调用参数(例如,模型名称、温度、停用词、最大令牌数等)。这些调用参数被序列化为字符串表示形式。
- 返回
缓存未命中时返回None。当缓存命中时,返回缓存的值。缓存的值是生成列表(或子类)。
- 返回类型
Optional[Sequence[Generation]]
- async aupdate(prompt: str, llm_string: str, return_val: 序列[生成器]) None ¶
根据提示和llm_string异步更新缓存。
提示信息和llm_string用于生成缓存的键。键应与查找方法中的键相匹配。
- 参数
prompt (str) – 提示的字符串表示形式。对于Chat模型,提示被非平凡序列化为语言模型。
llm_string (str) – LLM配置的字符串表示形式。这用于捕获LLM的调用参数(例如,模型名称、温度、停用词、最大令牌数等)。这些调用参数被序列化为字符串表示形式。
return_val (序列[生成器]) – 要缓存的值。该值是一个生成器(或其子类)的列表。
- 返回类型
None
- clear(**kwargs: Any) None ¶
清除缓存可接受额外的关键字参数。任何额外的参数都将以筛选条件的形式传播,以确定哪些内容将被删除。
- 例如:
# 仅删除llm_string为“fake-model”的条目 self.clear(llm_string="fake-model")
- 参数
kwargs (Any) –
- 返回类型
None
- lookup(prompt: str, llm_string: str) Optional[序列[生成器]] [source]¶
根据提示和llm_string进行查找。
- 参数
prompt (str) –
llm_string (str) –
- 返回类型
Optional[Sequence[Generation]]
- update(prompt: str, llm_string: str, return_val: Sequence[Generation]) None [source]¶
根据提示和llm_string更新缓存。
- 参数
prompt (str) –
llm_string (str) –
return_val (Sequence[Generation]) –
- 返回类型
None