Skip to main content

tensorlogic_train/
error.rs

1//! Error types for training operations.
2
3use thiserror::Error;
4
5/// Errors that can occur during training.
6#[derive(Error, Debug)]
7pub enum TrainError {
8    /// Error in loss computation.
9    #[error("Loss computation error: {0}")]
10    LossError(String),
11
12    /// Error in optimizer operation.
13    #[error("Optimizer error: {0}")]
14    OptimizerError(String),
15
16    /// Error in batch processing.
17    #[error("Batch processing error: {0}")]
18    BatchError(String),
19
20    /// Error in callback execution.
21    #[error("Callback error: {0}")]
22    CallbackError(String),
23
24    /// Error in metrics computation.
25    #[error("Metrics error: {0}")]
26    MetricsError(String),
27
28    /// Error in checkpoint save/load.
29    #[error("Checkpoint error: {0}")]
30    CheckpointError(String),
31
32    /// Error with invalid parameter.
33    #[error("Invalid parameter: {0}")]
34    InvalidParameter(String),
35
36    /// Error in model operations.
37    #[error("Model error: {0}")]
38    ModelError(String),
39
40    /// Error in configuration.
41    #[error("Configuration error: {0}")]
42    ConfigError(String),
43
44    /// Error from tensorlogic-infer.
45    #[error("Executor error: {0}")]
46    ExecutorError(#[from] tensorlogic_infer::ExecutorError),
47
48    /// Generic error.
49    #[error("{0}")]
50    Other(String),
51}
52
53/// Result type for training operations.
54pub type TrainResult<T> = Result<T, TrainError>;