code: def _build_model(
      self,
      observed_time_series,
      prior_batch_shape=(),
      initial_effect_prior_scale=1.0,
      constant_offset=None,
  ):
      model = seasonal.Seasonal(
          num_seasons=4,
          observed_time_series=observed_time_series,
          initial_effect_prior=normal.Normal(
              loc=self._build_tensor(np.zeros(prior_batch_shape)),
              scale=self._build_tensor(initial_effect_prior_scale),
          ),
          constrain_mean_effect_to_zero=False,  # Simplifies analysis.
          name="seasonal",
      )
      return sum_lib.Sum(
          components=[model],
          constant_offset=constant_offset,
          observed_time_series=observed_time_series,
      )
  
imports: import numpy
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import normal
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.sts import fitting
  from tensorflow_probability.python.sts import forecast
  from tensorflow_probability.python.sts.components import seasonal
  from tensorflow_probability.python.sts.components import sum
  from tensorflow_probability.python.sts.internal import missing_values_util
label_desc: Use image node_id 1 for calling the _ForecastTest obj's underlying member method code with example usage: obj._build_model(observed_time_series, prior_batch_shape, initial_effect_prior_scale, constant_offset) and returns: sum_lib