A router is a virtual model: route(request, ctx) runs before every request of a session whose
model is the router's name and returns a model reference, or
list(model, thinking = NULL, state = NULL). A router that errors or exceeds timeout falls
back to the default model.
Usage
gptr_router(name, route, description = NULL, timeout = 2)
Arguments
- name
Router name, usable as model = <name>.
- route
function(request, ctx).
- description
One line for listings.
- timeout
Seconds allowed per call.
Value
A spec of class c("gptr_router", "gptr_spec").
Examples
gptr_router("cheapest", route = function(request, ctx) "anthropic/claude-haiku-4-5")
#> <gptr_router cheapest>
#> route: <fn>
#> timeout: 2
#> api_version: 1.0