use super::config::LocalConfig;
#[must_use]
pub fn list_available_models() -> Vec<LocalConfig> {
vec![
LocalConfig::new("sentence-transformers/all-MiniLM-L6-v2", 384),
LocalConfig::new("sentence-transformers/all-mpnet-base-v2", 768),
LocalConfig::new(
"sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2",
384,
),
]
}
#[must_use]
pub fn get_recommended_model(use_case: LocalModelUseCase) -> LocalConfig {
match use_case {
LocalModelUseCase::Fast => LocalConfig::new("sentence-transformers/all-MiniLM-L6-v2", 384),
LocalModelUseCase::Quality => {
LocalConfig::new("sentence-transformers/all-mpnet-base-v2", 768)
}
LocalModelUseCase::Multilingual => LocalConfig::new(
"sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2",
384,
),
}
}
pub enum LocalModelUseCase {
Fast,
Quality,
Multilingual,
}