fix(graph): 修正上传节点查询时未过滤Upload标签的问题
确保所有查询操作仅针对Upload类型的节点,避免返回不相关的实体数据
This commit is contained in:
parent
c5dde79051
commit
2e9fd9cbe0
@ -48,7 +48,7 @@ class UploadGraphAdapter(GraphAdapter):
|
||||
num = kwargs.get("max_nodes", 100)
|
||||
raw_results = self._db._get_sample_nodes_with_connections(
|
||||
num=num,
|
||||
label_filter=None, # Upload 类型不需要标签过滤
|
||||
label_filter="Upload",
|
||||
)
|
||||
else:
|
||||
# 否则执行关键词搜索(使用 service 的查询功能)
|
||||
|
||||
@ -601,7 +601,7 @@ class UploadGraphService:
|
||||
def query_fuzzy_match(tx, keyword):
|
||||
result = tx.run(
|
||||
"""
|
||||
MATCH (n:Entity)
|
||||
MATCH (n:Upload)
|
||||
WHERE toLower(n.name) CONTAINS toLower($keyword)
|
||||
RETURN DISTINCT n.name AS name
|
||||
""",
|
||||
@ -639,6 +639,7 @@ class UploadGraphService:
|
||||
"""
|
||||
CALL db.index.vector.queryNodes('entityEmbeddings', 10, $embedding)
|
||||
YIELD node AS similarEntity, score
|
||||
WHERE 'Upload' IN labels(similarEntity)
|
||||
RETURN similarEntity.name AS name, score
|
||||
""",
|
||||
embedding=embedding,
|
||||
@ -679,7 +680,7 @@ class UploadGraphService:
|
||||
query_str = """
|
||||
WITH [
|
||||
// 1跳出边
|
||||
[(n {name: $entity_name})-[r1]->(m1) |
|
||||
[(n:Upload {name: $entity_name})-[r1]->(m1) |
|
||||
{h: {id: elementId(n), name: n.name, properties: properties(n)},
|
||||
r: {
|
||||
id: elementId(r1),
|
||||
@ -690,7 +691,7 @@ class UploadGraphService:
|
||||
},
|
||||
t: {id: elementId(m1), name: m1.name, properties: properties(m1)}}],
|
||||
// 2跳出边
|
||||
[(n {name: $entity_name})-[r1]->(m1)-[r2]->(m2) |
|
||||
[(n:Upload {name: $entity_name})-[r1]->(m1)-[r2]->(m2) |
|
||||
{h: {id: elementId(m1), name: m1.name, properties: properties(m1)},
|
||||
r: {
|
||||
id: elementId(r2),
|
||||
@ -701,7 +702,7 @@ class UploadGraphService:
|
||||
},
|
||||
t: {id: elementId(m2), name: m2.name, properties: properties(m2)}}],
|
||||
// 1跳入边
|
||||
[(m1)-[r1]->(n {name: $entity_name}) |
|
||||
[(m1)-[r1]->(n:Upload {name: $entity_name}) |
|
||||
{h: {id: elementId(m1), name: m1.name, properties: properties(m1)},
|
||||
r: {
|
||||
id: elementId(r1),
|
||||
@ -712,7 +713,7 @@ class UploadGraphService:
|
||||
},
|
||||
t: {id: elementId(n), name: n.name, properties: properties(n)}}],
|
||||
// 2跳入边
|
||||
[(m2)-[r2]->(m1)-[r1]->(n {name: $entity_name}) |
|
||||
[(m2)-[r2]->(m1)-[r1]->(n:Upload {name: $entity_name}) |
|
||||
{h: {id: elementId(m2), name: m2.name, properties: properties(m2)},
|
||||
r: {
|
||||
id: elementId(r2),
|
||||
|
||||
Loading…
Reference in New Issue
Block a user