code: def test_predict_multioutput(input_type, output_type):
      X = np.array([[0, 0, 1, 0], [1, 0, 1, 0]]).astype(np.float32)
      y = np.array([[15, 2], [5, 4]]).astype(np.int32)
  
      if input_type == "cudf":
          X = cudf.DataFrame(X)
          y = cudf.DataFrame(y)
      elif input_type == "cupy":
          X = cp.asarray(X)
          y = cp.asarray(y)
  
      knn_cu = cuKNN(n_neighbors=1, output_type=output_type)
      knn_cu.fit(X, y)
  
      p = knn_cu.predict(X)
  
      if output_type == "cudf":
          assert isinstance(p, cudf.DataFrame)
      elif output_type == "numpy":
          assert isinstance(p, np.ndarray)
      elif output_type == "cupy":
          assert isinstance(p, cp.ndarray)
  
      assert array_equal(p.astype(np.int32), y)
  
file_path: cuml/python/cuml/tests/test_kneighbors_regressor.py
imports: from cuml.testing.utils import array_equal
  from cuml.internals.safe_imports import cpu_only_import
  from cuml.internals.safe_imports import cpu_only_import_from
  from sklearn.model_selection import train_test_split
  from sklearn.utils.validation import check_random_state
  from sklearn.datasets import make_blobs
  from cuml.neighbors import KNeighborsRegressor
  import pytest
  from cuml.internals.safe_imports import gpu_only_import
label_desc: Use image node_id 5 for calling a global function with example usage: test_predict_multioutput(input_type, output_type) without return types