Эх сурвалжийг харах

perf(studio): skip API probe for services with knownModels

MiniMax GET /models took 47s because it tried the Anthropic endpoint
(no /models) and waited for timeout. Services with knownModels now
return the hardcoded list immediately, skipping the network call.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
fanghanjun 6 сар өмнө
parent
commit
ae7fc4af9b

+ 8 - 0
packages/studio/src/api/server.ts

@@ -1027,6 +1027,14 @@ export function createStudioServer(initialConfig: ProjectConfig, root: string) {
     // No key = no models (don't fallback to built-in list)
     // No key = no models (don't fallback to built-in list)
     if (!apiKey) return c.json({ models: [] });
     if (!apiKey) return c.json({ models: [] });
 
 
+    // Fast path: services with knownModels don't need API probing
+    const preset = resolveServicePreset(isCustomServiceId(service) ? "custom" : service);
+    if (preset?.knownModels && preset.knownModels.length > 0) {
+      return c.json({
+        models: preset.knownModels.map((id) => ({ id, name: id })),
+      });
+    }
+
     const resolvedBaseUrl = await resolveConfiguredServiceBaseUrl(root, service);
     const resolvedBaseUrl = await resolveConfiguredServiceBaseUrl(root, service);
     if (!resolvedBaseUrl) return c.json({ models: [] });
     if (!resolvedBaseUrl) return c.json({ models: [] });