Skip to content

feat: add MiniMax as LLM provider with M3 default model#1166

Open
octo-patch wants to merge 7 commits into
Pythagora-io:mainfrom
octo-patch:feature/add-minimax-provider
Open

feat: add MiniMax as LLM provider with M3 default model#1166
octo-patch wants to merge 7 commits into
Pythagora-io:mainfrom
octo-patch:feature/add-minimax-provider

Conversation

@octo-patch

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

Copy link
Copy Markdown

Summary

Add MiniMax as an LLM provider for GPT Pilot with the latest M3 model as default.

Changes

  • Add MiniMaxClient with OpenAI-compatible API integration
  • Support MiniMax-M3 (default), MiniMax-M2.7, MiniMax-M2.7-highspeed models
  • Temperature clamping (MiniMax requires temp > 0)
  • Rate limiting with OpenAI-compatible headers
  • Streaming response support
  • Unit and integration tests

Why

MiniMax-M3 is the latest flagship model with a 512K context window, up to 128K output, and image input support via the OpenAI-compatible API. M2.7 and M2.7-highspeed are kept as alternatives for fallback / cost-sensitive usage.

Testing

  • Unit tests cover model calls, temperature clamping, JSON mode, streaming, base URL, and rate limiting
  • Integration tests cover M3 (default), M2.7, and M2.7-highspeed models

Zvonimir Sabljic and others added 5 commits August 24, 2025 13:37
This reverts commit 17923847f40863e977588d1a81bec2ae16e9801f.
Add MiniMax (https://platform.minimax.io) as a new LLM provider,
using their OpenAI-compatible API endpoint.

Supported models:
- MiniMax-M2.5 (default) - 204K context window
- MiniMax-M2.5-highspeed - faster variant

Key implementation details:
- New MiniMaxClient class using the OpenAI SDK with MiniMax base URL
- Temperature clamped to minimum 0.01 (MiniMax requires > 0)
- response_format (json_mode) skipped as MiniMax does not support it
- API key read from config or MINIMAX_API_KEY environment variable
- Default base URL: https://api.minimax.io/v1

Changes:
- core/llm/minimax_client.py: New MiniMax LLM client
- core/config/__init__.py: Add MINIMAX to LLMProvider enum
- core/llm/base.py: Register MiniMaxClient in provider factory
- example-config.json: Add MiniMax configuration example
- tests/llm/test_minimax.py: Unit tests (10 tests)
- tests/integration/llm/test_minimax.py: Integration tests
- README.md: Add minimax to supported providers list
@CLAassistant

CLAassistant commented Mar 14, 2026

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
0 out of 4 committers have signed the CLA.

❌ Zvonimir Sabljic
❌ github-actions[bot]
❌ MarkoBosnjak98
❌ LeonOstrez


Zvonimir Sabljic seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

- Update default model from MiniMax-M2.5 to MiniMax-M2.7 in tests and config
- Add MiniMax-M2.7 and MiniMax-M2.7-highspeed to available models list
- Add integration tests for M2.7-highspeed model
- Keep M2.5 and M2.5-highspeed as available alternatives with tests
@octo-patch octo-patch changed the title feat: add MiniMax as LLM provider feat: add MiniMax as LLM provider with M2.7 default model Mar 18, 2026
- Update default MiniMax model in example-config.json to M3
- Drop older M2.5 and M2.5-highspeed integration tests
- Update unit tests to target MiniMax-M3 as the default model
- Keep MiniMax-M2.7 and MiniMax-M2.7-highspeed as alternatives
@octo-patch octo-patch changed the title feat: add MiniMax as LLM provider with M2.7 default model feat: add MiniMax as LLM provider with M3 default model Jun 2, 2026
@LeonOstrez LeonOstrez force-pushed the main branch 2 times, most recently from 90f59f5 to a372904 Compare June 8, 2026 11:13
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.

4 participants