pub mod advanced_chunker;
pub mod chunker;
pub mod code_chunker;
pub mod distance;
pub mod embedding;
pub mod error;
pub mod metadata_filter;
pub mod persistence;
pub mod pipeline;
pub mod retriever;
pub mod semantic_chunker;
pub mod vector_store;
#[cfg(test)]
mod tests;
pub use advanced_chunker::{
ChunkStrategy, ChunkerRegistry, MarkdownChunker, RecursiveCharSplitter, RichChunk,
SentenceChunker, SlidingWindowChunker,
};
pub use chunker::{chunk_by_paragraphs, chunk_by_sentences, chunk_document, Chunk, ChunkConfig};
pub use code_chunker::{CodeChunker, Language};
pub use distance::Distance;
pub use embedding::{Embedder, IdentityEmbedder, TfIdfEmbedder};
pub use error::RagError;
pub use metadata_filter::{MetadataFilter, MetadataValue};
pub use persistence::{IndexSnapshot, RetrieverSnapshot, SCHEMA_VERSION};
pub use pipeline::{PipelineStats, RagConfig, RagPipeline};
pub use retriever::{Retriever, RetrieverConfig};
pub use semantic_chunker::SemanticChunker;
pub use vector_store::{cosine_similarity, dot_product, l2_normalize, SearchResult, VectorStore};