Commit graph

4315 commits

Author SHA1 Message Date
Andrej Milicevic
ac6c3ef9de fix: fix names, add falkor to constants 2025-11-11 15:07:59 +01:00
Andrej Milicevic
cfc131307f Merge branch 'feature/cog-3245-enable-multi-user-for-falkor' of github.com:topoteretes/cognee into feature/cog-3245-enable-multi-user-for-falkor 2025-11-11 14:22:55 +01:00
Andrej Milicevic
4f5771230e fix: PR comment changes 2025-11-11 14:22:42 +01:00
Igor Ilic
41b844a31c
Apply suggestion from @dexters1 2025-11-11 13:56:59 +01:00
Igor Ilic
20d49eeb76
Apply suggestion from @dexters1 2025-11-11 13:56:35 +01:00
Igor Ilic
bb8de7b336
Apply suggestion from @dexters1 2025-11-11 13:56:16 +01:00
Igor Ilic
011a7fb60b fix: Resolve multi user migration 2025-11-11 13:53:19 +01:00
Andrej Milicevic
ed2d687135 fix: changes based on PR comments 2025-11-11 13:52:34 +01:00
Igor Ilic
322c134e7e
Merge branch 'dev' into feature/cog-3245-enable-multi-user-for-falkor 2025-11-11 13:01:07 +01:00
Vasilije
78b825f338
feat: Add multi-tenancy (#1560)
<!-- .github/pull_request_template.md -->

## Description
Add multi-tenancy to Cognee

## 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):

## 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

## 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.
2025-11-11 12:55:27 +01:00
Igor Ilic
76bf99b8a6
Merge branch 'dev' into multi-tenancy 2025-11-11 12:51:19 +01:00
Igor Ilic
b5f94c889d
Update cognee/modules/users/permissions/methods/get_all_user_permission_datasets.py
Co-authored-by: Boris <boris@topoteretes.com>
2025-11-11 12:51:09 +01:00
Andrej Milićević
b5a09dfb53
test: fix weighted edges example (#1745)
<!-- .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.
-->
Changed the key used for openai, since we changed the keys in the
secrets.

## 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):

## 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

## 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.
2025-11-11 11:39:57 +01:00
Igor Ilic
3710eec94f refactor: update docstring message 2025-11-10 16:23:34 +01:00
Andrej Milićević
7e96f02326
feat:add emptiness check to neptune adapter (#1757)
<!-- .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.
-->
Add emptiness check to Neptune adapter

## 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):

## 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

## 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.
2025-11-10 12:34:01 +01:00
Pavel Zorin
6335e91620
Fix cypher search (#1739)
<!-- .github/pull_request_template.md -->

## Description
Resolve issue with cypher search by encoding the return value from the
cypher query into JSON. Uses fastapi json encoder


## Type of Change
<!-- Please check the relevant option -->
- [x] 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):

## Screenshots/Videos (if applicable)
Example of result now with Cypher search with the following query "MATCH
(src)-[rel]->(nbr) RETURN src, rel" on Simple example:
```
{
   "search_result":[
      [
         [
            {
               "_id":{
                  "offset":0,
                  "table":0
               },
               "_label":"Node",
               "id":"87372381-a9fe-5b82-9c92-3f5dbab1bc35",
               "name":"",
               "type":"DocumentChunk",
               "created_at":"2025-11-05T14:12:46.707597",
               "updated_at":"2025-11-05T14:12:54.801747",
               "properties":"{\"created_at\": 1762351945009, \"updated_at\": 1762351945009, \"ontology_valid\": false, \"version\": 1, \"topological_rank\": 0, \"metadata\": {\"index_fields\": [\"text\"]}, \"belongs_to_set\": null, \"text\": \"\\n    Natural language processing (NLP) is an interdisciplinary\\n    subfield of computer science and information retrieval.\\n    \", \"chunk_size\": 48, \"chunk_index\": 0, \"cut_type\": \"paragraph_end\"}"
            },
            {
               "_src":{
                  "offset":0,
                  "table":0
               },
               "_dst":{
                  "offset":1,
                  "table":0
               },
               "_label":"EDGE",
               "_id":{
                  "offset":0,
                  "table":1
               },
               "relationship_name":"contains",
               "created_at":"2025-11-05T14:12:47.217590",
               "updated_at":"2025-11-05T14:12:55.193003",
               "properties":"{\"source_node_id\": \"87372381-a9fe-5b82-9c92-3f5dbab1bc35\", \"target_node_id\": \"bc338a39-64d6-549a-acec-da60846dd90d\", \"relationship_name\": \"contains\", \"updated_at\": \"2025-11-05 14:12:54\", \"relationship_type\": \"contains\", \"edge_text\": \"relationship_name: contains; entity_name: natural language processing (nlp); entity_description: An interdisciplinary subfield of computer science and information retrieval concerned with interactions between computers and human (natural) languages.\"}"
            }
         ]
      ]
   ],
   "dataset_id":"UUID(""af4b1c1c-90fc-59b7-952c-1da9bbde370c"")",
   "dataset_name":"main_dataset",
   "graphs":"None"
}
```
Relates to https://github.com/topoteretes/cognee/pull/1725
Issue: https://github.com/topoteretes/cognee/issues/1723

## 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

## 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.
2025-11-08 22:34:27 +01:00
Igor Ilic
475e6a5b16
Merge branch 'dev' into fix-cypher-search 2025-11-08 19:44:20 +01:00
Andrej Milicevic
234b13a8c9 feat:add emptiness check to neptune adapter 2025-11-07 17:39:42 +01:00
Igor Ilic
d6e2bd132b refactor: Remove testme comment 2025-11-07 16:37:37 +01:00
Igor Ilic
8a72de8f86 Merge branch 'dev' into multi-tenancy 2025-11-07 15:52:40 +01:00
Igor Ilic
9fb7f2c4cf Merge branch 'dev' into multi-tenancy 2025-11-07 15:51:44 +01:00
Igor Ilic
59f758d5c2 feat: Add test for multi tenancy, add ability to share name for dataset across tenants for one user 2025-11-07 15:50:49 +01:00
Pavel Zorin
f7095c1c12
CI: Initial Release test workflow (#1749)
<!-- .github/pull_request_template.md -->

## Description
Created `Release Test Workflow` that for now executes load tests. It's
being triggered manually and on a PR to `main`.
NOTE: Release workflow is not in required checks because it contains new
and unstable tests. We will need to watch it ourselves.

The `Load Test` workflow is being called from the `Release Test
Workflow` and also manually on demand.
Limited load test duration to 60 minutes.

<!--
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
- [x] Other (please specify):
CI improvement
## 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

## 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.
2025-11-07 14:09:28 +01:00
Pavel Zorin
7d5d19347a CI: removed unnecessary ulimit 2025-11-07 11:11:05 +01:00
Andrej Milićević
df102e99a9
feat: add structured output support to retrievers (#1734)
<!-- .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.
-->
Add structured output support to all completion-based retrievers. If the
response model is not supplied, a string is used as default

## Type of Change
<!-- Please check the relevant option -->
- [ ] Bug fix (non-breaking change that fixes an issue)
- [x] New feature (non-breaking change that adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
- [x] Code refactoring
- [ ] Performance improvement
- [ ] Other (please specify):

## 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 -->
- [x] **I have tested my changes thoroughly before submitting this PR**
- [x] **This PR contains minimal changes necessary to address the
issue/feature**
- [x] My code follows the project's coding standards and style
guidelines
- [x] 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

## 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.
2025-11-07 10:21:52 +01:00
Andrej Milicevic
4ab53c9d64 changes based on PR comments 2025-11-07 10:00:17 +01:00
Igor Ilic
b0a4f775f4 Merge branch 'multi-tenancy' of github.com:topoteretes/cognee into multi-tenancy 2025-11-06 19:12:29 +01:00
Igor Ilic
96c8bba580 refactor: Add db creation as step in MCP creation 2025-11-06 19:12:09 +01:00
Igor Ilic
5dbfea5084
Merge branch 'dev' into multi-tenancy 2025-11-06 18:55:18 +01:00
Igor Ilic
7dec6bfded refactor: Add migrations as part of python package 2025-11-06 18:10:04 +01:00
Andrej Milicevic
72ba8d0dcb chore: ruff format 2025-11-06 17:12:33 +01:00
Andrej Milicevic
da5055a0a9 test: add one test that covers all retrievers. delete others 2025-11-06 17:11:15 +01:00
Igor Ilic
61e1c2903f fix: Remove issue with default user creation 2025-11-06 17:00:46 +01:00
Igor Ilic
bcc59cf9a0 fix: Remove default user creation 2025-11-06 16:57:59 +01:00
Igor Ilic
0d68175167 fix: remove database creation from migrations 2025-11-06 16:53:22 +01:00
Igor Ilic
efb46c99f9 fix: resolve issue with sqlite migration 2025-11-06 16:47:42 +01:00
Pavel Zorin
49fbad9ec0 CI: Run release workflow on PR to main 2025-11-06 16:44:43 +01:00
Igor Ilic
c146de3a4d fix: Remove creation of database and db tables from env.py 2025-11-06 16:41:00 +01:00
Igor Ilic
ef3a382669 refactor: use batch insert for SQLite as well 2025-11-06 16:23:54 +01:00
Pavel Zorin
d5caba144c CI: Initial Release test workflow 2025-11-06 16:01:39 +01:00
lxobr
5bc83968f8
feature: text chunker with overlap (#1732)
<!-- .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.
-->
- Implements `TextChunkerWithOverlap` with configurable
`chunk_overlap_ratio`
- Abstracts chunk_data generation via `get_chunk_data` callable
(defaults to `chunk_by_paragraph`)
- Parametrized tests verify `TextChunker` and `TextChunkerWithOverlap`
(0% overlap) produce identical output for all edge cases.
- Overlap-specific tests validate `TextChunkerWithOverlap` behavior 

## Type of Change
<!-- Please check the relevant option -->
- [ ] Bug fix (non-breaking change that fixes an issue)
- [x] 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):

## 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 -->
- [x] **I have tested my changes thoroughly before submitting this PR**
- [x] **This PR contains minimal changes necessary to address the
issue/feature**
- [x] My code follows the project's coding standards and style
guidelines
- [x] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have added necessary documentation (if applicable)
- [x] All new and existing tests pass
- [x] I have searched existing PRs to ensure this change hasn't been
submitted already
- [ ] I have linked any relevant issues in the description
- [x] My commits have clear and descriptive messages

## 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: hajdul88 <52442977+hajdul88@users.noreply.github.com>
2025-11-06 15:22:48 +01:00
Igor Ilic
ac751bacf0 fix: Resolve SQLite migration issue 2025-11-06 14:51:25 +01:00
Igor Ilic
ac6dd08855 fix: Resolve issue with sqlite index creation 2025-11-06 14:35:26 +01:00
hajdul88
c0e5ce04ce
Fix: fixes session history test for multiuser mode (#1746)
<!-- .github/pull_request_template.md -->

## Description
Fixes failing session history test

## Type of Change
<!-- Please check the relevant option -->
- [x] 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):

## 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 -->
- [x] **I have tested my changes thoroughly before submitting this PR**
- [x] **This PR contains minimal changes necessary to address the
issue/feature**
- [x] My code follows the project's coding standards and style
guidelines
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] I have added necessary documentation (if applicable)
- [x] All new and existing tests pass
- [x] I have searched existing PRs to ensure this change hasn't been
submitted already
- [x] I have linked any relevant issues in the description
- [x] My commits have clear and descriptive messages

## 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.
2025-11-06 14:13:55 +01:00
Andrej Milicevic
62c599a499 test: add dev to CI config for weighted edges tests 2025-11-06 13:13:35 +01:00
Andrej Milicevic
6b81559bb6 test: changed endpoints in other tests 2025-11-06 13:04:01 +01:00
Andrej Milicevic
286584eef0 test: change embedding config 2025-11-06 12:35:37 +01:00
Andrej Milicevic
4567ffcfff test: change endpoint 2025-11-06 12:27:10 +01:00
Andrej Milicevic
5dc8d4e8a1 test: remove workflow_dispatch 2025-11-06 11:52:39 +01:00
Andrej Milicevic
cdb06d2157 test: add workflow_dispatch for test purposes 2025-11-06 11:50:58 +01:00