diff --git a/kag/builder/component/reader/markdown_reader.py b/kag/builder/component/reader/markdown_reader.py index 49c19ec1..f1c8f300 100644 --- a/kag/builder/component/reader/markdown_reader.py +++ b/kag/builder/component/reader/markdown_reader.py @@ -714,15 +714,17 @@ def _process_intermediate_level_node( current_contents = parent_contents + ([node.content] if node.content else []) has_target_level = False + current_id = None + # Create chunk for current node if it has content if node.content and node.title != "root": full_title = " / ".join(current_titles) + current_id = generate_hash_id(full_title) parent_content = ( "\n".join(filter(None, parent_contents)) if parent_contents else None ) - current_chunk = Chunk( - id=generate_hash_id(full_title), + id=current_id, parent_id=parent_id, name=full_title, content=node.content, @@ -734,7 +736,7 @@ def _process_intermediate_level_node( # Process children for child in node.children: child_outputs, child_map = self._convert_to_outputs( - child, id, parent_id, current_titles, current_contents + child, id, current_id, current_titles, current_contents ) if child_outputs: has_target_level = True