Weights are relative
Weights don’t need to add to 100. A configuration with weights3 and 1 sends approximately 75% and 25%. A zero-weight target stays available in the configuration but receives no new weighted traffic.
Use zero weight to preserve the previous model for visibility and rollback after a full promotion.
Sticky routing
When a request supplieswandb.thread_id or gen_ai.conversation.id, the proxy deterministically keeps that conversation on one target for the routing revision. Without a conversation ID, each request is selected independently.
Target parameters
To add values such as temperature, reasoning effort, response format, or provider-specific controls, expand Parameters under a model. Numbers, booleans, arrays, and objects are parsed from JSON. Other text remains a string. The stored override wins over the same field supplied by the caller.Save to an existing or new version
Open the project’s Routing page. Add or edit targets, choose the destination in the version bar, and select Save routing. The version bar is part of the same save action:- Choose an existing version to replace its desired routing.
- Choose the new-version option to create a new version. The version is created only when you select Save routing. Call the new version with
name@vN.
API: Replace routing for a project version (PUT /tasks/{alias}/versions/{version}/routing)
API: Replace routing for a project version (PUT /tasks/{alias}/versions/{version}/routing)
Routing updates replace the whole configuration, so the request must include Poll the returned routing state until deployment is
trace_sampling_rate as well as every target. To keep the existing sampling rate, pass it in the request. If you want the previous model available for rollback, keep it at weight 0:applied at the current revision. See Replace routing for a task version.