diff --git a/src/renderer/src/aiCore/utils/reasoning.ts b/src/renderer/src/aiCore/utils/reasoning.ts index 2c98d86578..6e57074980 100644 --- a/src/renderer/src/aiCore/utils/reasoning.ts +++ b/src/renderer/src/aiCore/utils/reasoning.ts @@ -66,7 +66,8 @@ export function getReasoningEffort(assistant: Assistant, model: Model): Reasonin isGrokReasoningModel(model) || isOpenAIReasoningModel(model) || isQwenAlwaysThinkModel(model) || - model.id.includes('seed-oss') + model.id.includes('seed-oss') || + model.id.includes('minimax-m2') ) { return {} } @@ -199,7 +200,7 @@ export function getReasoningEffort(assistant: Assistant, model: Model): Reasonin } } - // OpenRouter models, use thinking + // OpenRouter models, use reasoning if (model.provider === SystemProviderIds.openrouter) { if (isSupportedReasoningEffortModel(model) || isSupportedThinkingTokenModel(model)) { return { diff --git a/src/renderer/src/config/models/reasoning.ts b/src/renderer/src/config/models/reasoning.ts index 6bb604ac0c..40302c9162 100644 --- a/src/renderer/src/config/models/reasoning.ts +++ b/src/renderer/src/config/models/reasoning.ts @@ -455,6 +455,14 @@ export const isStepReasoningModel = (model?: Model): boolean => { return modelId.includes('step-3') || modelId.includes('step-r1-v-mini') } +export const isMiniMaxReasoningModel = (model?: Model): boolean => { + if (!model) { + return false + } + const modelId = getLowerBaseModelName(model.id, '/') + return (['minimax-m1', 'minimax-m2'] as const).some((id) => modelId.includes(id)) +} + export function isReasoningModel(model?: Model): boolean { if (!model || isEmbeddingModel(model) || isRerankModel(model) || isTextToImageModel(model)) { return false @@ -489,8 +497,8 @@ export function isReasoningModel(model?: Model): boolean { isStepReasoningModel(model) || isDeepSeekHybridInferenceModel(model) || isLingReasoningModel(model) || + isMiniMaxReasoningModel(model) || modelId.includes('magistral') || - modelId.includes('minimax-m1') || modelId.includes('pangu-pro-moe') || modelId.includes('seed-oss') ) { diff --git a/src/renderer/src/config/models/tooluse.ts b/src/renderer/src/config/models/tooluse.ts index e2d2ffc7c6..cd81842514 100644 --- a/src/renderer/src/config/models/tooluse.ts +++ b/src/renderer/src/config/models/tooluse.ts @@ -27,8 +27,9 @@ export const FUNCTION_CALLING_MODELS = [ 'doubao-seed-1[.-]6(?:-[\\w-]+)?', 'kimi-k2(?:-[\\w-]+)?', 'ling-\\w+(?:-[\\w-]+)?', - 'ring-\\w+(?:-[\\w-]+)?' -] + 'ring-\\w+(?:-[\\w-]+)?', + 'minimax-m2' +] as const const FUNCTION_CALLING_EXCLUDED_MODELS = [ 'aqa(?:-[\\w-]+)?',