Expand description
Core embedding engine for generating vector embeddings from text.
The EmbeddingEngine provides a high-level interface for:
- Loading ONNX INT8 embedding models from HuggingFace Hub
- Generating embeddings for single texts or batches
- Automatic batching and parallel processing via ONNX Runtime
§Example
use inference::{EmbeddingEngine, ModelConfig, EmbeddingModel};
#[tokio::main]
async fn main() {
let config = ModelConfig::new(EmbeddingModel::MiniLM);
let engine = EmbeddingEngine::new(config).await.unwrap();
// Embed a single query
let embedding = engine.embed_query("What is machine learning?").await.unwrap();
println!("Embedding dimension: {}", embedding.len());
// Embed multiple documents
let docs = vec![
"Machine learning is a subset of AI.".to_string(),
"Deep learning uses neural networks.".to_string(),
];
let embeddings = engine.embed_documents(&docs).await.unwrap();
println!("Generated {} embeddings", embeddings.len());
}Structs§
- Embedding
Engine - The main embedding engine for generating vector embeddings.
- Embedding
Engine Builder - Builder for creating an EmbeddingEngine with fluent API.