from typing import Any, Callable, Iterable, Union from torch import device, Tensor from torch.nn.modules import Module from .lr_scheduler import _LRScheduler from .optimizer import Optimizer class AveragedModel(Module): def __init__( self, model: Module, device: Union[int, device] = ..., avg_fn: Callable[[Tensor, Tensor, int], Tensor] = ..., use_buffers: bool = ..., ) -> None: ... def update_parameters(self, model: Module) -> None: ... def update_bn( loader: Iterable[Any], model: Module, device: Union[int, device] = ..., ) -> None: ... class SWALR(_LRScheduler): def __init__( self, optimizer: Optimizer, swa_lr: float, anneal_epochs: int, anneal_strategy: str, last_epoch: int = ..., ) -> None: ...