Metadata-Version: 2.4
Name: cognee
Version: 0.1.40
Summary: Cognee - is a library for enriching LLM context with a semantic layer for better understanding and reasoning.
Project-URL: Homepage, https://www.cognee.ai
Project-URL: Repository, https://github.com/topoteretes/cognee
Author: Vasilije Markovic, Boris Arzentar
License-Expression: Apache-2.0
License-File: LICENSE
License-File: NOTICE.md
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX :: Linux
Classifier: Topic :: Software Development :: Libraries
Requires-Python: <=3.13,>=3.10
Requires-Dist: aiofiles>=23.2.1
Requires-Dist: aiohttp>=3.11.14
Requires-Dist: aiosqlite<0.21,>=0.20.0
Requires-Dist: alembic<2,>=1.13.3
Requires-Dist: dlt[sqlalchemy]<2,>=1.9.0
Requires-Dist: fastapi-users[sqlalchemy]==14.0.1
Requires-Dist: fastapi==0.115.7
Requires-Dist: filetype>=1.2.0
Requires-Dist: graphistry<0.34,>=0.33.5
Requires-Dist: instructor==1.7.2
Requires-Dist: jinja2<4,>=3.1.3
Requires-Dist: lancedb==0.21.0
Requires-Dist: langfuse>=2.32.0
Requires-Dist: limits<5,>=4.4.1
Requires-Dist: litellm>=1.57.4
Requires-Dist: matplotlib<4,>=3.8.3
Requires-Dist: networkx<4,>=3.4.2
Requires-Dist: nltk==3.9.1
Requires-Dist: numpy<=2.1,>=1.26.4
Requires-Dist: onnxruntime<=1.21.1
Requires-Dist: openai<2,>=1.59.4
Requires-Dist: owlready2<0.48,>=0.47
Requires-Dist: pandas>=2.2.2
Requires-Dist: pre-commit<5,>=4.0.1
Requires-Dist: pydantic-settings<3,>=2.2.1
Requires-Dist: pydantic==2.10.5
Requires-Dist: pylance==0.22.0
Requires-Dist: pypdf<6.0.0,>=4.1.0
Requires-Dist: python-dotenv>=1.0.1
Requires-Dist: python-multipart==0.0.20
Requires-Dist: s3fs[boto3]==2025.3.2
Requires-Dist: scikit-learn<2,>=1.6.1
Requires-Dist: sentry-sdk[fastapi]<3,>=2.9.0
Requires-Dist: sqlalchemy==2.0.39
Requires-Dist: structlog<26,>=25.2.0
Requires-Dist: tiktoken<=0.9.0
Requires-Dist: typing-extensions==4.12.2
Provides-Extra: anthropic
Requires-Dist: anthropic<0.27,>=0.26.1; extra == 'anthropic'
Provides-Extra: api
Requires-Dist: gunicorn<21,>=20.1.0; extra == 'api'
Requires-Dist: uvicorn==0.34.0; extra == 'api'
Provides-Extra: chromadb
Requires-Dist: chromadb<0.7,>=0.3.0; extra == 'chromadb'
Requires-Dist: pypika==0.48.8; extra == 'chromadb'
Provides-Extra: codegraph
Requires-Dist: fastembed<=0.6.0; (python_version < '3.13') and extra == 'codegraph'
Requires-Dist: transformers<5,>=4.46.3; extra == 'codegraph'
Requires-Dist: tree-sitter-python<0.24,>=0.23.6; extra == 'codegraph'
Requires-Dist: tree-sitter<0.25,>=0.24.0; extra == 'codegraph'
Provides-Extra: debug
Requires-Dist: debugpy==1.8.9; extra == 'debug'
Provides-Extra: deepeval
Requires-Dist: deepeval<3,>=2.0.1; extra == 'deepeval'
Provides-Extra: dev
Requires-Dist: coverage<8,>=7.3.2; extra == 'dev'
Requires-Dist: deptry<0.21,>=0.20.0; extra == 'dev'
Requires-Dist: gitpython<4,>=3.1.43; extra == 'dev'
Requires-Dist: mkdocs-material<10,>=9.5.42; extra == 'dev'
Requires-Dist: mkdocs-minify-plugin<0.9,>=0.8.0; extra == 'dev'
Requires-Dist: mkdocstrings[python]<0.27,>=0.26.2; extra == 'dev'
Requires-Dist: mypy<2,>=1.7.1; extra == 'dev'
Requires-Dist: notebook<8,>=7.1.0; extra == 'dev'
Requires-Dist: pylint<4,>=3.0.3; extra == 'dev'
Requires-Dist: pytest-asyncio<0.22,>=0.21.1; extra == 'dev'
Requires-Dist: pytest-cov>=6.1.1; extra == 'dev'
Requires-Dist: pytest<8,>=7.4.0; extra == 'dev'
Requires-Dist: ruff<1.0.0,>=0.9.2; extra == 'dev'
Requires-Dist: tweepy==4.14.0; extra == 'dev'
Provides-Extra: docs
Requires-Dist: unstructured[csv,doc,docx,epub,md,odt,org,ppt,pptx,rst,rtf,tsv,xlsx]<0.17,>=0.16.13; extra == 'docs'
Provides-Extra: evals
Requires-Dist: gdown<6,>=5.2.0; extra == 'evals'
Requires-Dist: plotly<7,>=6.0.0; extra == 'evals'
Provides-Extra: falkordb
Requires-Dist: falkordb==1.0.9; extra == 'falkordb'
Provides-Extra: gemini
Requires-Dist: google-generativeai<0.9,>=0.8.4; extra == 'gemini'
Provides-Extra: graphiti
Requires-Dist: graphiti-core<0.8,>=0.7.0; extra == 'graphiti'
Provides-Extra: groq
Requires-Dist: groq==0.8.0; extra == 'groq'
Provides-Extra: gui
Requires-Dist: pyside6<7,>=6.8.3; extra == 'gui'
Requires-Dist: qasync<0.28,>=0.27.1; extra == 'gui'
Provides-Extra: huggingface
Requires-Dist: transformers<5,>=4.46.3; extra == 'huggingface'
Provides-Extra: kuzu
Requires-Dist: kuzu==0.8.2; extra == 'kuzu'
Provides-Extra: langchain
Requires-Dist: langchain-text-splitters==0.3.2; extra == 'langchain'
Requires-Dist: langsmith==0.2.3; extra == 'langchain'
Provides-Extra: llama-index
Requires-Dist: llama-index-core<0.13,>=0.12.11; extra == 'llama-index'
Provides-Extra: milvus
Requires-Dist: pymilvus<3,>=2.5.0; extra == 'milvus'
Provides-Extra: mistral
Requires-Dist: mistral-common<2,>=1.5.2; extra == 'mistral'
Provides-Extra: neo4j
Requires-Dist: neo4j<6,>=5.20.0; extra == 'neo4j'
Provides-Extra: notebook
Requires-Dist: notebook<8,>=7.1.0; extra == 'notebook'
Provides-Extra: ollama
Requires-Dist: transformers<5,>=4.46.3; extra == 'ollama'
Provides-Extra: postgres
Requires-Dist: asyncpg==0.30.0; extra == 'postgres'
Requires-Dist: pgvector<0.4,>=0.3.5; extra == 'postgres'
Requires-Dist: psycopg2<3,>=2.9.10; extra == 'postgres'
Provides-Extra: posthog
Requires-Dist: posthog<4,>=3.5.0; extra == 'posthog'
Provides-Extra: qdrant
Requires-Dist: qdrant-client<2,>=1.9.0; extra == 'qdrant'
Provides-Extra: weaviate
Requires-Dist: weaviate-client==4.9.6; extra == 'weaviate'
Description-Content-Type: text/markdown

<div align="center">
  <a href="https://github.com/topoteretes/cognee">
    <img src="https://raw.githubusercontent.com/topoteretes/cognee/refs/heads/dev/assets/cognee-logo-transparent.png" alt="Cognee Logo" height="60">
  </a>

  <br />

  cognee - Memory for AI Agents in 5 lines of code

  <p align="center">
  <a href="https://www.youtube.com/watch?v=1bezuvLwJmw&t=2s">Demo</a>
  .
  <a href="https://cognee.ai">Learn more</a>
  ·
  <a href="https://discord.gg/NQPKmU5CCg">Join Discord</a>
  </p>


  [![GitHub forks](https://img.shields.io/github/forks/topoteretes/cognee.svg?style=social&label=Fork&maxAge=2592000)](https://GitHub.com/topoteretes/cognee/network/)
  [![GitHub stars](https://img.shields.io/github/stars/topoteretes/cognee.svg?style=social&label=Star&maxAge=2592000)](https://GitHub.com/topoteretes/cognee/stargazers/)
  [![GitHub commits](https://badgen.net/github/commits/topoteretes/cognee)](https://GitHub.com/topoteretes/cognee/commit/)
  [![Github tag](https://badgen.net/github/tag/topoteretes/cognee)](https://github.com/topoteretes/cognee/tags/)
  [![Downloads](https://static.pepy.tech/badge/cognee)](https://pepy.tech/project/cognee)
  [![License](https://img.shields.io/github/license/topoteretes/cognee?colorA=00C586&colorB=000000)](https://github.com/topoteretes/cognee/blob/main/LICENSE)
  [![Contributors](https://img.shields.io/github/contributors/topoteretes/cognee?colorA=00C586&colorB=000000)](https://github.com/topoteretes/cognee/graphs/contributors)

<a href="https://www.producthunt.com/posts/cognee?embed=true&utm_source=badge-top-post-badge&utm_medium=badge&utm_souce=badge-cognee" target="_blank"><img src="https://api.producthunt.com/widgets/embed-image/v1/top-post-badge.svg?post_id=946346&theme=light&period=daily&t=1744472480704" alt="cognee - Memory&#0032;for&#0032;AI&#0032;Agents&#0032;&#0032;in&#0032;5&#0032;lines&#0032;of&#0032;code | Product Hunt" style="width: 250px; height: 54px;" width="250" height="54" /></a>



Build dynamic Agent memory using scalable, modular ECL (Extract, Cognify, Load) pipelines.

More on [use-cases](https://docs.cognee.ai/use-cases) and [evals](https://github.com/topoteretes/cognee/tree/main/evals) 

  <p align="center">
  🌐 Available Languages
  :
  <a href="community/README.pt.md">🇵🇹 Português</a>
  ·
  <a href="community/README.zh.md">🇨🇳 [中文]</a>
  </p>

<div style="text-align: center">
  <img src="https://raw.githubusercontent.com/topoteretes/cognee/refs/heads/main/assets/cognee_benefits.png" alt="Why cognee?" width="50%" />
</div>

</div>




## Features

- Interconnect and retrieve your past conversations, documents, images and audio transcriptions
- Reduce hallucinations, developer effort, and cost.
- Load data to graph and vector databases using only Pydantic
- Manipulate your data while ingesting from 30+ data sources

## Get Started

Get started quickly with a Google Colab  <a href="https://colab.research.google.com/drive/1jHbWVypDgCLwjE71GSXhRL3YxYhCZzG1?usp=sharing">notebook</a>  or  <a href="https://github.com/topoteretes/cognee-starter">starter repo</a>

## Contributing
Your contributions are at the core of making this a true open source project. Any contributions you make are **greatly appreciated**. See [`CONTRIBUTING.md`](CONTRIBUTING.md) for more information.





## 📦 Installation

You can install Cognee using either **pip**, **poetry**, **uv** or any other python package manager.

### With pip

```bash
pip install cognee
```

## 💻 Basic Usage

### Setup

```
import os
os.environ["LLM_API_KEY"] = "YOUR OPENAI_API_KEY"

```

You can also set the variables by creating .env file, using our <a href="https://github.com/topoteretes/cognee/blob/main/.env.template">template.</a>
To use different LLM providers, for more info check out our <a href="https://docs.cognee.ai">documentation</a>


### Simple example

This script will run the default pipeline:

```python
import cognee
import asyncio


async def main():
    # Add text to cognee
    await cognee.add("Natural language processing (NLP) is an interdisciplinary subfield of computer science and information retrieval.")

    # Generate the knowledge graph
    await cognee.cognify()

    # Query the knowledge graph
    results = await cognee.search("Tell me about NLP")

    # Display the results
    for result in results:
        print(result)


if __name__ == '__main__':
    asyncio.run(main())

```
Example output:
```
  Natural Language Processing (NLP) is a cross-disciplinary and interdisciplinary field that involves computer science and information retrieval. It focuses on the interaction between computers and human language, enabling machines to understand and process natural language.
  
```

### cognee UI

You can also cognify your files and query using cognee UI. 

<img src="assets/cognee-ui-2.webp" width="100%" alt="Cognee UI 2"></a>

Try cognee UI out locally [here](https://docs.cognee.ai/how-to-guides/cognee-ui).

## Understand our architecture

<div style="text-align: center">
  <img src="assets/cognee_diagram.png" alt="cognee concept diagram" width="100%" />
</div>



## Demos

1. What is AI memory:

[Learn about cognee](https://github.com/user-attachments/assets/8b2a0050-5ec4-424c-b417-8269971503f0)

2. Simple GraphRAG demo

[Simple GraphRAG demo](https://github.com/user-attachments/assets/d80b0776-4eb9-4b8e-aa22-3691e2d44b8f)

3. cognee with Ollama

[cognee with local models](https://github.com/user-attachments/assets/8621d3e8-ecb8-4860-afb2-5594f2ee17db)


## Code of Conduct

We are committed to making open source an enjoyable and respectful experience for our community. See <a href="https://github.com/topoteretes/cognee/blob/main/CODE_OF_CONDUCT.md"><code>CODE_OF_CONDUCT</code></a> for more information.

## 💫 Contributors

<a href="https://github.com/topoteretes/cognee/graphs/contributors">
  <img alt="contributors" src="https://contrib.rocks/image?repo=topoteretes/cognee"/>
</a>


## Star History

[![Star History Chart](https://api.star-history.com/svg?repos=topoteretes/cognee&type=Date)](https://star-history.com/#topoteretes/cognee&Date)

