Compare commits
3 commits
main
...
kuzu-drive
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
22ed0ec298 | ||
|
|
aa41cf17f3 | ||
|
|
3fc86f3dec |
3 changed files with 20 additions and 8 deletions
|
|
@ -140,6 +140,12 @@ class KuzuDriver(GraphDriver):
|
|||
def delete_all_indexes(self, database_: str):
|
||||
pass
|
||||
|
||||
async def build_indices_and_constraints(self, delete_existing: bool = False):
|
||||
# Kuzu doesn't support dynamic index creation like Neo4j or FalkorDB
|
||||
# Schema and indices are created during setup_schema()
|
||||
# This method is required by the abstract base class but is a no-op for Kuzu
|
||||
pass
|
||||
|
||||
def setup_schema(self):
|
||||
conn = kuzu.Connection(self.db)
|
||||
conn.execute(SCHEMA_QUERIES)
|
||||
|
|
|
|||
|
|
@ -243,6 +243,12 @@ class NeptuneDriver(GraphDriver):
|
|||
if client.indices.exists(index=index_name):
|
||||
client.indices.delete(index=index_name)
|
||||
|
||||
async def build_indices_and_constraints(self, delete_existing: bool = False):
|
||||
# Neptune uses OpenSearch (AOSS) for indexing
|
||||
if delete_existing:
|
||||
await self.delete_aoss_indices()
|
||||
await self.create_aoss_indices()
|
||||
|
||||
def run_aoss_query(self, name: str, query_text: str, limit: int = 10) -> dict[str, Any]:
|
||||
for index in aoss_indices:
|
||||
if name.lower() == index['index_name']:
|
||||
|
|
|
|||
|
|
@ -918,8 +918,8 @@ async def test_get_communities_by_nodes(graph_driver, mock_embedder):
|
|||
async def test_edge_fulltext_search(
|
||||
graph_driver, mock_embedder, mock_llm_client, mock_cross_encoder_client
|
||||
):
|
||||
if graph_driver.provider == GraphProvider.FALKORDB:
|
||||
pytest.skip('Skipping as tests fail on Falkordb')
|
||||
if graph_driver.provider == GraphProvider.KUZU:
|
||||
pytest.skip('Skipping as fulltext indexing not supported for Kuzu')
|
||||
|
||||
graphiti = Graphiti(
|
||||
graph_driver=graph_driver,
|
||||
|
|
@ -1307,8 +1307,8 @@ async def test_edge_bfs_search(graph_driver, mock_embedder):
|
|||
async def test_node_fulltext_search(
|
||||
graph_driver, mock_embedder, mock_llm_client, mock_cross_encoder_client
|
||||
):
|
||||
if graph_driver.provider == GraphProvider.FALKORDB:
|
||||
pytest.skip('Skipping as tests fail on Falkordb')
|
||||
if graph_driver.provider == GraphProvider.KUZU:
|
||||
pytest.skip('Skipping as fulltext indexing not supported for Kuzu')
|
||||
|
||||
graphiti = Graphiti(
|
||||
graph_driver=graph_driver,
|
||||
|
|
@ -1516,8 +1516,8 @@ async def test_node_bfs_search(graph_driver, mock_embedder):
|
|||
async def test_episode_fulltext_search(
|
||||
graph_driver, mock_embedder, mock_llm_client, mock_cross_encoder_client
|
||||
):
|
||||
if graph_driver.provider == GraphProvider.FALKORDB:
|
||||
pytest.skip('Skipping as tests fail on Falkordb')
|
||||
if graph_driver.provider == GraphProvider.KUZU:
|
||||
pytest.skip('Skipping as fulltext indexing not supported for Kuzu')
|
||||
|
||||
graphiti = Graphiti(
|
||||
graph_driver=graph_driver,
|
||||
|
|
@ -1567,8 +1567,8 @@ async def test_episode_fulltext_search(
|
|||
async def test_community_fulltext_search(
|
||||
graph_driver, mock_embedder, mock_llm_client, mock_cross_encoder_client
|
||||
):
|
||||
if graph_driver.provider == GraphProvider.FALKORDB:
|
||||
pytest.skip('Skipping as tests fail on Falkordb')
|
||||
if graph_driver.provider == GraphProvider.KUZU:
|
||||
pytest.skip('Skipping as fulltext indexing not supported for Kuzu')
|
||||
|
||||
graphiti = Graphiti(
|
||||
graph_driver=graph_driver,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue