mirror of https://github.com/hwchase17/langchain
zep: Update Zep docs and messaging (#12764)
Update Zep documentation with messaging, more details. @baskaryan, @eyurtsevpull/12688/head
parent
71d1a48b66
commit
d966e4d13a
@ -1,28 +1,72 @@
|
||||
# Zep
|
||||
|
||||
>[Zep](https://docs.getzep.com/) - A long-term memory store for LLM applications.
|
||||
## [Fast, Scalable Building Blocks for LLM Apps](http://www.getzep.com)
|
||||
Zep is an open source platform for productionizing LLM apps. Go from a prototype
|
||||
built in LangChain or LlamaIndex, or a custom app, to production in minutes without
|
||||
rewriting code.
|
||||
|
||||
>`Zep` stores, summarizes, embeds, indexes, and enriches conversational AI chat histories, and exposes them via simple, low-latency APIs.
|
||||
>- Long-term memory persistence, with access to historical messages irrespective of your summarization strategy.
|
||||
>- Auto-summarization of memory messages based on a configurable message window. A series of summaries are stored, providing flexibility for future summarization strategies.
|
||||
>- Vector search over memories, with messages automatically embedded on creation.
|
||||
>- Auto-token counting of memories and summaries, allowing finer-grained control over prompt assembly.
|
||||
>- Python and JavaScript SDKs.
|
||||
Key Features:
|
||||
|
||||
- **Fast!** Zep operates independently of the your chat loop, ensuring a snappy user experience.
|
||||
- **Chat History Memory, Archival, and Enrichment**, populate your prompts with relevant chat history, sumamries, named entities, intent data, and more.
|
||||
- **Vector Search over Chat History and Documents** Automatic embedding of documents, chat histories, and summaries. Use Zep's similarity or native MMR Re-ranked search to find the most relevant.
|
||||
- **Manage Users and their Chat Sessions** Users and their Chat Sessions are first-class citizens in Zep, allowing you to manage user interactions with your bots or agents easily.
|
||||
- **Records Retention and Privacy Compliance** Comply with corporate and regulatory mandates for records retention while ensuring compliance with privacy regulations such as CCPA and GDPR. Fulfill *Right To Be Forgotten* requests with a single API call
|
||||
|
||||
`Zep` [project](https://github.com/getzep/zep)
|
||||
Zep project: [https://github.com/getzep/zep](https://github.com/getzep/zep)
|
||||
Docs: [https://docs.getzep.com/](https://docs.getzep.com/)
|
||||
|
||||
## Installation and Setup
|
||||
|
||||
1. Install the Zep service. See the [Zep Quick Start Guide](https://docs.getzep.com/deployment/quickstart/).
|
||||
|
||||
2. Install the Zep Python SDK:
|
||||
|
||||
```bash
|
||||
pip install zep_python
|
||||
```
|
||||
|
||||
## Zep Memory
|
||||
|
||||
Zep's [Memory API](https://docs.getzep.com/sdk/chat_history/) persists your app's chat history and metadata to a Session, enriches the memory, automatically generates summaries, and enables vector similarity search over historical chat messages and summaries.
|
||||
|
||||
There are two approaches to populating your prompt with chat history:
|
||||
|
||||
1. Retrieve the most recent N messages (and potentionally a summary) from a Session and use them to construct your prompt.
|
||||
2. Search over the Session's chat history for messages that are relevant and use them to construct your prompt.
|
||||
|
||||
Both of these approaches may be useful, with the first providing the LLM with context as to the most recent interactions with a human. The second approach enables you to look back further in the chat history and retrieve messages that are relevant to the current conversation in a token-efficient manner.
|
||||
|
||||
```python
|
||||
from langchain.memory import ZepMemory
|
||||
```
|
||||
|
||||
See a [RAG App Example here](/docs/docs/integrations/memory/zep_memory).
|
||||
|
||||
## Retriever
|
||||
## Memory Retriever
|
||||
|
||||
Zep's Memory Retriever is a LangChain Retriever that enables you to retrieve messages from a Zep Session and use them to construct your prompt.
|
||||
|
||||
The Retriever supports searching over both individual messages and summaries of conversations. The latter is useful for providing rich, but succinct context to the LLM as to relevant past conversations.
|
||||
|
||||
Zep's Memory Retriever supports both similarity search and [Maximum Marginal Relevance (MMR) reranking](https://docs.getzep.com/sdk/search_query/). MMR search is useful for ensuring that the retrieved messages are diverse and not too similar to each other
|
||||
|
||||
See a [usage example](/docs/integrations/retrievers/zep_memorystore).
|
||||
|
||||
```python
|
||||
from langchain.retrievers import ZepRetriever
|
||||
```
|
||||
|
||||
## Zep VectorStore
|
||||
|
||||
Zep's [Document VectorStore API](https://docs.getzep.com/sdk/documents/) enables you to store and retrieve documents using vector similarity search. Zep doesn't require you to understand
|
||||
distance functions, types of embeddings, or indexing best practices. You just pass in your chunked documents, and Zep handles the rest.
|
||||
|
||||
Zep supports both similarity search and [Maximum Marginal Relevance (MMR) reranking](https://docs.getzep.com/sdk/search_query/).
|
||||
MMR search is useful for ensuring that the retrieved documents are diverse and not too similar to each other.
|
||||
|
||||
```python
|
||||
from langchain.vectorstores.zep import ZepVectorStore
|
||||
```
|
||||
|
||||
See a [usage example](/docs/integrations/vectorstores/zep).
|
Loading…
Reference in New Issue