code: def from_config(cls, config, *args, tensorizers=None, **kwargs):
      return cls(
          channels=[
              ConsoleChannel(),
              FileChannel((Stage.TEST,), config.output_path),
          ],
          text_column_names=config.text_column_names,
          model_select_metric=config.model_select_metric,
          task_batch_size=config.task_batch_size,
          num_negative_ctxs=config.num_negative_ctxs,
      )
  
imports: from enum import Enum
  from typing import Any, Dict, List
  import numpy
  from pytext.common.constants import Stage
  from pytext.metric_reporters.channel import Channel, ConsoleChannel, FileChannel
  from pytext.metric_reporters.metric_reporter import MetricReporter
  from pytext.metrics.dense_retrieval_metrics import DenseRetrievalMetrics
label_desc: Use image node_id 1 for calling the DenseRetrievalMetricReporter obj's underlying member method code with example usage: obj.from_config(cls, config) and returns: cls