minimax
$
npx mdskill add vm0-ai/vm0-skills/minimaxExecute MiniMax AI models for Chinese language tasks
- Processes user queries requiring Chinese AI capabilities
- Depends on MiniMax API and Bearer token authentication
- Selects optimal model based on reasoning or speed needs
- Returns generated text directly via API response
SKILL.md
.github/skills/minimaxView on GitHub ↗
---
name: minimax
description: MiniMax API for AI models. Use when user mentions "MiniMax", "Chinese
AI", or asks about MiniMax language models.
---
## Troubleshooting
If requests fail, run `zero doctor check-connector --env-name MINIMAX_TOKEN` or `zero doctor check-connector --url https://api.minimax.io/v1/text/chatcompletion_v2 --method POST`
## How to Use
All examples below assume you have `MINIMAX_TOKEN` set.
Authentication uses Bearer token in the `Authorization` header.
### 1. Basic Chat Completion
Send a chat message:
Write to `/tmp/minimax_request.json`:
```json
{
"model": "MiniMax-Text-01",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello, who are you?"}
]
}
```
Then run:
```bash
curl -s "https://api.minimax.io/v1/text/chatcompletion_v2" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json | jq '.choices[0].message.content'
```
**Available models:**
- `MiniMax-M2`: Reasoning model (best quality)
- `MiniMax-M1`: Reasoning model (balanced)
- `MiniMax-Text-01`: Standard model (fastest)
### 2. Chat with Temperature Control
Adjust creativity:
Write to `/tmp/minimax_request.json`:
```json
{
"model": "MiniMax-Text-01",
"messages": [
{"role": "user", "content": "Write a short poem about AI."}
],
"temperature": 0.7,
"max_tokens": 200
}
```
Then run:
```bash
curl -s "https://api.minimax.io/v1/text/chatcompletion_v2" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json | jq '.choices[0].message.content'
```
**Parameters:**
- `temperature` (0-1): Higher = more creative
- `top_p` (0-1, default 0.95): Sampling diversity
- `max_tokens`: Maximum output tokens
### 3. Streaming Response
Get real-time output:
Write to `/tmp/minimax_request.json`:
```json
{
"model": "MiniMax-M1",
"messages": [
{"role": "user", "content": "Explain quantum computing."}
],
"stream": true
}
```
Then run:
```bash
curl -s "https://api.minimax.io/v1/text/chatcompletion_v2" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json
```
Streaming is recommended for reasoning models (M1/M2).
### 4. Reasoning Model (M1/M2)
Use reasoning models for complex tasks:
Write to `/tmp/minimax_request.json`:
```json
{
"model": "MiniMax-M1",
"messages": [
{"role": "user", "content": "Solve step by step: A train travels 120km in 2 hours. What is its average speed in m/s?"}
],
"stream": true
}
```
Then run:
```bash
curl -s "https://api.minimax.io/v1/text/chatcompletion_v2" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json
```
Response includes `reasoning_content` field with thought process.
### 5. Text-to-Speech (Basic)
Convert text to speech:
Write to `/tmp/minimax_request.json`:
```json
{
"model": "speech-02-hd",
"text": "Hello, this is a test of MiniMax text to speech.",
"voice_id": "male-qn-qingse",
"speed": 1.0,
"format": "mp3"
}
```
Then run:
```bash
curl -s "https://api.minimax.io/v1/t2a_v2" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json --output speech.mp3
```
### 6. TTS with Emotion
Add emotion to speech (speech-02 models):
Write to `/tmp/minimax_request.json`:
```json
{
"model": "speech-02-hd",
"text": "I am so happy to meet you today!",
"voice_id": "female-shaonv",
"emotion": "happy",
"speed": 1.0,
"format": "mp3"
}
```
Then run:
```bash
curl -s "https://api.minimax.io/v1/t2a_v2" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json --output happy_speech.mp3
```
**Emotion options:** `happy`, `sad`, `angry`, `fearful`, `disgusted`, `surprised`, `neutral`
### 7. TTS with Audio Settings
Fine-tune audio output:
Write to `/tmp/minimax_request.json`:
```json
{
"model": "speech-02-hd",
"text": "High quality audio test.",
"voice_id": "male-qn-qingse",
"speed": 1.0,
"vol": 1.0,
"pitch": 0,
"audio_sample_rate": 32000,
"bitrate": 128000,
"format": "mp3"
}
```
Then run:
```bash
curl -s "https://api.minimax.io/v1/t2a_v2" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json --output hq_speech.mp3
```
**TTS models:**
- `speech-02-hd`: High definition (best quality)
- `speech-02-turbo`: Fast generation
- `speech-01-hd`: Previous gen HD
- `speech-01-turbo`: Previous gen fast
### 8. Text-to-Video (T2V)
Generate video from text prompt:
Write to `/tmp/minimax_request.json`:
```json
{
"model": "T2V-01-Director",
"prompt": "A cat playing with a ball of yarn [Static shot].",
"duration": 6,
"resolution": "1080P"
}
```
Then run:
```bash
curl -s "https://api.minimax.io/v1/video_generation" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json | jq '.task_id'
```
Video generation is async - returns a task ID to poll for completion.
### 9. T2V with Camera Control
Control camera movement in videos:
Write to `/tmp/minimax_request.json`:
```json
{
"model": "MiniMax-Hailuo-2.3",
"prompt": "A person walking through a forest [Tracking shot], then stops to look at a bird [Push in].",
"duration": 6,
"resolution": "1080P"
}
```
Then run:
```bash
curl -s "https://api.minimax.io/v1/video_generation" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json | jq '.task_id'
```
**Camera commands (in brackets):**
- Movement: `Truck left/right`, `Pan left/right`, `Push in/Pull out`
- Vertical: `Pedestal up/down`, `Tilt up/down`
- Zoom: `Zoom in/out`
- Special: `Shake`, `Tracking shot`, `Static shot`
Combine with `[Pan left, Pedestal up]` (max 3 simultaneous).
### 10. Image-to-Video (I2V)
Generate video from an image:
> **Note:** For I2V, use `MiniMax-Hailuo-2.3` or `S2V-01` model which supports `first_frame_image`. The `T2V-01-Director` model is text-to-video only.
Write to `/tmp/minimax_request.json`:
```json
{
"model": "MiniMax-Hailuo-2.3",
"prompt": "The scene comes to life with gentle movement [Static shot].",
"first_frame_image": "https://example.com/image.jpg",
"duration": 6,
"resolution": "1080P"
}
```
Then run:
```bash
curl -s "https://api.minimax.io/v1/video_generation" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json | jq '.task_id'
```
Provide `first_frame_image` as URL or base64-encoded image.
### 11. Function Calling (Tools)
Use tools with chat:
Write to `/tmp/minimax_request.json`:
```json
{
"model": "MiniMax-Text-01",
"messages": [
{"role": "user", "content": "What is the weather in Beijing?"}
],
"tools": [
{
"type": "function",
"function": {
"name": "get_weather",
"description": "Get weather for a location",
"parameters": {
"type": "object",
"properties": {
"location": {"type": "string", "description": "City name"}
},
"required": ["location"]
}
}
}
],
"tool_choice": "auto"
}
```
Then run:
```bash
curl -s "https://api.minimax.io/v1/text/chatcompletion_v2" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json | jq '.choices[0]'
```
## Response Format
### Chat Completion
```json
{
"id": "string",
"choices": [{
"message": {
"role": "assistant",
"content": "Response text",
"reasoning_content": "Thought process (M1/M2 only)"
},
"finish_reason": "stop"
}],
"usage": {
"prompt_tokens": 10,
"completion_tokens": 50,
"total_tokens": 60
}
}
```
## Guidelines
1. **Use correct host**: China uses `api.minimax.io`, global uses `api.minimaxi.chat`
2. **Streaming for reasoning**: M1/M2 models work best with `stream: true`
3. **Camera syntax**: Video commands go in `[brackets]` within prompts
4. **Emotion in TTS**: Only works with `speech-02-*` and `speech-01-*` models
5. **Async video**: Video generation returns task ID - poll for completion
6. **Chinese optimized**: MiniMax excels at Chinese language tasks