<!-- .github/pull_request_template.md --> ## Description <!-- Please provide a clear, human-generated description of the changes in this PR. DO NOT use AI-generated descriptions. We want to understand your thought process and reasoning. --> ## Type of Change <!-- Please check the relevant option --> - [ ] Bug fix (non-breaking change that fixes an issue) - [ ] New feature (non-breaking change that adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality to change) - [ ] Documentation update - [ ] Code refactoring - [ ] Performance improvement - [ ] Other (please specify): ## Changes Made <!-- List the specific changes made in this PR --> - - - ## Testing <!-- Describe how you tested your changes --> ## Screenshots/Videos (if applicable) <!-- Add screenshots or videos to help explain your changes --> ## Pre-submission Checklist <!-- Please check all boxes that apply before submitting your PR --> - [ ] **I have tested my changes thoroughly before submitting this PR** - [ ] **This PR contains minimal changes necessary to address the issue/feature** - [ ] My code follows the project's coding standards and style guidelines - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] I have added necessary documentation (if applicable) - [ ] All new and existing tests pass - [ ] I have searched existing PRs to ensure this change hasn't been submitted already - [ ] I have linked any relevant issues in the description - [ ] My commits have clear and descriptive messages ## Related Issues <!-- Link any related issues using "Fixes #issue_number" or "Relates to #issue_number" --> ## Additional Notes <!-- Add any additional notes, concerns, or context for reviewers --> ## DCO Affirmation I affirm that all code in every commit of this pull request conforms to the terms of the Topoteretes Developer Certificate of Origin. --------- Co-authored-by: Igor Ilic <igorilic03@gmail.com> Co-authored-by: Igor Ilic <30923996+dexters1@users.noreply.github.com> Co-authored-by: hajdul88 <52442977+hajdul88@users.noreply.github.com> Co-authored-by: Gao,Wei <kaovip@gmail.com> Co-authored-by: Vasilije <8619304+Vasilije1990@users.noreply.github.com> Co-authored-by: Andrej Milicevic <milicevicandrej@yahoo.com> Co-authored-by: Daulet Amirkhanov <damirkhanov01@gmail.com>
234 lines
8.7 KiB
Markdown
234 lines
8.7 KiB
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>
|
|
·
|
|
<a href="https://www.reddit.com/r/AIMemory/">Join r/AIMemory</a>
|
|
.
|
|
<a href="https://docs.cognee.ai/">Docs</a>
|
|
.
|
|
<a href="https://github.com/topoteretes/cognee-community">cognee community repo</a>
|
|
</p>
|
|
|
|
|
|
[](https://GitHub.com/topoteretes/cognee/network/)
|
|
[](https://GitHub.com/topoteretes/cognee/stargazers/)
|
|
[](https://GitHub.com/topoteretes/cognee/commit/)
|
|
[](https://github.com/topoteretes/cognee/tags/)
|
|
[](https://pepy.tech/project/cognee)
|
|
[](https://github.com/topoteretes/cognee/blob/main/LICENSE)
|
|
[](https://github.com/topoteretes/cognee/graphs/contributors)
|
|
<a href="https://github.com/sponsors/topoteretes"><img src="https://img.shields.io/badge/Sponsor-❤️-ff69b4.svg" alt="Sponsor"></a>
|
|
|
|
<p>
|
|
<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" style="display:inline-block; margin-right:10px;">
|
|
<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 for AI Agents  in 5 lines of code | Product Hunt" width="250" height="54" />
|
|
</a>
|
|
|
|
<a href="https://trendshift.io/repositories/13955" target="_blank" style="display:inline-block;">
|
|
<img src="https://trendshift.io/api/badge/repositories/13955" alt="topoteretes%2Fcognee | Trendshift" width="250" height="55" />
|
|
</a>
|
|
</p>
|
|
|
|
|
|
|
|
**🚀 We launched Cogwit beta (Fully-hosted AI Memory): Sign up [here](https://platform.cognee.ai/)! 🚀**
|
|
|
|
Build dynamic memory for Agents and replace RAG 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
|
|
:
|
|
<!-- Keep these links. Translations will automatically update with the README. -->
|
|
<a href="https://www.readme-i18n.com/topoteretes/cognee?lang=de">Deutsch</a> |
|
|
<a href="https://www.readme-i18n.com/topoteretes/cognee?lang=es">Español</a> |
|
|
<a href="https://www.readme-i18n.com/topoteretes/cognee?lang=fr">français</a> |
|
|
<a href="https://www.readme-i18n.com/topoteretes/cognee?lang=ja">日本語</a> |
|
|
<a href="https://www.readme-i18n.com/topoteretes/cognee?lang=ko">한국어</a> |
|
|
<a href="https://www.readme-i18n.com/topoteretes/cognee?lang=pt">Português</a> |
|
|
<a href="https://www.readme-i18n.com/topoteretes/cognee?lang=ru">Русский</a> |
|
|
<a href="https://www.readme-i18n.com/topoteretes/cognee?lang=zh">中文</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
|
|
- Replaces RAG systems and reduces 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> , <a href="https://deepnote.com/workspace/cognee-382213d0-0444-4c89-8265-13770e333c02/project/cognee-demo-78ffacb9-5832-4611-bb1a-560386068b30/notebook/Notebook-1-75b24cda566d4c24ab348f7150792601?utm_source=share-modal&utm_medium=product-shared-content&utm_campaign=notebook&utm_content=78ffacb9-5832-4611-bb1a-560386068b30">Deepnote notebook</a> or <a href="https://github.com/topoteretes/cognee/tree/main/cognee-starter-kit">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.
|
|
|
|
Cognee supports Python 3.10 to 3.13
|
|
|
|
### With pip
|
|
|
|
```bash
|
|
pip install cognee
|
|
```
|
|
|
|
## Local Cognee installation
|
|
|
|
You can install the local Cognee repo using **uv**, **pip** and **poetry**.
|
|
For local pip installation please make sure your pip version is above version 21.3.
|
|
|
|
### with UV with all optional dependencies
|
|
|
|
```bash
|
|
uv sync --all-extras
|
|
```
|
|
|
|
## 💻 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.
|
|
|
|
```
|
|
|
|
## Our paper is out! <a href="https://arxiv.org/abs/2505.24478" target="_blank" rel="noopener noreferrer">Read here</a>
|
|
|
|
<div style="text-align: center">
|
|
<img src="assets/cognee-paper.png" alt="cognee paper" width="100%" />
|
|
</div>
|
|
|
|
</div>
|
|
|
|
## Cognee UI
|
|
|
|
You can also cognify your files and query using cognee UI.
|
|
|
|
<img src="assets/cognee-new-ui.webp" width="100%" alt="Cognee UI 2"></a>
|
|
|
|
### Installation for UI
|
|
|
|
To use the cognee UI with full functionality, you need to install cognee with API dependencies:
|
|
|
|
```bash
|
|
pip install 'cognee[api]'
|
|
```
|
|
|
|
The UI requires backend server functionality (uvicorn and other API dependencies) which are not included in the default cognee installation to keep it lightweight.
|
|
|
|
### Running the UI
|
|
|
|
Try cognee UI by running ``` cognee-cli -ui ``` command on your terminal.
|
|
|
|
## Understand our architecture
|
|
|
|
<div style="text-align: center">
|
|
<img src="assets/cognee_diagram.png" alt="cognee concept diagram" width="100%" />
|
|
</div>
|
|
|
|
|
|
|
|
## Demos
|
|
|
|
1. Cogwit Beta demo:
|
|
|
|
[Cogwit Beta](https://github.com/user-attachments/assets/fa520cd2-2913-4246-a444-902ea5242cb0)
|
|
|
|
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>
|
|
|
|
## Sponsors
|
|
|
|
Thanks to the following companies for sponsoring the ongoing development of cognee.
|
|
|
|
- [GitHub's Secure Open Source Fund](https://resources.github.com/github-secure-open-source-fund/)
|
|
|
|
## Star History
|
|
|
|
[](https://star-history.com/#topoteretes/cognee&Date)
|