/cognee

Memory management for the AI Applications and AI Agents

Primary LanguageJupyter NotebookApache License 2.0Apache-2.0

cognee

Make data processing for LLMs easy

Cognee logo

Open-source framework for creating knowledge graphs and data models for LLMs.

cognee forks cognee stars cognee pull-requests cognee releases

🚀 It's alive

Try it yourself on Whatsapp with one of our partners by typing /save {content you want to save} followed by /query {knowledge you saved previously} For more info here are the docs

📦 Installation

With pip:

pip install cognee

With poetry:

poetry add cognee

💻 Usage

Check out our demo notebook here

  • Set OpenAI API Key as an environment variable
import os

# Setting an environment variable
os.environ['OPENAI_API_KEY'] = ''


  • Add a new piece of information to storage
import cognee
cognee.add(absolute_data_path, dataset_name)
  • Use LLMs and cognee to create graphs
cognee.cognify(dataset_name)
  • Render the graph after adding your Graphistry credentials to .env
graph_url = await render_graph(graph, graph_type = "networkx")
print(graph_url)
  • Query the graph for a piece of information
query_params = {
    SearchType.SIMILARITY: {'query': 'your search query here'}
}
cognee.search(graph, query_params) 

Demo

Architecture

How Cognee Enhances Your Contextual Memory

Our framework for the OpenAI, Graph (Neo4j) and Vector (Weaviate) databases introduces three key enhancements:

  • Query Classifiers: Navigate information graph using Pydantic OpenAI classifiers.
  • Document Topology: Structure and store documents in public and private domains.
  • Personalized Context: Provide a context object to the LLM for a better response.

Image