Skip to main content

Crate laurus

Crate laurus 

Source
Expand description

§Laurus

Laurus is a Rust library for building search engines with support for lexical, vector, and hybrid search. It provides a flexible and efficient way to create powerful search applications.

§Features

  • Pure Rust implementation
  • Fast indexing and searching
  • Flexible text analysis pipeline
  • Pluggable storage backends
  • Multiple query types
  • BM25 scoring

Re-exports§

pub use analysis::analyzer::analyzer::Analyzer;
pub use embedding::embedder::EmbedInput;
pub use embedding::embedder::EmbedInputType;
pub use embedding::embedder::Embedder;
pub use embedding::per_field::PerFieldEmbedder;
pub use embedding::precomputed::PrecomputedEmbedder;
pub use lexical::search::searcher::LexicalSearchRequest;
pub use storage::Storage;
pub use storage::StorageConfig;
pub use storage::StorageFactory;

Modules§

analysis
Text analysis module for Laurus.
embedding
Text and multimodal embedding support for Laurus vector search.
lexical
Lexical search implementation using inverted indexes.
spelling
Spelling correction and suggestion utilities for Laurus.
storage
Storage abstraction layer for Laurus.
store
vector
Vector search implementation using approximate nearest neighbor algorithms.

Structs§

DeletionConfig
Configuration for deletion management.
Document
Unified Document structure.
Engine
Unified Engine that manages both Lexical and Vector indices.
EngineBuilder
Builder for constructing an Engine with custom configuration.
Schema
Schema for the unified engine.
SearchRequest
Unified search request.
SearchRequestBuilder
SearchResult
UnifiedQueryParser
Unified query parser that composes lexical and vector parsers.

Enums§

DataValue
The unified value type for fields in a document.
FieldOption
Options for a single field in the unified schema.
FusionAlgorithm
Algorithm used to combine lexical and vector scores.
LaurusError
The main error type for Laurus operations.

Constants§

VERSION

Type Aliases§

Result
Result type alias for operations that may fail with LaurusError.