code: def test_model_space_args():
      class ModelSpace1(ModelSpace):
          def __init__(self, a, b=1):
              super().__init__()
              self.a = a
              self.b = b
  
      model = ModelSpace1(2, 3)
      assert model.args["a"] == 2
      assert model.args["b"] == 3
  
      model = ModelSpace1(2)
      assert model.args["a"] == 2
      assert model.args["b"] == 1
      assert "b" not in model.trace_kwargs
  
      class ModelSpace2(ModelSpace):
          def __init__(self, *args):
              super().__init__()
              self.a = args
  
      model = ModelSpace2(1, 2, 3)
      with pytest.raises(RuntimeError, match="args is not available"):
          model.args
  
      assert is_traceable(model)
  
imports: import copy
  import pytest
  import torch
  import nni
  from torch import nn
  from nni.common.serializer import is_traceable
  from nni.mutable import Categorical, ExpressionConstraint, ensure_frozen, frozen_context, label_scope, auto_label, SampleMissingError
  from nni.mutable.mutable import _mutable_equal
  from nni.nas.nn.pytorch import ModelSpace, MutableModule, ParametrizedModule
  from nni.nas.space import model_context
label_desc: Use image node_id 9 for calling a global function with example usage: test_model_space_args() without return types