Files
2024-10-30 22:14:35 +01:00

26 lines
761 B
Python

# Copyright (c) ONNX Project Contributors
# SPDX-License-Identifier: Apache-2.0
from __future__ import annotations
import numpy as np
from onnx.reference.ops._op import OpRunBinaryNumpy
class Max(OpRunBinaryNumpy):
def __init__(self, onnx_node, run_params): # type: ignore
OpRunBinaryNumpy.__init__(self, np.maximum, onnx_node, run_params)
def run(self, *data): # type: ignore
if len(data) == 2:
return OpRunBinaryNumpy.run(self, *data)
if len(data) == 1:
return (data[0].copy(),)
if len(data) > 2:
a = data[0]
for i in range(1, len(data)):
a = np.maximum(a, data[i])
return (a,)
raise RuntimeError("Unexpected turn of events.")