Skip to main content
A minimal guide to shaping graph extraction with a custom LLM prompt. You’ll pass your prompt via custom_prompt to cognee.remember() to control entity types, relationship labels, and extraction rules.
For the built-in graph extraction prompts selected through GRAPH_PROMPT_PATH, see Cognify.
Before you start:
  • Complete Quickstart to understand basic operations
  • Ensure you have LLM Providers configured
  • Have some text or files to process

Code in Action

Step 1: Write a Custom Prompt

The custom prompt overrides the default system prompt used during entity/relationship extraction. It constrains node types, enforces relationship naming, and reduces noise.
custom_prompt is ignored when temporal_cognify=True.

Step 2: Remember with Your Custom Prompt

This resets the local state and then uses remember() to ingest the text and build the graph in one pass. The same approach works with multiple documents, files, or entire datasets.

Step 3: Ask Questions

Use cognee.recall(...) with SearchType.GRAPH_COMPLETION to get answers that leverage your custom extraction rules.

custom_prompt vs system_prompt: which prompt goes where

Cognee uses two distinct prompts at two different stages, and they are not interchangeable. Passing one where the other is expected will silently have no effect.

Additional examples

Additional examples about Custom prompts are available on our github.

Full Example

This simple example uses a few strings for demonstration. In practice, you can add multiple documents, files, or entire datasets - the custom prompt processing works the same way across all your data.
If you are running Cognee as a server and want to infer a schema or generate a prompt through HTTP instead of writing it by hand, see the LLM Utility Endpoints examples in Deploy REST API Server.

Core Concepts

Understand knowledge graph fundamentals

Ontology Quickstart

Learn about ontology integration

API Reference

Explore API endpoints