keras-team/keras · error · ValueError
`backward_layer` need to be a `keras.layers.Layer` instance.
Error message
`backward_layer` need to be a `keras.layers.Layer` instance. Received: {backward_layer} What it means
Error "`backward_layer` need to be a `keras.layers.Layer` instance. Received: {backward_layer}" thrown in keras-team/keras.
Source
Thrown at keras/src/layers/rnn/bidirectional.py:100
model.compile(loss='categorical_crossentropy', optimizer='rmsprop')
```
"""
def __init__(
self,
layer,
merge_mode="concat",
weights=None,
backward_layer=None,
**kwargs,
):
if not isinstance(layer, Layer):
raise ValueError(
"Please initialize `Bidirectional` layer with a "
f"`keras.layers.Layer` instance. Received: {layer}"
)
if backward_layer is not None and not isinstance(backward_layer, Layer):
raise ValueError(
"`backward_layer` need to be a `keras.layers.Layer` "
f"instance. Received: {backward_layer}"
)
if merge_mode not in ["sum", "mul", "ave", "concat", None]:
raise ValueError(
f"Invalid merge mode. Received: {merge_mode}. "
"Merge mode should be one of "
'{"sum", "mul", "ave", "concat", None}'
)
super().__init__(**kwargs)
# Recreate the forward layer from the original layer config, so that it
# will not carry over any state from the layer.
config = serialization_lib.serialize_keras_object(layer)
config["config"]["name"] = (
f"forward_{utils.removeprefix(layer.name, 'forward_')}"
)
self.forward_layer = serialization_lib.deserialize_keras_object(config)View on GitHub (pinned to 7a34a03db6)
When it happens
Trigger: Thrown at keras/src/layers/rnn/bidirectional.py:100 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/fd003b6d9c623f65.
Report an issue: GitHub.