Trusted by:

Ready for Enterprise Production and Scale

Instant Memory Retrieval

Get relevant results from memory in milliseconds. Scale to millions of users with ease.

Granular Memory Controls

Tailor memory extraction and relevance with custom rating frameworks and controls.

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.

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>
```
 

Framework and Platform Agnostic

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

Python

TypeScript

Go

LangChain

AutoGen

Build Consistent and Correct LLM Apps

Build your agent in Python, TypeScript, or Go using your favorite framework, or none at all.