pub mod adagrad;
pub mod adam;
pub mod base;
pub mod rmsprop;
pub mod sgd;
pub use adagrad::PyAdaGrad;
pub use adam::{PyAdam, PyAdamW};
pub use base::PyOptimizer;
pub use rmsprop::PyRMSprop;
pub use sgd::PySGD;
use pyo3::prelude::*;
use pyo3::types::{PyModule, PyModuleMethods};
pub fn register_optim_module(_py: Python<'_>, m: &Bound<'_, PyModule>) -> PyResult<()> {
m.add_class::<PyOptimizer>()?;
m.add_class::<PySGD>()?;
m.add_class::<PyAdam>()?;
m.add_class::<PyAdamW>()?;
m.add_class::<PyAdaGrad>()?;
m.add_class::<PyRMSprop>()?;
Ok(())
}