百川

更新时间:2025-03-31 04:24:24

Baichuan2-Turbo系列模型是百川智能推出的大语言模型,采用搜索增强技术实现大模型与领域知识、全网知识的全面链接。

模型概览

模型名称

上下文长度

最大输入

输入成本

输出成本

免费额度

(注)

(Token数)

(每千Token)

模型名称

上下文长度

最大输入

输入成本

输出成本

免费额度

(注)

(Token数)

(每千Token)

baichuan2-turbo

32,000

32,000

目前仅供免费体验。

免费额度用完后不可调用,敬请关注后续动态。

100Token(需申请)

有效期:申请通过后180天内

关于调用频率限制,请参见限流

SDK使用

前提条件

文本生成

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

Python
Java
import os
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(
        # 若没有配置环境变量,请用百炼API Key将下行替换为:api_key="sk-xxx",
        api_key=os.getenv('DASHSCOPE_API_KEY'),
        model='baichuan2-turbo', # 此处以baichuan2-turbo为例,可按需更换模型名称。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
        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 java.util.Arrays;
import java.lang.System;
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 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()
            // 若没有配置环境变量,请用百炼API Key将下行替换为:.apiKey("sk-xxx")
            .apiKey(System.getenv("DASHSCOPE_API_KEY"))
            // 此处以baichuan2-turbo为例,可按需更换模型名称。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
            .model("baichuan2-turbo")
            .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) {
            // 使用日志框架记录异常信息
            // Logger.error("An error occurred while calling the generation service", e);
            System.err.println("An error occurred while calling the generation service: " + e.getMessage());
        }
        System.exit(0);
    }
}

参数配置

参数

类型

默认值

说明

参数

类型

默认值

说明

model

string

-

模型名称。

messages

list dict

-

用户输入的内容,dict内主要包含2key:rolecontent,其中role支持user、assistant、system,content为对应roletext输入。

temperature

float

0.3

取值范围: [.0f, 1.0f]。 多样性,越高,多样性越好, 缺省 0.3。

top_p

float

0.85

取值范围: [.0f, 1.0f)。值越小,越容易出头部, 缺省 0.85

top_k

int

5

取值范围:[0, 20]。搜索采样控制参数,越大,采样集大, 0 则不走 top_k 采样筛选策略,最大20(超过 20会被修正成20),默认取值5。

max_tokens

int

2048

回答产生的最大token数。

baichuan2-turbo,取值范围[1,8192],默认取值2048。

baichuan2-turbo-192k,取值范围[1,2048],默认取值2048。

返回结果

  • 返回结果示例

JSON
{
    "output": {
        "choices": [
            {
                "message": {
                    "content": "你好,有什么我可以帮助你的吗?",
                    "role": "assistant"
                },
                "index": 0,
                "finish_reason": "stop"
            }
        ]
    },
    "usage": {
        "total_tokens": 12,
        "input_tokens": 3,
        "output_tokens": 9
    },
    "request_id": "8673e696-ee22-9ed0-9c35-b8673d4b87bc"
}
  • 返回参数说明

返回参数

类型

说明

返回参数

类型

说明

status_code

int

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

request_Id

string

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

code

string

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

message

string

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

output

dict

调用结果信息。

output.choise[list]

list

返回结果列表

output.choise[x].finish_reason

string

停止原因

output.choise[x].message

string

返回结果

output.choise[x].message.role

string

返回结果role

output.choise[x].message.content

string

返回结果内容

usage

dict

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

usage.input_tokens

int

用户输入文本转换成Token后的长度。

usage.output_tokens

int

模型生成回复转换为Token后的长度。

usage.total_tokens

int

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

HTTP调用接口

功能描述

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

前提条件

您需要已获取API Key配置API Key到环境变量

提交接口调用

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

指明需要调用的模型,固定值baichuan2-turbo、baichuan2-turbo-192k

baichuan2-turbo

input.messages

list

用户输入的内容,dict内主要包含2key:rolecontent,其中role支持user、assistant、system,content为对应roletext输入。

[

{"role": "system", "content": "You are a helpful assistant."},

{"role": "user",

"content": "你好,请介绍一下故宫"}

]

parameters.temperature

float

取值范围: [.0f, 1.0f]。 多样性,越高,多样性越好, 缺省 0.3。

0.3

parameters.top_p

float

取值范围: [.0f, 1.0f)。值越小,越容易出头部, 缺省0.85。

0.85

parameters.top_k

int

取值范围:[0, 20]。搜索采样控制参数,越大,采样集大,0则不走top_k采样筛选策略,最大20(超过20会被修正成20),缺省 5。

5

parameters.max_tokens

int

回答产生的最大token数。

baichuan2-turbo,取值范围[1,8192],默认取值2048。

baichuan2-turbo-192k,取值范围[1,2048],默认取值2048。

2048

出参描述

字段

类型

描述

示例值

字段

类型

描述

示例值

status_code

int

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

200

request_Id

string

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

7574ee8f-38a3-4b1e-9280-

11c33ab46e51

output.choise[x].finish_reason

string

停止原因

stop

output.choise[x].message.role

string

返回结果role

assistant

output.choise[x].message.content

string

返回结果内容

你好,有什么我可以帮助你的吗?

usage

dict

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

"usage": {

"total_tokens": 12,

"input_tokens": 3,

"output_tokens": 9

}

usage.input_tokens

int

用户输入文本转换成Token后的长度。

3

usage.output_tokens

int

模型生成回复转换为Token后的长度。

9

usage.total_tokens

int

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

12

请求示例

以下示例展示通过CURL命令来调用baichuan2-turbo模型的脚本。

说明

若没有配置环境变量,需要使用您的百炼API Key替换$DASHSCOPE_API_KEY代码才能正常运行。

curl
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": "baichuan2-turbo",
    "input":{
        "messages":[      
            {
                "role": "system",
                "content": "You are a helpful assistant."
            },
            {
                "role": "user",
                "content": "你好"
            }
        ]
    }
}'

响应示例

JSON
{
    "output": {
        "choices": [
            {
                "message": {
                    "content": "你好,有什么我可以帮助你的吗?",
                    "role": "assistant"
                },
                "index": 0,
                "finish_reason": "stop"
            }
        ]
    },
    "usage": {
        "total_tokens": 12,
        "input_tokens": 3,
        "output_tokens": 9
    },
    "request_id": "8673e696-ee22-9ed0-9c35-b8673d4b87bc"
}

异常响应示例

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

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

状态码说明

大模型服务平台通用状态码请查阅:错误信息

  • 本页导读 (1)
  • 模型概览
  • SDK使用
  • 前提条件
  • 文本生成
  • 参数配置
  • 返回结果
  • HTTP调用接口
  • 功能描述
  • 前提条件
  • 提交接口调用
  • 入参描述
  • 出参描述
  • 请求示例
  • 响应示例
  • 异常响应示例
  • 状态码说明
AI助理

点击开启售前

在线咨询服务

你好,我是AI助理

可以解答问题、推荐解决方案等