Skip to main content
InferenceBackend selects and configures the execution engine for model serving. This page specifies the supported backends, the selection decision tree, latency and throughput profiles, and optimization features including batching, KV cache management, and speculative decoding.

Supported Backends

Backend Selection Decision Tree

The selection logic balances hardware, latency requirements, throughput targets, and model format.

Latency and Throughput Profiles

The table below shows placeholder targets for each backend. Values are engineering assumptions pending benchmarking.
All latency and throughput values are marked EXP-TBD and will be populated after benchmark runs on reference hardware.

Batching Strategies

Continuous batching is preferred for high-throughput serving. InferenceBackend configures the batching mode via backend-specific parameters passed from DeploymentManager.

KV Cache and Prefix Cache

The KV cache stores key and value tensors from prior tokens to avoid recomputation during autoregressive generation. InferenceBackend manages cache allocation, eviction, and reuse.
  • PagedAttention (vLLM): Allocates KV cache in fixed-size blocks, enabling memory sharing and reducing fragmentation.
  • Prefix cache: Reuses KV cache for shared prompt prefixes across multiple requests. Enabled by default in vLLM and TGI when prompts share a common system message or instruction prefix.

Speculative Decoding

Speculative decoding accelerates generation by drafting future tokens with a smaller, faster model and verifying them in parallel with the target model. InferenceBackend supports speculative decoding when a draft model is registered in ModelRegistry and the target backend implements verification.
  • Draft model must be compatible in tokenizer vocabulary and architecture.
  • Verification accepts or rejects draft tokens in blocks.
  • Rejected tokens trigger standard autoregressive fallback.

Integration

InferenceBackend is configured by DeploymentManager during environment setup. It reads model artifacts from ArtifactStore and reports metrics to Observability. Backend health is monitored by GPU Health and Monitoring.