llm_kernel/embedding/
mod.rs1pub mod catalog;
11pub mod types;
12
13#[cfg(feature = "embedding-openai")]
14pub mod openai;
15
16#[cfg(any(
17 feature = "embedding-fastembed",
18 feature = "embedding-fastembed-dynamic-linking"
19))]
20pub mod fastembed;
21
22#[cfg(any(
23 feature = "embedding-fastembed",
24 feature = "embedding-fastembed-dynamic-linking"
25))]
26pub mod lazy;
27
28#[cfg(any(
30 feature = "embedding-fastembed",
31 feature = "embedding-fastembed-dynamic-linking"
32))]
33pub mod bgem3;
34
35#[cfg(feature = "embedding-fastembed-qwen3")]
36pub mod qwen3;
37
38#[cfg(feature = "embedding-fastembed-nomic-moe")]
39pub mod nomic_moe;
40
41pub mod vector_index;
43
44pub mod sparse;
46
47pub mod async_vector_index;
49
50#[cfg(feature = "qdrant")]
52pub mod qdrant;
53
54#[cfg(feature = "elastic")]
56pub mod elastic;
57
58#[cfg(feature = "pgvector")]
60pub mod pgvector;
61
62#[cfg(feature = "vector-index")]
63pub mod turbovec;
64
65pub use catalog::EmbeddingModel;
66pub use types::{EmbeddingProvider, EmbeddingResult, chunk_batch, cosine_similarity};
67
68#[cfg(feature = "embedding-openai")]
69pub use openai::OpenAIEmbeddingClient;
70
71#[cfg(any(
72 feature = "embedding-fastembed",
73 feature = "embedding-fastembed-dynamic-linking"
74))]
75pub use fastembed::FastembedProvider;
76
77#[cfg(any(
78 feature = "embedding-fastembed",
79 feature = "embedding-fastembed-dynamic-linking"
80))]
81pub use bgem3::{BGEM3_DENSE_DIM, BGEM3_VOCAB_SIZE, Bgem3Provider, JointEmbedding};
82
83#[cfg(any(
84 feature = "embedding-fastembed",
85 feature = "embedding-fastembed-dynamic-linking"
86))]
87pub use lazy::{EmbeddingCache, LazyFastembedProvider, LazyOpts, ModelState, is_model_cached};
88
89#[cfg(feature = "embedding-fastembed-qwen3")]
90pub use qwen3::Qwen3Provider;
91
92#[cfg(feature = "embedding-fastembed-nomic-moe")]
93pub use nomic_moe::NomicMoeProvider;
94
95#[cfg(feature = "embedding-fastembed-directml")]
102pub use ort;
103
104pub use async_vector_index::AsyncVectorIndex;
105pub use sparse::SparseVector;
106pub use vector_index::{Fusion, SearchHit, VectorIndex};
107
108#[cfg(feature = "qdrant")]
109pub use qdrant::QdrantVectorIndex;
110
111#[cfg(feature = "elastic")]
112pub use elastic::ElasticsearchVectorIndex;
113
114#[cfg(feature = "pgvector")]
115pub use pgvector::{PgSparseVectorIndex, PgVectorIndex, PgVectorOpts};
116
117#[cfg(feature = "vector-index")]
118pub use turbovec::{IndexMeta, TurbovecIndex};