code: def test_evaluator_dc_multi_metric():
      """Test an evaluator on a dataset."""
      X = np.random.rand(10, 5)
      y = np.random.rand(10, 1)
      dataset = dc.data.NumpyDataset(X, y)
      model = dc.models.MultitaskRegressor(1, 5)
      evaluator = Evaluator(model, dataset, [])
      metric1 = dc.metrics.Metric(dc.metrics.mae_score, n_tasks=2)
      metric2 = dc.metrics.Metric(dc.metrics.r2_score, n_tasks=2)
      multitask_scores = evaluator.compute_model_performance(
          [metric1, metric2]
      )
      assert isinstance(multitask_scores, dict)
      assert len(multitask_scores) == 2
      assert multitask_scores["mae_score"] > 0
      assert "r2_score" in multitask_scores
  
imports: import pytest
  import deepchem
  import numpy
  import sklearn
  from deepchem.utils.evaluate import Evaluator
  from deepchem.utils.evaluate import GeneratorEvaluator
label_desc: Use image node_id 11 for calling a global function with example usage: test_evaluator_dc_multi_metric() without return types