[router] fix get_models endpoint for openai router (#11687)

This commit is contained in:
Keyang Ru
2025-10-16 09:00:08 -07:00
committed by GitHub
parent 1de3924b18
commit 0975ba99bc
2 changed files with 82 additions and 1 deletions

View File

@@ -313,7 +313,22 @@ impl RouterTrait for RouterManager {
.into_response()
}
async fn get_models(&self, _req: Request<Body>) -> Response {
async fn get_models(&self, req: Request<Body>) -> Response {
// In single-router mode, delegate to the router (especially for OpenAI mode)
if !self.enable_igw {
let router = self
.default_router
.read()
.expect("Default router lock is poisoned")
.as_ref()
.and_then(|id| self.routers.get(id).map(|r| r.value().clone()));
if let Some(router) = router {
return router.get_models(req).await;
}
}
// In multi-router mode, aggregate models from worker registry
let models = self.worker_registry.get_models();
if models.is_empty() {