From f5da9cdf2882d8dea1d515e357e01069ead094f5 Mon Sep 17 00:00:00 2001 From: Vasilije <8619304+Vasilije1990@users.noreply.github.com> Date: Sun, 26 May 2024 16:10:16 +0200 Subject: [PATCH] Updates to the configs --- cognee/api/v1/config/config.py | 2 +- .../vector/falkordb/FalkorDBAdapter.py | 54 +++++++++++++++++++ 2 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 cognee/infrastructure/databases/vector/falkordb/FalkorDBAdapter.py diff --git a/cognee/api/v1/config/config.py b/cognee/api/v1/config/config.py index e32e755cd..8d8e34996 100644 --- a/cognee/api/v1/config/config.py +++ b/cognee/api/v1/config/config.py @@ -15,7 +15,7 @@ base_config = get_base_config() class config(): @staticmethod def system_root_directory(system_root_directory: str): - base_config.base_config = system_root_directory + base_config.system_root_directory = system_root_directory @staticmethod def data_root_directory(data_root_directory: str): diff --git a/cognee/infrastructure/databases/vector/falkordb/FalkorDBAdapter.py b/cognee/infrastructure/databases/vector/falkordb/FalkorDBAdapter.py new file mode 100644 index 000000000..29f4dd607 --- /dev/null +++ b/cognee/infrastructure/databases/vector/falkordb/FalkorDBAdapter.py @@ -0,0 +1,54 @@ + +from typing import List, Dict, Optional, Any + +from falkordb import FalkorDB +from qdrant_client import AsyncQdrantClient, models +from ..vector_db_interface import VectorDBInterface +from ..models.DataPoint import DataPoint +from ..embeddings.EmbeddingEngine import EmbeddingEngine + + + + +class FalcorDBAdapter(VectorDBInterface): + def __init__( + self, + graph_database_url: str, + graph_database_username: str, + graph_database_password: str, + graph_database_port: int, + driver: Optional[Any] = None, + embedding_engine = EmbeddingEngine, + graph_name: str = "DefaultGraph", + ): + self.driver = FalkorDB( + host = graph_database_url, + port = graph_database_port) + self.graph_name = graph_name + self.embedding_engine = embedding_engine + + + + async def embed_data(self, data: list[str]) -> list[list[float]]: + return await self.embedding_engine.embed_text(data) + + + async def create_collection(self, collection_name: str, payload_schema = None): + pass + + + async def create_data_points(self, collection_name: str, data_points: List[DataPoint]): + pass + + async def retrieve(self, collection_name: str, data_point_id: str): + pass + + async def search( + self, + collection_name: str, + query_text: str = None, + query_vector: List[float] = None, + limit: int = 10, + with_vector: bool = False, + ): + pass \ No newline at end of file