Skip to main content
E0407: akida-akd1500 requires T = 1 per sample

What happened

run_batch was called with inputs where at least one sample has more than one timestep (T > 1). The akida-akd1500 backend requires exactly one timestep frame per sample.

Why

AKD1500 processes one spatial frame per model.forward() call. It holds no temporal state between calls:
  • There is no membrane potential that accumulates across timesteps.
  • There is no recurrent architecture.
  • There is no frame-to-frame buffering.
Iterating T frames independently through the same stateless model produces T independent feedforward responses. This is not equivalent to T timesteps of SNN temporal dynamics. A model whose behaviour depends on cross-timestep membrane accumulation will produce silently incorrect output rather than a recognisable error. E0407 is raised explicitly to prevent that silent failure.

How to fix

Pass exactly one timestep frame per sample. AKD1500 performs spatial inference; the timestep dimension must always be 1:
For temporal SNN inference, use the sim backend. The simulator implements full LIF temporal dynamics across any number of timesteps:

Example