class_docstr: To use, you must extend this class and define single_model_cls as a class
  variable. Example:
  
      @register_model("semi_supervised_transformer")
      class SemiSupervisedTransformerModel(SemiSupervisedModel):
          # We can't use `self.single_model_cls` because at this point
          # `__init__` hasn't run. single_model_cls is a static class variable
          # that is meant to be constant.
          single_model_cls = TransformerModel
  
          @staticmethod
          def add_args(parser):
              TransformerModel.add_args(parser)
              SemiSupervisedModel.add_args(parser)
class_docstr_tok: ["To","use",",","you","must","extend","this","class","and","define","single_model_cls","as","a","class","variable",".","Example",":","@","register_model","(","``","semi_supervised_transformer","''",")","class","SemiSupervisedTransformerModel","(","SemiSupervisedModel",")",":","#","We","ca","n't","use","`","self.single_model_cls","`","because","at","this","point","#","`","__init__","`","has","n't","run",".","single_model_cls","is","a","static","class","variable","#","that","is","meant","to","be","constant",".","single_model_cls","=","TransformerModel","@","staticmethod","def","add_args","(","parser",")",":","TransformerModel.add_args","(","parser",")","SemiSupervisedModel.add_args","(","parser",")"]
code: def set_semi_supervised_arch_args(args):
      args.share_encoder_embeddings = getattr(
          args, "share_encoder_embeddings", False
      )
      args.share_decoder_embeddings = getattr(
          args, "share_decoder_embeddings", False
      )
      args.share_encoders = getattr(args, "share_encoders", False)
      args.share_decoders = getattr(args, "share_decoders", False)
  
file_path: translate/pytorch_translate/semi_supervised.py
imports: import copy
  from collections import OrderedDict
  import torch.nn
  from fairseq.models import FairseqMultiModel, register_model, register_model_architecture
  from pytorch_translate import common_layers, constants, utils
label_desc: Use image node_id 3 for calling the SemiSupervisedModel obj's underlying member method code with example usage: obj.set_semi_supervised_arch_args(args) without return types