`ConversationSummaryMemory` creates a summary of the conversation over time, which can be useful for condensing information. The **memory key** input is typically generated by encoding the input text using an encoder network, which maps the input text into a fixed-dimensional vector representation.
{width=50%}
{width=50%}
To understand more, check out the LangChain [ConversationSummaryMemory](https://python.langchain.com/en/latest/modules/memory/types/summary.html){.internal-link target=\_blank} documentation.
---
### ⛓️LangFlow example
{width=100%}
{width=100%}
[Download Flow](data/Conversation_summary_memory.json){: .md-button download="Conversation_summary_memory"}
In the LangFlow example, we used `ChatOpenAI` as the LLM, but you can use any LLM that has an API. Make sure to get the API key from the LLM provider. For example, [ChatOpenAI](https://platform.openai.com/){.internal-link target=\_blank} requires you to create an account to get your API key.
Check out the [ChatOpenAI](https://platform.openai.com/docs/introduction/overview){.internal-link target=\_blank} documentation to learn more about the API and the options that contain in the node.
`ConversationChain` is a chain to have a conversation and load context from memory. **Output Key** and **Input Key** are simply unique identifiers used to represent the data being passed between different modules or steps in a Conversation Chain. These keys help to ensure that the data is properly routed and processed by the appropriate modules in the conversation flow.
Output Key used the default: `response` and Input Key used the default: `input`.