Refactor CI workflows to replace Poetry with uv (#1250)

<!-- .github/pull_request_template.md -->

## Description
This PR migrates all CI/CD workflows to use `uv` instead of `poetry`

## 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.
This commit is contained in:
Vasilije 2025-08-15 11:05:58 +02:00 committed by GitHub
commit 216ffd2706
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
16 changed files with 109 additions and 130 deletions

View file

@ -1,11 +1,15 @@
name: cognee-setup
description: "Sets up Python, installs Poetry, loads venv from cache, and installs dependencies for Cognee."
description: "Sets up Python, installs uv, and installs dependencies for Cognee."
inputs:
python-version:
description: "Which Python version to use"
required: false
default: "3.11.x"
extra-dependencies:
description: "Additional extra dependencies to install (space-separated)"
required: false
default: ""
runs:
using: "composite"
@ -16,18 +20,25 @@ runs:
with:
python-version: ${{ inputs.python-version }}
- name: Install Poetry
- name: Install uv
uses: astral-sh/setup-uv@v4
with:
enable-cache: true
- name: Rebuild uv lockfile
shell: bash
run: |
python -m pip install --upgrade pip
pip install poetry
- name: Rebuild Poetry lock file
shell: bash
run: |
rm poetry.lock
poetry lock
rm uv.lock
uv lock
- name: Install dependencies
shell: bash
run: poetry install --no-interaction -E api -E docs -E evals -E gemini -E codegraph -E ollama -E dev -E neo4j
run: |
EXTRA_ARGS=""
if [ -n "${{ inputs.extra-dependencies }}" ]; then
IFS=' ' read -r -a deps <<< "${{ inputs.extra-dependencies }}"
for extra in "${deps[@]}"; do
EXTRA_ARGS="$EXTRA_ARGS --extra $extra"
done
fi
uv sync --extra api --extra docs --extra evals --extra gemini --extra codegraph --extra ollama --extra dev --extra neo4j $EXTRA_ARGS

View file

@ -98,7 +98,7 @@ jobs:
python-version: ${{ inputs.python-version }}
- name: Run Unit Tests
run: poetry run pytest cognee/tests/unit/
run: uv run pytest cognee/tests/unit/
integration-tests:
name: Run Integration Tests
@ -115,7 +115,7 @@ jobs:
python-version: ${{ inputs.python-version }}
- name: Run Integration Tests
run: poetry run pytest cognee/tests/integration/
run: uv run pytest cognee/tests/integration/
simple-examples:
name: Run Simple Examples
@ -144,7 +144,7 @@ jobs:
python-version: ${{ inputs.python-version }}
- name: Run Simple Examples
run: poetry run python ./examples/python/simple_example.py
run: uv run python ./examples/python/simple_example.py
simple-examples-baml:
name: Run Simple Examples BAML
@ -180,7 +180,7 @@ jobs:
python-version: ${{ inputs.python-version }}
- name: Run Simple Examples
run: poetry run python ./examples/python/simple_example.py
run: uv run python ./examples/python/simple_example.py
graph-tests:
name: Run Basic Graph Tests
@ -209,4 +209,4 @@ jobs:
python-version: ${{ inputs.python-version }}
- name: Run Graph Tests
run: poetry run python ./examples/python/code_graph_example.py --repo_path ./cognee/tasks/graph
run: uv run python ./examples/python/code_graph_example.py --repo_path ./cognee/tasks/graph

View file

@ -54,10 +54,6 @@ jobs:
with:
python-version: ${{ inputs.python-version }}
- name: Install Neo4j extra
run: |
poetry install -E neo4j
- name: Run Neo4j Example
env:
ENV: dev
@ -74,7 +70,7 @@ jobs:
GRAPH_DATABASE_USERNAME: "neo4j"
GRAPH_DATABASE_PASSWORD: ${{ secrets.NEO4J_API_KEY }}
run: |
poetry run python examples/database_examples/neo4j_example.py
uv run python examples/database_examples/neo4j_example.py
run-db-example-kuzu:
name: "Kuzu DB Example Test"
@ -90,9 +86,8 @@ jobs:
with:
python-version: ${{ inputs.python-version }}
- name: Install Kuzu extra
run: |
poetry install
- name: Dependencies already installed
run: echo "Dependencies already installed in setup"
- name: Run Kuzu Example
env:
@ -107,7 +102,7 @@ jobs:
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
GRAPH_DATABASE_PROVIDER: "kuzu"
run: |
poetry run python examples/database_examples/kuzu_example.py
uv run python examples/database_examples/kuzu_example.py
run-db-example-pgvector:
name: "PostgreSQL PGVector DB Example Test"
@ -138,10 +133,7 @@ jobs:
uses: ./.github/actions/cognee_setup
with:
python-version: ${{ inputs.python-version }}
- name: Install PGVector extra
run: |
poetry install -E postgres
extra-dependencies: "postgres"
- name: Run PGVector Example
env:
@ -155,4 +147,4 @@ jobs:
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: |
poetry run python examples/database_examples/pgvector_example.py
uv run python examples/database_examples/pgvector_example.py

View file

@ -57,7 +57,7 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./cognee/tests/test_cognee_server_start.py
run: uv run python ./cognee/tests/test_cognee_server_start.py
run-telemetry-test:
name: Run Telemetry Test
@ -81,7 +81,7 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./cognee/tests/test_telemetry.py
run: uv run python ./cognee/tests/test_telemetry.py
run-telemetry-pipeline-test:
name: Run Telemetry Pipeline Test
@ -110,7 +110,7 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./cognee/tests/test_library.py
run: uv run python ./cognee/tests/test_library.py
run-deduplication-test:
name: Deduplication Test
@ -140,10 +140,7 @@ jobs:
uses: ./.github/actions/cognee_setup
with:
python-version: '3.11.x'
- name: Install specific db dependency
run: |
poetry install -E postgres
extra-dependencies: "postgres"
- name: Run Deduplication Example
env:
@ -154,7 +151,7 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./cognee/tests/test_deduplication.py
run: uv run python ./cognee/tests/test_deduplication.py
run-deletion-test:
name: Deletion Test
@ -179,7 +176,7 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./cognee/tests/test_deletion.py
run: uv run python ./cognee/tests/test_deletion.py
run-s3-bucket-test:
name: S3 Bucket Test
@ -192,10 +189,10 @@ jobs:
uses: ./.github/actions/cognee_setup
with:
python-version: '3.11.x'
extra-dependencies: "aws"
- name: Install specific S3 dependency
run: |
poetry install -E aws
- name: Dependencies already installed
run: echo "Dependencies already installed in setup"
- name: Run S3 Bucket Test
env:
@ -210,7 +207,7 @@ jobs:
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
run: poetry run python ./cognee/tests/test_s3.py
run: uv run python ./cognee/tests/test_s3.py
test-parallel-databases:
name: Test using different async databases in parallel in Cognee
@ -224,9 +221,8 @@ jobs:
with:
python-version: '3.11.x'
- name: Install specific graph db dependency
run: |
poetry install
- name: Dependencies already installed
run: echo "Dependencies already installed in setup"
- name: Run parallel databases test
env:
@ -239,7 +235,7 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./cognee/tests/test_parallel_databases.py
run: uv run python ./cognee/tests/test_parallel_databases.py
test-permissions:
name: Test permissions with different situations in Cognee
@ -253,9 +249,8 @@ jobs:
with:
python-version: '3.11.x'
- name: Install specific graph db dependency
run: |
poetry install
- name: Dependencies already installed
run: echo "Dependencies already installed in setup"
- name: Run parallel databases test
env:
@ -268,7 +263,7 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./cognee/tests/test_permissions.py
run: uv run python ./cognee/tests/test_permissions.py
test-graph-edges:
name: Test graph edge ingestion
@ -282,9 +277,8 @@ jobs:
with:
python-version: '3.11.x'
- name: Install specific graph db dependency
run: |
poetry install
- name: Dependencies already installed
run: echo "Dependencies already installed in setup"
- name: Run graph edges test
env:
@ -297,4 +291,4 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./cognee/tests/test_edge_ingestion.py
run: uv run python ./cognee/tests/test_edge_ingestion.py

View file

@ -20,7 +20,7 @@ jobs:
env:
LLM_API_KEY: ${{ secrets.OPENAI_API_KEY }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
run: poetry run python ./examples/python/multimedia_example.py
run: uv run python ./examples/python/multimedia_example.py
test-eval-example:
name: Run Eval Example
@ -33,10 +33,7 @@ jobs:
uses: ./.github/actions/cognee_setup
with:
python-version: '3.11.x'
- name: Install specific eval dependency
run: |
poetry install -E deepeval
extra-dependencies: "deepeval"
- name: Run Evaluation Framework Example
env:
@ -49,7 +46,7 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./cognee/eval_framework/run_eval.py
run: uv run python ./cognee/eval_framework/run_eval.py
test-descriptive-metrics:
name: Run Descriptive Metrics Example
@ -74,7 +71,7 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./cognee/tests/tasks/descriptive_metrics/networkx_metrics_test.py
run: uv run python ./cognee/tests/tasks/descriptive_metrics/networkx_metrics_test.py
test-dynamic-steps-metrics:
@ -100,4 +97,4 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./examples/python/dynamic_steps_example.py
run: uv run python ./examples/python/dynamic_steps_example.py

View file

@ -28,9 +28,8 @@ jobs:
with:
python-version: ${{ inputs.python-version }}
- name: Install specific db dependency
run: |
poetry install
- name: Dependencies already installed
run: echo "Dependencies already installed in setup"
- name: Run Kuzu Tests
env:
@ -43,7 +42,7 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./cognee/tests/test_kuzu.py
run: uv run python ./cognee/tests/test_kuzu.py
- name: Run Weighted Edges Tests with Kuzu
env:
@ -57,7 +56,7 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run pytest cognee/tests/unit/interfaces/graph/test_weighted_edges.py -v
run: uv run pytest cognee/tests/unit/interfaces/graph/test_weighted_edges.py -v
run-neo4j-tests:
name: Neo4j Tests
@ -72,10 +71,6 @@ jobs:
with:
python-version: ${{ inputs.python-version }}
- name: Install specific db dependency
run: |
poetry install -E neo4j
- name: Run default Neo4j
env:
ENV: 'dev'
@ -91,7 +86,7 @@ jobs:
GRAPH_DATABASE_URL: ${{ secrets.NEO4J_API_URL }}
GRAPH_DATABASE_PASSWORD: ${{ secrets.NEO4J_API_KEY }}
GRAPH_DATABASE_USERNAME: "neo4j"
run: poetry run python ./cognee/tests/test_neo4j.py
run: uv run python ./cognee/tests/test_neo4j.py
- name: Run Weighted Edges Tests with Neo4j
env:
@ -108,4 +103,4 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run pytest cognee/tests/unit/interfaces/graph/test_weighted_edges.py -v
run: uv run pytest cognee/tests/unit/interfaces/graph/test_weighted_edges.py -v

View file

@ -55,7 +55,7 @@ jobs:
- name: Run unit tests
shell: bash
run: poetry run pytest cognee/tests/unit/
run: uv run pytest cognee/tests/unit/
env:
PYTHONUTF8: 1
LLM_PROVIDER: openai
@ -73,7 +73,7 @@ jobs:
- name: Run integration tests
if: ${{ !contains(matrix.os, 'windows') }}
shell: bash
run: poetry run pytest cognee/tests/integration/
run: uv run pytest cognee/tests/integration/
env:
PYTHONUTF8: 1
LLM_PROVIDER: openai
@ -103,11 +103,11 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./cognee/tests/test_library.py
run: uv run python ./cognee/tests/test_library.py
- name: Build with Poetry
- name: Build with uv
shell: bash
run: poetry build
run: uv build
- name: Install Package
if: ${{ !contains(matrix.os, 'windows') }}

View file

@ -58,10 +58,10 @@ jobs:
uses: ./.github/actions/cognee_setup
with:
python-version: '3.11.x'
extra-dependencies: "postgres"
- name: Install specific db dependency
run: |
poetry install -E postgres
run: echo "Dependencies already installed in setup"
- name: Run PostgreSQL Script to create test data (Chinook_PostgreSql.sql)
env:
@ -90,7 +90,7 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./cognee/tests/test_relational_db_migration.py
run: uv run python ./cognee/tests/test_relational_db_migration.py
run-relational-db-migration-test-kuzu:
name: Kuzu Relational DB Migration Test
@ -120,10 +120,10 @@ jobs:
uses: ./.github/actions/cognee_setup
with:
python-version: '3.11.x'
extra-dependencies: "postgres"
- name: Install specific db dependency
run: |
poetry install -E postgres
run: echo "Dependencies already installed in setup"
- name: Run PostgreSQL Script to create test data (Chinook_PostgreSql.sql)
env:
@ -154,7 +154,7 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./cognee/tests/test_relational_db_migration.py
run: uv run python ./cognee/tests/test_relational_db_migration.py
run-relational-db-migration-test-neo4j:
name: Neo4j Relational DB Migration Test
@ -184,10 +184,10 @@ jobs:
uses: ./.github/actions/cognee_setup
with:
python-version: '3.11.x'
extra-dependencies: "postgres"
- name: Install specific db dependency
run: |
poetry install -E postgres -E neo4j
run: echo "Dependencies already installed in setup"
- name: Run PostgreSQL Script to create test data (Chinook_PostgreSql.sql)
env:
@ -221,4 +221,4 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./cognee/tests/test_relational_db_migration.py
run: uv run python ./cognee/tests/test_relational_db_migration.py

View file

@ -46,10 +46,7 @@ jobs:
uses: ./.github/actions/cognee_setup
with:
python-version: ${{ inputs.python-version }}
- name: Install specific db dependency
run: |
poetry install -E notebook
extra-dependencies: "notebook"
- name: Execute Jupyter Notebook
env:
@ -64,7 +61,7 @@ jobs:
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: |
poetry run jupyter nbconvert \
uv run jupyter nbconvert \
--to notebook \
--execute ${{ inputs.notebook-location }} \
--output executed_notebook.ipynb \

View file

@ -28,9 +28,8 @@ jobs:
with:
python-version: ${{ inputs.python-version }}
- name: Install specific db dependency
run: |
poetry install
- name: Dependencies already installed
run: echo "Dependencies already installed in setup"
- name: Run Kuzu search Tests
env:
@ -46,7 +45,7 @@ jobs:
GRAPH_DATABASE_PROVIDER: 'kuzu'
VECTOR_DB_PROVIDER: 'lancedb'
DB_PROVIDER: 'sqlite'
run: poetry run python ./cognee/tests/test_search_db.py
run: uv run python ./cognee/tests/test_search_db.py
run-neo4j-lance-sqlite-search-tests:
name: Search test for Neo4j/LanceDB/Sqlite
@ -78,9 +77,8 @@ jobs:
with:
python-version: ${{ inputs.python-version }}
- name: Install specific db dependency
run: |
poetry install -E neo4j
- name: Dependencies already installed
run: echo "Dependencies already installed in setup"
- name: Run Neo4j search Tests
env:
@ -99,7 +97,7 @@ jobs:
GRAPH_DATABASE_URL: bolt://localhost:7687
GRAPH_DATABASE_USERNAME: neo4j
GRAPH_DATABASE_PASSWORD: pleaseletmein
run: poetry run python ./cognee/tests/test_search_db.py
run: uv run python ./cognee/tests/test_search_db.py
run-kuzu-pgvector-postgres-search-tests:
name: Search test for Kuzu/PGVector/Postgres
@ -129,9 +127,10 @@ jobs:
uses: ./.github/actions/cognee_setup
with:
python-version: ${{ inputs.python-version }}
extra-dependencies: "postgres"
- name: Install dependencies
run: poetry install -E postgres
- name: Dependencies already installed
run: echo "Dependencies already installed in setup"
- name: Run Kuzu/PGVector/Postgres Tests
env:
@ -152,7 +151,7 @@ jobs:
DB_PORT: 5432
DB_USERNAME: cognee
DB_PASSWORD: cognee
run: poetry run python ./cognee/tests/test_search_db.py
run: uv run python ./cognee/tests/test_search_db.py
run-neo4j-pgvector-postgres-search-tests:
name: Search test for Neo4j/PGVector/Postgres
@ -195,10 +194,10 @@ jobs:
uses: ./.github/actions/cognee_setup
with:
python-version: ${{ inputs.python-version }}
extra-dependencies: "postgres"
- name: Install dependencies
run: |
poetry install -E neo4j -E postgres
- name: Dependencies already installed
run: echo "Dependencies already installed in setup"
- name: Run Neo4j + PGVector + Postgres search Tests
env:
@ -222,4 +221,4 @@ jobs:
DB_PORT: 5432
DB_USERNAME: cognee
DB_PASSWORD: cognee
run: poetry run python ./cognee/tests/test_search_db.py
run: uv run python ./cognee/tests/test_search_db.py

View file

@ -26,4 +26,4 @@ jobs:
EMBEDDING_MODEL: "gemini/text-embedding-004"
EMBEDDING_DIMENSIONS: "768"
EMBEDDING_MAX_TOKENS: "8076"
run: poetry run python ./examples/python/simple_example.py
run: uv run python ./examples/python/simple_example.py

View file

@ -26,7 +26,7 @@ jobs:
- name: Install torch dependency
run: |
poetry add torch
uv add torch
# - name: Install ollama
# run: curl -fsSL https://ollama.com/install.sh | sh
@ -101,4 +101,4 @@ jobs:
EMBEDDING_ENDPOINT: "http://localhost:11434/api/embeddings"
EMBEDDING_DIMENSIONS: "4096"
HUGGINGFACE_TOKENIZER: "Salesforce/SFR-Embedding-Mistral"
run: poetry run python ./examples/python/simple_example.py
run: uv run python ./examples/python/simple_example.py

View file

@ -36,4 +36,4 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./cognee/tests/test_s3_file_storage.py
run: uv run python ./cognee/tests/test_s3_file_storage.py

View file

@ -56,7 +56,7 @@ jobs:
# EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
# EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
# EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
# run: poetry run python ./cognee/tests/test_chromadb.py
# run: uv run python ./cognee/tests/test_chromadb.py
run-postgres-tests:
@ -87,10 +87,7 @@ jobs:
uses: ./.github/actions/cognee_setup
with:
python-version: ${{ inputs.python-version }}
- name: Install specific db dependency
run: |
poetry install -E postgres
extra-dependencies: "postgres"
- name: Run PGVector Tests
env:
@ -103,4 +100,4 @@ jobs:
EMBEDDING_ENDPOINT: ${{ secrets.EMBEDDING_ENDPOINT }}
EMBEDDING_API_KEY: ${{ secrets.EMBEDDING_API_KEY }}
EMBEDDING_API_VERSION: ${{ secrets.EMBEDDING_API_VERSION }}
run: poetry run python ./cognee/tests/test_pgvector.py
run: uv run python ./cognee/tests/test_pgvector.py

View file

@ -47,11 +47,11 @@ jobs:
- name: Run Weighted Edges Unit Tests
run: |
poetry run pytest cognee/tests/unit/interfaces/graph/test_weighted_edges.py -v --tb=short
uv run pytest cognee/tests/unit/interfaces/graph/test_weighted_edges.py -v --tb=short
- name: Run Standard Graph Tests (Regression)
run: |
poetry run pytest cognee/tests/unit/interfaces/graph/get_graph_from_model_unit_test.py -v --tb=short
uv run pytest cognee/tests/unit/interfaces/graph/get_graph_from_model_unit_test.py -v --tb=short
test-with-different-databases:
name: Test Weighted Edges with Different Graph Databases
@ -61,10 +61,8 @@ jobs:
database: ['kuzu', 'neo4j']
include:
- database: kuzu
install_extra: ""
graph_db_provider: "kuzu"
- database: neo4j
install_extra: "-E neo4j"
graph_db_provider: "neo4j"
env:
LLM_PROVIDER: openai
@ -88,15 +86,14 @@ jobs:
with:
python-version: '3.11'
- name: Install Database Dependencies
run: |
poetry install ${{ matrix.install_extra }}
- name: Dependencies already installed
run: echo "Dependencies already installed in setup"
- name: Run Weighted Edges Tests
env:
GRAPH_DATABASE_PROVIDER: ${{ matrix.graph_db_provider }}
run: |
poetry run pytest cognee/tests/unit/interfaces/graph/test_weighted_edges.py -v --tb=short
uv run pytest cognee/tests/unit/interfaces/graph/test_weighted_edges.py -v --tb=short
test-examples:
name: Test Weighted Edges Examples
@ -125,7 +122,7 @@ jobs:
- name: Test Weighted Edges Example
run: |
poetry run python examples/python/weighted_edges_example.py
uv run python examples/python/weighted_edges_example.py
- name: Verify Visualization File Created
run: |

View file

@ -91,8 +91,8 @@ Your contributions are at the core of making this a true open source project. An
## 📦 Installation
You can install Cognee using either **pip**, **poetry**, **uv** or any other python package manager.
Cognee supports Python 3.8 to 3.12
You can install Cognee using either **uv**, **pip**, **poetry** or any other python package manager.
Cognee supports Python 3.10 to 3.13
### With pip
@ -102,7 +102,7 @@ pip install cognee
## Local Cognee installation
You can install the local Cognee repo using **pip**, **poetry** and **uv**.
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