pub struct RecursiveChunker { /* private fields */ }Expand description
Splits text hierarchically: paragraphs → sentences → words.
First splits by paragraph separators (\n\n). If a paragraph exceeds
chunk_size, splits by sentence boundaries (. , ! , ? ). If a
sentence still exceeds chunk_size, splits by word boundaries. Overlap
is applied between chunks at each level.
§Example
ⓘ
use adk_rag::RecursiveChunker;
let chunker = RecursiveChunker::new(512, 100);
let chunks = chunker.chunk(&document);Implementations§
Trait Implementations§
Source§impl Chunker for RecursiveChunker
impl Chunker for RecursiveChunker
Source§impl Clone for RecursiveChunker
impl Clone for RecursiveChunker
Source§fn clone(&self) -> RecursiveChunker
fn clone(&self) -> RecursiveChunker
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for RecursiveChunker
impl RefUnwindSafe for RecursiveChunker
impl Send for RecursiveChunker
impl Sync for RecursiveChunker
impl Unpin for RecursiveChunker
impl UnsafeUnpin for RecursiveChunker
impl UnwindSafe for RecursiveChunker
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more