pub struct DocumentChunk {
pub id: String,
pub content: String,
pub tokens: usize,
pub page_numbers: Vec<usize>,
pub chunk_index: usize,
pub metadata: ChunkMetadata,
}Expand description
A chunk of a PDF document suitable for LLM processing
Each chunk represents a portion of the document’s text with associated metadata that helps maintain context during retrieval and generation.
Fields§
§id: StringUnique identifier for this chunk (e.g., “chunk_0”, “chunk_1”)
content: StringThe text content of this chunk
tokens: usizeEstimated number of tokens in this chunk
page_numbers: Vec<usize>Page numbers where this chunk’s content appears (1-indexed)
chunk_index: usizeIndex of this chunk in the sequence (0-indexed)
metadata: ChunkMetadataAdditional metadata for this chunk
Trait Implementations§
Source§impl Clone for DocumentChunk
impl Clone for DocumentChunk
Source§fn clone(&self) -> DocumentChunk
fn clone(&self) -> DocumentChunk
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 DocumentChunk
impl RefUnwindSafe for DocumentChunk
impl Send for DocumentChunk
impl Sync for DocumentChunk
impl Unpin for DocumentChunk
impl UnwindSafe for DocumentChunk
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more