Kano001's picture
Upload 2707 files
dc2106c verified
raw
history blame
734 Bytes
# Copyright (c) ONNX Project Contributors
# SPDX-License-Identifier: Apache-2.0
import numpy as np
from onnx.reference.op_run import OpRun
class Concat(OpRun):
def _preprocess(self, a: np.ndarray, axis: int) -> np.ndarray:
if len(a.shape) == 0:
raise RuntimeError(f"Concat: one input has an empty shape: {a!r}.")
if axis >= len(a.shape): # type: ignore
new_shape = a.shape + (1,) * (axis + 1 - len(a.shape)) # type: ignore
return a.reshape(new_shape)
return a
def _run(self, *args, axis=None): # type: ignore
targs = tuple(self._preprocess(a, axis) for a in args)
return (np.concatenate(targs, axis),) # type: ignore