Skip to content

feat: add MiniMax as LLM provider backend with M3 upgrade#138

Open
octo-patch wants to merge 4 commits into
alexzhang13:mainfrom
octo-patch:feature/add-minimax-provider
Open

feat: add MiniMax as LLM provider backend with M3 upgrade#138
octo-patch wants to merge 4 commits into
alexzhang13:mainfrom
octo-patch:feature/add-minimax-provider

Conversation

@octo-patch

@octo-patch octo-patch commented Mar 17, 2026

Copy link
Copy Markdown

Summary

Add MiniMax as a first-class LLM provider backend, using the OpenAI-compatible API.

Update: Upgraded default model from MiniMax-M2.7 to MiniMax-M3, the latest flagship model with 512K context, 128K max output, and image input support.

Changes

  • Add minimax to ClientBackend type in rlm/core/types.py
  • Route minimax backend to OpenAIClient with MiniMax base URL in rlm/clients/__init__.py
  • Auto-detect MINIMAX_API_KEY environment variable in rlm/clients/openai.py
  • MiniMax-M3 set as the default model; M2.7 and M2.7-highspeed retained as alternatives
  • Older models (M2.5, M2.5-highspeed) removed from the model list
  • 18 unit tests + 3 integration tests in tests/clients/test_minimax.py

Models

Model Description
MiniMax-M3 (default) Latest flagship model — 512K context, 128K max output, image input support
MiniMax-M2.7 Previous generation, kept for backwards compatibility
MiniMax-M2.7-highspeed High-speed version of M2.7 for low-latency scenarios

Usage

from rlm.clients import get_client

client = get_client(
    backend="minimax",
    backend_kwargs={"model_name": "MiniMax-M3"},
)
result = client.completion("Hello!")

Testing

  • All 21 tests passing (18 unit + 3 integration)
  • Integration tested with real MiniMax API using M3, M2.7, and M2.7-highspeed

Add MiniMax (https://platform.minimax.io) as a first-class LLM provider
backend, supporting the M2.5 model family via OpenAI-compatible API.

Changes:
- Add MinimaxClient in rlm/clients/minimax.py extending OpenAIClient
  with MiniMax defaults (base_url, model, temperature=1.0)
- Register "minimax" backend in client router (__init__.py)
- Add "minimax" to ClientBackend type (types.py)
- Add MiniMax usage docs to README.md
- Add 17 unit tests + 3 integration tests

Supported models: MiniMax-M2.5, MiniMax-M2.5-highspeed (204K context)
@octo-patch octo-patch force-pushed the feature/add-minimax-provider branch from a942e4f to a39ee29 Compare March 17, 2026 23:14
- Update all test references from MiniMax-M2.5 to MiniMax-M2.7
- Update MiniMax-M2.5-highspeed to MiniMax-M2.7-highspeed
- Add backward compatibility test for legacy MiniMax-M2.5 model
- Add dedicated test for MiniMax-M2.7-highspeed model
- Keep all previous models as available alternatives
@octo-patch octo-patch changed the title feat: add MiniMax as LLM provider backend feat: add MiniMax as LLM provider backend (M2.7 default) Mar 18, 2026
- Update all test references from MiniMax-M2.5 to MiniMax-M2.7
- Add MiniMax-M2.7-highspeed model test
- Add backward compatibility test for legacy MiniMax-M2.5 model
- Integration tests verified with real MiniMax API
@octo-patch octo-patch changed the title feat: add MiniMax as LLM provider backend (M2.7 default) feat: add MiniMax as LLM provider backend with M2.7 upgrade Mar 18, 2026
- Set MiniMax-M3 as the default model in MinimaxClient
- Keep MiniMax-M2.7 and MiniMax-M2.7-highspeed as alternatives
- Remove legacy MiniMax-M2.5 references from default/tests
- Update README to reflect M3 model family
- Fix pre-existing import path bug for DEFAULT_MINIMAX_* constants in tests
- Add unit tests verifying M3 default and M3 invocation

Co-Authored-By: Octopus <liyuan851277048@icloud.com>
@octo-patch octo-patch changed the title feat: add MiniMax as LLM provider backend with M2.7 upgrade feat: add MiniMax as LLM provider backend with M3 upgrade Jun 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant