fix(dashboard): show Gemini and Grok models in provider views
This commit is contained in:
@@ -92,8 +92,15 @@ pub(super) async fn handle_get_providers(State(state): State<DashboardState>) ->
|
||||
}
|
||||
|
||||
// Find models for this provider in registry
|
||||
// NOTE: registry provider IDs differ from internal IDs for some providers.
|
||||
let registry_key = match id {
|
||||
"gemini" => "google",
|
||||
"grok" => "xai",
|
||||
_ => id,
|
||||
};
|
||||
|
||||
let mut models = Vec::new();
|
||||
if let Some(p_info) = registry.providers.get(id) {
|
||||
if let Some(p_info) = registry.providers.get(registry_key) {
|
||||
models = p_info.models.keys().cloned().collect();
|
||||
} else if id == "ollama" {
|
||||
models = config.providers.ollama.models.clone();
|
||||
@@ -197,8 +204,15 @@ pub(super) async fn handle_get_provider(
|
||||
}
|
||||
|
||||
// Find models for this provider
|
||||
// NOTE: registry provider IDs differ from internal IDs for some providers.
|
||||
let registry_key = match name.as_str() {
|
||||
"gemini" => "google",
|
||||
"grok" => "xai",
|
||||
_ => name.as_str(),
|
||||
};
|
||||
|
||||
let mut models = Vec::new();
|
||||
if let Some(p_info) = registry.providers.get(name.as_str()) {
|
||||
if let Some(p_info) = registry.providers.get(registry_key) {
|
||||
models = p_info.models.keys().cloned().collect();
|
||||
} else if name == "ollama" {
|
||||
models = config.providers.ollama.models.clone();
|
||||
@@ -316,11 +330,18 @@ pub(super) async fn handle_test_provider(
|
||||
};
|
||||
|
||||
// Pick a real model for this provider from the registry
|
||||
// NOTE: registry provider IDs differ from internal IDs for some providers.
|
||||
let registry_key = match name.as_str() {
|
||||
"gemini" => "google",
|
||||
"grok" => "xai",
|
||||
_ => name.as_str(),
|
||||
};
|
||||
|
||||
let test_model = state
|
||||
.app_state
|
||||
.model_registry
|
||||
.providers
|
||||
.get(&name)
|
||||
.get(registry_key)
|
||||
.and_then(|p| p.models.keys().next().cloned())
|
||||
.unwrap_or_else(|| name.clone());
|
||||
|
||||
|
||||
Reference in New Issue
Block a user