keras-team/keras · error · ValueError

The `seed` and `generator` variable must be set in the `__in

Error message

The `seed` and `generator` variable must be set in the `__init__` method before calling `_get_seed_generator()`.

What it means

Error "The `seed` and `generator` variable must be set in the `__init__` method before calling `_get_seed_generator()`." thrown in keras-team/keras.

Source

Thrown at keras/src/layers/preprocessing/data_layer.py:139

                self.backend.reset()
                if switch_convert_input_args:
                    self._convert_input_args = True
            return outputs
        elif (
            not isinstance(sample_input, keras.KerasTensor)
            and backend_utils.in_grain_data_pipeline()
        ):
            # We're in a Grain data pipeline. Force computation and data
            # placement to CPU.
            with keras.src.backend.device_scope("cpu"):
                return super().__call__(inputs, **kwargs)
        else:
            return super().__call__(inputs, **kwargs)

    @tracking.no_automatic_dependency_tracking
    def _get_seed_generator(self, backend=None):
        if not hasattr(self, "seed") or not hasattr(self, "generator"):
            raise ValueError(
                "The `seed` and `generator` variable must be set in the "
                "`__init__` method before calling `_get_seed_generator()`."
            )
        if backend is None or backend == keras.backend.backend():
            return self.generator
        if not hasattr(self, "_backend_generators"):
            self._backend_generators = {}
        if backend in self._backend_generators:
            return self._backend_generators[backend]
        seed_generator = SeedGenerator(self.seed, backend=self.backend)
        self._backend_generators[backend] = seed_generator
        return seed_generator

    def convert_weight(self, weight):
        """Convert the weight if it is from the a different backend."""
        if self.backend.name == keras.backend.backend():
            return weight
        else:

View on GitHub (pinned to 7a34a03db6)

When it happens

Trigger: Thrown at keras/src/layers/preprocessing/data_layer.py:139 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/d3455e67cca9bff4. Report an issue: GitHub.