Overview
Zep automatically extracts entities, relationships, and summaries from the data you add. You can customize this process to better fit your domain and use case.
Available options
When to customize
Custom ontology is recommended for most production use cases. When a custom ontology is defined, Zep’s extraction process focuses on the entity and relationship types most important to your domain, often producing better results than defaults alone.
Custom instructions are useful when your domain has specialized terminology or concepts that Zep may not understand without additional context. For example, legal, medical, or financial domains each have domain-specific language that custom instructions help Zep interpret correctly.
Custom ontology and custom instructions serve different purposes. Custom ontology defines the types of entities and relationships your graph should contain (e.g., a Restaurant entity or a RESTAURANT_VISIT relationship). Custom instructions describe the domain itself — its terminology, concepts, and conventions — so Zep can better understand and interpret your data during extraction.
User summary instructions let you control what information is captured in each user’s summary. This is especially valuable for cold-start scenarios — when a thread begins with a greeting or a low-information message, Zep doesn’t have much to go on when retrieving relevant context from the graph. However, the user summary is always included in the context block regardless of the current conversation, so it serves as a reliable baseline of the most important information about each user. By customizing the summary instructions, you ensure that baseline contains the information most relevant to your use case.