Commit graph

4429 commits

Author SHA1 Message Date
Boris
8eaf558891
Merge branch 'dev' into feature/cog-3014-refactor-delete-feature 2025-11-27 13:24:17 +01:00
hajdul88
508165e883
feature: Introduces wide subgraph search in graph completion and improves QA speed (#1736)
<!-- .github/pull_request_template.md -->

This PR introduces wide vector and graph structure filtering
capabilities. With these changes, the graph completion retriever and all
retrievers that inherit from it will now filter relevant vector elements
and subgraphs based on the query. This improvement significantly
increases search speed for large graphs while maintaining—and in some
cases slightly improving—accuracy.

Changes in This PR:

-Introduced new wide_search_top_k parameter: Controls the initial search
space size

-Added graph adapter level filtering method: Enables relevant subgraph
filtering while maintaining backward compatibility. For community or
custom graph adapters that don't implement this method, the system
gracefully falls back to the original search behavior.

-Updated modal dashboard and evaluation framework: Fixed compatibility
issues.
Added comprehensive unit tests: Introduced unit tests for
brute_force_triplet_search (previously untested) and expanded the
CogneeGraph test suite.

Integration tests: Existing integration tests verify end-to-end search
functionality (no changes required).

Acceptance Criteria and Testing

To verify the new search behavior, run search queries with different
wide_search_top_k parameters while logging is enabled:
None: Triggers a full graph search (default behavior)
1: Projects a minimal subgraph (demonstrates maximum filtering)
Custom values: Test intermediate levels of filtering

Internal Testing and results:
Performance and accuracy benchmarks are available upon request. The
implementation demonstrates measurable improvements in query latency for
large graphs without sacrificing result quality.

## 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
- [x] Code refactoring
- [x] Performance improvement
- [ ] Other (please specify):

## Screenshots/Videos (if applicable)
None

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

---------

Co-authored-by: Pavel Zorin <pazonec@yandex.ru>
2025-11-26 15:18:53 +01:00
Boris Arzentar
e17e39f306
Merge remote-tracking branch 'origin/dev' into feature/cog-3014-refactor-delete-feature 2025-11-25 11:28:14 +01:00
hajdul88
c2c64a417c
fix: fixes ontology api endpoint tests + poetry lock(#1824)
<!-- .github/pull_request_template.md -->

## Description

This PR fixes the failing CI tests related to the new ontology api
endpoint.


<!--
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 -->
- [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-24 17:44:51 +01:00
Boris
58fa95605a
version: 0.5.0.dev0 (#1827)
<!-- .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):

## 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-24 16:19:13 +01:00
Boris Arzentar
af8c55e82b
version: 0.5.0.dev0 2025-11-24 16:16:47 +01:00
Boris Arzentar
01da7c47b7
fix: remove unused param for record_data_in_legacy_ledger 2025-11-23 22:54:49 +01:00
Boris Arzentar
6fb28d4d0f
Merge remote-tracking branch 'origin/dev' into feature/cog-3014-refactor-delete-feature 2025-11-23 22:37:07 +01:00
Boris Arzentar
bc4eb9f6ce
fix: legacy delete backwards compatibility for neo4j 2025-11-23 22:33:10 +01:00
Vasilije
2a005d6e1f
feat: make notebook cognee usage identical across uis (#1747)
<!-- .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):

## 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-22 14:50:01 -08:00
Vasilije
e81613ea6e
feat: add ontology endpoint in REST API (#1724)
## Description

This PR resolves #1446 by adding support to upload ontology files and
refer to them in the cognee POST request.

  Implementation Details:
- New endpoint: POST /api/v1/ontologies for ontology file upload with a
simple key parameter
  that can be referenced in POST cognify requests
- File storage: Ontology files are stored in /tmp/ontologies/{user_id}/
with metadata
  management
- New service: OntologyService created for file management and metadata
handling
- Resolver: RDFLibOntologyResolver modified to handle file-like objects.


## 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
- [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-22 14:49:09 -08:00
Vasilije
2f2a4487f0
feat: csv ingestion & chunking (#1574)
<!-- .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.
-->
Create a dedicated CSV ingestion path with a custom loader and custom
chunker that preserves row-column relationships in the produced chunks.
#1348

## Type of Change
<!-- Please check the relevant option -->
- [x] Bug fix (non-breaking change that fixes an issue)
- [x] New feature (non-breaking change that adds functionality)
- [x] Breaking change (fix or feature that would cause existing
functionality to change)
- [x] Documentation update
- [x] Code refactoring
- [x] Performance improvement
- [x] 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-22 14:48:27 -08:00
Vasilije
bcf1d4890f
feat: add instructor mode env variable and config parameter (#1789)
<!-- .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.
-->
Added a variable to control which instructor mode we use. The defaults
for each adapter are used, but a user can override this if the set the
`LLM_INSTRUCTOR_MODE` env variable.

## 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 -->
- [ ] **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-22 14:18:40 -08:00
Boris Arzentar
cb380e51e9
fix: add attributes to edges 2025-11-22 13:09:31 +01:00
Boris Arzentar
663dd16647
fix: neo4j support in test_delete_default_graph_non_mocked.py 2025-11-22 12:44:29 +01:00
Boris
ae227106ef
Merge branch 'dev' into feature/cog-3155-engineering-make-notebook-cognee-usage-identical-across-uis 2025-11-22 12:19:52 +01:00
Andrej Milicevic
204f9c2e4a fix: PR comment changes 2025-11-21 16:20:19 +01:00
Boris Arzentar
b8dff548d9
Merge remote-tracking branch 'origin/dev' into feature/cog-3014-refactor-delete-feature 2025-11-20 17:55:14 +01:00
hajdul88
2176ec16b8
chore: changes url for crawler tests (#1816)
<!-- .github/pull_request_template.md -->

Updates crawler test url to avoid blocking and unavailable sites in CI.

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

## 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-20 17:03:36 +01:00
Boris Arzentar
05cb967e9b
fix: get data from dataset in datasets.delete 2025-11-20 16:22:19 +01:00
Andrej Milicevic
4e880eca84 chore: update env template 2025-11-20 15:47:22 +01:00
Boris Arzentar
bf977d49ad
fix: add two new tests for delete 2025-11-20 15:15:43 +01:00
Fahad Shoaib
8cfb6c41ee fix: remove async from ontology endpoint test functions 2025-11-20 15:54:09 +05:00
Fahad Shoaib
30e3971d44 fix: add auth headers to ontology upload request and enhance ontology content 2025-11-20 15:36:15 +05:00
Boris Arzentar
7c5466fc07
Merge remote-tracking branch 'origin/dev' into feature/cog-3014-refactor-delete-feature 2025-11-19 16:06:33 +01:00
Boris Arzentar
e6baaf83e6
fix: lint errors and improve delete tests 2025-11-19 16:06:28 +01:00
hajdul88
fe55071849
Feature/cog 3407 fixing integration test in ci (#1810)
<!-- .github/pull_request_template.md -->

## Description
This PR should fix the web crawler integration test issue in our CI

## 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 -->
- [ ] **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-19 15:33:50 +01:00
Boris Arzentar
43459eeeac
fix: improve delete tests 2025-11-19 14:01:45 +01:00
Boris Arzentar
a89dad328e
fix: add detailed tests for delete 2025-11-17 22:04:30 +01:00
Boris
4888cd54b8
Merge branch 'dev' into feature/cog-3155-engineering-make-notebook-cognee-usage-identical-across-uis 2025-11-17 19:25:00 +01:00
hajdul88
ccea3c39d4
Merge branch 'dev' into feature/ontology-param-rest 2025-11-17 09:40:37 +01:00
EricXiao
688857ccc3
Merge branch 'dev' into feat/csv-ingestion 2025-11-17 14:42:20 +08:00
EricXiao
983bfae4fc chore: remove unnecessary csv file type
Signed-off-by: EricXiao <taoiaox@gmail.com>
2025-11-17 14:41:55 +08:00
Fahad Shoaib
1ded09d0f9 fix: fixed test ontology file content. Added tests to support multiple files and improved validation. 2025-11-15 00:06:55 +05:00
Fahad Shoaib
01f1c099cc test: enhance server start test with ontology upload verification
- Extend test_cognee_server_start to upload ontology and verify integration
- Move test_ontology_endpoint from tests/ to tests/unit/api/
2025-11-14 22:20:54 +05:00
Fahad Shoaib
844b8d635a feat: enhance ontology handling to support multiple uploads and retrievals 2025-11-14 22:13:00 +05:00
Boris Arzentar
77b3e731d8
fix: lint errors 2025-11-14 14:34:40 +01:00
Boris Arzentar
c4525d84ec
Merge remote-tracking branch 'origin/dev' into feature/cog-3014-refactor-delete-feature 2025-11-14 14:31:23 +01:00
Boris Arzentar
07c28c015a
fix: fallback parsing of metadata in delete test 2025-11-14 14:31:18 +01:00
Pavel Zorin
de6b842d02
Fix: Remove cognee script from pyproject.toml (#1785)
<!-- .github/pull_request_template.md -->

## Description
Removes `cognee` script entry from the pyproject.toml. This might affect
the MCP server startup.

## 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-14 13:04:51 +01:00
Boris Arzentar
9315f3feb5
fix: set context properly before running cognee methods tests 2025-11-14 12:36:32 +01:00
Boris Arzentar
0c2eeb873b
fix: revert neo4j get_graph_data change 2025-11-14 12:20:46 +01:00
Boris Arzentar
7858e3ff3f
Merge remote-tracking branch 'origin/dev' into feature/cog-3014-refactor-delete-feature 2025-11-14 12:13:40 +01:00
Boris Arzentar
81aca0d607
fix: send owner_id to setset_database_global_context_variables in datasets delete methods 2025-11-14 12:12:13 +01:00
Andrej Milicevic
205f5a9e0c fix: Fix based on PR comments 2025-11-14 11:05:39 +01:00
Vasilije
6b88f925af
Fix: MCP remove cognee.add() preprequisite from the doc (#1788)
<!-- .github/pull_request_template.md -->

## Description
This prerequisite is not required because `cognee.add()` is invoked in
the `cognify`. This confuses Claude
## 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-14 10:09:43 +01:00
EricXiao
01f9dd957c
Merge branch 'dev' into feat/csv-ingestion 2025-11-14 15:24:31 +08:00
EricXiao
661c194f97 fix: Resolve issue with csv suffix classification
Signed-off-by: EricXiao <taoiaox@gmail.com>
2025-11-14 15:21:47 +08:00
EricXiao
4c609d6074 Merge branch 'dev' into feat/csv-ingestion
Signed-off-by: EricXiao <taoiaox@gmail.com>
2025-11-14 14:46:11 +08:00
Boris Arzentar
9a1438869a
fix: remove unused test 2025-11-14 00:30:27 +01:00