Modelplane Modelplane docs

ModelRoute Custom Resource

A ModelRoute is one ModelService’s routing on one InferenceGateway: the AIGatewayRoute matching the service’s model name, plus, per endpoint, the Backend, credential and policy the gateway needs to reach it. The ModelService composes one per gateway that serves it, pinned to that gateway, and this renders onto the gateway’s cluster. It is machine-generated. kubectl get modelroutes -l modelplane.ai/service=<name> is the per-gateway view of where a service is served and whether each gateway is carrying it.

#Metadata

API version
modelplane.ai/v1alpha1
Kind
ModelRoute
Scope
Namespaced
Short names
mrt

#Spec

# endpoints required object[] 1–32 items
# priority optional integer ≤ 63

Lower is preferred. Entries at the same priority share traffic by weight; a higher number is only tried when nothing below it has a healthy endpoint.

# selector required object

Selects ModelEndpoints in this route’s namespace.

# matchLabels required map[string]string
# weight optional integer 1–1000000 default: 1

Share of traffic for this entry relative to the other entries at the same priority, spread as evenly as possible across the endpoints it matches.

# gatewayName required string 1–253 chars

Name of the InferenceGateway this route is pinned to. The function resolves the gateway’s cluster, its ProviderConfig and its address from here, and renders onto that cluster.

# serviceName required string 1–253 chars

Name of the ModelService this route belongs to. With the ModelRoute’s own namespace it derives the composed object names and the model name a caller passes (/), so the service and its routes agree on both.

#Status

# address optional string

External address of the gateway this route is on.

# conditions optional object[]
# endpoints optional object

Observed endpoint counts for this route, across all priorities.

# ready optional integer
# total optional integer
# hostname optional string

The name that gateway answers on, if it has one.

# model optional string

The name a caller passes as the request’s model, /.