Zep Is The New State of the Art In Agent Memory - Learn More

Production-Ready Agent Memory

Build Personalized AI Agents That Learn From Users & Business Data

Trusted by:

Ready for Enterprise Production and Scale

Effortlessly Scale to Millions of Users and Facts

Zep retrieves user memories instantly, even as your user count and knowledge graph grows.

SOC 2 Type 2 and Privacy Compliance

Be assured with SOC 2 Type II compliance. Zep also offers privacy controls to support CCPA and GDPR compliance.

Cloud Service or BYOC Deployment

Sign up for Zep's cloud service, or deploy on your own infrastructure to meet your security and privacy needs.

Add Agent Memory in Minutes

With minimal code changes, enable your agent with rich, relevant context from chat and business data.

 
# Add a chat message to the graph
await zep_client.memory.add(session_id, messages=[
	Message(role="Jane", role_type="user", content="I can't log in!")
])
# Add business data to the graph
await zep_client.graph.add(user_id=user_id, type="json", data={"account_status": "suspended"})

# get memory relevant to the current conversation
memory = zep_client.memory.get(session_id="session_id")
print(memory.context)

"""FACTS and ENTITIES represent relevant context to the current conversation.
# These are the most relevant facts and their valid date ranges
# format: FACT (Date range: from - to)
<FACTS>
  - Emily is experiencing issues with logging in. (2024-11-14 02:13:19+00:00 - present) 
  - Emily's account has a suspended status due to payment failure. (2024-11-14 02:03:58+00:00 - present) 
...
</FACTS>"""
 
 
// Add a chat message to the graph
await zepClient.memory.add("session_id", [
    { role: "Jane", roleType: "user", content: "I can't log in!" }
]);

// Add business data to the graph
await zepClient.graph.add(userId, "json", { account_status: "suspended" });

// Get memory relevant to the current conversation
const memory = await zepClient.memory.get("session_id");
console.log(memory.context);

```
FACTS and ENTITIES represent relevant context to the current conversation.
# These are the most relevant facts and their valid date ranges
# format: FACT (Date range: from - to)
<FACTS>
  - Emily is experiencing issues with logging in. (2024-11-14 02:13:19+00:00 - present) 
  - Emily's account has a suspended status due to payment failure. (2024-11-14 02:03:58+00:00 - present) 
...
</FACTS>
```
 
 
client.Memory.Add(context.TODO(), "sessionId", &v2.AddMemoryRequest{
	Messages: []*v2.Message{{Content: "I can't log in!", RoleType: v2.RoleTypeUser}},
})

client.Graph.Add(context.TODO(), &v2.AddDataRequest{
	UserId: userID, Type: "json", Data: map[string]interface{}{"account_status": "suspended"},
})

memory, _ := zepClient.Memory.Get(context.TODO(), "session_id")
fmt.Println(memory.Context)

```
FACTS and ENTITIES represent relevant context to the current conversation.
# These are the most relevant facts and their valid date ranges
# format: FACT (Date range: from - to)
<FACTS>
  - Emily is experiencing issues with logging in. (2024-11-14 02:13:19+00:00 - present) 
  - Emily's account has a suspended status due to payment failure. (2024-11-14 02:03:58+00:00 - present) 
...
</FACTS>
```
 
300ms P95 Retrieval Latency

Speed

Lightning-Fast Memory Retrieval

Zep keeps your user experience fast, recalling memories in milliseconds—perfect for building voice or text agents.

Get Started

Framework and Platform Agnostic

Develop agents in Python, TypeScript, or Go - with any framework or none at all.

Python

TypeScript

Go

LangChain

AutoGen