langchain_core.memory.BaseMemory

langchain_core.memory.BaseMemory[source]

继承:SerializableABC

Chains 中内存的抽象基类。

内存指的是链(Chains)中的状态。内存可以用来存储关于

链过去执行的信息,并将这些信息注入到链未来执行中的输入。例如,对于对话链,内存可以用来存储对话,并将其自动添加到未来模型的提示中,以便模型具备应对最新输入所需的必要上下文。

示例

class SimpleMemory(BaseMemory):
    memories: Dict[str, Any] = dict()

    @property
    def memory_variables(self) -> List[str]:
        return list(self.memories.keys())

    def load_memory_variables(self, inputs: Dict[str, Any]) -> Dict[str, str]:
        return self.memories

    def save_context(self, inputs: Dict[str, Any], outputs: Dict[str, str]) -> None:
        pass

    def clear(self) -> None:
        pass
async aclear() None[source]

异步清除内存内容。

返回类型

async aload_memory_variables(inputs: Dict[str, Any]) Dict[str, Any][source]

异步返回链输入文本时的键值对。

参数

inputs (Dict[str, Any]) – 链的输入。

返回

键值对字典。

返回类型

Dict[str, Any]

async asave_context(inputs: Dict[str, Any], outputs: Dict[str, str]) None[source]

异步将此链运行上下文保存到内存中。

参数
  • inputs (Dict[str, Any]) – 链的输入。

  • outputs (Dict[str, str]) – 链的输出。

返回类型

abstract clear() None[source]

清除内存内容。

返回类型

抽象load_memory_variables(inputs: dict[str, Any]) dict[str, Any][source]

根据给链的文本输入返回键值对。

参数

inputs (Dict[str, Any]) – 链的输入。

返回

键值对字典。

返回类型

Dict[str, Any]

抽象save_context(inputs: dict[str, Any], outputs: dict[str, str]) None[source]

将此次链运行上下文保存到内存中。

参数
  • inputs (Dict[str, Any]) – 链的输入。

  • outputs (Dict[str, str]) – 链的输出。

返回类型

抽象memory_variables: list[str]

此内存类将要添加到链输入的字符串键。