keras-team/keras · error · ValueError
diag supports only 1D or 2D tensors
Error message
diag supports only 1D or 2D tensors
What it means
Error "diag supports only 1D or 2D tensors" thrown in keras-team/keras.
Source
Thrown at keras/src/backend/openvino/numpy.py:1604
if x_type != output_type:
x = ov_opset.convert(x, output_type)
const_180_over_pi = ov_opset.constant(_180_over_pi, output_type).output(0)
result = ov_opset.multiply(x, const_180_over_pi).output(0)
return OpenVINOKerasTensor(result)
def diag(x, k=0):
x = get_ov_output(x)
rank = x.get_partial_shape().rank.get_length()
if rank == 1:
return diagflat(OpenVINOKerasTensor(x), k)
elif rank == 2:
return diagonal(OpenVINOKerasTensor(x), offset=k)
else:
raise ValueError("diag supports only 1D or 2D tensors")
def diagflat(x, k=0):
x = get_ov_output(x)
flatten_shape = ov_opset.constant([-1], dtype=Type.i32).output(0)
v_flat = ov_opset.reshape(x, flatten_shape, False).output(0)
v_flat_shape = ov_opset.shape_of(v_flat, Type.i32).output(0)
zero_node = ov_opset.constant(0, dtype=Type.i32).output(0)
n = ov_opset.gather(v_flat_shape, zero_node, zero_node).output(0)
k_val = int(k)
if k_val < 0:
abs_k = -k_val
else:
abs_k = k_val
View on GitHub (pinned to 7a34a03db6)
When it happens
Trigger: Thrown at keras/src/backend/openvino/numpy.py:1604 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of keras-team/keras@7a34a03db6 (2026-08-25).
Data as JSON: /api/errors/8e22f72adf8cb030.
Report an issue: GitHub.