langchain_community.cache
.GPTCache¶
- class langchain_community.cache.GPTCache(init_func: Optional[Union[Callable[[Any, str], None], Callable[[Any], None]]] = None)[源代码]¶
使用 GPTCache 作为后端缓存的缓存。
通过传递初始化函数进行初始化(默认:None)。
- 参数
init_func (可选[Callable[[任何], None]]) – 初始化 GPTCache 函数
(默认 – None)
示例:.. code-block:: python
# 使用自定义初始化函数初始化 GPTCache import gptcache from gptcache.processor.pre import get_prompt from gptcache.manager.factory import get_data_manager from langchain_community.globals import set_llm_cache
# 避免使用同一文件进行多次缓存,导致不同的 llm 模型缓存相互影响
- def init_gptcache(cache_obj: gptcache.Cache, llm str)
- cache_obj.init(
pre_embedding_func=get_prompt, data_manager=manager_factory(
manager=”map”, data_dir=f”map_cache_{llm}”
),
)
set_llm_cache(GPTCache(init_gptcache))
方法
__init__
([初始化函数])通过传递初始化函数进行初始化(默认:None)。
aclear
(**kwargs)异步清除缓存,可以接受额外的关键字参数。
alookup
(prompt, llm_string)根据提示和 llm_string 进行异步查找。
aupdate
(prompt, llm_string, return_val)根据提示和 llm_string 异步更新缓存。
clear
(**kwargs)清除缓存。
lookup
(prompt, llm_string)查找缓存数据。
update
(prompt, llm_string, return_val)更新缓存。
- __init__(init_func: Optional[Union[Callable[[Any, str], None], Callable[[Any], None]] = None)[source]¶
通过传递初始化函数进行初始化(默认:None)。
- 参数
init_func (可选[Callable[[任何], None]]) – 初始化 GPTCache 函数
(默认 – None)
示例:.. code-block:: python
# 使用自定义初始化函数初始化 GPTCache import gptcache from gptcache.processor.pre import get_prompt from gptcache.manager.factory import get_data_manager from langchain_community.globals import set_llm_cache
# 避免使用同一文件进行多次缓存,导致不同的 llm 模型缓存相互影响
- def init_gptcache(cache_obj: gptcache.Cache, llm str)
- cache_obj.init(
pre_embedding_func=get_prompt, data_manager=manager_factory(
manager=”map”, data_dir=f”map_cache_{llm}”
),
)
set_llm_cache(GPTCache(init_gptcache))
- async aclear(**kwargs: Any) None ¶
异步清除缓存,可以接受额外的关键字参数。
- 参数
参数
- (Any) kwargs
返回类型
- None
根据提示和 llm_string 进行异步查找。
async alookup(prompt: str, llm_string: str) Optional[Sequence[Generation]] ¶
- 参数
缓存实现应从包含提示符和llm_string的二元组中生成密钥。
参数
- prompt (str)
提示符的字符串表示。对于会话模型,提示符是将提示序列化为语言模型的非平凡序列化。
- (Any) kwargs
llm_string (str)
- async aupdate(prompt: str, llm_string: str, return_val: Sequence[Generation]) None
根据提示和 llm_string 异步更新缓存。
提示符和llm_string被用来生成缓存的关键字。关键字应与查找方法的匹配。
- 参数
缓存实现应从包含提示符和llm_string的二元组中生成密钥。
参数
return_val (Sequence[Generation]) – 要缓存的值。值是一个Generations(或子类)的列表。
- (Any) kwargs
返回类型
- clear(**kwargs: Any) None [source]
清除缓存。
- 参数
参数
- (Any) kwargs
返回类型
- lookup(prompt: str, llm_string: str) Optional[Sequence[Generation]]
查找缓存数据。首先使用llm_string参数检索相应的缓存对象,然后根据prompt从缓存中检索数据。
- 参数
prompt (str) –
llm_string (str) –
- (Any) kwargs
llm_string (str)
- update(prompt: str, llm_string: str, return_val: Sequence[Generation]) None
更新缓存。首先,使用 llm_string 参数检索相应的缓存对象,然后将 prompt 和 return_val 存储在缓存对象中。
- 参数
prompt (str) –
llm_string (str) –
return_val (序列[生成]) -
- (Any) kwargs
返回类型