# Chunking profiles by archetype (starting points, tune with benchmarks)
# Reference implementation for PB-RAG-01-01
version: 1
embedding_model: ${EMBEDDING_MODEL}
metadata:
  - source_path
  - page
  - heading_path
  - doc_version
profiles:
  long_prose:
    profile_id: long_prose
    extractor: prebuilt-layout
    strategy: recursive
    unit: characters
    max_length: 2000
    overlap: 500
    chunk_size: 2000
    chunk_overlap: 500
    header_levels: 0
    prefix_heading: false
    keep_tables_whole: true
    description: Narratives, research reports, and legal briefs lacking distinct Markdown headings.
  structured_manual:
    profile_id: structured_manual
    extractor: prebuilt-layout
    strategy: markdown_headers
    unit: characters
    headers: ["#", "##", "###"]
    header_levels: 3
    keep_tables_whole: true
    max_length: 2000
    overlap: 500
    chunk_size: 2000
    chunk_overlap: 500
    prefix_heading: true
    description: Technical documentation, SOPs, policies, and product guides with hierarchical headings.
  tables_and_forms:
    profile_id: tables_and_forms
    extractor: prebuilt-layout
    strategy: markdown_headers
    unit: characters
    headers: ["#", "##", "###"]
    header_levels: 3
    keep_tables_whole: true
    max_length: 4000
    overlap: 0
    chunk_size: 4000
    chunk_overlap: 0
    prefix_heading: true
    description: Financial disclosures, spec sheets, forms, and catalogs containing multi-row tables.
  short_records:
    profile_id: short_records
    extractor: none
    strategy: one_chunk_per_record
    unit: characters
    max_length: 1000
    overlap: 0
    chunk_size: 1000
    chunk_overlap: 0
    header_levels: 0
    prefix_heading: false
    keep_tables_whole: true
    description: FAQs, customer support tickets, catalog items, and product cards under 1,000 characters.
