Browse Source

fix: issue #5600 (#5645)

fix: issue https://github.com/infiniflow/ragflow/issues/5600

### What problem does this PR solve?

close issue https://github.com/infiniflow/ragflow/issues/5600 

### Type of change

- [x] Bug Fix (non-breaking change which fixes an issue)
tags/v0.17.1
郭大鹏 8 months ago
parent
commit
78b2e0be89
No account linked to committer's email address
2 changed files with 9 additions and 1 deletions
  1. 6
    1
      graphrag/general/community_reports_extractor.py
  2. 3
    0
      graphrag/general/leiden.py

+ 6
- 1
graphrag/general/community_reports_extractor.py View File

@@ -95,7 +95,12 @@ class CommunityReportsExtractor(Extractor):
response = re.sub(r"\{\{", "{", response)
response = re.sub(r"\}\}", "}", response)
logging.debug(response)
response = json.loads(response)
try:
response = json.loads(response)
except json.JSONDecodeError as e:
logging.error(f"Failed to parse JSON response: {e}")
logging.error(f"Response content: {response}")
continue
if not dict_has_keys_with_types(response, [
("title", str),
("summary", str),

+ 3
- 0
graphrag/general/leiden.py View File

@@ -120,6 +120,9 @@ def run(graph: nx.Graph, args: dict[str, Any]) -> dict[int, dict[str, dict]]:
result = {}
results_by_level[level] = result
for node_id, raw_community_id in node_id_to_community_map[level].items():
if node_id not in graph.nodes:
logging.warning(f"Node {node_id} not found in the graph.")
continue
community_id = str(raw_community_id)
if community_id not in result:
result[community_id] = {"weight": 0, "nodes": []}

Loading…
Cancel
Save