0
0

23_indexes_markdown_header_splitter.py 754 B

123456789101112131415161718192021222324252627282930
  1. from pathlib import Path
  2. import sys
  3. sys.path.append(str(Path(__file__).resolve().parents[1]))
  4. from _chapter2_config import print_dependency_hint
  5. try:
  6. from langchain_text_splitters import MarkdownHeaderTextSplitter
  7. except ModuleNotFoundError as exc:
  8. print_dependency_hint(exc)
  9. raise SystemExit(1)
  10. def main() -> None:
  11. headers_to_split_on = [
  12. ("#", "Header 1"),
  13. ("##", "Header 2"),
  14. ("###", "Header 3"),
  15. ]
  16. markdown_splitter = MarkdownHeaderTextSplitter(headers_to_split_on=headers_to_split_on)
  17. markdown_text = "# Header 1\nSome text\n## Header 2\nMore text\n### Header 3\nEven more text"
  18. docs = markdown_splitter.split_text(markdown_text)
  19. print(docs)
  20. if __name__ == "__main__":
  21. main()