1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
//! Numeric / ML foundation for the legume ecosystem.
//!
//! Modules:
//! - [`fast_math`]: fast, approximate `f32` `ln` and `ln Γ`, and `ln Γ` increments
//! - [`leiden`] — vendored CWTS/10x Leiden port (see `NOTICE`)
//! - [`matrix`] — matrix IO, KNN, layout, stats (ex `matrix-util`)
//! - `param` — parametric helpers (ex `matrix-param`)
//! - `candle` — candle training helpers (ex `candle-util`; feature `candle`)
//! - `mcmc` — MCMC engine: elliptical slice sampler, chain runner, diagnostics (feature `mcmc`)
//!
//! Features: `matrix` and `param` work on nalgebra `DMatrix` alone.
//! `tensor` (default) adds candle `Tensor` support to the matrix code:
//! conversions, tensor IO, sampling and fused ops. `ndarray` (default) adds
//! ndarray `Array2` support: IO, sampling, `ndarray_stat`, `ndarray_gamma`
//! and kNN from ndarray views. `candle` builds on `tensor`. `metal` and
//! `cuda` also run matrix code on the GPU (`Umap::fit_on`). A crate
//! that only needs `DMatrix` sets `default-features = false` and links
//! neither candle nor ndarray.
/// candle-core, for crates that use `Tensor` through the `tensor` feature
/// without a direct dependency on candle.
pub use candle_core;