diff --git a/server/dist/db/index.d.ts.map b/server/dist/db/index.d.ts.map index 234a125..a3d5763 100644 --- a/server/dist/db/index.d.ts.map +++ b/server/dist/db/index.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAWtC,wBAAgB,KAAK,IAAI,QAAQ,CAAC,QAAQ,CAKzC;AAED,wBAAsB,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAsDxE;AAkhDD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,gCAAgC,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,QA2BrE;AAsED,wBAAgB,gBAAgB,IAAI,MAAM,CAIzC;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAK7C"} \ No newline at end of file +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAWtC,wBAAgB,KAAK,IAAI,QAAQ,CAAC,QAAQ,CAKzC;AAED,wBAAsB,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAwDxE;AAkhDD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,gCAAgC,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,QA2BrE;AAuJD,wBAAgB,gBAAgB,IAAI,MAAM,CAIzC;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAK7C"} \ No newline at end of file diff --git a/server/dist/db/index.js b/server/dist/db/index.js index e78651b..810f4cb 100644 --- a/server/dist/db/index.js +++ b/server/dist/db/index.js @@ -48,6 +48,8 @@ export async function initDb(dbPath) { migrateModelsV17(db); migrateModelsV18(db); migrateModelsV19(db); + migrateModelsV20(db); + migrateModelsV21(db); seedModelCapabilities(db); // Must follow seedModelCapabilities — that is where the image rows are seeded. flagPaidGoogleModels(db); @@ -485,7 +487,7 @@ function migrateModelsV4(db) { ['openrouter', 'meta-llama/llama-3.3-70b-instruct:free', 'Llama 3.3 70B (free)', 17, 9, 'Medium', 20, 200, null, null, '~6M', 131072], // SambaNova — 20 RPM / 20 RPD / 200K TPD shared free Developer tier ['sambanova', 'DeepSeek-V3.1', 'DeepSeek V3.1', 5, 9, 'Frontier', 20, 20, null, 200000, '~3M', 131072], - ['sambanova', 'DeepSeek-V3.2', 'DeepSeek V3.2', 4, 9, 'Frontier', 20, 20, null, 200000, '~3M', 131072], + ['sambanova', 'DeepSeek-V3.2', 'DeepSeek V3.2', 4, 9, 'Frontier', 20, 20, null, 200000, '~3M', 32768], ['sambanova', 'Llama-4-Maverick-17B-128E-Instruct', 'Llama 4 Maverick', 11, 9, 'Large', 20, 20, null, 200000, '~3M', 8192], ['sambanova', 'gpt-oss-120b', 'GPT-OSS 120B (SambaNova)', 6, 9, 'Large', 20, 20, null, 200000, '~3M', 131072], // Groq — very fast; 30 RPM per model, 1000 RPD on most, 14.4k on the 8B @@ -1499,6 +1501,81 @@ function migrateModelsV18(db) { function migrateModelsV19(db) { db.prepare("UPDATE models SET enabled = 0 WHERE platform = 'ollama' AND model_id = 'qwen3-coder:480b'").run(); } +/** + * V20 (July 2026): correct SambaNova DeepSeek V3.2's live provider limit. + * The API rejects requests over 32,768 tokens even though the original catalog + * row advertised 131,072. Keeping the smaller verified limit prevents auto + * routing from selecting a model that cannot accept the request. + */ +function migrateModelsV20(db) { + db.prepare("UPDATE models SET context_window = 32768 WHERE platform = 'sambanova' AND model_id = 'DeepSeek-V3.2'").run(); +} +/** + * V21 (August 2026): retire the NVIDIA NIM rows the upstream end-of-lifed and + * add the models that replaced them. + * + * Live-probed 2026-08-23 against integrate.api.nvidia.com. NVIDIA resolves the + * model name before authenticating, so an unauthenticated POST to + * /v1/chat/completions distinguishes the cases exactly: 401/403 = the route + * exists, 404 = never existed, 410 = retired. Four of the ten V11 rows answer + * 410 and are absent from GET /v1/models, e.g.: + * + * "The model 'minimaxai/minimax-m2.7' has reached its end of life on + * 2026-07-27T00:00:00Z and is no longer available." + * + * Disabled rather than deleted, per V18/V19 precedent. The six survivors + * (llama-3.1-70b, llama-3.3-70b, nemotron-3-super-120b, nemotron-3-nano-30b, + * gemma-4-31b, kimi-k2.6) all still answer 401 and stay enabled. + * + * Replacements are the current NVIDIA-hosted equivalents, each probe-confirmed + * 401. Context windows follow the V11 convention of a conservative + * family-consistent estimate — NVIDIA does not publish them on /v1/models. + */ +function migrateModelsV21(db) { + const retired = [ + 'meta/llama-4-maverick-17b-128e-instruct', // no Llama 4 remains on NIM + 'deepseek-ai/deepseek-v4-pro', + 'mistralai/mistral-large-3-675b-instruct-2512', + 'minimaxai/minimax-m2.7', // EOL 2026-07-27 + ]; + const insert = db.prepare(` + INSERT OR IGNORE INTO models (platform, model_id, display_name, intelligence_rank, speed_rank, size_label, rpm_limit, rpd_limit, tpm_limit, tpd_limit, monthly_token_budget, context_window) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `); + const additions = [ + // Direct successors to the four retired rows. + ['nvidia', 'deepseek-ai/deepseek-v4-flash-0731', 'DeepSeek V4 Flash (NV)', 3, 9, 'Frontier', 40, null, null, null, '~2M (credits)', 131072], + ['nvidia', 'minimaxai/minimax-m3', 'MiniMax M3 (NV)', 3, 9, 'Frontier', 40, null, null, null, '~2M (credits)', 196608], + ['nvidia', 'mistralai/mistral-nemotron', 'Mistral Nemotron (NV)', 8, 8, 'Large', 40, null, null, null, '~3M (credits)', 131072], + ['nvidia', 'meta/muse-glimmer-30b', 'Muse Glimmer 30B (NV)', 11, 8, 'Large', 40, null, null, null, '~3M (credits)', 131072], + // New frontier/fast tiers NVIDIA added since V11. + ['nvidia', 'nvidia/nemotron-3-ultra-550b-a55b', 'Nemotron 3 Ultra 550B (NV)', 2, 9, 'Frontier', 40, null, null, null, '~2M (credits)', 262144], + ['nvidia', 'moonshotai/kimi-k3', 'Kimi K3 (NV)', 3, 9, 'Frontier', 40, null, null, null, '~2M (credits)', 131072], + ['nvidia', 'nvidia/nemotron-3.5-lightning-30b-a3b', 'Nemotron 3.5 Lightning 30B (NV)', 20, 6, 'Medium', 40, null, null, null, '~3M (credits)', 262144], + ['nvidia', 'openai/gpt-oss-120b', 'GPT-OSS 120B (NV)', 6, 8, 'Large', 40, null, null, null, '~3M (credits)', 131072], + ]; + const disable = db.prepare("UPDATE models SET enabled = 0 WHERE platform = 'nvidia' AND model_id = ?"); + const apply = db.transaction(() => { + for (const modelId of retired) + disable.run(modelId); + for (const a of additions) + insert.run(...a); + // Same backfill V11 uses: every catalog row needs a fallback_config entry + // or the router cannot reach it. + const missing = db.prepare(` + SELECT m.id FROM models m + LEFT JOIN fallback_config f ON m.id = f.model_db_id + WHERE f.id IS NULL ORDER BY m.intelligence_rank ASC + `).all(); + if (missing.length > 0) { + const maxPriority = db.prepare('SELECT COALESCE(MAX(priority), 0) AS mx FROM fallback_config').get().mx; + const addFb = db.prepare('INSERT INTO fallback_config (model_db_id, priority, enabled) VALUES (?, ?, 1)'); + for (let i = 0; i < missing.length; i++) + addFb.run(missing[i].id, maxPriority + i + 1); + } + }); + apply(); +} /** * Mark Google models that have no free tier (verified 2026-07-22 against * ai.google.dev pricing — image generation reads "Not available" in the Free diff --git a/server/dist/db/index.js.map b/server/dist/db/index.js.map index 592743d..1e17224 100644 --- a/server/dist/db/index.js.map +++ b/server/dist/db/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/server/dist/providers/index.d.ts.map b/server/dist/providers/index.d.ts.map index 9aafad0..fecf67d 100644 --- a/server/dist/providers/index.d.ts.map +++ b/server/dist/providers/index.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAmM9C,wBAAgB,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,YAAY,GAAG,SAAS,CAExE;AAED,wBAAgB,eAAe,IAAI,YAAY,EAAE,CAEhD;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAEvD"} \ No newline at end of file +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AA0M9C,wBAAgB,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,YAAY,GAAG,SAAS,CAExE;AAED,wBAAgB,eAAe,IAAI,YAAY,EAAE,CAEhD;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAEvD"} \ No newline at end of file diff --git a/server/dist/providers/index.js b/server/dist/providers/index.js index de20dc4..8c72f27 100644 --- a/server/dist/providers/index.js +++ b/server/dist/providers/index.js @@ -26,11 +26,18 @@ register(new OpenAICompatProvider({ name: 'SambaNova', baseUrl: 'https://api.sambanova.ai/v1', })); -// NVIDIA NIM - OpenAI-compatible +// NVIDIA NIM - OpenAI-compatible. The catalog is almost entirely large models +// (70B Llamas, 120B/550B Nemotrons, DeepSeek/Kimi/MiniMax frontier tiers) and +// the shared free-credit pool is not latency-guaranteed, so first token +// regularly lands past the 15s default — meta/llama-3.1-70b-instruct was +// failing with "This operation was aborted". Worse, classifyProviderError maps +// an abort to a 120s key cooldown, so one slow request benched the whole +// provider. Bumped to the 60s used by the other slow cloud providers. register(new OpenAICompatProvider({ platform: 'nvidia', name: 'NVIDIA NIM', baseUrl: 'https://integrate.api.nvidia.com/v1', + timeoutMs: 60000, })); // Mistral - OpenAI-compatible register(new OpenAICompatProvider({ diff --git a/server/dist/providers/index.js.map b/server/dist/providers/index.js.map index 08326fb..b7ddde3 100644 --- a/server/dist/providers/index.js.map +++ b/server/dist/providers/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/server/dist/providers/openai-compat.js b/server/dist/providers/openai-compat.js index 09e0e76..5a6d402 100644 --- a/server/dist/providers/openai-compat.js +++ b/server/dist/providers/openai-compat.js @@ -43,7 +43,7 @@ export class OpenAICompatProvider extends BaseProvider { }, this.timeoutMs); if (!res.ok) { const err = await res.json().catch(() => ({})); - throw new Error(`${this.name} API error ${res.status}: ${err.error?.message ?? res.statusText}`); + throw new Error(`${this.name} API error ${res.status}: ${readProviderErrorText(err, res.statusText)}`); } const data = await res.json(); throwIfOpenAIErrorBody(this.name, data); @@ -73,7 +73,7 @@ export class OpenAICompatProvider extends BaseProvider { }, this.timeoutMs); if (!res.ok) { const err = await res.json().catch(() => ({})); - throw new Error(`${this.name} API error ${res.status}: ${err.error?.message ?? res.statusText}`); + throw new Error(`${this.name} API error ${res.status}: ${readProviderErrorText(err, res.statusText)}`); } const reader = res.body?.getReader(); if (!reader) @@ -127,7 +127,7 @@ export class OpenAICompatProvider extends BaseProvider { }, this.timeoutMs); if (!res.ok) { const err = await res.json().catch(() => ({})); - throw new Error(`${this.name} API error ${res.status}: ${err.error?.message ?? res.statusText}`); + throw new Error(`${this.name} API error ${res.status}: ${readProviderErrorText(err, res.statusText)}`); } const data = await res.json(); throwIfOpenAIErrorBody(this.name, data); @@ -190,7 +190,7 @@ export class OpenAICompatProvider extends BaseProvider { }, 120000); if (!res.ok) { const err = await res.json().catch(() => ({})); - throw new Error(`${this.name} API error ${res.status}: ${err.error?.message ?? res.statusText}`); + throw new Error(`${this.name} API error ${res.status}: ${readProviderErrorText(err, res.statusText)}`); } const contentType = res.headers.get('content-type') ?? `audio/${request.response_format ?? 'wav'}`; if (contentType.includes('application/json')) { @@ -232,7 +232,7 @@ export class OpenAICompatProvider extends BaseProvider { }, this.timeoutMs); if (!res.ok) { const err = await res.json().catch(() => ({})); - throw new Error(`${this.name} API error ${res.status}: ${err.error?.message ?? res.statusText}`); + throw new Error(`${this.name} API error ${res.status}: ${readProviderErrorText(err, res.statusText)}`); } const contentType = res.headers.get('content-type') ?? 'application/json'; const body = contentType.includes('application/json') @@ -267,7 +267,7 @@ export class OpenAICompatProvider extends BaseProvider { }, 120000); if (!res.ok) { const err = await res.json().catch(() => ({})); - throw new Error(`${this.name} API error ${res.status}: ${err.error?.message ?? res.statusText}`); + throw new Error(`${this.name} API error ${res.status}: ${readProviderErrorText(err, res.statusText)}`); } const data = await res.json(); throwIfOpenAIErrorBody(this.name, data); @@ -286,6 +286,42 @@ export class OpenAICompatProvider extends BaseProvider { }; } } +/** + * Extract the most useful human-readable text from a failed response body. + * + * Most OpenAI-compatible providers answer `{ error: { message } }`, but NVIDIA + * NIM returns RFC 7807 problem+json — `{ type, title, status, detail }` — with + * no `error` key at all. Reading only `error.message` therefore fell through to + * `res.statusText`, so a retirement that upstream explains in full ("The model + * 'minimaxai/minimax-m2.7' has reached its end of life on 2026-07-27...") + * surfaced in the dashboard as the useless "NVIDIA NIM API error 410: Gone". + * + * Checked in order of specificity; `detail`/`title` cover problem+json, bare + * `message`/`detail` cover the aggregators that skip the `error` envelope. + */ +function readProviderErrorText(body, statusText) { + if (!body || typeof body !== 'object') + return statusText; + const b = body; + const error = b.error; + if (typeof error === 'string' && error.trim()) + return error; + if (error && typeof error === 'object') { + const message = error.message; + if (typeof message === 'string' && message.trim()) + return message; + } + // RFC 7807: prefer `detail` (the explanation), fall back to `title` (the + // status phrase). Both present → "Gone: The model ... end of life ...". + const detail = typeof b.detail === 'string' && b.detail.trim() ? b.detail : undefined; + const title = typeof b.title === 'string' && b.title.trim() ? b.title : undefined; + if (detail) + return title && title !== detail ? `${title}: ${detail}` : detail; + const message = typeof b.message === 'string' && b.message.trim() ? b.message : undefined; + if (message) + return message; + return title ?? statusText; +} function throwIfOpenAIErrorBody(providerName, data) { if (!data || typeof data !== 'object' || !('error' in data)) return; diff --git a/server/dist/providers/openai-compat.js.map b/server/dist/providers/openai-compat.js.map index 298cb15..edd49d9 100644 --- a/server/dist/providers/openai-compat.js.map +++ b/server/dist/providers/openai-compat.js.map @@ -1 +1 @@ -{"version":3,"file":"openai-compat.js","sourceRoot":"","sources":["../../src/providers/openai-compat.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"openai-compat.js","sourceRoot":"","sources":["../../src/providers/openai-compat.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/server/dist/routes/proxy.js b/server/dist/routes/proxy.js index 02a53e2..3ddab55 100644 --- a/server/dist/routes/proxy.js +++ b/server/dist/routes/proxy.js @@ -77,6 +77,17 @@ function estimateChatContentTokens(content) { return sum + 1000; }, 0); } +function estimateStructuredTokens(value) { + if (value == null) + return 0; + try { + // JSON-heavy tool schemas tokenize more densely than natural language. + return Math.ceil(JSON.stringify(value).length / 3); + } + catch { + return 0; + } +} function getStickyModel(messages) { // Only apply sticky for multi-turn (has assistant messages = continuation) const hasAssistant = messages.some(m => m.role === 'assistant'); @@ -966,7 +977,9 @@ proxyRouter.post('/chat/completions', async (req, res) => { // Non-streaming requests reconcile against the provider's real `usage` block // (see line ~340). Streaming will drift from real consumption — accepted // tradeoff because per-request usage isn't always returned mid-stream. - const estimatedInputTokens = messages.reduce((sum, m) => sum + estimateChatContentTokens(m.content), 0); + const estimatedInputTokens = messages.reduce((sum, m) => sum + + estimateChatContentTokens(m.content) + + estimateStructuredTokens(m.role === 'assistant' ? m.tool_calls : undefined), 0) + estimateStructuredTokens(tools); const estimatedTotal = estimatedInputTokens + (max_tokens ?? 1000); const needsVision = requiresVision(messages); const needsVideo = requiresVideo(messages); diff --git a/server/dist/routes/proxy.js.map b/server/dist/routes/proxy.js.map index 990ee82..718bad8 100644 --- a/server/dist/routes/proxy.js.map +++ b/server/dist/routes/proxy.js.map @@ -1 +1 @@ -{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/routes/proxy.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/routes/proxy.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/server/dist/services/router.d.ts.map b/server/dist/services/router.d.ts.map index 45edd31..d608edd 100644 --- a/server/dist/services/router.d.ts.map +++ b/server/dist/services/router.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/services/router.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AA6BzD,MAAM,MAAM,oBAAoB,GAC5B,YAAY,GACZ,YAAY,GACZ,mBAAmB,GACnB,SAAS,GACT,UAAU,GACV,MAAM,GACN,OAAO,CAAC;AAEZ,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,aAAa,CAAC;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC/C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,MAAM,eAAe,GACvB,MAAM,GACN,YAAY,GACZ,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,kBAAkB,GAClB,YAAY,GACZ,iBAAiB,GACjB,OAAO,GACP,QAAQ,GACR,eAAe,GACf,aAAa,GACb,gBAAgB,CAAC;AAErB,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,YAAY,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB;AAuDD,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,EAAE,MAAM,EACf,OAAO,SAA2B,QAqBnC;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,QAazD;AAED,wBAAgB,qBAAqB,IAAI,kBAAkB,EAAE,CAyB5D;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,QAGxD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,QAUnD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,QAS9C;AAyBD;;GAEG;AACH,wBAAgB,eAAe,IAAI,KAAK,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAS9F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAC1B,eAAe,SAAO,EACtB,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EACtB,kBAAkB,CAAC,EAAE,MAAM,EAC3B,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EAC5B,QAAQ,CAAC,EAAE,MAAM,EACjB,cAAc,CAAC,EAAE,MAAM,GACtB,WAAW,CASb;AAED,wBAAgB,oBAAoB,CAClC,eAAe,SAAO,EACtB,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EACtB,kBAAkB,CAAC,EAAE,MAAM,EAC3B,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EAC5B,QAAQ,CAAC,EAAE,MAAM,EACjB,cAAc,CAAC,EAAE,MAAM,GACtB,WAAW,CAoIb;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,eAAe,EAC3B,eAAe,SAAO,EACtB,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EACtB,cAAc,CAAC,EAAE,MAAM,EACvB,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EAC5B,cAAc,CAAC,EAAE,MAAM,GACtB,WAAW,CA6Eb"} \ No newline at end of file +{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/services/router.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AA8BzD,MAAM,MAAM,oBAAoB,GAC5B,YAAY,GACZ,YAAY,GACZ,mBAAmB,GACnB,SAAS,GACT,UAAU,GACV,MAAM,GACN,OAAO,CAAC;AAEZ,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,aAAa,CAAC;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC/C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,MAAM,eAAe,GACvB,MAAM,GACN,YAAY,GACZ,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,kBAAkB,GAClB,YAAY,GACZ,iBAAiB,GACjB,OAAO,GACP,QAAQ,GACR,eAAe,GACf,aAAa,GACb,gBAAgB,CAAC;AAErB,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,YAAY,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB;AAuDD,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,EAAE,MAAM,EACf,OAAO,SAA2B,QAqBnC;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,QAazD;AAED,wBAAgB,qBAAqB,IAAI,kBAAkB,EAAE,CAyB5D;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,QAGxD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,QAUnD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,QAS9C;AAyBD;;GAEG;AACH,wBAAgB,eAAe,IAAI,KAAK,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAS9F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAC1B,eAAe,SAAO,EACtB,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EACtB,kBAAkB,CAAC,EAAE,MAAM,EAC3B,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EAC5B,QAAQ,CAAC,EAAE,MAAM,EACjB,cAAc,CAAC,EAAE,MAAM,GACtB,WAAW,CASb;AAED,wBAAgB,oBAAoB,CAClC,eAAe,SAAO,EACtB,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EACtB,kBAAkB,CAAC,EAAE,MAAM,EAC3B,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EAC5B,QAAQ,CAAC,EAAE,MAAM,EACjB,cAAc,CAAC,EAAE,MAAM,GACtB,WAAW,CAqIb;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,eAAe,EAC3B,eAAe,SAAO,EACtB,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EACtB,cAAc,CAAC,EAAE,MAAM,EACvB,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EAC5B,cAAc,CAAC,EAAE,MAAM,GACtB,WAAW,CA8Eb"} \ No newline at end of file diff --git a/server/dist/services/router.js b/server/dist/services/router.js index bc5e748..1de969c 100644 --- a/server/dist/services/router.js +++ b/server/dist/services/router.js @@ -258,6 +258,8 @@ export function routeRequestInternal(estimatedTokens = 1000, skipKeys, preferred const model = db.prepare('SELECT * FROM models WHERE id = ? AND enabled = 1').get(entry.model_db_id); if (!model) continue; + if (model.context_window && estimatedTokens > model.context_window) + continue; // Check if we have a provider for this platform const provider = getProvider(model.platform); if (!provider) @@ -343,6 +345,8 @@ export function routeCapabilityRequest(capability, estimatedTokens = 1000, skipK const model = db.prepare('SELECT * FROM models WHERE id = ? AND enabled = 1').get(entry.model_db_id); if (!model) continue; + if (model.context_window && estimatedTokens > model.context_window) + continue; const provider = getProvider(model.platform); if (!provider) continue; diff --git a/server/dist/services/router.js.map b/server/dist/services/router.js.map index 1e7d450..92ca065 100644 --- a/server/dist/services/router.js.map +++ b/server/dist/services/router.js.map @@ -1 +1 @@ -{"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/services/router.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/services/router.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/server/src/__tests__/db/nvidia-eol-v21.test.ts b/server/src/__tests__/db/nvidia-eol-v21.test.ts new file mode 100644 index 0000000..71e7ecd --- /dev/null +++ b/server/src/__tests__/db/nvidia-eol-v21.test.ts @@ -0,0 +1,80 @@ +import { describe, it, expect, beforeAll } from 'vitest'; +import { initDb, getDb } from '../../db/index.js'; + +// Live-probed 2026-08-23 against integrate.api.nvidia.com. NVIDIA resolves the +// model name before auth, so an unauthenticated POST to /v1/chat/completions +// separates the cases cleanly: 401/403 = route exists, 404 = never existed, +// 410 = retired. These four answered 410 and are gone from GET /v1/models. +const RETIRED_NVIDIA_MODELS = [ + 'meta/llama-4-maverick-17b-128e-instruct', + 'deepseek-ai/deepseek-v4-pro', + 'mistralai/mistral-large-3-675b-instruct-2512', + 'minimaxai/minimax-m2.7', +]; + +// Probed the same day: still answer 401 (route alive, auth required). +const LIVE_NVIDIA_MODELS = [ + 'meta/llama-3.1-70b-instruct', + 'meta/llama-3.3-70b-instruct', + 'nvidia/nemotron-3-super-120b-a12b', + 'nvidia/nemotron-3-nano-30b-a3b', + 'google/gemma-4-31b-it', + 'moonshotai/kimi-k2.6', +]; + +// Replacements added by V21 — each probe-confirmed 401 on the same run. +const ADDED_NVIDIA_MODELS = [ + 'deepseek-ai/deepseek-v4-flash-0731', + 'minimaxai/minimax-m3', + 'mistralai/mistral-nemotron', + 'meta/muse-glimmer-30b', + 'nvidia/nemotron-3-ultra-550b-a55b', + 'moonshotai/kimi-k3', + 'nvidia/nemotron-3.5-lightning-30b-a3b', + 'openai/gpt-oss-120b', +]; + +describe('V21 NVIDIA NIM end-of-life retirement', () => { + beforeAll(() => { + process.env.ENCRYPTION_KEY = '0'.repeat(64); + initDb(':memory:'); + }); + + it('disables the NVIDIA rows the upstream end-of-lifed (410 Gone)', () => { + const db = getDb(); + for (const modelId of RETIRED_NVIDIA_MODELS) { + const row = db + .prepare("SELECT enabled FROM models WHERE platform = 'nvidia' AND model_id = ?") + .get(modelId) as { enabled: number } | undefined; + expect(row, `${modelId} should exist in the catalog`).toBeDefined(); + expect(row!.enabled, `${modelId} must be disabled — upstream returns 410`).toBe(0); + } + }); + + it('keeps the still-hosted NVIDIA models enabled', () => { + const db = getDb(); + for (const modelId of LIVE_NVIDIA_MODELS) { + const row = db + .prepare("SELECT enabled FROM models WHERE platform = 'nvidia' AND model_id = ?") + .get(modelId) as { enabled: number } | undefined; + expect(row, `${modelId} should exist in the catalog`).toBeDefined(); + expect(row!.enabled, `${modelId} should stay enabled`).toBe(1); + } + }); + + it('adds the current NVIDIA-hosted replacements as routable rows', () => { + const db = getDb(); + for (const modelId of ADDED_NVIDIA_MODELS) { + const row = db + .prepare("SELECT id, enabled FROM models WHERE platform = 'nvidia' AND model_id = ?") + .get(modelId) as { id: number; enabled: number } | undefined; + expect(row, `${modelId} should have been added by V21`).toBeDefined(); + expect(row!.enabled, `${modelId} should be enabled`).toBe(1); + + const fb = db + .prepare('SELECT id FROM fallback_config WHERE model_db_id = ?') + .get(row!.id) as { id: number } | undefined; + expect(fb, `${modelId} needs a fallback_config row to be routable`).toBeDefined(); + } + }); +}); diff --git a/server/src/__tests__/providers/openai-compat.test.ts b/server/src/__tests__/providers/openai-compat.test.ts index 5e2b72c..9fbd519 100644 --- a/server/src/__tests__/providers/openai-compat.test.ts +++ b/server/src/__tests__/providers/openai-compat.test.ts @@ -546,3 +546,66 @@ describe('OpenAICompatProvider - platform instances', () => { }); } }); + +describe('provider error body extraction', () => { + function mockErrorResponse(status: number, statusText: string, body: unknown) { + vi.spyOn(global, 'fetch').mockImplementation(async () => ({ + ok: false, + status, + statusText, + json: () => Promise.resolve(body), + } as any)); + } + + const nvidia = () => new OpenAICompatProvider({ + platform: 'nvidia', + name: 'NVIDIA NIM', + baseUrl: 'https://integrate.api.nvidia.com/v1', + }); + + const call = (p: OpenAICompatProvider) => + p.chatCompletion('key', [{ role: 'user', content: 'hi' }], 'model'); + + // NVIDIA NIM answers RFC 7807 problem+json with no `error` envelope. Reading + // only `error.message` fell through to statusText, turning a fully explained + // retirement into "NVIDIA NIM API error 410: Gone". + it('surfaces the RFC 7807 detail field NVIDIA returns', async () => { + mockErrorResponse(410, 'Gone', { + type: 'about:blank', + title: 'Gone', + status: 410, + detail: "The model 'minimaxai/minimax-m2.7' has reached its end of life on 2026-07-27T00:00:00Z and is no longer available.", + }); + + await expect(call(nvidia())).rejects.toThrow(/reached its end of life on 2026-07-27/); + }); + + it('keeps the status code prefix alongside the problem+json detail', async () => { + mockErrorResponse(403, 'Forbidden', { + status: 403, title: 'Forbidden', detail: 'Authorization failed', + }); + + await expect(call(nvidia())).rejects.toThrow('NVIDIA NIM API error 403: Forbidden: Authorization failed'); + }); + + it('still prefers the OpenAI error.message shape when present', async () => { + mockErrorResponse(429, 'Too Many Requests', { + error: { message: 'Rate limit reached for model', type: 'rate_limit_error' }, + }); + + await expect(call(nvidia())).rejects.toThrow('NVIDIA NIM API error 429: Rate limit reached for model'); + }); + + it('falls back to title, then statusText, when no detail is given', async () => { + mockErrorResponse(404, 'Not Found', { status: 404, title: 'Not Found' }); + await expect(call(nvidia())).rejects.toThrow('NVIDIA NIM API error 404: Not Found'); + + mockErrorResponse(502, 'Bad Gateway', {}); + await expect(call(nvidia())).rejects.toThrow('NVIDIA NIM API error 502: Bad Gateway'); + }); + + it('reads a bare message field from aggregators that skip the envelope', async () => { + mockErrorResponse(400, 'Bad Request', { message: 'model is required' }); + await expect(call(nvidia())).rejects.toThrow('NVIDIA NIM API error 400: model is required'); + }); +}); diff --git a/server/src/__tests__/routes/proxy-tools.test.ts b/server/src/__tests__/routes/proxy-tools.test.ts index 7bfdcc1..dcb96e6 100644 --- a/server/src/__tests__/routes/proxy-tools.test.ts +++ b/server/src/__tests__/routes/proxy-tools.test.ts @@ -173,4 +173,68 @@ describe('Proxy tool-calling support', () => { expect(providerBody.messages[2].tool_call_id).toBe('call_weather_1'); expect(body.choices[0].message.content).toContain('30C'); }); + + it('includes tool schemas when choosing a model context window', async () => { + const db = getDb(); + db.prepare('UPDATE fallback_config SET enabled = 0').run(); + const insertModel = db.prepare(` + INSERT INTO models ( + platform, model_id, display_name, intelligence_rank, + speed_rank, size_label, context_window, enabled + ) VALUES (?, ?, ?, ?, ?, ?, ?, 1) + `); + const small = insertModel.run( + 'groq', 'test-tool-small', 'Test Tool Small', 1, 1, 'Small', 32768, + ); + const large = insertModel.run( + 'groq', 'test-tool-large', 'Test Tool Large', 2, 1, 'Large', 131072, + ); + const addFallback = db.prepare( + 'INSERT INTO fallback_config (model_db_id, priority, enabled) VALUES (?, ?, 1)', + ); + addFallback.run(Number(small.lastInsertRowid), 1); + addFallback.run(Number(large.lastInsertRowid), 2); + + const origFetch = global.fetch; + let providerBody: any = null; + vi.spyOn(global, 'fetch').mockImplementation(async (url, init) => { + const urlStr = typeof url === 'string' ? url : url.toString(); + if (urlStr.includes('api.groq.com/openai/v1/chat/completions')) { + providerBody = JSON.parse((init as any).body); + return { + ok: true, + json: () => Promise.resolve({ + id: 'chatcmpl-context-route', + object: 'chat.completion', + created: 123, + model: providerBody.model, + choices: [{ + index: 0, + message: { role: 'assistant', content: 'ok' }, + finish_reason: 'stop', + }], + usage: { prompt_tokens: 50_000, completion_tokens: 1, total_tokens: 50_001 }, + }), + } as any; + } + return origFetch(url, init); + }); + + const { status } = await request(app, 'POST', '/v1/chat/completions', { + model: 'auto', + messages: [{ role: 'user', content: 'Reply ok.' }], + tools: [{ + type: 'function', + function: { + name: 'large_schema_tool', + description: 'x'.repeat(200_000), + parameters: { type: 'object', properties: {} }, + }, + }], + max_tokens: 1_000, + }); + + expect(status).toBe(200); + expect(providerBody.model).toBe('test-tool-large'); + }); }); diff --git a/server/src/__tests__/services/router.test.ts b/server/src/__tests__/services/router.test.ts index e03a109..3efb16d 100644 --- a/server/src/__tests__/services/router.test.ts +++ b/server/src/__tests__/services/router.test.ts @@ -139,4 +139,44 @@ describe('Router', () => { expect(() => routeCapabilityRequest('embeddings')).toThrow(/embeddings|exhausted/i); }); + + it('should skip chat models whose context window is smaller than the request', () => { + const db = getDb(); + const key = encrypt('test-groq-key'); + db.prepare(` + INSERT INTO api_keys (platform, label, encrypted_key, iv, auth_tag, status, enabled) + VALUES (?, ?, ?, ?, ?, ?, ?) + `).run('groq', 'context-test', key.encrypted, key.iv, key.authTag, 'healthy', 1); + + db.prepare('UPDATE fallback_config SET enabled = 0').run(); + const insertModel = db.prepare(` + INSERT INTO models ( + platform, model_id, display_name, intelligence_rank, + speed_rank, size_label, context_window, enabled + ) VALUES (?, ?, ?, ?, ?, ?, ?, 1) + `); + const small = insertModel.run( + 'groq', 'test-small-context', 'Test Small Context', 1, 1, 'Small', 32768, + ); + const large = insertModel.run( + 'groq', 'test-large-context', 'Test Large Context', 2, 1, 'Large', 131072, + ); + const addFallback = db.prepare( + 'INSERT INTO fallback_config (model_db_id, priority, enabled) VALUES (?, ?, 1)', + ); + addFallback.run(Number(small.lastInsertRowid), 1); + addFallback.run(Number(large.lastInsertRowid), 2); + + expect(routeRequest(81_000).modelId).toBe('test-large-context'); + }); + + it('should use SambaNova DeepSeek V3.2 provider-enforced context window', () => { + const row = getDb().prepare(` + SELECT context_window + FROM models + WHERE platform = 'sambanova' AND model_id = 'DeepSeek-V3.2' + `).get() as { context_window: number }; + + expect(row.context_window).toBe(32768); + }); }); diff --git a/server/src/db/index.ts b/server/src/db/index.ts index b759d8e..6955d79 100644 --- a/server/src/db/index.ts +++ b/server/src/db/index.ts @@ -54,6 +54,8 @@ export async function initDb(dbPath?: string): Promise { migrateModelsV17(db); migrateModelsV18(db); migrateModelsV19(db); + migrateModelsV20(db); + migrateModelsV21(db); seedModelCapabilities(db); // Must follow seedModelCapabilities — that is where the image rows are seeded. flagPaidGoogleModels(db); @@ -513,7 +515,7 @@ function migrateModelsV4(db: Database.Database) { // SambaNova — 20 RPM / 20 RPD / 200K TPD shared free Developer tier ['sambanova', 'DeepSeek-V3.1', 'DeepSeek V3.1', 5, 9, 'Frontier', 20, 20, null, 200000, '~3M', 131072], - ['sambanova', 'DeepSeek-V3.2', 'DeepSeek V3.2', 4, 9, 'Frontier', 20, 20, null, 200000, '~3M', 131072], + ['sambanova', 'DeepSeek-V3.2', 'DeepSeek V3.2', 4, 9, 'Frontier', 20, 20, null, 200000, '~3M', 32768], ['sambanova', 'Llama-4-Maverick-17B-128E-Instruct', 'Llama 4 Maverick', 11, 9, 'Large', 20, 20, null, 200000, '~3M', 8192], ['sambanova', 'gpt-oss-120b', 'GPT-OSS 120B (SambaNova)', 6, 9, 'Large', 20, 20, null, 200000, '~3M', 131072], @@ -1713,6 +1715,87 @@ function migrateModelsV19(db: Database.Database) { ).run(); } +/** + * V20 (July 2026): correct SambaNova DeepSeek V3.2's live provider limit. + * The API rejects requests over 32,768 tokens even though the original catalog + * row advertised 131,072. Keeping the smaller verified limit prevents auto + * routing from selecting a model that cannot accept the request. + */ +function migrateModelsV20(db: Database.Database) { + db.prepare( + "UPDATE models SET context_window = 32768 WHERE platform = 'sambanova' AND model_id = 'DeepSeek-V3.2'", + ).run(); +} + +/** + * V21 (August 2026): retire the NVIDIA NIM rows the upstream end-of-lifed and + * add the models that replaced them. + * + * Live-probed 2026-08-23 against integrate.api.nvidia.com. NVIDIA resolves the + * model name before authenticating, so an unauthenticated POST to + * /v1/chat/completions distinguishes the cases exactly: 401/403 = the route + * exists, 404 = never existed, 410 = retired. Four of the ten V11 rows answer + * 410 and are absent from GET /v1/models, e.g.: + * + * "The model 'minimaxai/minimax-m2.7' has reached its end of life on + * 2026-07-27T00:00:00Z and is no longer available." + * + * Disabled rather than deleted, per V18/V19 precedent. The six survivors + * (llama-3.1-70b, llama-3.3-70b, nemotron-3-super-120b, nemotron-3-nano-30b, + * gemma-4-31b, kimi-k2.6) all still answer 401 and stay enabled. + * + * Replacements are the current NVIDIA-hosted equivalents, each probe-confirmed + * 401. Context windows follow the V11 convention of a conservative + * family-consistent estimate — NVIDIA does not publish them on /v1/models. + */ +function migrateModelsV21(db: Database.Database) { + const retired = [ + 'meta/llama-4-maverick-17b-128e-instruct', // no Llama 4 remains on NIM + 'deepseek-ai/deepseek-v4-pro', + 'mistralai/mistral-large-3-675b-instruct-2512', + 'minimaxai/minimax-m2.7', // EOL 2026-07-27 + ]; + + const insert = db.prepare(` + INSERT OR IGNORE INTO models (platform, model_id, display_name, intelligence_rank, speed_rank, size_label, rpm_limit, rpd_limit, tpm_limit, tpd_limit, monthly_token_budget, context_window) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `); + const additions: Array<[string, string, string, number, number, string, number | null, number | null, number | null, number | null, string, number | null]> = [ + // Direct successors to the four retired rows. + ['nvidia', 'deepseek-ai/deepseek-v4-flash-0731', 'DeepSeek V4 Flash (NV)', 3, 9, 'Frontier', 40, null, null, null, '~2M (credits)', 131072], + ['nvidia', 'minimaxai/minimax-m3', 'MiniMax M3 (NV)', 3, 9, 'Frontier', 40, null, null, null, '~2M (credits)', 196608], + ['nvidia', 'mistralai/mistral-nemotron', 'Mistral Nemotron (NV)', 8, 8, 'Large', 40, null, null, null, '~3M (credits)', 131072], + ['nvidia', 'meta/muse-glimmer-30b', 'Muse Glimmer 30B (NV)', 11, 8, 'Large', 40, null, null, null, '~3M (credits)', 131072], + // New frontier/fast tiers NVIDIA added since V11. + ['nvidia', 'nvidia/nemotron-3-ultra-550b-a55b', 'Nemotron 3 Ultra 550B (NV)', 2, 9, 'Frontier', 40, null, null, null, '~2M (credits)', 262144], + ['nvidia', 'moonshotai/kimi-k3', 'Kimi K3 (NV)', 3, 9, 'Frontier', 40, null, null, null, '~2M (credits)', 131072], + ['nvidia', 'nvidia/nemotron-3.5-lightning-30b-a3b', 'Nemotron 3.5 Lightning 30B (NV)', 20, 6, 'Medium', 40, null, null, null, '~3M (credits)', 262144], + ['nvidia', 'openai/gpt-oss-120b', 'GPT-OSS 120B (NV)', 6, 8, 'Large', 40, null, null, null, '~3M (credits)', 131072], + ]; + + const disable = db.prepare( + "UPDATE models SET enabled = 0 WHERE platform = 'nvidia' AND model_id = ?", + ); + + const apply = db.transaction(() => { + for (const modelId of retired) disable.run(modelId); + for (const a of additions) insert.run(...a); + + // Same backfill V11 uses: every catalog row needs a fallback_config entry + // or the router cannot reach it. + const missing = db.prepare(` + SELECT m.id FROM models m + LEFT JOIN fallback_config f ON m.id = f.model_db_id + WHERE f.id IS NULL ORDER BY m.intelligence_rank ASC + `).all() as { id: number }[]; + if (missing.length > 0) { + const maxPriority = (db.prepare('SELECT COALESCE(MAX(priority), 0) AS mx FROM fallback_config').get() as { mx: number }).mx; + const addFb = db.prepare('INSERT INTO fallback_config (model_db_id, priority, enabled) VALUES (?, ?, 1)'); + for (let i = 0; i < missing.length; i++) addFb.run(missing[i].id, maxPriority + i + 1); + } + }); + apply();} + /** * Mark Google models that have no free tier (verified 2026-07-22 against * ai.google.dev pricing — image generation reads "Not available" in the Free diff --git a/server/src/providers/index.ts b/server/src/providers/index.ts index 49b347b..21cb3e3 100644 --- a/server/src/providers/index.ts +++ b/server/src/providers/index.ts @@ -35,11 +35,18 @@ register(new OpenAICompatProvider({ baseUrl: 'https://api.sambanova.ai/v1', })); -// NVIDIA NIM - OpenAI-compatible +// NVIDIA NIM - OpenAI-compatible. The catalog is almost entirely large models +// (70B Llamas, 120B/550B Nemotrons, DeepSeek/Kimi/MiniMax frontier tiers) and +// the shared free-credit pool is not latency-guaranteed, so first token +// regularly lands past the 15s default — meta/llama-3.1-70b-instruct was +// failing with "This operation was aborted". Worse, classifyProviderError maps +// an abort to a 120s key cooldown, so one slow request benched the whole +// provider. Bumped to the 60s used by the other slow cloud providers. register(new OpenAICompatProvider({ platform: 'nvidia', name: 'NVIDIA NIM', baseUrl: 'https://integrate.api.nvidia.com/v1', + timeoutMs: 60000, })); // Mistral - OpenAI-compatible diff --git a/server/src/providers/openai-compat.ts b/server/src/providers/openai-compat.ts index b97f79e..d09291a 100644 --- a/server/src/providers/openai-compat.ts +++ b/server/src/providers/openai-compat.ts @@ -80,7 +80,7 @@ export class OpenAICompatProvider extends BaseProvider { if (!res.ok) { const err = await res.json().catch(() => ({})); - throw new Error(`${this.name} API error ${res.status}: ${(err as any).error?.message ?? res.statusText}`); + throw new Error(`${this.name} API error ${res.status}: ${readProviderErrorText(err, res.statusText)}`); } const data = await res.json() as ChatCompletionResponse; @@ -118,7 +118,7 @@ export class OpenAICompatProvider extends BaseProvider { if (!res.ok) { const err = await res.json().catch(() => ({})); - throw new Error(`${this.name} API error ${res.status}: ${(err as any).error?.message ?? res.statusText}`); + throw new Error(`${this.name} API error ${res.status}: ${readProviderErrorText(err, res.statusText)}`); } const reader = res.body?.getReader(); @@ -178,7 +178,7 @@ export class OpenAICompatProvider extends BaseProvider { if (!res.ok) { const err = await res.json().catch(() => ({})); - throw new Error(`${this.name} API error ${res.status}: ${(err as any).error?.message ?? res.statusText}`); + throw new Error(`${this.name} API error ${res.status}: ${readProviderErrorText(err, res.statusText)}`); } const data = await res.json() as EmbeddingResponse; @@ -295,7 +295,7 @@ export class OpenAICompatProvider extends BaseProvider { if (!res.ok) { const err = await res.json().catch(() => ({})); - throw new Error(`${this.name} API error ${res.status}: ${(err as any).error?.message ?? res.statusText}`); + throw new Error(`${this.name} API error ${res.status}: ${readProviderErrorText(err, res.statusText)}`); } const contentType = res.headers.get('content-type') ?? `audio/${request.response_format ?? 'wav'}`; @@ -347,7 +347,7 @@ export class OpenAICompatProvider extends BaseProvider { if (!res.ok) { const err = await res.json().catch(() => ({})); - throw new Error(`${this.name} API error ${res.status}: ${(err as any).error?.message ?? res.statusText}`); + throw new Error(`${this.name} API error ${res.status}: ${readProviderErrorText(err, res.statusText)}`); } const contentType = res.headers.get('content-type') ?? 'application/json'; @@ -392,7 +392,7 @@ export class OpenAICompatProvider extends BaseProvider { if (!res.ok) { const err = await res.json().catch(() => ({})); - throw new Error(`${this.name} API error ${res.status}: ${(err as any).error?.message ?? res.statusText}`); + throw new Error(`${this.name} API error ${res.status}: ${readProviderErrorText(err, res.statusText)}`); } const data = await res.json() as OpenRouterImageResponse; @@ -431,6 +431,42 @@ interface OpenRouterImageResponse { error?: { message?: string }; } +/** + * Extract the most useful human-readable text from a failed response body. + * + * Most OpenAI-compatible providers answer `{ error: { message } }`, but NVIDIA + * NIM returns RFC 7807 problem+json — `{ type, title, status, detail }` — with + * no `error` key at all. Reading only `error.message` therefore fell through to + * `res.statusText`, so a retirement that upstream explains in full ("The model + * 'minimaxai/minimax-m2.7' has reached its end of life on 2026-07-27...") + * surfaced in the dashboard as the useless "NVIDIA NIM API error 410: Gone". + * + * Checked in order of specificity; `detail`/`title` cover problem+json, bare + * `message`/`detail` cover the aggregators that skip the `error` envelope. + */ +function readProviderErrorText(body: unknown, statusText: string): string { + if (!body || typeof body !== 'object') return statusText; + const b = body as Record; + + const error = b.error; + if (typeof error === 'string' && error.trim()) return error; + if (error && typeof error === 'object') { + const message = (error as Record).message; + if (typeof message === 'string' && message.trim()) return message; + } + + // RFC 7807: prefer `detail` (the explanation), fall back to `title` (the + // status phrase). Both present → "Gone: The model ... end of life ...". + const detail = typeof b.detail === 'string' && b.detail.trim() ? b.detail : undefined; + const title = typeof b.title === 'string' && b.title.trim() ? b.title : undefined; + if (detail) return title && title !== detail ? `${title}: ${detail}` : detail; + + const message = typeof b.message === 'string' && b.message.trim() ? b.message : undefined; + if (message) return message; + + return title ?? statusText; +} + function throwIfOpenAIErrorBody(providerName: string, data: unknown): void { if (!data || typeof data !== 'object' || !('error' in data)) return; diff --git a/server/src/routes/proxy.ts b/server/src/routes/proxy.ts index 9fb490c..6d32e55 100644 --- a/server/src/routes/proxy.ts +++ b/server/src/routes/proxy.ts @@ -109,6 +109,16 @@ function estimateChatContentTokens(content: ChatMessage['content']): number { }, 0); } +function estimateStructuredTokens(value: unknown): number { + if (value == null) return 0; + try { + // JSON-heavy tool schemas tokenize more densely than natural language. + return Math.ceil(JSON.stringify(value).length / 3); + } catch { + return 0; + } +} + function getStickyModel(messages: ChatMessage[]): number | undefined { // Only apply sticky for multi-turn (has assistant messages = continuation) const hasAssistant = messages.some(m => m.role === 'assistant'); @@ -1138,7 +1148,12 @@ proxyRouter.post('/chat/completions', async (req: Request, res: Response) => { // Non-streaming requests reconcile against the provider's real `usage` block // (see line ~340). Streaming will drift from real consumption — accepted // tradeoff because per-request usage isn't always returned mid-stream. - const estimatedInputTokens = messages.reduce((sum, m) => sum + estimateChatContentTokens(m.content), 0); + const estimatedInputTokens = messages.reduce( + (sum, m) => sum + + estimateChatContentTokens(m.content) + + estimateStructuredTokens(m.role === 'assistant' ? m.tool_calls : undefined), + 0, + ) + estimateStructuredTokens(tools); const estimatedTotal = estimatedInputTokens + (max_tokens ?? 1000); const needsVision = requiresVision(messages); const needsVideo = requiresVideo(messages); diff --git a/server/src/services/router.ts b/server/src/services/router.ts index df74d29..546593b 100644 --- a/server/src/services/router.ts +++ b/server/src/services/router.ts @@ -14,6 +14,7 @@ interface ModelRow { rpd_limit: number | null; tpm_limit: number | null; tpd_limit: number | null; + context_window: number | null; } interface KeyRow { @@ -375,6 +376,7 @@ export function routeRequestInternal( // Get model details const model = db.prepare('SELECT * FROM models WHERE id = ? AND enabled = 1').get(entry.model_db_id) as ModelRow | undefined; if (!model) continue; + if (model.context_window && estimatedTokens > model.context_window) continue; // Check if we have a provider for this platform const provider = getProvider(model.platform as any); @@ -477,6 +479,7 @@ export function routeCapabilityRequest( const model = db.prepare('SELECT * FROM models WHERE id = ? AND enabled = 1').get(entry.model_db_id) as ModelRow | undefined; if (!model) continue; + if (model.context_window && estimatedTokens > model.context_window) continue; const provider = getProvider(model.platform as any); if (!provider) continue;