fix(server): map provider names to registry keys for /v1/models
Some checks failed
CI / Check (push) Has been cancelled
CI / Clippy (push) Has been cancelled
CI / Formatting (push) Has been cancelled
CI / Test (push) Has been cancelled
CI / Release Build (push) Has been cancelled

The model registry from models.dev uses 'google' and 'xai' as provider
IDs, but internal providers use 'gemini' and 'grok'. Added mapping so
all provider models appear in the listing.
This commit is contained in:
2026-03-02 14:14:56 -05:00
parent 88aae389d2
commit 232f092f27

View File

@@ -47,8 +47,15 @@ async fn list_models(
for provider in &providers { for provider in &providers {
let provider_name = provider.name(); let provider_name = provider.name();
// Map internal provider names to registry provider IDs
let registry_key = match provider_name {
"gemini" => "google",
"grok" => "xai",
_ => provider_name,
};
// Find this provider's models in the registry // Find this provider's models in the registry
if let Some(provider_info) = registry.providers.get(provider_name) { if let Some(provider_info) = registry.providers.get(registry_key) {
for (model_id, meta) in &provider_info.models { for (model_id, meta) in &provider_info.models {
// Skip disabled models via the config cache // Skip disabled models via the config cache
if let Some(cfg) = state.model_config_cache.get(model_id).await { if let Some(cfg) = state.model_config_cache.get(model_id).await {