class_docstr: NextItNet Model
  
  :Citation:
      Yuan, Fajie, et al. "A Simple Convolutional Generative Network
      for Next Item Recommendation", in Web Search and Data Mining, 2019.
  
  .. note::
  
      It requires strong sequence with dataset.
docstr: The main function to create nextitnet model.
  
  Returns:
      object: The output of nextitnet section.
docstr_tok: ["The","main","function","to","create","nextitnet","model",".","Returns",":","object",":","The","output","of","nextitnet","section","."]
code: def _build_seq_graph(self):
      """The main function to create nextitnet model.
  
      Returns:
          object: The output of nextitnet section.
      """
      hparams = self.hparams
      is_training = tf.equal(self.is_train_stage, True)
      item_history_embedding = tf.cond(
          pred=is_training,
          true_fn=lambda: self.item_history_embedding[
              :: self.hparams.train_num_ngs + 1
          ],
          false_fn=lambda: self.item_history_embedding,
      )
      cate_history_embedding = tf.cond(
          pred=is_training,
          true_fn=lambda: self.cate_history_embedding[
              :: self.hparams.train_num_ngs + 1
          ],
          false_fn=lambda: self.cate_history_embedding,
      )
  
      with tf.compat.v1.variable_scope(
          "nextitnet", reuse=tf.compat.v1.AUTO_REUSE
      ):
          dilate_input = tf.concat(
              [item_history_embedding, cate_history_embedding], 2
          )
  
          for layer_id, dilation in enumerate(hparams.dilations):
              dilate_input = tf.cond(
                  pred=is_training,
                  true_fn=lambda: self._nextitnet_residual_block_one(
                      dilate_input,
                      dilation,
                      layer_id,
                      dilate_input.get_shape()[-1],
                      hparams.kernel_size,
                      causal=True,
                      train=True,
                  ),
                  false_fn=lambda: self._nextitnet_residual_block_one(
                      dilate_input,
                      dilation,
                      layer_id,
                      dilate_input.get_shape()[-1],
                      hparams.kernel_size,
                      causal=True,
                      train=False,
                  ),
              )
  
          self.dilate_input = dilate_input
          model_output = tf.cond(
              pred=is_training,
              true_fn=self._training_output,
              false_fn=self._normal_output,
          )
  
          return model_output
  
file_path: recommenders/recommenders/models/deeprec/models/sequential/nextitnet.py
imports: import tensorflow
  from recommenders.models.deeprec.models.sequential.sequential_base_model import SequentialBaseModel
label_desc: Use image node_id 1 for calling the NextItNetModel obj's underlying member method code with example usage: obj._build_seq_graph() and returns: model_output