do_memory_core/embeddings/
utils.rs1use super::config::LocalConfig;
7
8#[must_use]
10pub fn list_available_models() -> Vec<LocalConfig> {
11 vec![
12 LocalConfig::new("sentence-transformers/all-MiniLM-L6-v2", 384),
13 LocalConfig::new("sentence-transformers/all-mpnet-base-v2", 768),
14 LocalConfig::new(
15 "sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2",
16 384,
17 ),
18 ]
19}
20
21#[must_use]
23pub fn get_recommended_model(use_case: LocalModelUseCase) -> LocalConfig {
24 match use_case {
25 LocalModelUseCase::Fast => LocalConfig::new("sentence-transformers/all-MiniLM-L6-v2", 384),
26 LocalModelUseCase::Quality => {
27 LocalConfig::new("sentence-transformers/all-mpnet-base-v2", 768)
28 }
29 LocalModelUseCase::Multilingual => LocalConfig::new(
30 "sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2",
31 384,
32 ),
33 }
34}
35
36pub enum LocalModelUseCase {
38 Fast,
40 Quality,
42 Multilingual,
44}