From 657c775cbe673f10059028f5c3f5c51af239c5bf Mon Sep 17 00:00:00 2001 From: hajdul88 <52442977+hajdul88@users.noreply.github.com> Date: Wed, 13 Aug 2025 12:22:03 +0200 Subject: [PATCH] feat: adds configattributeerror --- cognee/api/v1/config/config.py | 6 ++---- cognee/api/v1/exceptions/__init__.py | 9 +++++++++ cognee/api/v1/exceptions/exceptions.py | 15 +++++++++++++++ 3 files changed, 26 insertions(+), 4 deletions(-) create mode 100644 cognee/api/v1/exceptions/__init__.py create mode 100644 cognee/api/v1/exceptions/exceptions.py diff --git a/cognee/api/v1/config/config.py b/cognee/api/v1/config/config.py index 9970b7471..03df700cb 100644 --- a/cognee/api/v1/config/config.py +++ b/cognee/api/v1/config/config.py @@ -2,7 +2,6 @@ import os from cognee.base_config import get_base_config -from cognee.exceptions import InvalidValueError, InvalidAttributeError from cognee.modules.cognify.config import get_cognify_config from cognee.infrastructure.data.chunking.config import get_chunk_config from cognee.infrastructure.databases.vector import get_vectordb_config @@ -11,6 +10,7 @@ from cognee.infrastructure.llm.config import ( get_llm_config, ) from cognee.infrastructure.databases.relational import get_relational_config, get_migration_config +from cognee.api.v1.exceptions.exceptions import InvalidConfigAttributeError class config: @@ -92,9 +92,7 @@ class config: if hasattr(llm_config, key): object.__setattr__(llm_config, key, value) else: - raise InvalidAttributeError( - message=f"'{key}' is not a valid attribute of the config." - ) + raise InvalidConfigAttributeError(attribute=key) @staticmethod def set_chunk_strategy(chunk_strategy: object): diff --git a/cognee/api/v1/exceptions/__init__.py b/cognee/api/v1/exceptions/__init__.py new file mode 100644 index 000000000..f18b9f99a --- /dev/null +++ b/cognee/api/v1/exceptions/__init__.py @@ -0,0 +1,9 @@ +""" +Custom exceptions for the Cognee API. + +This module defines a set of exceptions for handling various data errors +""" + +from .exceptions import ( + InvalidConfigAttributeError +) diff --git a/cognee/api/v1/exceptions/exceptions.py b/cognee/api/v1/exceptions/exceptions.py new file mode 100644 index 000000000..9875d179b --- /dev/null +++ b/cognee/api/v1/exceptions/exceptions.py @@ -0,0 +1,15 @@ +from cognee.exceptions import ( + CogneeConfigurationError, +) +from fastapi import status + + +class InvalidConfigAttributeError(CogneeConfigurationError): + def __init__( + self, + attribute: str, + name: str = "InvalidConfigAttributeError", + status_code: int = status.HTTP_400_BAD_REQUEST, + ): + message = f"'{attribute}' is not a valid attribute of the configuration." + super().__init__(message, name, status_code)