No description
Find a file
2024-03-08 13:09:01 +01:00
.data Add all functions for architecture to work + for regular user flows, refactor and reformat issues, add boilerplate for loading jobs logic and extend search functionalities. 2023-12-27 23:56:07 +01:00
.github Added basic docs to serve for the blog 2024-02-27 11:16:13 +01:00
assets Refactor sql database so it supports sqlite, added new vectordb type and improved a few things 2024-02-15 15:58:12 +01:00
bin Build the docker and push 2023-12-16 15:25:32 +01:00
cognitive_architecture Prepare for the presentation, add info 2024-03-08 13:09:01 +01:00
docs Added basic docs to serve for the blog 2024-02-27 11:09:23 +01:00
iterations Rename the build package name and refactored the local runner 2024-01-25 12:30:39 +01:00
.env.template Fixes to sqlite 2024-02-15 18:44:47 +01:00
.gitignore feat: add create-memory and remember API endpoints 2024-02-25 23:56:50 +01:00
.pylintrc feat: add create-memory and remember API endpoints 2024-02-25 23:56:50 +01:00
__init__.py Build the docker and push 2023-12-16 15:25:32 +01:00
api.py feat: add create-memory and remember API endpoints 2024-02-25 23:56:50 +01:00
CONTRIBUTING.md Build the docker and push 2023-12-16 15:25:32 +01:00
Demo_graph.ipynb Prepare for the presentation, add info 2024-03-08 13:09:01 +01:00
docker-compose.yml Fixes to database manager 2024-02-20 09:29:09 +01:00
Dockerfile feat: add vector database interface 2024-02-22 14:09:16 +01:00
entrypoint.sh feat: add create-memory and remember API endpoints 2024-02-25 23:56:50 +01:00
LICENSE Build the docker and push 2023-12-16 15:25:32 +01:00
main.py fix: add python module resolution root and remove loading of env variables 2024-02-19 18:43:55 +01:00
mkdocs.yml Added basic docs to serve for the blog 2024-02-27 11:19:13 +01:00
poetry.lock Prepare for the presentation, add info 2024-03-08 12:39:05 +01:00
pyproject.toml Prepare for the presentation, add info 2024-03-08 12:39:05 +01:00
README.md feat: add create-memory and remember API endpoints 2024-02-25 23:56:50 +01:00

cognee

AI Memory - Cognitive Architecture, Testability, Production-Ready Apps

Cognee logo

Open-source framework for building AI Memory, extending the limits of cognitive architecture, designed for accuracy, transparency, and control.

cognee forks cognee stars cognee pull-requests cognee releases>
  </a>
</p>
<p>
  <b>Share cognee Repository</b>
</p>
<p>
  <a href= Follow Cognee Share on Telegram Share on Reddit Buy Me A Coffee


Star us on Github!

Jump into AI memory architecture, inspired by human cognitive processes, using Python. Cognee runs in iterations, from POC towards production-ready code.

To read more about the approach and details on cognitive architecture, see the blog post: AI Applications and RAGs - Cognitive Architecture, Testability, Production Ready Apps

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}

Getting started

Run with Docker

To run cognee you need to have Docker installed on your machine.

Run Cognee in a couple of steps:

  • Run cp .env.template .env in your terminal and set all the environment variables
  • Run docker compose up in order to start graph and relational databases
  • Run docker compose up cognee in order start Cognee

Debugging

To run Cognee with debugger attached you need to build the Cognee image with the DEBUG flag set to true.

  • docker compose build cognee --no-cache --build-arg DEBUG=true
  • docker compose up cognee

Run without Docker

  • Run PYTHONPATH=. python cognitive_architecture/setup_database.py to setup database
  • Run python -m gunicorn -w 1 -k uvicorn.workers.UvicornWorker -t 30000 --bind=127.0.0.1:8000 --log-level debug api:app

Debugging

  • Run python -m debugpy --wait-for-client --listen localhost:5678 -m gunicorn -w 1 -k uvicorn.workers.UvicornWorker -t 30000 --bind=127.0.0.1:8000 --log-level debug api:app
  • Attach debugger

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

Current Focus

Integration with keepi.ai and other apps

  • Cognee uses the Neo4j graph database to map user data into a graph structure consisting of semantic, episodic, and procedural memory.
  • Stores data and files through the WhatsApp chatbot keepi.ai
  • Uses the graph to answer user queries and store new information in the graph.