code: def main():
      # Create experiment
      experiment.create(name="mlm")
      # Create configs
      conf = Configs()
      # Override configurations
      experiment.configs(
          conf,
          {
              # Batch size
              "batch_size": 64,
              # Sequence length of $32$. We use a short sequence length to train faster.
              # Otherwise it takes forever to train.
              "seq_len": 32,
              # Train for 1024 epochs.
              "epochs": 1024,
              # Switch between training and validation for $1$ times
              # per epoch
              "inner_iterations": 1,
              # Transformer configurations (same as defaults)
              "d_model": 128,
              "transformer.ffn.d_ff": 256,
              "transformer.n_heads": 8,
              "transformer.n_layers": 6,
              # Use [Noam optimizer](../../optimizers/noam.html)
              "optimizer.optimizer": "Noam",
              "optimizer.learning_rate": 1.0,
          },
      )
  
      # Set models for saving and loading
      experiment.add_pytorch_models({"model": conf.model})
  
      # Start the experiment
      with experiment.start():
          # Run training
          conf.run()
  
imports: from typing import List
  import torch
  from torch import nn
  from labml import experiment, tracker, logger
  from labml.configs import option
  from labml.logger import Text
  from labml_helpers.metrics.accuracy import Accuracy
  from labml_helpers.module import Module
  from labml_helpers.train_valid import BatchIndex
  from labml_nn.experiments.nlp_autoregression import NLPAutoRegressionConfigs
  from labml_nn.transformers import Encoder, Generator
  from labml_nn.transformers import TransformerConfigs
  from labml_nn.transformers.mlm import MLM
label_desc: Use image node_id 4 for calling a global function with example usage: main() without return types