pub type Result<T> = std::result::Result<T, Error>;
#[derive(Debug, thiserror::Error)]
pub enum Error {
#[error(transparent)]
Io(#[from] std::io::Error),
#[error(transparent)]
Image(#[from] image::ImageError),
#[cfg(feature = "download")]
#[error(transparent)]
Request(#[from] reqwest::Error),
#[error("Model download failed: {0}")]
ModelDownload(String),
#[error("Model load failed: {0}")]
ModelLoad(String),
#[error("Inference failed: {0}")]
Inference(String),
}