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§
- output
- Utilities to help with the embeddings output.
Structs§
- Execution
Provider Dispatch - Dynamic execution provider container, used to provide a list of multiple types of execution providers when
configuring execution providers for a
SessionBuilder
orEnvironmentBuilder
. - Image
Embedding - Rust representation of the ImageEmbedding model
- Image
Init Options - Options for initializing the ImageEmbedding model
- Image
Init Options User Defined - Options for initializing UserDefinedImageEmbeddingModel
- Init
Options - Options for initializing the TextEmbedding model
- Init
Options User Defined - Options for initializing UserDefinedEmbeddingModel
- Model
Info - Data struct about the available models
- Rerank
Init Options - Options for initializing the reranking model
- Rerank
Init Options User Defined - Options for initializing UserDefinedRerankerModel
- Rerank
Result - Rerank result.
- Reranker
Model Info - Data struct about the available reranker models
- Sparse
Embedding - Sparse
Init Options - Options for initializing the SparseTextEmbedding model
- Sparse
Text Embedding - Rust representation of the SparseTextEmbedding model
- Text
Embedding - Rust representation of the TextEmbedding model
- Text
Rerank - Tokenizer
Files - User
Defined Embedding Model - Struct for “bring your own” embedding models
- User
Defined Image Embedding Model - Struct for “bring your own” embedding models
- User
Defined Reranking Model - Struct for “bring your own” reranking models
- User
Defined Sparse Model - Struct for “bring your own” embedding models
Enums§
- Embedding
Model - Image
Embedding Model - Onnx
Source - Enum for the source of the onnx file
- Pooling
- Quantization
Mode - Enum for quantization mode.
- Reranker
Model - Sparse
Model
Constants§
Functions§
- read_
file_ to_ bytes - Public function to read a file to bytes. To be used when loading local model files.