CompositeElement
: Any text element will become aCompositeElement
after chunking. A composite element can be a combination of two or more original text elements that together fit within the Max characters length. It can also be a single element that doesn’t leave room in the chunk for any others but fits by itself. Or it can be a fragment of an original text element that was too big to fit in one chunk and required splitting.Table
: A table element is not combined with other elements, and if it fits within Max characters it will remain as is.TableChunk
: Large tables that exceed Max characters are split into specialTableChunk
elements.
You can change a workflow’s preconfigured strategy only through Custom workflow settings.
Basic chunking strategy
The basic chunking strategy uses only Max characters and New after n characters to combine sequential elements to maximally fill each chunk. This strategy does not use section boundaries, page boundaries, or content similarities to determine the chunks’ contents. To use this chunking strategy, choose Chunk by character in the Chunkers section of a Chunker node in a workflow.Chunk by title strategy
The by-title chunking strategy attempts to preserve section boundaries when determining the chunks’ contents. A single chunk should not contain text that occurred in two different sections. When a new section starts, the existing chunk is closed and a new one is started, even if the next element would fit in the prior chunk. To use this chunking strategy, choose Chunk by title in the Chunkers section of a Chunker node in a workflow.Chunk by page strategy
The by-page chunking strategy attempts to preserve page boundaries when determining the chunks’ contents. A single chunk should not contain text that occurred in two different page. When a new page starts, the existing chunk is closed and a new one is started, even if the next element would fit in the prior chunk. To use this chunking strategy, choose Chunk by page in the Chunkers section of a Chunker node in a workflow.Chunk By similarity strategy
The by-similarity chunking strategy uses the sentence-transformers/multi-qa-mpnet-base-dot-v1 embedding model to identify topically similar sequential elements and combines them into chunks. As with the other chunking strategies, chunks will never exceed the absolute maximum chunk size set by Max characters. For this reason, not all elements that share a topic will necessarily appear in the same chunk. However, with this strategy you can guarantee that two elements with low similarity will not be combined in a single chunk. To use this chunking strategy, choose Chunk by similarity in the Chunkers section of a Chunker node in a workflow. You can control the level of topic similarity you require for elements to have by setting Similarity threshold.Max characters setting
Specifies the absolute maximum number of characters in a chunk. To specify this setting, enter a number into the Max characters field. This setting applies to all of the chunking strategies.Combine text under n characters setting
Combines elements from a section into a chunk until a section reaches a length of this many characters. To specify this setting, enter a number into the Combine text under n chars field. This setting applies only to the chunking strategy Chunk by title.Include original elements setting
If the Include original elements box is checked, the elements that were used to form a chunk appear in themetadata
field’s orig_elements
field for that chunk.
This setting applies to all of the chunking strategies.
Multipage sections setting
If the Multipage sections box is checked, this allows sections to span multiple pages. This setting applies only to the chunking strategy Chunk by title.New after n characters setting
Closes new sections after reaching a length of this many characters. This is an approximate limit. To specify this setting, enter a number into the New after n characters field. This setting applies only to the chunking strategies Chunk by character, Chunk by title, and Chunk by page.Overlap setting
Applies a prefix of this many trailing characters from the prior text-split chunk to second and later chunks formed from oversized elements by text-splitting. To specify this setting, enter a number into the Overlap field. This setting applies only to the chunking strategies Chunk by character, Chunk by title, and Chunk by page.Overlap all setting
If the Overlap all box is checked, applies overlap to “normal” chunks formed by combining whole elements. Use with caution as this can introduce noise into otherwise clean semantic units. This setting applies only to the chunking strategies Chunk by character, Chunk by title, and Chunk by page.Similarity threshold setting
Specifies the minimum similarity that text in consecutive elements must have to be included in the same chunk. This must be a value between0.0
and 1.0
, exclusive (0.01
to 0.99
). The default is 0.5
if not otherwise specified.
To specify this setting, enter a number into the Similarity threshold field.
This setting applies only to the chunking strategy Chunk by similarity.
Contextual chunking
A technique known as contextual chunking prepends chunk-specific explanatory context to each chunk. Contextual chunking has been shown to enhance traditional RAG solutions by yielding significant improvements in retrieval accuracy, which directly translates to better performance in downstream tasks. Learn more. To apply contextual chunking, switch on the Contextual chunking toggle in the settings for any chunking strategy. This chunk-specific explanatory context information is typically a couple of sentences in length. Contextual chunking happens before any embeddings are generated. When contextual chunking is applied, the contextual information in each chunk begins withPrefix:
and ends with a semicolon (;
).
The chunk’s original content begins with Original:
.
For example, without contextual chunking applied, elements would for instance be generated similar to the following.
Line breaks have been inserted here for readability. The output will not contain these line breaks: