fix: extract provider from model name (e.g., chutes/model-name)

- Parse model names like 'chutes/deepseek-ai/DeepSeek-V3.2-TEE'
- Extract provider prefix before '/' to detect chutes, cerebras, etc.
- This fixes provider detection when admin panel sets wrong provider
This commit is contained in:
southseact-3d
2026-02-11 11:49:43 +00:00
parent f1fb336f4d
commit d2640eee5d

View File

@@ -5149,6 +5149,15 @@ async function ensureOpencodeConfig(session) {
// Find which providers are used in adminModels
const usedProviders = new Set();
for (const model of adminModels) {
// First, try to extract provider from model name (e.g., "chutes/model-name" -> "chutes")
if (model.name && model.name.includes('/')) {
const providerFromName = model.name.split('/')[0].toLowerCase();
if (providerFromName && providerFromName !== 'opencode') {
usedProviders.add(providerFromName);
log('Detected provider from model name', { name: model.name, provider: providerFromName });
}
}
if (Array.isArray(model.providers)) {
for (const p of model.providers) {
// Handle both string format ["opencode", "chutes"] and object format [{provider: "opencode"}]