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:
@@ -5149,6 +5149,15 @@ async function ensureOpencodeConfig(session) {
|
|||||||
// Find which providers are used in adminModels
|
// Find which providers are used in adminModels
|
||||||
const usedProviders = new Set();
|
const usedProviders = new Set();
|
||||||
for (const model of adminModels) {
|
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)) {
|
if (Array.isArray(model.providers)) {
|
||||||
for (const p of model.providers) {
|
for (const p of model.providers) {
|
||||||
// Handle both string format ["opencode", "chutes"] and object format [{provider: "opencode"}]
|
// Handle both string format ["opencode", "chutes"] and object format [{provider: "opencode"}]
|
||||||
|
|||||||
Reference in New Issue
Block a user