mlx_rs::module

Trait ModuleParameters

Source
pub trait ModuleParameters {
    // Required methods
    fn parameters(&self) -> ModuleParamRef<'_>;
    fn parameters_mut(&mut self) -> ModuleParamMut<'_>;
    fn trainable_parameters(&self) -> ModuleParamRef<'_>;
    fn freeze_parameters(&mut self, recursive: bool);
    fn unfreeze_parameters(&mut self, recursive: bool);
    fn all_frozen(&self) -> Option<bool>;
    fn any_frozen(&self) -> Option<bool>;

    // Provided methods
    fn update(&mut self, parameters: ModuleParam) { ... }
    fn update_flattened(&mut self, flattened_parameters: FlattenedModuleParam) { ... }
}
Expand description

Trait for accessing and updating module parameters.

Required Methods§

Source

fn parameters(&self) -> ModuleParamRef<'_>

Get references to the module parameters.

Source

fn parameters_mut(&mut self) -> ModuleParamMut<'_>

Get mutable references to the module parameters.

Source

fn trainable_parameters(&self) -> ModuleParamRef<'_>

Get references to the trainable parameters. A parameter is trainable if it is NOT frozen.

Source

fn freeze_parameters(&mut self, recursive: bool)

Freeze all parameters in the module.

Source

fn unfreeze_parameters(&mut self, recursive: bool)

Unfreeze all parameters in the module.

Source

fn all_frozen(&self) -> Option<bool>

Check if all parameters in the module are frozen. Returns None if there are no parameters.

Source

fn any_frozen(&self) -> Option<bool>

Check if any parameter in the module is frozen. Returns None if there are no parameters.

Provided Methods§

Source

fn update(&mut self, parameters: ModuleParam)

Update the module parameters.

Source

fn update_flattened(&mut self, flattened_parameters: FlattenedModuleParam)

Update the module parameters from a flattened representation.

Implementations on Foreign Types§

Source§

impl<T> ModuleParameters for &mut T
where T: ModuleParameters + ?Sized,

Source§

impl<T> ModuleParameters for Box<T>
where T: ModuleParameters + ?Sized,

Source§

impl<T> ModuleParameters for Vec<T>

Implementors§

Source§

impl ModuleParameters for Alibi

Source§

impl ModuleParameters for AvgPool1d

Source§

impl ModuleParameters for AvgPool2d

Source§

impl ModuleParameters for BatchNorm

Source§

impl ModuleParameters for Bilinear

Source§

impl ModuleParameters for Celu

Source§

impl ModuleParameters for Conv1d

Source§

impl ModuleParameters for Conv2d

Source§

impl ModuleParameters for Conv3d

Source§

impl ModuleParameters for ConvTranspose1d

Source§

impl ModuleParameters for ConvTranspose2d

Source§

impl ModuleParameters for ConvTranspose3d

Source§

impl ModuleParameters for Dropout2d

Source§

impl ModuleParameters for Dropout3d

Source§

impl ModuleParameters for Dropout

Source§

impl ModuleParameters for Embedding

Source§

impl ModuleParameters for Gelu

Source§

impl ModuleParameters for Glu

Source§

impl ModuleParameters for GroupNorm

Source§

impl ModuleParameters for Gru

Source§

impl ModuleParameters for HardSwish

Source§

impl ModuleParameters for InstanceNorm

Source§

impl ModuleParameters for LayerNorm

Source§

impl ModuleParameters for LeakyRelu

Source§

impl ModuleParameters for Linear

Source§

impl ModuleParameters for LogSigmoid

Source§

impl ModuleParameters for LogSoftmax

Source§

impl ModuleParameters for Lstm

Source§

impl ModuleParameters for MaxPool1d

Source§

impl ModuleParameters for MaxPool2d

Source§

impl ModuleParameters for Mish

Source§

impl ModuleParameters for MultiHeadAttention

Source§

impl ModuleParameters for Pool

Source§

impl ModuleParameters for Prelu

Source§

impl ModuleParameters for QuantizedEmbedding

Source§

impl ModuleParameters for QuantizedLinear

Source§

impl ModuleParameters for Relu6

Source§

impl ModuleParameters for Relu

Source§

impl ModuleParameters for RmsNorm

Source§

impl ModuleParameters for Rnn

Source§

impl ModuleParameters for RotaryPositionalEncoding

Source§

impl ModuleParameters for Selu

Source§

impl ModuleParameters for Sigmoid

Source§

impl ModuleParameters for Silu

Source§

impl ModuleParameters for SinusoidalPositionalEncoding

Source§

impl ModuleParameters for Softmax

Source§

impl ModuleParameters for Softplus

Source§

impl ModuleParameters for Softsign

Source§

impl ModuleParameters for Step

Source§

impl ModuleParameters for Tanh

Source§

impl ModuleParameters for Transformer

Source§

impl ModuleParameters for Upsample

Source§

impl<Err> ModuleParameters for Sequential<Err>

Source§

impl<M> ModuleParameters for MaybeQuantized<M>