class_docstr: Trainer based on (R)ecorder.
  It will train a list of tasks and return a list of model recorders in a linear way.
  
  Assumption: models were defined by `task` and the results will be saved to `Recorder`.
class_docstr_tok: ["Trainer","based","on","(","R",")","ecorder",".","It","will","train","a","list","of","tasks","and","return","a","list","of","model","recorders","in","a","linear","way",".","Assumption",":","models","were","defined","by","`","task","`","and","the","results","will","be","saved","to","`","Recorder","`","."]
docstr: Set STATUS_END tag to the recorders.
  
  Args:
      models (list): a list of trained recorders.
  
  Returns:
      List[Recorder]: the same list as the param.
docstr_tok: ["Set","STATUS_END","tag","to","the","recorders",".","Args",":","models","(","list",")",":","a","list","of","trained","recorders",".","Returns",":","List","[","Recorder","]",":","the","same","list","as","the","param","."]
code: def end_train(self, models: list, **kwargs) -> List[Recorder]:
      """
      Set STATUS_END tag to the recorders.
  
      Args:
          models (list): a list of trained recorders.
  
      Returns:
          List[Recorder]: the same list as the param.
      """
      if isinstance(models, Recorder):
          models = [models]
      for rec in models:
          rec.set_tags(**{self.STATUS_KEY: self.STATUS_END})
      return models
  
imports: import socket
  from typing import Callable, List, Optional
  from tqdm.auto import tqdm
  from qlib.config import C
  from qlib.data.dataset import Dataset
  from qlib.data.dataset.weight import Reweighter
  from qlib.log import get_module_logger
  from qlib.model.base import Model
  from qlib.utils import auto_filter_kwargs, fill_placeholder, flatten_dict, init_instance_by_config
  from qlib.utils.paral import call_in_subproc
  from qlib.workflow import R
  from qlib.workflow.recorder import Recorder
  from qlib.workflow.task.manage import TaskManager, run_task
label_desc: Use image node_id 3 for calling the TrainerR obj's underlying member method code with example usage: obj.end_train(models) and returns: models