Chunking strategies 

The indexer field chunking_strategy is stored as fixed or atomic. Existing empty values resolve to fixed.

fixed
Uses chunk_size, chunk_overlap, min_chunk_chars and max_chunks as before.
atomic
Keeps every IndexableDocument as exactly one chunk. chunk_size is a hard maximum; an oversized document fails before embedding and storage. The text is not truncated or split, and overlap, minimum length and the maximum chunk count are ignored. Empty documents are still skipped.

For example, a Markdown file is split by the Markdown adapter into sections:

# Handbook

Introduction.

## Installation

Follow these steps.

### Requirements

PHP 8.4 is required.
Copied!

With fixed, each section is chunked independently by character limits. With atomic, the introduction and each ## section are each stored as one complete chunk, or fail if they exceed chunk_size. Fenced code blocks are kept in their section even when they contain ## text.

After changing the strategy or an adapter, perform a complete re-index and disable unchanged-source skipping for that run. This is required because the source content may be unchanged while its vector boundaries have changed. Atomic chunking guarantees complete chunks in the index only; later retrieval and context limits remain unchanged.