文档

API详情

更新时间:
一键部署

通过阅读本文您可以掌握使用API调用MiniMax模型服务的方法。您可以使用Python或Java版本的Dashscope SDK,或使用HTTP接口来调用。

Minimax

说明

支持的领域 / 任务:AIGC、语言理解、深度推理、文本生成

Minimax-abab6.5系列模型是MiniMax推出的万亿参数大语言模型,可以很好的满足复杂生产力以及多语言人设对话场景需求,最大支持245k上下文窗口,在知识、推理、数学、编程、指令遵循等各项测试中接近行业最领先的大模型水平。

模型概览

模型名

模型简介

abab6.5s-chat

abab6.5s 是MiniMax推出的万亿参数大语言模型,性价比极高,适用于通用场景,特别是在生产力复杂任务场景上表现较好,最大支持128k上下文窗口,支持搜索、function call等功能。

abab6.5t-chat

abab6.5t是MiniMax推出的大语言模型,适用于中文人设对话场景,在人设保持、指令遵从、意图理解、生成趣味上会有比较好的效果。

abab6.5g-chat

abab6.5g是MiniMax推出的大语言模型,适用于英文人设对话场景,在英文语言支持、人设保持、指令遵从、生成趣味上会有比较好的效果。

SDK使用

前提条件

  • 已开通服务并获得API-KEY:获取API-KEY

  • 已安装最新版SDK:安装SDK

  • 我们推荐您将API-KEY配置到环境变量中以降低API-KEY的泄漏风险,详情可参考通过环境变量配置API-KEY

    重要

    您也可以在代码中配置API-KEY,但是泄漏风险会增加。

  • 您需要登录百炼控制台界面,在模型广场找到您需要申请的MiniMax大语言模型,单击立即申请,等待申请完成即可进行调用。

示例代码

以下示例展示了调用MiniMax模型对一个用户指令进行响应的代码。

from http import HTTPStatus
import dashscope


def call_with_messages():
    messages = [{'role': 'system', 'content': 'You are a helpful assistant.'},
                {'role': 'user', 'content': '你好'}]
    response = dashscope.Generation.call(
        model='abab6.5s-chat',
        messages=messages,
    )
    if response.status_code == HTTPStatus.OK:
        print(response)
    else:
        print('Request id: %s, Status code: %s, error code: %s, error message: %s' % (
            response.request_id, response.status_code,
            response.code, response.message
        ))

if __name__ == '__main__':
    call_with_messages()
// Copyright (c) Alibaba, Inc. and its affiliates.

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.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.utils.JsonUtils;


public class Main{
  public static GenerationResult callWithMessage() throws ApiException, NoApiKeyException, InputRequiredException {
        Generation gen = new Generation();

        Message systemMsg = Message.builder()
            .role(Role.SYSTEM.getValue())
            .content("You are a helpful assistant.")
            .build();

        Message userMsg = Message.builder()
            .role(Role.USER.getValue())
            .content("如何做西红柿炒鸡蛋?")
            .build();

        GenerationParam param = GenerationParam.builder()
            .model("abab6.5s-chat")
            .messages(Arrays.asList(systemMsg, userMsg))
            .build();

        return gen.call(param);
    }
    public static void main(String[] args) {
        try {
            GenerationResult result = callWithMessage();
            System.out.println(result);
        } catch (ApiException | NoApiKeyException | InputRequiredException e) {
            System.err.println("An error occurred while calling the generation service: " + e.getMessage());
        }
        System.exit(0);
    }
}

参数配置

参数

类型

默认值

说明

model

string

-

模型名称。

messages

array

-

输入到大模型的消息列表,列表中每个元素为哈希表,包含2个key:role和content,其中role支持user、assistant、system,content为对应role的文本输入。示例:

[{'role': 'system', 'content': 'You are a helpful assistant.'}, {'role': 'user', 'content': '你好'}]

temperature

float

abab6.5s 默认取值0.1

abab6.5t 默认取值0.9

abab6.5g 默认取值0.9

  • 低(0.01~0.2):适合答案较明确的场景(如:知识问答、总结说明、情感分析、文本分类、大纲生成、作文批改)

  • ⾼(0.7〜1):适合答案较开放发散的场景 (如:营销文案生成、人设对话)

较高的值将使输出更加随机,而较低的值将使输出更加集中和确定

top_p

float

abab6.5s 默认取值0.95

abab6.5t 默认取值0.95

abab6.5g 默认取值0.95

(0,1],采样方法,数值越小结果确定性越强;数值越大,结果越随机

max_tokens

integer

目前默认取值为256,如遇到length原因停止生成请修改该值。

最大生成token数,需要注意的是,这个参数并不会影响模型本身的生成效果,而是仅仅通过以截断超出的token的方式来实现功能

abab6.5s: (0,245760]

abab6.5t:(0,8192]

abab6.5g:(0,8192]

返回结果

  • 返回结果示例

{
    "output": {
        "choices": [
            {
                "message": {
                    "content": "你好!今天我能帮你什么?",
                    "role": "assistant"
                },
                "index": 0,
                "finish_reason": "stop"
            }
        ]
    },
    "usage": {
        "total_tokens": 15
    },
    "request_id": "23066782-2f2b-9f66-82f0-7c26a186b470"
}
  • 返回参数说明

返回参数

类型

说明

status_code

integer

200(HTTPStatus.OK)表示请求成功,否则表示请求失败,可以通过code获取错误码,通过message字段获取错误详细信息。

request_id

string

系统生成的标志本次调用的id。

code

string

表示请求失败,表示错误码,成功忽略。

message

string

失败,表示失败详细信息,成功忽略。

output

object

调用结果信息。

output.choices

array

返回结果列表

output.choices[x].finish_reason

string

回复停止的原因,目前支持取以下值:

stop:正常结束

length:请求超过token长度

output.choices[x].message

string

返回结果

output.choices[x].message.role

string

返回结果role

output.choices[x].message.content

string

返回结果内容

usage

object

计量信息,表示本次请求计量数据,当前模型无计量信息,此处为默认值。

usage.total_tokens

integer

用户输入+模型生成回复转换为token后的长度。

HTTP调用接口

功能描述

MiniMax模型同时支持 HTTP 接口调用来完成客户的响应,详情如下:

前提条件

  • 已开通服务并获得API-KEY:获取API-KEY

  • 我们推荐您将API-KEY配置到环境变量中以降低API-KEY的泄漏风险,详情可参考通过环境变量配置API-KEY

    重要

    您也可以在代码中配置API-KEY,但是泄漏风险会增加。

  • 您需要登录百炼控制台界面,在模型广场找到您需要申请的MiniMax大语言模型,单击立即申请,等待申请完成即可进行调用。

提交接口调用

POST https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation

入参描述

传参方式

字段

类型

必选

描述

示例值

Header

Content-Type

string

请求类型:application/json

application/json

Authorization

string

API-Key,例如:Bearer d1**2a

Bearer d1**2a

X-DashScope-WorkSpace

string

指明本次调用需要使用的workspace;需要注意的是,对于子账号Apikey调用,此参数为必选项,子账号必须归属于某个workspace才能调用;对于主账号Apikey此项为可选项,添加则使用对应的workspace身份,不添加则使用主账号身份。

ws_QTggmeAxxxxx

Body

model

string

指明需要调用的模型。

abab6.5-chat

input.messages

array

包含迄今为止对话的消息列表。

这是一个结构体的列表,每个元素类似如下:{"role": "user", "content": "你好"} role 只可以为system,user,assistant 其一,content 不得为空。

parameters.temperature

float

较高的值将使输出更加随机,而较低的值将使输出更加集中和确定。

abab6.5s 默认取值0.1

abab6.5t 默认取值0.9

abab6.5g 默认取值0.9

  • 低(0.01~0.2):适合答案较明确的场景(如:知识问答、总结说明、情感分析、文本分类、大纲生成、作文批改)

  • ⾼(0.7〜1):适合答案较开放发散的场景 (如:营销文案生成、人设对话)

0.3

parameters.top_p

float

采样方法,数值越小结果确定性越强;数值越大,结果越随机

abab6.5s 默认取值0.95

abab6.5t 默认取值0.95

abab6.5g 默认取值0.95

0.95

parameters.max_tokens

integer

最大生成token数,需要注意的是,这个参数并不会影响模型本身的生成效果,而是仅仅通过以截断超出的token的方式来实现功能,目前默认取值为256

abab6.5s: (0,245760]

abab6.5t:(0,8192]

abab6.5g:(0,8192]

100

出参描述

字段

类型

描述

示例值

status_code

integer

200(HTTPStatus.OK)表示请求成功,否则表示请求失败,可以通过code获取错误码,通过message字段获取错误详细信息。

200

request_Id

string

系统生成的标志本次调用的id。

23066782-2f2b-9f66-82f0-7c26a186b470

output.choices[x].finish_reason

string

停止原因

stop

output.choices[x].message.role

string

返回结果role

assistant

output.choices[x].message.content

string

返回结果内容

你好!今天我能帮你什么?

usage

object

计量信息,表示本次请求计量数据,当前模型无计量信息,此处为默认值。

"usage": {

"total_tokens": 15

}

usage.total_tokens

integer

用户输入+模型生成的回复转换为token后的长度。

15

请求示例

以下示例展示通过CURL命令来调用abab6.5模型的脚本。

curl --location 'https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
    "model": "abab6.5s-chat",
    "input":{
        "messages":[      
            {
                "role": "system",
                "content": "You are a helpful assistant."
            },
            {
                "role": "user",
                "content": "你好"
            }
        ]
    }
}'

响应示例

{
    "output": {
        "choices": [
            {
                "message": {
                    "content": "你好!今天我能帮你什么?",
                    "role": "assistant"
                },
                "index": 0,
                "finish_reason": "stop"
            }
        ]
    },
    "usage": {
        "total_tokens": 15
    },
    "request_id": "23066782-2f2b-9f66-82f0-7c26a186b470"
}

异常响应示例

在访问请求出错的情况下,输出的结果中会通过 code 和 message 指明出错原因。

{
    "code":"InvalidApiKey",
    "message":"Invalid API-key provided.",
    "request_id":"fb53c4ec-1c12-4fc4-a580-cdb7c3261fc1"
}

状态码说明

大模型服务平台通用状态码请查阅:状态码说明