feat: add MiniMax provider support#506
Conversation
- Add MiniMax as a predefined model provider with OpenAI-compatible endpoint (https://api.minimax.io/v1) - Add MINIMAX_API_KEY environment variable support - Register MiniMax-M2.7 as the default text model and MiniMax-M2.7-highspeed as the reasoning model - Add unit tests for the new provider and model configurations
|
Thank you for your submission! We ask that you sign our Developer Certificate of Origin before we can accept your contribution. You can sign the DCO by adding a comment below using this text: I have read the DCO document and I hereby sign the DCO. octo-patch seems not to be a GitHub user. You need a GitHub account to be able to sign the DCO. If you have already a GitHub account, please add the email address used for this commit to your account. |
Greptile SummaryThis PR registers MiniMax as a fourth predefined model provider in DataDesigner, wiring in the endpoint (
|
| Filename | Overview |
|---|---|
| packages/data-designer-config/src/data_designer/config/utils/constants.py | Adds MiniMax provider constants and model map entries; identical inference params shared across text and reasoning roles deviates from project pattern |
| packages/data-designer-config/tests/config/test_default_model_settings.py | Adds correct assertions for 2 new MiniMax model configs and the new MiniMax provider; count-based assertions updated to 14 and 4 respectively |
Sequence Diagram
sequenceDiagram
actor User
participant DD as DataDesigner
participant Config as data_designer.config
participant Engine as data_designer.engine
participant MiniMax as MiniMax API<br/>(api.minimax.io/v1)
User->>DD: DataDesigner(provider="minimax")
DD->>Config: resolve PREDEFINED_PROVIDERS
Config-->>DD: ModelProvider(endpoint, api_key=MINIMAX_API_KEY)
DD->>Engine: build column generation DAG
Engine->>Config: lookup PREDEFINED_PROVIDERS_MODEL_MAP["minimax"][alias]
Config-->>Engine: {model, inference_parameters}
Engine->>MiniMax: POST /v1/chat/completions
MiniMax-->>Engine: completion response
Engine-->>DD: generated column values
DD-->>User: DataDesignerResults
Prompt To Fix All With AI
This is a comment left during a code review.
Path: packages/data-designer-config/src/data_designer/config/utils/constants.py
Line: 372-381
Comment:
**Health-check script not updated for MiniMax**
`scripts/health_checks.py` maintains `PROVIDER_API_KEY_ENV_VARS`, which maps each predefined provider to its API key env var so the script knows which providers to exercise. MiniMax is absent from that dict, so the health-check script will silently skip MiniMax regardless of whether `MINIMAX_API_KEY` is set — meaning `MiniMax-M2.7` and `MiniMax-M2.7-highspeed` are never validated there. Every other provider added to `PREDEFINED_PROVIDERS_MODEL_MAP` has a corresponding entry in that dict.
How can I resolve this? If you propose a fix, please make it concise.
---
This is a comment left during a code review.
Path: packages/data-designer-config/src/data_designer/config/utils/constants.py
Line: 339
Comment:
**Same inference params used for both text and reasoning roles**
`MINIMAX_INFERENCE_PARAMS = {"temperature": 1.0}` is reused for both `MiniMax-M2.7` (text) and `MiniMax-M2.7-highspeed` (reasoning). Every other provider uses a lower temperature for the reasoning role (e.g., `0.35`) and a separate constant. Running a reasoning-aliased model at `temperature=1.0` with no `top_p` bound will produce higher output variance than the project default for structured-generation tasks. Consider splitting into `MINIMAX_TEXT_INFERENCE_PARAMS` and `MINIMAX_REASONING_INFERENCE_PARAMS` to follow the established pattern.
```suggestion
MINIMAX_TEXT_INFERENCE_PARAMS = {"temperature": 1.0}
MINIMAX_REASONING_INFERENCE_PARAMS = {"temperature": 0.35, "top_p": 0.95}
```
How can I resolve this? If you propose a fix, please make it concise.Reviews (1): Last reviewed commit: "feat: add MiniMax provider support" | Re-trigger Greptile
| MINIMAX_PROVIDER_NAME: { | ||
| "text": { | ||
| "model": "MiniMax-M2.7", | ||
| "inference_parameters": MINIMAX_INFERENCE_PARAMS, | ||
| }, | ||
| "reasoning": { | ||
| "model": "MiniMax-M2.7-highspeed", | ||
| "inference_parameters": MINIMAX_INFERENCE_PARAMS, | ||
| }, | ||
| }, |
There was a problem hiding this comment.
Health-check script not updated for MiniMax
scripts/health_checks.py maintains PROVIDER_API_KEY_ENV_VARS, which maps each predefined provider to its API key env var so the script knows which providers to exercise. MiniMax is absent from that dict, so the health-check script will silently skip MiniMax regardless of whether MINIMAX_API_KEY is set — meaning MiniMax-M2.7 and MiniMax-M2.7-highspeed are never validated there. Every other provider added to PREDEFINED_PROVIDERS_MODEL_MAP has a corresponding entry in that dict.
Prompt To Fix With AI
This is a comment left during a code review.
Path: packages/data-designer-config/src/data_designer/config/utils/constants.py
Line: 372-381
Comment:
**Health-check script not updated for MiniMax**
`scripts/health_checks.py` maintains `PROVIDER_API_KEY_ENV_VARS`, which maps each predefined provider to its API key env var so the script knows which providers to exercise. MiniMax is absent from that dict, so the health-check script will silently skip MiniMax regardless of whether `MINIMAX_API_KEY` is set — meaning `MiniMax-M2.7` and `MiniMax-M2.7-highspeed` are never validated there. Every other provider added to `PREDEFINED_PROVIDERS_MODEL_MAP` has a corresponding entry in that dict.
How can I resolve this? If you propose a fix, please make it concise.
Stale PR reminderThis PR has had failing checks for 7 days without activity. Failing checks: DCOAssistant Please push an update or leave a comment if you're still working on this. To prevent auto-close, add the |
Summary
This PR adds MiniMax as a predefined model provider in DataDesigner, allowing users to generate synthetic data using MiniMax's chat models via the OpenAI-compatible API.
Changes
MiniMaxas a predefined provider with endpointhttps://api.minimax.io/v1MINIMAX_API_KEYenvironment variable supportMiniMax-M2.7as the default text modelMiniMax-M2.7-highspeedas the reasoning modelUsage
After setting
MINIMAX_API_KEY, users can generate datasets using MiniMax:Or using the built-in alias:
API Reference