class_docstr: Single GPU EvalHook, with efficient test support.
  
  Args:
      by_epoch (bool): Determine perform evaluation by epoch or by iteration.
          If set to True, it will perform by epoch. Otherwise, by iteration.
          Default: False.
      efficient_test (bool): Whether save the results as local numpy files to
          save CPU memory during evaluation. Default: False.
  Returns:
      list: The prediction results.
class_docstr_tok: ["Single","GPU","EvalHook",",","with","efficient","test","support",".","Args",":","by_epoch","(","bool",")",":","Determine","perform","evaluation","by","epoch","or","by","iteration",".","If","set","to","True",",","it","will","perform","by","epoch",".","Otherwise",",","by","iteration",".","Default",":","False",".","efficient_test","(","bool",")",":","Whether","save","the","results","as","local","numpy","files","to","save","CPU","memory","during","evaluation",".","Default",":","False",".","Returns",":","list",":","The","prediction","results","."]
code: def __init__(
      self, *args, by_epoch=False, efficient_test=False, **kwargs
  ):
      super().__init__(*args, by_epoch=by_epoch, **kwargs)
      self.efficient_test = efficient_test
  
file_path: lavis/lavis/common/annotator/uniformer/mmseg/core/evaluation/eval_hooks.py
imports: import os.path
  from annotator.uniformer.mmcv.runner import DistEvalHook
  from annotator.uniformer.mmcv.runner import EvalHook
label_desc: Use image node_id 1 to create a new EvalHook object from inherited base classes: _EvalHook with example: obj = EvalHook()