diff --git a/.env.template b/.env.template
index f3168e6e2..b91f89540 100644
--- a/.env.template
+++ b/.env.template
@@ -203,6 +203,16 @@ LITELLM_LOG="ERROR"
# DEFAULT_USER_EMAIL=""
# DEFAULT_USER_PASSWORD=""
+################################################################################
+# 📂 AWS Settings
+################################################################################
+
+#AWS_REGION=""
+#AWS_ENDPOINT_URL=""
+#AWS_ACCESS_KEY_ID=""
+#AWS_SECRET_ACCESS_KEY=""
+#AWS_SESSION_TOKEN=""
+
------------------------------- END OF POSSIBLE SETTINGS -------------------------------
diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index 76ff5965c..0e6f74188 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -1,8 +1,8 @@
## Description
-
@@ -16,15 +16,6 @@ DO NOT use AI-generated descriptions. We want to understand your thought process
- [ ] Performance improvement
- [ ] Other (please specify):
-## Changes Made
-
--
--
--
-
-## Testing
-
-
## Screenshots/Videos (if applicable)
@@ -40,11 +31,5 @@ DO NOT use AI-generated descriptions. We want to understand your thought process
- [ ] I have linked any relevant issues in the description
- [ ] My commits have clear and descriptive messages
-## Related Issues
-
-
-## Additional Notes
-
-
## 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.
diff --git a/.github/workflows/vector_db_tests.yml b/.github/workflows/vector_db_tests.yml
index a82194db3..06b58c962 100644
--- a/.github/workflows/vector_db_tests.yml
+++ b/.github/workflows/vector_db_tests.yml
@@ -101,3 +101,30 @@ jobs:
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: uv run python ./cognee/tests/test_pgvector.py
+
+ run-lancedb-tests:
+ name: LanceDB Tests
+ runs-on: ubuntu-22.04
+ steps:
+ - name: Check out
+ uses: actions/checkout@v4
+ with:
+ fetch-depth: 0
+
+ - name: Cognee Setup
+ uses: ./.github/actions/cognee_setup
+ with:
+ python-version: ${{ inputs.python-version }}
+
+ - name: Run LanceDB Tests
+ env:
+ ENV: 'dev'
+ LLM_MODEL: ${{ secrets.LLM_MODEL }}
+ LLM_ENDPOINT: ${{ secrets.LLM_ENDPOINT }}
+ LLM_API_KEY: ${{ secrets.LLM_API_KEY }}
+ LLM_API_VERSION: ${{ secrets.LLM_API_VERSION }}
+ EMBEDDING_MODEL: ${{ secrets.EMBEDDING_MODEL }}
+ EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
+ EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
+ EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
+ run: uv run python ./cognee/tests/test_lancedb.py
\ No newline at end of file
diff --git a/README.md b/README.md
index 30f829c93..25eb2d519 100644
--- a/README.md
+++ b/README.md
@@ -5,7 +5,7 @@
- cognee - Memory for AI Agents in 5 lines of code
+ cognee - Memory for AI Agents in 6 lines of code
Demo @@ -43,12 +43,10 @@ -**🚀 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) -
🌐 Available Languages : @@ -70,53 +68,47 @@ More on [use-cases](https://docs.cognee.ai/use-cases) and [evals](https://github -## 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 notebook , Deepnote notebook or starter repo +## About cognee +Self-hosted package: -## 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. +- Interconnects any kind of documents: past conversations, files, images, and audio transcriptions +- Replaces RAG systems with a memory layer based on graphs and vectors +- Reduces developer effort and cost, while increasing quality and precision +- Provides Pythonic data pipelines that manage data ingestion from 30+ data sources +- Is highly customizable with custom tasks, pipelines, and a set of built-in search endpoints + +Hosted platform: +- Includes a managed UI and a [hosted solution](https://www.cognee.ai) +## Self-Hosted (Open Source) -## 📦 Installation +### 📦 Installation You can install Cognee using either **pip**, **poetry**, **uv** or any other python package manager. -Cognee supports Python 3.10 to 3.13 +Cognee supports Python 3.10 to 3.12 -### With pip +#### With uv ```bash -pip install cognee +uv pip install cognee ``` -## Local Cognee installation +Detailed instructions can be found in our [docs](https://docs.cognee.ai/getting-started/installation#environment-configuration) -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. +### 💻 Basic Usage -### with UV with all optional dependencies - -```bash -uv sync --all-extras -``` - -## 💻 Basic Usage - -### Setup +#### Setup ``` import os @@ -125,10 +117,14 @@ os.environ["LLM_API_KEY"] = "YOUR OPENAI_API_KEY" ``` You can also set the variables by creating .env file, using our template. -To use different LLM providers, for more info check out our documentation +To use different LLM providers, for more info check out our documentation -### Simple example +#### Simple example + + + +##### Python This script will run the default pipeline: @@ -139,13 +135,16 @@ 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.") + await cognee.add("Cognee turns documents into AI memory.") # Generate the knowledge graph await cognee.cognify() + # Add memory algorithms to the graph + await cognee.memify() + # Query the knowledge graph - results = await cognee.search("Tell me about NLP") + results = await cognee.search("What does cognee do?") # Display the results for result in results: @@ -158,33 +157,38 @@ if __name__ == '__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 turns documents into AI memory. ``` +##### Via CLI -## Our paper is out! Read here +Let's get the basics covered + +``` +cognee-cli add "Cognee turns documents into AI memory." + +cognee-cli cognify + +cognee-cli search "What does cognee do?" +cognee-cli delete --all + +``` +or run +``` +cognee-cli -ui +``` -
-
+Get up and running in minutes with automatic updates, analytics, and enterprise security.
-### Running the UI
+1. Sign up on [cogwit](https://www.cognee.ai)
+2. Add your API key to local UI and sync your data to Cogwit
-Try cognee UI by setting LLM_API_KEY and running ``` cognee-cli -ui ``` command on your terminal.
-
-## Understand our architecture
-
-
-CODE_OF_CONDUCT for more information.
-## 💫 Contributors
+## Citation
-
-