diff --git a/api/models/tx.js b/api/models/tx.js index 67301d0c49..4171ea58bf 100644 --- a/api/models/tx.js +++ b/api/models/tx.js @@ -122,6 +122,12 @@ const tokenValues = Object.assign( 'grok-2-latest': { prompt: 2.0, completion: 10.0 }, 'grok-2': { prompt: 2.0, completion: 10.0 }, 'grok-beta': { prompt: 5.0, completion: 15.0 }, + 'mistral-large': { prompt: 2.0, completion: 6.0 }, + 'pixtral-large': { prompt: 2.0, completion: 6.0 }, + 'mistral-saba': { prompt: 0.2, completion: 0.6 }, + codestral: { prompt: 0.3, completion: 0.9 }, + 'ministral-8b': { prompt: 0.1, completion: 0.1 }, + 'ministral-3b': { prompt: 0.04, completion: 0.04 }, }, bedrockValues, ); diff --git a/api/server/controllers/agents/run.js b/api/server/controllers/agents/run.js index dfc5444c5a..2efde5d061 100644 --- a/api/server/controllers/agents/run.js +++ b/api/server/controllers/agents/run.js @@ -43,6 +43,12 @@ async function createRun({ agent.model_parameters, ); + /** Resolves Mistral type strictness due to new OpenAI usage field */ + if (agent.endpoint?.toLowerCase().includes(KnownEndpoints.mistral)) { + llmConfig.streamUsage = false; + llmConfig.usage = true; + } + /** @type {'reasoning_content' | 'reasoning'} */ let reasoningKey; if ( diff --git a/api/utils/tokens.js b/api/utils/tokens.js index 58aaf7051b..2932a68a17 100644 --- a/api/utils/tokens.js +++ b/api/utils/tokens.js @@ -34,8 +34,14 @@ const mistralModels = { 'mistral-7b': 31990, // -10 from max 'mistral-small': 31990, // -10 from max 'mixtral-8x7b': 31990, // -10 from max + 'mistral-large': 131000, 'mistral-large-2402': 127500, 'mistral-large-2407': 127500, + 'pixtral-large': 131000, + 'mistral-saba': 32000, + codestral: 256000, + 'ministral-8b': 131000, + 'ministral-3b': 131000, }; const cohereModels = {