Summary
Think of this as persona: a Developer chooses how to expose the OpenAI-compatible API (ClusterIP, NodePort, LoadBalancer) and which inference load-balancing strategy to use (Least Load, Prefix Hash). The provider defines a proxy resource and follows KubeAI’s load-balancing model so apps get a stable /openai/v1/... endpoint without hand-editing Service/proxy YAML.
Why
Exposure and LB strategy are not first-class in the provider. Teams need a clear way to publish the API and to pick LB suited to vLLM (even load vs prefix-cache affinity for chat).
Scope
- Proxy / exposure setting in the provider (Service type: ClusterIP | NodePort | LoadBalancer).
- Wire Least Load and Prefix Hash per KubeAI load-balancing concepts.
- Surface choices in Instance/topology UI and/or Helm defaults.
- Sync applies exposure + LB without thrashing Model
spec.replicas or breaking scale-to-zero.
- Docs: how to expose the API and when to use each LB strategy.
Checklist
Additional notes
Prefix Hash is most useful for chat (full thread sent each request). Supported endpoints include /openai/v1/completions and /openai/v1/chat/completions.
Resources
Summary
Think of this as persona: a Developer chooses how to expose the OpenAI-compatible API (
ClusterIP,NodePort,LoadBalancer) and which inference load-balancing strategy to use (Least Load,Prefix Hash). The provider defines a proxy resource and follows KubeAI’s load-balancing model so apps get a stable/openai/v1/...endpoint without hand-editing Service/proxy YAML.Why
Exposure and LB strategy are not first-class in the provider. Teams need a clear way to publish the API and to pick LB suited to vLLM (even load vs prefix-cache affinity for chat).
Scope
spec.replicasor breaking scale-to-zero.Checklist
Additional notes
Prefix Hash is most useful for chat (full thread sent each request). Supported endpoints include
/openai/v1/completionsand/openai/v1/chat/completions.Resources