langchain.memory.chat_memory.BaseChatMemory

class langchain.memory.chat_memory.BaseChatMemory(*, chat_memory: BaseChatMessageHistory = None, output_key: Optional[str] = None, input_key: Optional[str] = None, return_messages: bool = False)[source]

Bases: BaseMemory, ABC

Abstract base class for chat memory.

Create a new model by parsing and validating input data from keyword arguments.

Raises ValidationError if the input data cannot be parsed to form a valid model.

param chat_memory: langchain.schema.memory.BaseChatMessageHistory [Optional]
param input_key: Optional[str] = None
param output_key: Optional[str] = None
param return_messages: bool = False
clear() None[source]

Clear memory contents.

abstract load_memory_variables(inputs: Dict[str, Any]) Dict[str, Any]

Return key-value pairs given the text input to the chain.

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

Save context from this conversation to buffer.

to_json() Union[SerializedConstructor, SerializedNotImplemented]
to_json_not_implemented() SerializedNotImplemented
property lc_attributes: Dict

Return a list of attribute names that should be included in the serialized kwargs. These attributes must be accepted by the constructor.

property lc_namespace: List[str]

Return the namespace of the langchain object. eg. [“langchain”, “llms”, “openai”]

property lc_secrets: Dict[str, str]

Return a map of constructor argument names to secret ids. eg. {“openai_api_key”: “OPENAI_API_KEY”}

property lc_serializable: bool

Return whether or not the class is serializable.

abstract property memory_variables: List[str]

The string keys this memory class will add to chain inputs.

model Config

Bases: object

Configuration for this pydantic object.

arbitrary_types_allowed = True