#[cfg(feature = "ml")]
pub mod automl;
#[cfg(feature = "ml")]
pub mod feedback;
#[cfg(feature = "ml")]
pub mod features;
#[cfg(feature = "ml")]
pub mod graph_embed;
#[cfg(feature = "ml")]
pub mod quality_predictor;
#[cfg(feature = "ml")]
pub mod selector;
#[cfg(feature = "ml")]
use candle_core::Device;
pub use crate::core::ml_legacy as legacy;
#[cfg(feature = "ml")]
pub fn best_device() -> candle_core::Result<Device> {
let device = Device::cuda_if_available(0)?;
if matches!(device, Device::Cpu) {
Device::metal_if_available(0)
} else {
Ok(device)
}
}