feat: upgrade MiniMax default model to M2.7#13593
feat: upgrade MiniMax default model to M2.7#13593GeorgeDong32 merged 3 commits intoCherryHQ:mainfrom
Conversation
- Add MiniMax-M2.7 and MiniMax-M2.7-highspeed to both minimax and minimax-global provider model lists - Set MiniMax-M2.7 as the default model (first in list) - Keep all previous models (M2.5, M2.1, M2) as available alternatives - Update function calling regex to support M2.7 and all M2.x variants - Add M2.7 test cases for reasoning and interleaved thinking detection Signed-off-by: octo-patch <[email protected]>
EurFelux
left a comment
There was a problem hiding this comment.
LGTM overall! Just one minor note about the deprecated function test.
| expect(isInterleavedThinkingModel(createModel({ id: 'minimax-m2.7' }))).toBe(true) | ||
| expect(isInterleavedThinkingModel(createModel({ id: 'minimax-m2.7-highspeed' }))).toBe(true) |
There was a problem hiding this comment.
The function is deprecated. no need to add testcase
Remove test assertions for isInterleavedThinkingModel with minimax-m2.7 models, as the function is deprecated and does not need new test coverage. Signed-off-by: octo-patch <[email protected]>
|
Good catch @EurFelux, removed the test for the deprecated function. Thanks for the review! |
EurFelux
left a comment
There was a problem hiding this comment.
better to add test cases for isFunctionCallingModel
GeorgeDong32
left a comment
There was a problem hiding this comment.
Code Review: PR #13593
Summary
Adding MiniMax M2.7 and M2.7-highspeed model support to the codebase.
Changes Reviewed
- default.ts: Models correctly added to both
minimaxandminimax-globalprovider lists - tooluse.ts: Regex fix is a positive change - correctly handles all M2.x variants and suffixes
- reasoning.test.ts: Tests added for
isMiniMaxReasoningModeldetection
Notes
isInterleavedThinkingModelis deprecated, so no additional tests needed for it- All M2.7 variants are properly detected by existing functions
- Regex fix in
tooluse.tsalso resolves a pre-existing bug
LGTM ✓
| 'ling-\\w+(?:-[\\w-]+)?', | ||
| 'ring-\\w+(?:-[\\w-]+)?', | ||
| 'minimax-m2(?:.1)?', | ||
| 'minimax-m2(?:\\.\\d+)?(?:-[\\w-]+)?', |
There was a problem hiding this comment.
Positive change: Regex bug fix
The regex update from minimax-m2(?:.1)? to minimax-m2(?:\.\d+)?(?:-[\w-]+)? correctly fixes two issues:
- Uses
\.(escaped dot) instead of.to match literal dots only - Supports all M2.x variants (not just M2.1) via
\d+ - Supports suffixes like
-highspeedvia(?:-[\w-]+)?
This also enables MiniMax-M2.7 and MiniMax-M2.7-highspeed to be recognized as function-calling models.
Add test coverage for minimax-m2.7 and minimax-m2.7-highspeed function calling model detection, including variants with capital letters and suffix patterns.
<!-- Template from https://github.com/kubevirt/kubevirt/blob/main/.github/PULL_REQUEST_TEMPLATE.md?--> <!-- Thanks for sending a pull request! Here are some tips for you: 1. Consider creating this PR as draft: https://github.com/CherryHQ/cherry-studio/blob/main/CONTRIBUTING.md --> <!--⚠️ Important: Redux/IndexedDB Data-Changing Feature PRs Temporarily On Hold⚠️ Please note: For our current development cycle, we are not accepting feature Pull Requests that introduce changes to Redux data models or IndexedDB schemas. While we value your contributions, PRs of this nature will be blocked without merge. We welcome all other contributions (bug fixes, perf enhancements, docs, etc.). Thank you! Once version 2.0.0 is released, we will resume reviewing feature PRs. --> ### What this PR does Release Cherry Studio v1.8.2 Before this PR: - Version 1.8.1 is the latest release After this PR: - Version 1.8.2 with bug fixes and model updates <!-- (optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*: --> Fixes # ### Why we need it and why it was done in this way This is a patch release that includes: - Bug fixes for knowledge base, message search, and backup restoration - New model support for Xiaomi MiMo-V2-Pro and MiMo-V2-Omni - MiniMax default model upgrade to M2.7 The following tradeoffs were made: - N/A — this is a scheduled patch release The following alternatives were considered: - N/A — standard release workflow Links to places where the discussion took place: <!-- optional: slack, other GH issue, mailinglist, ... --> ### Breaking changes <!-- optional --> None. This is a patch release with no breaking changes. ### Special notes for your reviewer <!-- optional --> **Release Review Checklist:** - [ ] Review generated release notes in `electron-builder.yml` - [ ] Verify version bump in `package.json` (1.8.1 → 1.8.2) - [ ] CI passes - [ ] Merge to trigger release build **Included Commits:** - 8124236 fix(config): update app upgrade segments and include new gateway version - 62c1eb2 fix: correct parameter order in knowledgeSearchTool call (#13635) - bb3dec9 fix(MessageHeader): crash when clicking topic in message search (#13627) - 24645d3 fix(tests): resolve Windows test failures and upgrade prek (#13619) - 0b08fd9 refactor: remove manual install update logic and related API calls - f517a07 fix(BackupManager): update data destination path for backup restoration - f658484 refactor(ConfigManager): remove legacy config migration logic - c1c1b34 chore: Add CI check scripts to package.json (#13564) - 78decc4 feat(model): add support for MiMo-V2-Pro and MiMo-V2-Omni (#13613) - d081b05 fix: Format provider API hosts in API server (#13198) - e4112ba feat: upgrade MiniMax default model to M2.7 (#13593) ### Checklist This checklist is not enforcing, but it's a reminder of items that could be relevant to every PR. Approvers are expected to review this list. - [x] PR: The PR description is expressive enough and will help future contributors - [ ] Code: [Write code that humans can understand](https://en.wikiquote.org/wiki/Martin_Fowler#code-for-humans) and [Keep it simple](https://en.wikipedia.org/wiki/KISS_principle) - [ ] Refactor: You have [left the code cleaner than you found it (Boy Scout Rule)](https://learning.oreilly.com/library/view/97-things-every/9780596809515/ch08.html) - [ ] Upgrade: Impact of this change on upgrade flows was considered and addressed if required - [ ] Documentation: A [user-guide update](https://docs.cherry-ai.com) was considered and is present (link) or not required. Check this only when the PR introduces or changes a user-facing feature or behavior. - [ ] Self-review: I have reviewed my own code (e.g., via [`/gh-pr-review`](/.claude/skills/gh-pr-review/SKILL.md), `gh pr diff`, or GitHub UI) before requesting review from others ### Release note <!-- Write your release note: 1. Enter your extended release note in the below block. If the PR requires additional action from users switching to the new release, include the string "action required". 2. If no release note is required, just write "NONE". 3. Only include user-facing changes (new features, bug fixes visible to users, UI changes, behavior changes). For CI, maintenance, internal refactoring, build tooling, or other non-user-facing work, write "NONE". --> ```release-note Cherry Studio 1.8.2 - Bug Fixes and Model Updates 🐛 Bug Fixes - [Knowledge Base] Fix knowledge base content not being delivered to the model when selected in conversation - [Search] Fix crash when clicking topic title in message search results - [Backup] Fix backup restoration path issue ✨ New Features - [Models] Add support for Xiaomi MiMo-V2-Pro and MiMo-V2-Omni models with reasoning control and tool use capabilities 💄 Improvements - [Models] Upgrade MiniMax default model to M2.7 with enhanced reasoning and coding capabilities ``` Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
<!-- Template from https://github.com/kubevirt/kubevirt/blob/main/.github/PULL_REQUEST_TEMPLATE.md?--> <!-- Thanks for sending a pull request! Here are some tips for you: 1. Consider creating this PR as draft: https://github.com/CherryHQ/cherry-studio/blob/main/CONTRIBUTING.md --> <!--⚠️ Important: Redux/IndexedDB Data-Changing Feature PRs Temporarily On Hold⚠️ Please note: For our current development cycle, we are not accepting feature Pull Requests that introduce changes to Redux data models or IndexedDB schemas. While we value your contributions, PRs of this nature will be blocked without merge. We welcome all other contributions (bug fixes, perf enhancements, docs, etc.). Thank you! Once version 2.0.0 is released, we will resume reviewing feature PRs. --> ### What this PR does Release Cherry Studio v1.8.2 Before this PR: - Version 1.8.1 is the latest release After this PR: - Version 1.8.2 with bug fixes and model updates <!-- (optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*: --> Fixes # ### Why we need it and why it was done in this way This is a patch release that includes: - Bug fixes for knowledge base, message search, and backup restoration - New model support for Xiaomi MiMo-V2-Pro and MiMo-V2-Omni - MiniMax default model upgrade to M2.7 The following tradeoffs were made: - N/A — this is a scheduled patch release The following alternatives were considered: - N/A — standard release workflow Links to places where the discussion took place: <!-- optional: slack, other GH issue, mailinglist, ... --> ### Breaking changes <!-- optional --> None. This is a patch release with no breaking changes. ### Special notes for your reviewer <!-- optional --> **Release Review Checklist:** - [ ] Review generated release notes in `electron-builder.yml` - [ ] Verify version bump in `package.json` (1.8.1 → 1.8.2) - [ ] CI passes - [ ] Merge to trigger release build **Included Commits:** - 8124236 fix(config): update app upgrade segments and include new gateway version - 62c1eb2 fix: correct parameter order in knowledgeSearchTool call (#13635) - bb3dec9 fix(MessageHeader): crash when clicking topic in message search (#13627) - 24645d3 fix(tests): resolve Windows test failures and upgrade prek (#13619) - 0b08fd9 refactor: remove manual install update logic and related API calls - f517a07 fix(BackupManager): update data destination path for backup restoration - f658484 refactor(ConfigManager): remove legacy config migration logic - c1c1b34 chore: Add CI check scripts to package.json (#13564) - 78decc4 feat(model): add support for MiMo-V2-Pro and MiMo-V2-Omni (#13613) - d081b05 fix: Format provider API hosts in API server (#13198) - e4112ba feat: upgrade MiniMax default model to M2.7 (#13593) ### Checklist This checklist is not enforcing, but it's a reminder of items that could be relevant to every PR. Approvers are expected to review this list. - [x] PR: The PR description is expressive enough and will help future contributors - [ ] Code: [Write code that humans can understand](https://en.wikiquote.org/wiki/Martin_Fowler#code-for-humans) and [Keep it simple](https://en.wikipedia.org/wiki/KISS_principle) - [ ] Refactor: You have [left the code cleaner than you found it (Boy Scout Rule)](https://learning.oreilly.com/library/view/97-things-every/9780596809515/ch08.html) - [ ] Upgrade: Impact of this change on upgrade flows was considered and addressed if required - [ ] Documentation: A [user-guide update](https://docs.cherry-ai.com) was considered and is present (link) or not required. Check this only when the PR introduces or changes a user-facing feature or behavior. - [ ] Self-review: I have reviewed my own code (e.g., via [`/gh-pr-review`](/.claude/skills/gh-pr-review/SKILL.md), `gh pr diff`, or GitHub UI) before requesting review from others ### Release note <!-- Write your release note: 1. Enter your extended release note in the below block. If the PR requires additional action from users switching to the new release, include the string "action required". 2. If no release note is required, just write "NONE". 3. Only include user-facing changes (new features, bug fixes visible to users, UI changes, behavior changes). For CI, maintenance, internal refactoring, build tooling, or other non-user-facing work, write "NONE". --> ```release-note Cherry Studio 1.8.2 - Bug Fixes and Model Updates 🐛 Bug Fixes - [Knowledge Base] Fix knowledge base content not being delivered to the model when selected in conversation - [Search] Fix crash when clicking topic title in message search results - [Backup] Fix backup restoration path issue ✨ New Features - [Models] Add support for Xiaomi MiMo-V2-Pro and MiMo-V2-Omni models with reasoning control and tool use capabilities 💄 Improvements - [Models] Upgrade MiniMax default model to M2.7 with enhanced reasoning and coding capabilities ``` Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>


Summary
Why
MiniMax-M2.7 is the latest flagship model with enhanced reasoning and coding capabilities.
Changes
src/renderer/src/config/models/default.ts: Add M2.7 and M2.7-highspeed entries at the top of bothminimaxandminimax-globalmodel arrayssrc/renderer/src/config/models/tooluse.ts: Update function calling regex fromminimax-m2(?:.1)?tominimax-m2(?:\.\d+)?(?:-[\w-]+)?to support all M2.x variants including M2.7src/renderer/src/config/models/__tests__/reasoning.test.ts: Add test assertions for M2.7 reasoning model detectionTesting