기본 사용법:
MarkdownHeaderTextSplitter는 분할되는 헤더를 출력 청크의 콘텐츠에서 제거합니다. 이는 strip_headers = False로 설정하여 비활성화할 수 있습니다.
기본
MarkdownHeaderTextSplitter는 공백과 줄바꿈을 제거합니다. Markdown 문서의 원래 형식을 유지하려면 ExperimentalMarkdownSyntaxTextSplitter를 확인하세요.Markdown 라인을 별도의 문서로 반환하는 방법
기본적으로MarkdownHeaderTextSplitter는 headers_to_split_on에 지정된 헤더를 기반으로 라인을 집계합니다. return_each_line을 지정하여 이를 비활성화할 수 있습니다:
metadata에 유지됩니다.
청크 크기를 제한하는 방법:
각 markdown 그룹 내에서RecursiveCharacterTextSplitter와 같은 원하는 텍스트 분할기를 적용할 수 있으며, 이를 통해 청크 크기를 추가로 제어할 수 있습니다.
문제 해결: chunk_overlap이 적용되지 않는 것처럼 보임
- 헤더 기반 분할(예:
MarkdownHeaderTextSplitter) 후에는 **split_documents(docs)**를 사용하세요(split_text가 아님). 이렇게 하면 오버랩이 각 섹션 내에서 적용되고 섹션별 metadata(헤더)가 청크에 보존됩니다. - 오버랩은 단일 섹션이
chunk_size를 초과하여 여러 청크로 분할될 때만 나타납니다. - 오버랩은 섹션/문서 경계(예:
# H1→## H2)를 넘지 않습니다. - 헤더가 아주 작은 첫 번째 청크가 되는 경우,
strip_headers를True로 설정하여 헤더 라인이 독립적인 청크가 되지 않도록 하는 것을 고려하세요. - 텍스트에 줄바꿈/공백이 없는 경우,
separators에 대체""를 유지하여 분할기가 여전히 분할하고 오버랩을 적용할 수 있도록 하세요.
Connect these docs programmatically to Claude, VSCode, and more via MCP for real-time answers.