Skip to content

Add MiniMax as a new LLM provider client#533

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

Add MiniMax as a new LLM provider client#533
octo-patch wants to merge 1 commit intowaylaidwanderer:mainfrom
octo-patch:feature/add-minimax-provider

Conversation

@octo-patch
Copy link
Copy Markdown

Summary

  • Add MiniMaxClient extending ChatGPTClient for MiniMax's OpenAI-compatible Chat Completions API
  • Support MiniMax-M2.7, MiniMax-M2.7-highspeed, MiniMax-M2.5, and MiniMax-M2.5-highspeed models with 1M context window
  • Wire MiniMax into the API server, CLI, settings, and module exports as a first-class minimax client option
  • Temperature clamping to MiniMax's [0, 1] range, proper user/assistant role message construction

Changes

File Description
src/MiniMaxClient.js New client extending ChatGPTClient with overridden buildPrompt for proper chat message roles
bin/server.js Add minimax case in getClient() factory
bin/cli.js Add minimax client option with MiniMax AI label
index.js Export MiniMaxClient
settings.example.js Add miniMaxClient configuration section
demos/use-minimax-client.js Usage example
test/minimax-client-unit.js 30 unit tests covering constructor, options, temperature clamping, buildPrompt, stop tokens
test/minimax-client-integration.js 3 integration tests (message send, streaming, conversation context)
README.md Document MiniMax support in features, prerequisites, module usage, API options

Test plan

  • 30 unit tests pass (node --test test/minimax-client-unit.js)
  • 3 integration tests pass with real MiniMax API key (MINIMAX_API_KEY=... node --test test/minimax-client-integration.js)
  • ESLint passes on all new files
  • Verify clientToUse: 'minimax' works in API server mode
  • Verify clientToUse: 'minimax' works in CLI mode

Add MiniMaxClient extending ChatGPTClient, supporting MiniMax's
OpenAI-compatible Chat Completions API with M2.7/M2.7-highspeed models,
temperature clamping [0,1], 1M context window, proper user/assistant
role messages, streaming, and conversation management.

- src/MiniMaxClient.js: new client with buildPrompt override for proper
  chat message roles
- bin/server.js, bin/cli.js: add 'minimax' client option in getClient()
- settings.example.js: add miniMaxClient config section
- demos/use-minimax-client.js: usage example
- test/minimax-client-unit.js: 30 unit tests
- test/minimax-client-integration.js: 3 integration tests
- README.md: document MiniMax support
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