langchain_community.cache.UpstashRedisCache

langchain_community.cache.UpstashRedisCache(redis_: Any, *, ttl: Optional[int] = None)[源代码]

使用 Upstash Redis 作为后端的缓存。

初始化 UpstashRedisCache 实例。

此方法初始化一个具有 Upstash Redis 缓存功能的对象。它接受一个 redis_ 参数,该参数应为 Upstash Redis 客户端类的实例,允许对象与 Upstash Redis 服务器交互以进行缓存操作。

参数
  • redis – 用于缓存的 Upstash Redis 客户端类实例(例如,Redis)。这允许对象与 Redis 服务器通信以进行缓存操作。

  • ttl(《整数》,可选)- 缓存项的存活时间(TTL),单位为秒。如果提供,则设置缓存项有效的时间持续。如果不提供,则缓存项将不会有自动过期。

  • redis_(《任何类型》)-

方法

__init__(redis_, *[, ttl])

初始化 UpstashRedisCache 实例。

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__(redis_: Any, *, ttl: Optional[int] = None)[源代码]

初始化 UpstashRedisCache 实例。

此方法初始化一个具有 Upstash Redis 缓存功能的对象。它接受一个 redis_ 参数,该参数应为 Upstash Redis 客户端类的实例,允许对象与 Upstash Redis 服务器交互以进行缓存操作。

参数
  • redis – 用于缓存的 Upstash Redis 客户端类实例(例如,Redis)。这允许对象与 Redis 服务器通信以进行缓存操作。

  • ttl(《整数》,可选)- 缓存项的存活时间(TTL),单位为秒。如果提供,则设置缓存项有效的时间持续。如果不提供,则缓存项将不会有自动过期。

  • redis_(《任何类型》)-

async aclear(**kwargs: Any) None

异步清除缓存,可以接受额外的关键字参数。

参数

kwargs (Any) –

返回类型

None

async alookup(prompt: str, llm_string: str) Optional[Sequence[Generation]]

基于提示和 llm_string 的异步查找。

期望缓存实现能从一个包含提示和LLM字符串的二重键值对中生成键(例如,通过分隔符连接它们)。

参数
  • prompt (str) – 提示的字符串表示形式。在聊天模型的情况下,提示是对提示的非平凡序列化到语言模型。

  • llm_string (str) – LLM配置的字符串表示形式。此用于捕获LLM的调用参数(例如,模型名称、温度、停止令牌、最大令牌等)。这些调用参数被序列化到字符串表示形式。

返回值

在缓存未命中时返回None。在缓存命中时返回缓存的值。缓存的值是Generations(或其子类)的列表。

返回类型

Optional[Sequence[Generation]]

async aupdate(prompt: str, llm_string: str, return_val: Sequence[Generation]) None

基于提示和 llm_string 的异步更新缓存。

提示和 llm_string 用于生成缓存的关键字。关键字应该与查找方法的匹配。

参数
  • prompt (str) – 提示的字符串表示形式。在聊天模型的情况下,提示是对提示的非平凡序列化到语言模型。

  • llm_string (str) – LLM配置的字符串表示形式。此用于捕获LLM的调用参数(例如,模型名称、温度、停止令牌、最大令牌等)。这些调用参数被序列化到字符串表示形式。

  • return_val (Sequence[Generation]) – 要缓存的值。该值是 Generation 类或其子类的列表。

返回类型

None

clear(**kwargs: Any) None[source]

清除缓存。如果 asynchronous 为 True,则异步清除。这将清空整个数据库。

参数

kwargs (Any) –

返回类型

None

lookup(prompt: str, llm_string: str) Optional[Sequence[Generation]][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

使用 UpstashRedisCache 的示例