From ce8fd4b1a658468d6406446a2ddeebb3dae54550 Mon Sep 17 00:00:00 2001 From: Gaspard Petit Date: Mon, 13 Apr 2026 05:14:42 -0400 Subject: [PATCH] server: Expose build_info in router mode (#21835) --- tools/server/server-models.cpp | 4 +++- tools/server/tests/unit/test_router.py | 13 +++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/tools/server/server-models.cpp b/tools/server/server-models.cpp index c4ef62d2ea..5667c98ef8 100644 --- a/tools/server/server-models.cpp +++ b/tools/server/server-models.cpp @@ -926,7 +926,8 @@ void server_models_routes::init_routes() { res_ok(res, { // TODO: add support for this on web UI {"role", "router"}, - {"max_instances", 4}, // dummy value for testing + {"max_instances", params.models_max}, + {"models_autoload", params.models_autoload}, // this is a dummy response to make sure webui doesn't break {"model_alias", "llama-server"}, {"model_path", "none"}, @@ -935,6 +936,7 @@ void server_models_routes::init_routes() { {"n_ctx", 0}, }}, {"webui_settings", webui_settings}, + {"build_info", build_info}, }); return res; } diff --git a/tools/server/tests/unit/test_router.py b/tools/server/tests/unit/test_router.py index 717007a446..79e60db408 100644 --- a/tools/server/tests/unit/test_router.py +++ b/tools/server/tests/unit/test_router.py @@ -9,6 +9,19 @@ def create_server(): server = ServerPreset.router() +def test_router_props(): + global server + server.models_max = 2 + server.no_models_autoload = True + server.start() + res = server.make_request("GET", "/props") + assert res.status_code == 200 + assert res.body["role"] == "router" + assert res.body["max_instances"] == 2 + assert res.body["models_autoload"] is False + assert res.body["build_info"].startswith("b") + + @pytest.mark.parametrize( "model,success", [