feat: upgrade MiniMax models from M2.5 to M2.7

Update MiniMax model IDs from MiniMax-M2.5/M2.5-highspeed to the
latest MiniMax-M2.7/M2.7-highspeed across the web UI and CLI wiki tool.

- Update default model in types.ts and settings-service.ts
- Update available models list in getAvailableModels()
- Update UI placeholder text in SettingsPanel.tsx
- Update default wiki model in llm-client.ts and wiki.ts CLI
- Update unit tests to reflect new model IDs
This commit is contained in:
Octopus 2026-04-07 21:08:00 +08:00
parent b73233d232
commit 6aacccf24a
7 changed files with 10 additions and 10 deletions

View file

@ -828,14 +828,14 @@ export const SettingsPanel = ({
onToggleVisibility: () => toggleApiKeyVisibility('minimax'),
}}
model={{
value: settings.minimax?.model ?? 'MiniMax-M2.5',
placeholder: 'e.g., MiniMax-M2.5, MiniMax-M2.5-highspeed',
value: settings.minimax?.model ?? 'MiniMax-M2.7',
placeholder: 'e.g., MiniMax-M2.7, MiniMax-M2.7-highspeed',
onChange: (value) =>
setSettings((prev) => ({
...prev,
minimax: { ...prev.minimax!, model: value },
})),
helperText: 'Available: MiniMax-M2.5 (default), MiniMax-M2.5-highspeed (faster)',
helperText: 'Available: MiniMax-M2.7 (default), MiniMax-M2.7-highspeed (faster)',
}}
/>
)}

View file

@ -394,7 +394,7 @@ export const getAvailableModels = (provider: LLMProvider): string[] => {
case 'ollama':
return ['llama3.2', 'llama3.1', 'mistral', 'codellama', 'deepseek-coder'];
case 'minimax':
return ['MiniMax-M2.5', 'MiniMax-M2.5-highspeed'];
return ['MiniMax-M2.7', 'MiniMax-M2.7-highspeed'];
case 'glm':
return ['GLM-5', 'GLM-5-Turbo', 'GLM-4.7', 'GLM-4.5'];
default:

View file

@ -93,7 +93,7 @@ export interface OpenRouterConfig extends BaseProviderConfig {
export interface MiniMaxConfig extends BaseProviderConfig {
provider: 'minimax';
apiKey: string;
model: string; // e.g., 'MiniMax-M2.5', 'MiniMax-M2.5-highspeed'
model: string; // e.g., 'MiniMax-M2.7', 'MiniMax-M2.7-highspeed'
}
/**
@ -188,7 +188,7 @@ export const DEFAULT_LLM_SETTINGS: LLMSettings = {
},
minimax: {
apiKey: '',
model: 'MiniMax-M2.5',
model: 'MiniMax-M2.7',
temperature: 0.1,
},
glm: {

View file

@ -296,7 +296,7 @@ export const wikiCommand = async (inputPath?: string, options?: WikiCommandOptio
// OpenAI-compatible provider (OpenAI, OpenRouter, Custom)
if (choice === '2') {
baseUrl = 'https://openrouter.ai/api/v1';
defaultModel = 'minimax/minimax-m2.5';
defaultModel = 'minimax/minimax-m2.7';
provider = 'openrouter';
} else if (choice === '4') {
baseUrl = await prompt(' Base URL (e.g. http://localhost:11434/v1): ');

View file

@ -58,7 +58,7 @@ export async function resolveLLMConfig(overrides?: Partial<LLMConfig>): Promise<
process.env.GITNEXUS_MODEL ||
(savedConfig.provider === 'cursor' ? savedConfig.cursorModel : undefined) ||
savedConfig.model ||
'minimax/minimax-m2.5',
'minimax/minimax-m2.7',
maxTokens: overrides?.maxTokens ?? 16_384,
temperature: overrides?.temperature ?? 0,
provider: overrides?.provider ?? savedConfig.provider ?? 'openai',

View file

@ -125,7 +125,7 @@ describe('resolveLLMConfig', () => {
const config = await resolveLLMConfig();
expect(config.provider).toBe('openai');
expect(config.model).toBe('minimax/minimax-m2.5');
expect(config.model).toBe('minimax/minimax-m2.7');
expect(config.baseUrl).toBe('https://openrouter.ai/api/v1');
});

View file

@ -53,7 +53,7 @@ describe('isReasoningModel', () => {
});
it('returns false for minimax', () => {
expect(isReasoningModel('minimax/minimax-m2.5')).toBe(false);
expect(isReasoningModel('minimax/minimax-m2.7')).toBe(false);
});
it('respects explicit override', () => {