すべてのプロダクト
Search
ドキュメントセンター

Alibaba Cloud Model Studio:MiniMax

最終更新日:Apr 08, 2026

このドキュメントでは、Alibaba Cloud Model Studio にデプロイされている MiniMax モデルの推論サービスを呼び出す方法について説明します。

重要

このドキュメントは中国本土のリージョンにのみ適用されます。モデルを使用するには、中国本土のリージョンから API キーを取得する必要があります。

クイックスタート

開始する前に、API キーを取得し、環境変数として設定してください。この設定方法は非推奨です。SDK を使用する場合は、SDK をインストールする必要もあります。

OpenAI 互換

Python

コード例

import os
from openai import OpenAI

client = OpenAI(
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)

completion = client.chat.completions.create(
    model="MiniMax-M2.5",
    messages=[{"role": "user", "content": "Who are you"}],
    stream=True,
)

reasoning_content = ""  # 完全な推論プロセス
answer_content = ""     # 完全な応答
is_answering = False    # 応答フェーズが開始されたかどうかを示します

print("\n" + "=" * 20 + "推論プロセス" + "=" * 20 + "\n")

for chunk in completion:
    if chunk.choices:
        delta = chunk.choices[0].delta
        # 推論コンテンツのみを収集します
        if hasattr(delta, "reasoning_content") and delta.reasoning_content is not None:
            if not is_answering:
                print(delta.reasoning_content, end="", flush=True)
            reasoning_content += delta.reasoning_content
        # コンテンツが受信されたら、応答の生成を開始します
        if hasattr(delta, "content") and delta.content:
            if not is_answering:
                print("\n" + "=" * 20 + "完全な応答" + "=" * 20 + "\n")
                is_answering = True
            print(delta.content, end="", flush=True)
            answer_content += delta.content

応答

====================推論プロセス====================

ユーザーは中国語で「あなたは誰ですか」と尋ねました。

中国語で返信し、AI アシスタントとして自己紹介する必要があります。
====================完全な応答====================

こんにちは!私は AI アシスタントの MiniMax-M2.5 です。質問に答えたり、情報を提供したり、会話をしたりすることができます。何かお手伝いできることはありますか?

Node.js

コード例

import OpenAI from "openai";
import process from 'process';

// OpenAI クライアントを初期化します
const openai = new OpenAI({
    // 環境変数が設定されていない場合は、値を Alibaba Cloud Model Studio の API キーに置き換えてください: apiKey: "sk-xxx"
    apiKey: process.env.DASHSCOPE_API_KEY,
    baseURL: 'https://dashscope.aliyuncs.com/compatible-mode/v1'
});

let reasoningContent = ''; // 完全な推論プロセス
let answerContent = ''; // 完全な応答
let isAnswering = false; // 応答フェーズが開始されたかどうかを示します

async function main() {
    const messages = [{ role: 'user', content: 'Who are you' }];

    const stream = await openai.chat.completions.create({
        model: 'MiniMax-M2.5',
        messages,
        stream: true,
    });

    console.log('\n' + '='.repeat(20) + '推論プロセス' + '='.repeat(20) + '\n');

    for await (const chunk of stream) {
        if (chunk.choices?.length) {
            const delta = chunk.choices[0].delta;
            // 推論コンテンツのみを収集します
            if (delta.reasoning_content !== undefined && delta.reasoning_content !== null) {
                if (!isAnswering) {
                    process.stdout.write(delta.reasoning_content);
                }
                reasoningContent += delta.reasoning_content;
            }

            // コンテンツが受信されたら、応答の生成を開始します
            if (delta.content !== undefined && delta.content) {
                if (!isAnswering) {
                    console.log('\n' + '='.repeat(20) + '完全な応答' + '='.repeat(20) + '\n');
                    isAnswering = true;
                }
                process.stdout.write(delta.content);
                answerContent += delta.content;
            }
        }
    }
}

main();

応答

====================推論プロセス====================

ユーザーは中国語で「あなたは誰ですか」と尋ねました。

中国語で返信し、AI アシスタントとして自己紹介する必要があります。
====================完全な応答====================

こんにちは!私は AI アシスタントの MiniMax-M2.5 です。質問に答えたり、情報を提供したり、会話をしたりすることができます。何かお手伝いできることはありますか?

HTTP

コード例

curl

curl -X POST https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
    "model": "MiniMax-M2.5",
    "messages": [
        {
            "role": "user", 
            "content": "Who are you"
        }
    ]
}'

レスポンス

{
    "choices": [
        {
            "message": {
                "content": "こんにちは!私は MiniMax によって開発された AI アシスタント、MiniMax-M2.5 です。質問への回答、情報の提供、会話、さまざまなテキスト関連タスクの完了をお手伝いします。何かお手伝いできることはありますか?",
                "reasoning_content": "ユーザーは中国語で「あなたは誰ですか」と尋ねました。\n\n私は中国語で返信し、自己紹介する必要があります。",
                "role": "assistant"
            },
            "finish_reason": "stop",
            "index": 0,
            "logprobs": null
        }
    ],
    "object": "chat.completion",
    "usage": {
        "prompt_tokens": 40,
        "completion_tokens": 72,
        "total_tokens": 112,
        "completion_tokens_details": {
            "reasoning_tokens": 26
        },
        "prompt_tokens_details": {
            "cached_tokens": 0
        }
    },
    "created": 1771944590,
    "system_fingerprint": null,
    "model": "MiniMax-M2.5",
    "id": "chatcmpl-b1277a9c-52da-9de7-988a-d5c063d83xxx"
}

DashScope

Python

コード例

import os
from dashscope import Generation

# リクエストパラメーターを初期化します
messages = [{"role": "user", "content": "Who are you?"}]

completion = Generation.call(
    # 環境変数が設定されていない場合は、値を Alibaba Cloud Model Studio の API キーに置き換えてください: api_key="sk-xxx"
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    model="MiniMax-M2.5",
    messages=messages,
    result_format="message",  # 結果のフォーマットを message に設定
    stream=True,              # ストリーミング出力を有効化
    incremental_output=True,  # 増分出力を有効化
)

reasoning_content = ""  # 完全な推論プロセス
answer_content = ""     # 完全な応答
is_answering = False    # 応答フェーズが開始されたかどうかを示します

print("\n" + "=" * 20 + "推論プロセス" + "=" * 20 + "\n")

for chunk in completion:
    message = chunk.output.choices[0].message
    
    # 推論コンテンツのみを収集します
    if message.reasoning_content:
        if not is_answering:
            print(message.reasoning_content, end="", flush=True)
        reasoning_content += message.reasoning_content

    # コンテンツが受信されたら、応答の生成を開始します
    if message.content:
        if not is_answering:
            print("\n" + "=" * 20 + "完全な応答" + "=" * 20 + "\n")
            is_answering = True
        print(message.content, end="", flush=True)
        answer_content += message.content

# ループが終了すると、reasoning_content と answer_content 変数に完全なコンテンツが格納されます。
# 必要に応じて、ここで後続の処理を実行できます。
# print(f"\n\n完全な推論プロセス:\n{reasoning_content}")
# print(f"\n完全な応答:\n{answer_content}")

応答

====================推論プロセス====================

ユーザーは中国語で「あなたは誰ですか」と尋ねました。

中国語で返信し、AI アシスタントとして自己紹介する必要があります。
====================完全な応答====================

こんにちは!私は AI アシスタントの MiniMax-M2.5 です。質問に答えたり、情報を提供したり、会話をしたりすることができます。何かお手伝いできることはありますか?

Java

コード例

// DashScope SDK バージョン >= 2.19.4
import com.alibaba.dashscope.aigc.generation.Generation;
import com.alibaba.dashscope.aigc.generation.GenerationParam;
import com.alibaba.dashscope.aigc.generation.GenerationResult;
import com.alibaba.dashscope.common.Message;
import com.alibaba.dashscope.common.Role;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import io.reactivex.Flowable;
import java.lang.System;
import java.util.Arrays;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class Main {
    private static final Logger logger = LoggerFactory.getLogger(Main.class);
    private static StringBuilder reasoningContent = new StringBuilder();
    private static StringBuilder finalContent = new StringBuilder();
    private static boolean isFirstPrint = true;

    private static void handleGenerationResult(GenerationResult message) {
        String reasoning = message.getOutput().getChoices().get(0).getMessage().getReasoningContent();
        String content = message.getOutput().getChoices().get(0).getMessage().getContent();

        if (reasoning!= null&&!reasoning.isEmpty()) {
            reasoningContent.append(reasoning);
            if (isFirstPrint) {
                System.out.println("====================推論プロセス====================");
                isFirstPrint = false;
            }
            System.out.print(reasoning);
        }

        if (content!= null&&!content.isEmpty()) {
            finalContent.append(content);
            if (!isFirstPrint) {
                System.out.println("\n====================完全な応答====================");
                isFirstPrint = true;
            }
            System.out.print(content);
        }
    }
    private static GenerationParam buildGenerationParam(Message userMsg) {
        return GenerationParam.builder()
                // 環境変数が設定されていない場合は、次の行を Alibaba Cloud Model Studio の API キーに置き換えてください: .apiKey("sk-xxx")
                .apiKey(System.getenv("DASHSCOPE_API_KEY"))
                .model("MiniMax-M2.5")
                .incrementalOutput(true)
                .resultFormat("message")
                .messages(Arrays.asList(userMsg))
                .build();
    }
    public static void streamCallWithMessage(Generation gen, Message userMsg)
            throws NoApiKeyException, ApiException, InputRequiredException {
        GenerationParam param = buildGenerationParam(userMsg);
        Flowable<GenerationResult> result = gen.streamCall(param);
        result.blockingForEach(message -> handleGenerationResult(message));
    }

    public static void main(String[] args) {
        try {
            Generation gen = new Generation();
            Message userMsg = Message.builder().role(Role.USER.getValue()).content("Who are you?").build();
            streamCallWithMessage(gen, userMsg);
            // 最終結果を出力
            // if (reasoningContent.length() > 0) {
            //     System.out.println("\n====================完全な応答====================");
            //     System.out.println(finalContent.toString());
            // }
        } catch (ApiException | NoApiKeyException | InputRequiredException e) {
            logger.error("An exception occurred: {}", e.getMessage());
        }
        System.exit(0);
    }
}

応答

====================推論プロセス====================

ユーザーは中国語で「あなたは誰ですか」と尋ねました。

中国語で返信し、AI アシスタントとして自己紹介する必要があります。
====================完全な応答====================

こんにちは!私は AI アシスタントの MiniMax-M2.5 です。質問に答えたり、情報を提供したり、会話をしたりすることができます。何かお手伝いできることはありますか?

HTTP

コード例

curl

curl -X POST "https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation" \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
    "model": "MiniMax-M2.5",
    "input":{
        "messages":[      
            {
                "role": "user",
                "content": "Who are you?"
            }
        ]
    },
    "parameters": {
        "result_format": "message"
    }
}'

応答

{
    "output": {
        "choices": [
            {
                "finish_reason": "stop",
                "message": {
                    "content": "こんにちは!私は MiniMax によって開発された AI アシスタント、MiniMax-M2.5 です。質問への回答、情報の提供、会話をお手伝いします。何かお手伝いできることはありますか?",
                    "reasoning_content": "ユーザーは中国語で「あなたは誰ですか?」と尋ねました。\n\n私は中国語で返信し、自己紹介する必要があります。私は MiniMax によって開発された AI アシスタント、MiniMax-M2.5 であると述べるべきです。",
                    "role": "assistant"
                }
            }
        ]
    },
    "usage": {
        "input_tokens": 41,
        "output_tokens": 79,
        "output_tokens_details": {
            "reasoning_tokens": 39
        },
        "prompt_tokens_details": {
            "cached_tokens": 0
        },
        "total_tokens": 120
    },
    "request_id": "1bbd770e-564a-4601-83fc-3bf639423xxx"
}

その他の機能

モデル

マルチターン会話

ディープシンキング

Function Calling

構造化出力

ウェブ検索

パーシャルモード

コンテキストキャッシュ

MiniMax-M2.5

対応

対応

対応

非対応

対応

非対応

対応

暗黙的キャッシュのみ対応しています。

デフォルトのパラメーター値

モデル

temperature

top_p

presence_penalty

MiniMax-M2.5

1.0

0.95

0.0

モデルリストと課金

MiniMax-M2.5 モデルは、プログラミング、事務作業、テキスト要約などのタスクに優れており、応答も高速です。このモデルを推奨します。

モデルのコンテキスト長と料金の詳細については、「モデルリスト」をご参照ください。

課金は、入力トークンと出力トークンの数に基づいて行われます。

エラーコード

モデルの呼び出しに失敗し、エラーメッセージが返された場合は、エラーを解決するにはエラーメッセージをご参照ください。