






'''simple docstring'''







from torch import nn

class _lowercase			(       nn.Module	):




							def __init__(							self:       Optional[Any]    ,							UpperCamelCase__:       Union[str, Any]    ,							UpperCamelCase__:       Optional[int]  ):
														super().__init__()
														lowerCamelCase__      :			Union[str, Any] 						= class_size
														lowerCamelCase__      :			Union[str, Any] 						= embed_size
														# self.mlp1 = nn.Linear(embed_size, embed_size)
														# self.mlp2 = (nn.Linear(embed_size, class_size))
														lowerCamelCase__      :			List[str] 						= nn.Linear(UpperCamelCase__    ,							UpperCamelCase__  )




							def 	lowerCamelCase_       (							self:       str    ,							UpperCamelCase__:       Tuple  ):
														# hidden_state = nn.functional.relu(self.mlp1(hidden_state))
														# hidden_state = self.mlp2(hidden_state)
														lowerCamelCase__      :			Optional[int] 						= self.mlp(UpperCamelCase__  )
														return logits









'''simple docstring'''







_A			:    List[str]					  ='''0.21.0'''

from .accelerator import Accelerator
from .big_modeling import (
    cpu_offload,
    cpu_offload_with_hook,
    disk_offload,
    dispatch_model,
    init_empty_weights,
    init_on_device,
    load_checkpoint_and_dispatch,
)
from .data_loader import skip_first_batches
from .launchers import debug_launcher, notebook_launcher
from .state import PartialState
from .utils import (
    DeepSpeedPlugin,
    DistributedDataParallelKwargs,
    DistributedType,
    FullyShardedDataParallelPlugin,
    GradScalerKwargs,
    InitProcessGroupKwargs,
    find_executable_batch_size,
    infer_auto_device_map,
    is_rich_available,
    load_checkpoint_in_model,
    synchronize_rng_states,
)


if is_rich_available():
			from .utils import rich

