class_docstr: Base model.
docstr: This function should construct the train program with the `self.train_pos_input`
  and `self.train_neg_input`. These inputs are batch of triples.
  :return: List of variables you want to get. Please be sure the ':var loss' should
      be in the first place, eg. [loss, variable1, variable2, ...].
docstr_tok: ["This","function","should","construct","the","train","program","with","the","`","self.train_pos_input","`","and","`","self.train_neg_input","`",".","These","inputs","are","batch","of","triples",".",":","return",":","List","of","variables","you","want","to","get",".","Please","be","sure","the","'",":","var","loss","'","should","be","in","the","first","place",",","eg",".","[","loss",",","variable1",",","variable2",",","...","]","."]
code: def construct_train_program(self):
      """
      This function should construct the train program with the `self.train_pos_input`
      and `self.train_neg_input`. These inputs are batch of triples.
      :return: List of variables you want to get. Please be sure the ':var loss' should
          be in the first place, eg. [loss, variable1, variable2, ...].
      """
      raise NotImplementedError(
          "You should define the construct_train_program"
          " function before use it!"
      )
  
file_path: PGL/legacy/examples/pgl-ke/model/Model.py
imports: from paddle import fluid
label_desc: Use image node_id 4 for calling the Model obj's underlying member method code with example usage: obj.construct_train_program() without return types