code: def _build_nn_with_one_ip_layer(self):
      input_features = [("data", datatypes.Array(3))]
      output_features = [("out", None)]
      builder = NeuralNetworkBuilder(
          input_features,
          output_features,
          disable_rank5_shape_mapping=True,
      )
      w = np.random.uniform(-0.5, 0.5, (3, 3))
      builder.add_inner_product(
          name="ip1",
          W=w,
          b=None,
          input_channels=3,
          output_channels=3,
          has_bias=False,
          input_name="input",
          output_name="hidden",
      )
      return builder
  
imports: import numpy
  import pytest
  import unittest
  import coremltools
  from coremltools import ComputeUnit
  from coremltools.converters.mil.mil.types.type_mapping import np_val_to_py_type
  from coremltools.models import MLModel, datatypes
  from coremltools.models.neural_network import NeuralNetworkBuilder
  from coremltools.models.neural_network.quantization_utils import _convert_array_to_nbit_quantized_bytes, quantize_weights
  from coremltools.models.utils import _is_macos, _macos_version
label_desc: Use image node_id 1 for calling the BasicNumericCorrectnessTest obj's underlying member method code with example usage: obj._build_nn_with_one_ip_layer() and returns: builder