tracel-ai/burn · error

not implemented

Error message

not implemented

What it means

Unimplemented guard in `change_client_backend`: cross-backend tensor transfer for a dtype outside the handled float/int branches (e.g., bool or quantized tensors) reaches the fallback `unimplemented!()`, so moving a tensor between router client backends panics for that dtype.

Source

Thrown at crates/burn-router/src/channel/base.rs:58

    /// Change the tensor to a different client backend.
    fn change_client_backend(
        tensor: RouterTensor<Self::Client>,
        device: &Self::Device, // target device
    ) -> RouterTensor<Self::Client> {
        // Get tensor handle from current client
        let original_client = tensor.client.clone();
        let desc = tensor.into_ir();
        let mut handle = Self::get_tensor_handle(&desc, &original_client);

        if desc.dtype.is_float() {
            handle = Self::Bridge::change_backend_float(handle, desc.shape.clone(), device);
        } else if desc.dtype.is_int() {
            handle = Self::Bridge::change_backend_int(handle, desc.shape.clone(), device);
        } else if desc.dtype.is_bool() {
            handle = Self::Bridge::change_backend_bool(handle, desc.shape.clone(), device);
        } else {
            unimplemented!()
        }

        // Register tensor handle on target client
        let target_client = get_client::<Self>(device);
        Self::register_tensor(&target_client, handle, desc.shape, desc.dtype)
    }
}

View on GitHub (pinned to d16f7ba2ed)

Solutions

  1. Only change client backends for float or int tensors
  2. Move the tensor via CPU `TensorData` (to_data / from_data) instead
  3. Extend the bridge to handle bool/quantized dtypes if needed
Defensive patterns

Strategy: fallback

When it happens

Trigger: Thrown at crates/burn-router/src/channel/base.rs:58 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of tracel-ai/burn@d16f7ba2ed (2026-09-05). Data as JSON: /api/errors/d10812fadd63c0cf. Report an issue: GitHub.