ChatCompletion Pro API
POST
https://api.minimax.chat/v1/text/chatcompletion_pro2、支持token数
模型名称 | 最大token数(一次请求+回复的输入输出总token) |
---|---|
abab5.5-chat | 16384 |
Python
import requests
group_id="请填写您的group_id"
api_key="请填写您的api_key"
url = "https://api.minimax.chat/v1/text/chatcompletion_pro?GroupId=" + group_id
payload = {
"bot_setting": [
{
"bot_name": "MM智能助理",
"content": "MM智能助理是一款由MiniMax自研的,没有调用其他产品的接口的大型语言模型。MiniMax是一家中国科技公司,一直致力于进行大模型相关的研究。",
}
],
"messages": [{"sender_type": "USER", "sender_name": "小明", "text": "帮我用英文翻译下面这句话:我是谁"}],
"reply_constraints": {"sender_type": "BOT", "sender_name": "MM智能助理"},
"model": "abab5.5-chat",
"tokens_to_generate": 1034,
"temperature": 0.01,
"top_p": 0.95,
}
headers = {"Content-Type": "application/json", "Authorization": "Bearer " + api_key}
response = requests.request("POST", url, headers=headers, json=payload)
print(response.status_code)
print(response.text)
3.1.5 流式示例
(注:SSE在技术上没有限制HTTP请求method,GET/POST均可以用)
Shell脚本
group_id="请填写您的group_id"
api_key="请填写您的api_key"
curl --location "https://api.minimax.chat/v1/text/chatcompletion_pro?GroupId=${group_id}" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${api_key}" \
--data '{
"bot_setting": [
{
"bot_name": "MM智能助理",
"content": "MM智能助理是一款由MiniMax自研的,没有调用其他产品的接口的大型语言模型。MiniMax是一家中国科技公司,一直致力于进行大模型相关的研究。"
}
],
"messages": [
{
"sender_type": "USER",
"sender_name": "小明",
"text": "帮我用英文翻译下面这句话:我是谁"
}
],
"reply_constraints": {
"sender_type": "BOT",
"sender_name": "MM智能助理"
},
"stream": true,
"model": "abab5.5-chat",
"tokens_to_generate": 1034,
"temperature": 0.01,
"top_p": 0.95
}'
# 样例输出
data: {
"created": 1689747645,
"model": "abab5.5-chat",
"reply": "",
"choices": [
{
"messages": [
{
"sender_type": "BOT",
"sender_name": "MM智能助理",
"text": "Who am I?"
}
]
}
],
"output_sensitive": false
}
data: {
"created": 1689747646,
"model": "abab5.5-chat",
"reply": "Who am I?",
"choices": [
{
"finish_reason": "stop",
"messages": [
{
"sender_type": "BOT",
"sender_name": "MM智能助理",
"text": "Who am I?"
}
]
}
],
"usage": {
"total_tokens": 187
},
"input_sensitive": false,
"output_sensitive": false,
"id": "0106b3bc9fd844a9f3de1aa06004e2ab",
"base_resp": {
"status_code": 0,
"status_msg": ""
}
}
Python
import json
import requests
group_id="请填写您的group_id"
api_key="请填写您的api_key"
def parseChunkDelta(chunkStr):
parsed_data = json.loads(chunkStr[6:])
if "usage" in parsed_data:
return # 当前为流式完结chunk,无增量信息
delta_content = parsed_data["choices"][0]["messages"]
print("delta message: ", delta_content)
url = "https://api.minimax.chat/v1/text/chatcompletion_pro?GroupId=" + group_id
payload = {
"bot_setting": [
{
"bot_name": "MM智能助理",
"content": "MM智能助理是一款由MiniMax自研的,没有调用其他产品的接口的大型语言模型。MiniMax是一家中国科技公司,一直致力于进行大模型相关的研究。",
}
],
"messages": [{"sender_type": "USER", "sender_name": "小明", "text": "帮我用英文翻译下面这句话:我是谁"}],
"reply_constraints": {"sender_type": "BOT", "sender_name": "MM智能助理"},
"model": "abab5.5-chat",
"stream": True,
"tokens_to_generate": 1034,
"temperature": 0.01,
"top_p": 0.95,
}
headers = {"Content-Type": "application/json", "Authorization": "Bearer " + api_key}
response = requests.request("POST", url, headers=headers, json=payload)
response = requests.post(url, headers=headers, json=payload, stream=True)
for chunk in response.iter_lines():
if chunk:
chunkStr = chunk.decode("utf-8")
print(chunkStr)
parseChunkDelta(chunkStr)
# 样例输出
data: {
"created": 1689748384,
"model": "abab5.5-chat",
"reply": "",
"choices": [
{
"messages": [
{
"sender_type": "BOT",
"sender_name": "MM智能助理",
"text": "Who am I?"
}
]
}
],
"output_sensitive": false
}
delta message: [
{
"sender_type":"BOT",
"sender_name":"MM智能助理",
"text":"Who am I?"
}
]
data: {
"created": 1689748384,
"model": "abab5.5-chat",
"reply": "Who am I?",
"choices": [
{
"finish_reason": "stop",
"messages": [
{
"sender_type": "BOT",
"sender_name": "MM智能助理",
"text": "Who am I?"
}
]
}
],
"usage": {
"total_tokens": 187
},
"input_sensitive": false,
"output_sensitive": false,
"id": "0106b69f7a21a753ea55f8f7c311dc07",
"base_resp": {
"status_code": 0,
"status_msg": ""
}
}
请求参数
Query 参数
GroupId
string
必需
用户的groupid,可在查看
示例值:
${group_id}
Header 参数
Authorization
string
给到的 API密钥
Content-Type
string
可选
示例值:
application/json
Body 参数application/json
bot_setting
array [object {2}]
必需
对每一个机器人的设定
bot_name
string
具体机器人的名字
content
string
具体机器人的设定
messages
array [object {3}]
对话内容
sender_type
string
发送者的类型
sender_name
string
发送者的名字
text
string
消息内容
reply_constraints
object
模型回复要求
sender_type
string
指定回复的角色类型
sender_name
string
必需
指定回复的机器人名称
model
string
调用的模型名称
tokens_to_generate
integer
可选
最大生成token数,需要注意的是,这个参数并不会影响模型本身的生成效果,而是仅仅通过以截断超出的token的方式来实现功能
temperature
number
可选
较高的值将使输出更加随机,而较低的值将使输出更加集中和确定。
top_p
number
可选
采样方法,数值越小结果确定性越强;数值越大,结果越随机
示例
{
"bot_setting": [
{
"bot_name": "MM智能助理",
"content": "MM智能助理是一款由MiniMax自研的,没有调用其他产品的接口的大型语言模型。MiniMax是一家中国科技公司,一直致力于进行大模型相关的研究。"
}
],
"messages": [
{
"sender_type": "USER",
"sender_name": "小明",
"text": "帮我用英文翻译下面这句话:我是谁"
}
],
"reply_constraints": {
"sender_type": "BOT",
"sender_name": "MM智能助理"
},
"model": "abab5.5-chat",
"tokens_to_generate": 1034,
"temperature": 0.01,
"top_p": 0.95
}
示例代码
返回响应
成功(200)
HTTP 状态码: 200
内容格式: JSONapplication/json
数据结构
created
integer
请求发起时间
model
string
请求指定的模型名称
reply
string
回复内容
choices
array [object {2}]
所有结果
finish_reason
string
可选
结束原因,枚举值 stop:接口返回了模型生成完整结果 length:模型生成结果超过配置的tokens_to_generate长度,内容被截断 max_output:输入+模型输出内容超过模型最大能力限制
messages
array [object {3}]
回复结果的具体内容
usage
object
必需
tokens数使用情况(流式场景下,增量数据包不含该字段;全量(最后一个)数据包含有该字段)
total_tokens
integer
必需
消耗tokens总数,包括输入和输出(模型以token为基本单位来理解输入和输出)
input_sensitive
boolean
输入命中敏感词
output_sensitive
boolean
输出命中敏感词
id
string
必需
本次请求的唯一标识,用于排查问题
base_resp
object
错误状态码和详情
status_code
integer
必需
状态码(1000,未知错误 1001,超时 1002,触发RPM限流 1004,鉴权失败 1008,余额不足 1013,服务内部错误 1027,输出内容错误 1039,触发TPM限流 2013,输入格式信息不正常)
status_msg
string
错误详情
示例
{
"created": 1689738159,
"model": "abab5.5-chat",
"reply": "Who am I?",
"choices": [
{
"finish_reason": "stop",
"messages": [
{
"sender_type": "BOT",
"sender_name": "MM智能助理",
"text": "Who am I?"
}
]
}
],
"usage": {
"total_tokens": 191
},
"input_sensitive": false,
"output_sensitive": false,
"id": "01068eae26a39a3a39b7bb56cfbe4266",
"base_resp": {
"status_code": 0,
"status_msg": ""
}
}
最后修改时间: 1 年前