Skip to content

Commit 0406a27

Browse files
committed
Small bug fix
1 parent b2bde8d commit 0406a27

File tree

2 files changed

+24
-5
lines changed

2 files changed

+24
-5
lines changed

src/neo4j_graphrag/neo4j_queries.py

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -268,7 +268,10 @@ def get_search_query(
268268
raise ValueError(f"Search type is not supported: {search_type}")
269269
fallback_return = (
270270
f"RETURN node {{ .*, `{embedding_node_property}`: null }} AS node, "
271-
"labels(node) AS nodeLabels, elementId(node) AS elementId, elementId(node) AS id, score"
271+
"labels(node) AS nodeLabels, "
272+
"elementId(node) AS elementId, "
273+
"elementId(node) AS id, "
274+
"score"
272275
)
273276
elif entity_type == EntityType.RELATIONSHIP:
274277
if filters:
@@ -279,7 +282,10 @@ def get_search_query(
279282
query, params = REL_VECTOR_INDEX_QUERY, {}
280283
fallback_return = (
281284
f"RETURN relationship {{ .*, `{embedding_node_property}`: null }} AS relationship, "
282-
"elementId(relationship) AS elementId, score"
285+
"type(relationship) as relationshipType, "
286+
"elementId(relationship) AS elementId, "
287+
"elementId(relationship) AS id, "
288+
"score"
283289
)
284290
else:
285291
raise ValueError(f"Search type is not supported: {search_type}")
@@ -317,9 +323,21 @@ def get_query_tail(
317323
if return_properties:
318324
return_properties_cypher = ", ".join([f".{prop}" for prop in return_properties])
319325
if entity_type == EntityType.NODE:
320-
return f"RETURN node {{{return_properties_cypher}}} AS node, labels(node) AS nodeLabels, elementId(node) AS elementId, elementId(node) AS id, score"
326+
return (
327+
f"RETURN node {{{return_properties_cypher}}} AS node, "
328+
"labels(node) AS nodeLabels, "
329+
"elementId(node) AS elementId, "
330+
"elementId(node) AS id, "
331+
"score"
332+
)
321333
elif entity_type == EntityType.RELATIONSHIP:
322-
return f"RETURN relationship {{{return_properties_cypher}}} AS relationship, elementId(relationship) AS elementId, elementId(node) AS id, score"
334+
return (
335+
f"RETURN relationship {{{return_properties_cypher}}} AS relationship, "
336+
"type(relationship) as relationshipType, "
337+
"elementId(relationship) AS elementId, "
338+
"elementId(relationship) AS id, "
339+
"score"
340+
)
323341
else:
324342
raise ValueError(f"Entity type is not supported: {entity_type}")
325343
return fallback_return if fallback_return else ""

tests/unit/test_neo4j_queries.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,8 @@ def test_rel_vector_search_basic() -> None:
4040
"CALL db.index.vector.queryRelationships($vector_index_name, $top_k * $effective_search_ratio, $query_vector) "
4141
"YIELD relationship, score "
4242
"WITH relationship, score LIMIT $top_k "
43-
"RETURN relationship { .*, `None`: null } AS relationship, elementId(relationship) AS elementId, score"
43+
"RETURN relationship { .*, `None`: null } AS relationship, type(relationship) as relationshipType, "
44+
"elementId(relationship) AS elementId, elementId(relationship) AS id, score"
4445
)
4546
result, params = get_search_query(SearchType.VECTOR, EntityType.RELATIONSHIP)
4647
assert result.strip() == expected.strip()

0 commit comments

Comments
 (0)