# BaseChatMemory

> **Class** in `langchain_classic`

📖 [View in docs](https://reference.langchain.com/python/langchain-classic/memory/chat_memory/BaseChatMemory)

Abstract base class for chat memory.

**ATTENTION** This abstraction was created prior to when chat models had
    native tool calling capabilities.
    It does **NOT** support native tool calling capabilities for chat models and
    will fail SILENTLY if used with a chat model that has native tool calling.

DO NOT USE THIS ABSTRACTION FOR NEW CODE.

## Signature

```python
BaseChatMemory()
```

## Extends

- `BaseMemory`
- `ABC`

## Properties

- `chat_memory`
- `output_key`
- `input_key`
- `return_messages`

## Methods

- [`save_context()`](https://reference.langchain.com/python/langchain-classic/memory/chat_memory/BaseChatMemory/save_context)
- [`asave_context()`](https://reference.langchain.com/python/langchain-classic/memory/chat_memory/BaseChatMemory/asave_context)
- [`clear()`](https://reference.langchain.com/python/langchain-classic/memory/chat_memory/BaseChatMemory/clear)
- [`aclear()`](https://reference.langchain.com/python/langchain-classic/memory/chat_memory/BaseChatMemory/aclear)

## ⚠️ Deprecated

Deprecated since version 0.3.1.

---

[View source on GitHub](https://github.com/langchain-ai/langchain/blob/311675a517f51ec6c77454124293c58df517e952/libs/langchain/langchain_classic/memory/chat_memory.py#L17)