feat: add MiniMax as first-class LLM provider (M3 default)#619
Open
octo-patch wants to merge 2 commits into
Open
feat: add MiniMax as first-class LLM provider (M3 default)#619octo-patch wants to merge 2 commits into
octo-patch wants to merge 2 commits into
Conversation
Add MiniMax AI as a dedicated model provider with full integration across the backend, frontend, and configuration system. Backend changes: - MiniMaxProvider class in factory.py using agno's OpenAILike with temperature clamping to (0.0, 1.0] range - Provider registered in ModelFactory._providers registry - MiniMax YAML config with M2.7, M2.7-highspeed, M2.5, M2.5-highspeed models (all 204K context) - config.yaml registration with MINIMAX_API_KEY env var - JSON mode detection for minimax.io base_url in model.py - API key URL mapping in models router Frontend changes: - MiniMax provider icon in model-providers/ - Icon registration in icons.ts constants - i18n strings for en, zh_CN, zh_TW, ja locales Documentation: - README (EN/ZH/ZH_Hant/JA) provider list updated - CONFIGURATION_GUIDE.md provider table updated Tests: 34 tests (28 unit + 6 integration), all passing
- Add MiniMax-M3 to model list and set as default (512K context, 128K max output, image input) - Keep MiniMax-M2.7 and MiniMax-M2.7-highspeed as alternatives - Remove older MiniMax-M2.5 and MiniMax-M2.5-highspeed models - Update unit tests to assert M3 is default and listed first - Deduplicate tests/__init__.py (was a copy of test_minimax_provider.py)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Upgrade MiniMax provider to use M3 as the default model. M3 is MiniMax's latest flagship LLM with a 512K context window, 128K max output, and image input support.
This PR also introduces MiniMax as a first-class LLM provider in valuecell (backend factory + YAML config + frontend icon + i18n + README links).
Changes
M3 upgrade (this iteration)
MiniMax-M3topython/configs/providers/minimax.yamland set asdefault_modelMiniMax-M2.7andMiniMax-M2.7-highspeedas alternativesMiniMax-M2.5andMiniMax-M2.5-highspeedmodelsMiniMaxProviderdocstring infactory.pyaccordinglytests/__init__.py(was a copy oftest_minimax_provider.py)Provider integration (initial work, unchanged)
MiniMaxProviderclass using agno'sOpenAILikewith temperature clamped to (0.0, 1.0]; registered inModelFactory._providersconfig.yamlregistration withMINIMAX_API_KEYenv varminimax.iobase_url inutils/model.py; API key URL mapping in models routerCONFIGURATION_GUIDE.mdprovider tableModel spec (M3)
Why
MiniMax-M3 is the latest flagship model. Defaulting to M3 gives users the best capabilities by default while M2.7 / M2.7-highspeed remain available as alternatives for cost or latency trade-offs.
Testing
pytest valuecell/adapters/models/tests/test_minimax_provider.py— 35 passed