Expand description
FastEmbed - Fast, light, accurate library built for retrieval embedding generation.
The library provides the TextEmbedding struct to interface with text embedding models.
§Instantiating TextEmbedding
use fastembed::{TextEmbedding, InitOptions, EmbeddingModel};
// With default InitOptions
let model = TextEmbedding::try_new(Default::default())?;
// List all supported models
dbg!(TextEmbedding::list_supported_models());
// With custom InitOptions
let model = TextEmbedding::try_new(
InitOptions::new(EmbeddingModel::AllMiniLML6V2).with_show_download_progress(true),
)?;
Find more info about the available options in the InitOptions documentation.
§Embeddings generation
let documents = vec![
"passage: Hello, World!",
"query: Hello, World!",
"passage: This is an example passage.",
// You can leave out the prefix but it's recommended
"fastembed-rs is licensed under MIT"
];
// Generate embeddings with the default batch size, 256
let embeddings = model.embed(documents, None)?;
println!("Embeddings length: {}", embeddings.len()); // -> Embeddings length: 4
Re-exports§
pub use crate::output::EmbeddingOutput;
pub use crate::output::OutputKey;
pub use crate::output::OutputPrecedence;
pub use crate::output::SingleBatchOutput;
Modules§
- Utilities to help with the embeddings output.
Structs§
- Dynamic execution provider container, used to provide a list of multiple types of execution providers when configuring execution providers for a
SessionBuilder
orEnvironmentBuilder
. - Rust representation of the ImageEmbedding model
- Options for initializing the ImageEmbedding model
- Options for initializing UserDefinedImageEmbeddingModel
- Options for initializing the TextEmbedding model
- Options for initializing UserDefinedEmbeddingModel
- Data struct about the available models
- Options for initializing the reranking model
- Options for initializing UserDefinedRerankerModel
- Rerank result.
- Data struct about the available reanker models
- Options for initializing the SparseTextEmbedding model
- Rust representation of the SparseTextEmbedding model
- Rust representation of the TextEmbedding model
- Struct for “bring your own” embedding models
- Struct for “bring your own” embedding models
- Struct for “bring your own” reranking models
- Struct for “bring your own” embedding models
Enums§
- Enum for the source of the onnx file
- Enum for quantization mode.
Constants§
Functions§
- Public function to read a file to bytes. To be used when loading local model files.
Type Aliases§
- Type alias for the embedding vector
- Type alias for the error type