Define the cross-backend accelerator model before adding provider-specific code.
Scope:
- Separate logical device selection (
cpu, cuda, rocm, xpu, mps, directml, auto) from backend implementation (self_torch, self_onnx, external_package, external_sdk).
- Extend capability metadata without making every backend import heavy runtimes at listing time.
- Define fallback behavior when a requested accelerator is unavailable.
- Keep default CPU/offline behavior deterministic.
Acceptance criteria:
--list-models / --list-backends can report accelerator support clearly.
device=auto behavior is documented and testable.
- Unsupported requested accelerators fail with actionable errors.
Define the cross-backend accelerator model before adding provider-specific code.
Scope:
cpu,cuda,rocm,xpu,mps,directml,auto) from backend implementation (self_torch,self_onnx,external_package,external_sdk).Acceptance criteria:
--list-models/--list-backendscan report accelerator support clearly.device=autobehavior is documented and testable.