Skip to content

feat: add MiniMax as first-class LLM provider - #1040

Open
octo-patch wants to merge 1 commit into
enricoros:mainfrom
octo-patch:feature/add-minimax-provider
Open

feat: add MiniMax as first-class LLM provider#1040
octo-patch wants to merge 1 commit into
enricoros:mainfrom
octo-patch:feature/add-minimax-provider

Conversation

@octo-patch

Copy link
Copy Markdown

Summary

Add MiniMax as a new LLM vendor with full integration into big-AGI's OpenAI-compatible dialect system.

  • 3 models: MiniMax M2.7 (latest), M2.5, M2.5 High-Speed - all with 204K context, function calling, JSON mode, and vision
  • Full vendor integration: icon, settings UI, dialect routing, env var (MINIMAX_API_KEY), backend capabilities flag
  • Hardcoded model list: MiniMax has no /v1/models endpoint, so models follow the Perplexity pattern with hardcoded descriptions
  • 48 tests: 24 unit tests (model filter/description/sort) + 24 integration tests (vendor config/setup/transport/CSF)

Files changed (16 files, 465 additions)

New files (6):

  • MiniMaxIcon.tsx - SVG icon component
  • minimax.vendor.ts - Vendor definition (dialect, key validation, CSF support)
  • MiniMaxServiceSetup.tsx - Settings UI with API key + optional host override
  • minimax.models.ts - Model definitions with filter, description mapping, and sort
  • minimax.models.test.ts - 24 unit tests
  • minimax.integration.test.ts - 24 integration tests

Modified files (10):

  • vendors.registry.ts - Register minimax vendor ID
  • LLMVendorIcon.tsx / LLMVendorSetup.tsx / LLMVendorIconSprite.tsx - Wire icon and setup components
  • openai.access.ts - Add minimax dialect with Bearer token auth and multi-key support
  • listModels.dispatch.ts - Hardcoded models dispatch (no API fetch)
  • chatGenerate.dispatch.ts - Add minimax to both dialect switch groups
  • env.server.ts - Register MINIMAX_API_KEY environment variable
  • store-backend-capabilities.ts / backend.router.ts - Add hasLlmMiniMax capability flag

Test plan

  • tsc --noEmit passes (only pre-existing errors in news.data.tsx)
  • 24/24 unit tests pass (npx tsx minimax.models.test.ts)
  • 24/24 integration tests pass (npx tsx minimax.integration.test.ts)
  • Live API chat completion verified with MINIMAX_API_KEY
  • Manual verification: add MiniMax vendor in settings, configure API key, send chat message

MiniMax API Notes

Add MiniMax (https://www.minimaxi.com) as a new LLM vendor with full
integration into the OpenAI-compatible dialect system.

New files:
- MiniMaxIcon.tsx: SVG icon component
- minimax.vendor.ts: Vendor definition (dialect, key validation, CSF)
- MiniMaxServiceSetup.tsx: Settings UI with API key + host fields
- minimax.models.ts: Model definitions for M2.7, M2.5, M2.5-highspeed
  (204K context, function calling, JSON mode, vision)
- minimax.models.test.ts: 24 unit tests for model filter/description/sort
- minimax.integration.test.ts: 24 integration tests for vendor config

Modified files:
- vendors.registry.ts: Register 'minimax' vendor ID
- LLMVendorIcon/Setup/IconSprite: Wire icon and setup components
- openai.access.ts: Add 'minimax' dialect with Bearer auth
- listModels.dispatch.ts: Hardcoded models (no /v1/models API)
- chatGenerate.dispatch.ts: Add 'minimax' to dialect switches
- env.server.ts: Register MINIMAX_API_KEY env var
- backend capabilities: Add hasLlmMiniMax flag

MiniMax provides OpenAI-compatible chat completions at
https://api.minimax.io/v1 but has no models listing endpoint,
so models are hardcoded following the Perplexity pattern.
@vercel

vercel Bot commented Mar 20, 2026

Copy link
Copy Markdown

Someone is attempting to deploy a commit to the Token Fabrics Pro Team on Vercel.

A member of the Team first needs to authorize it.

@enricoros

Copy link
Copy Markdown
Owner

Considering merge of this one if we see interest or requests by our users.

@octo-patch

Copy link
Copy Markdown
Author

Thanks for considering, @enricoros! Happy to address any feedback if you'd like changes before merging. The implementation follows the same OpenAI-compatible pattern used by other vendors in the codebase.

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.

2 participants