资讯 社区 文档
技术能力
语音技术
文字识别
人脸与人体
图像技术
语言与知识
视频技术

Qianfan-Chinese-Llama-2-70B

千帆ModelBuilder团队在Llama-2-70b基础上的中文增强版本,在CMMLU、C-EVAL等中文数据集上表现优异。本文介绍了相关API。

接口描述

调用本接口,发起一次对话请求。

在线调试

平台提供了 API在线调试平台-示例代码 ,用于帮助开发者调试接口,平台集成快速检索、查看开发文档、查看在线调用的请求内容和返回结果、复制和下载示例代码等功能,简单易用,更多内容请查看API在线调试介绍

鉴权说明

本文API,支持2种鉴权方式。不同鉴权方式,调用方式不同,使用Header、Query参数不同,详见本文请求说明。开发者可以选择以下任一种方式进行鉴权。

请求结构

以访问凭证access_token鉴权方式为例,说明调用API请求结构,示例如下。

POST /rpc/2.0/ai_custom/v1/wenxinworkshop/chat/qianfan_chinese_llama_2_70b?access_token=24.4a3a19b******18992 HTTP/1.1
Host: aip.baidubce.com
Content-Type: application/json

{
  "messages": [
    {"role":"user","content":"介绍一下北京"}
   ]
}

请求头域

除公共头域外,无其它特殊头域。注意:鉴权方式不同,对应请求头域不同。

请求参数

  • Query参数

只有访问凭证access_token鉴权方式,需使用Query参数。

访问凭证access_token鉴权

名称 类型 必填 描述
access_token string 通过API Key和Secret Key获取的access_token,参考Access Token获取
  • Body参数
名称 类型 必填 描述
messages List(message) 聊天上下文信息。说明:
(1)messages成员不能为空,1个成员表示单轮对话,多个成员表示多轮对话
(2)最后一个message为当前请求的信息,前面的message为历史对话信息
(3)必须为奇数个成员,成员中message的role必须依次为user、assistant
(4)message中的content总长度不能超过4800 个字符
stream bool 是否以流式接口的形式返回数据,默认false
temperature float 说明:
(1)较高的数值会使输出更加随机,而较低的数值会使其更加集中和确定
(2)范围 (0, 1.0],不能为0
top_k int Top-K 采样参数,在每轮token生成时,保留k个概率最高的token作为候选。说明:
(1)影响输出文本的多样性,取值越大,生成文本的多样性越强
(2)取值范围:正整数
top_p float 说明:
(1)影响输出文本的多样性,取值越大,生成文本的多样性越强
(2)取值范围 [0, 1.0]
penalty_score float 通过对已生成的token增加惩罚,减少重复生成的现象。说明:
(1)值越大表示惩罚越大
(2)取值范围:[1.0, 2.0]
stop List(String) 生成停止标识。当模型生成结果以stop中某个元素结尾时,停止文本生成。说明:
(1)每个元素长度不超过20字符。
(2)最多4个元素
user_id string 表示最终用户的唯一标识符
metadata map<string,string> 说明:
(1)元素个数最大支持16个
(2)key和value必须都是string类型

message说明

名称 类型 描述
role string 当前支持以下:
user: 表示用户
assistant: 表示对话助手
content string 对话内容,不能为空

响应头域

除公共头域外,无其它特殊头域。

响应参数

名称 类型 描述
id string 本轮对话的id
object string 回包类型。
chat.completion:多轮对话返回
created int 时间戳
sentence_id int 表示当前子句的序号。只有在流式接口模式下会返回该字段
is_end bool 表示当前子句是否是最后一句。只有在流式接口模式下会返回该字段
is_truncated bool 当前生成的结果是否被截断
result string 对话返回结果
need_clear_history bool 表示用户输入是否存在安全,是否关闭当前会话,清理历史会话信息
true:是,表示用户输入存在安全风险,建议关闭当前会话,清理历史会话信息
false:否,表示用户输入无安全风险
ban_round int 当need_clear_history为true时,此字段会告知第几轮对话有敏感信息,如果是当前问题,ban_round=-1
usage usage token统计信息

usage说明

名称 类型 描述
prompt_tokens int 问题tokens数
completion_tokens int 回答tokens数
total_tokens int tokens总数

注意 :同步模式和流式模式,响应参数返回不同,详细内容参考示例描述。

  • 同步模式下,响应参数为以上字段的完整json包。
  • 流式模式下,各字段的响应参数为 data: {响应参数}。

请求示例(单轮)

以访问凭证access_token鉴权方式为例,说明如何调用API,示例如下。

# 步骤一,获取access_token,替换下列示例中的应用API Key与应用Secret Key
curl 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=[应用API Key]&client_secret=[应用Secret Key]'

# 步骤二,调用本文API,使用步骤一获取的access_token,替换下列示例中的“调用接口获取的access_token”;

curl -X POST  'https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/qianfan_chinese_llama_2_70b?access_token=[步骤一调用接口获取的access_token]' -d '{
   "messages": [
    {"role":"user","content":"介绍一下北京"}
   ]
}' | iconv -f utf-8 -t utf-8
import requests
import json

def get_access_token():
    """
    使用 API Key,Secret Key 获取access_token,替换下列示例中的应用API Key、应用Secret Key
    """
        
    url = "https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=[应用API Key]&client_secret=[应用Secret Key]"
    
    payload = json.dumps("")
    headers = {
        'Content-Type': 'application/json',
        'Accept': 'application/json'
    }
    
    response = requests.request("POST", url, headers=headers, data=payload)
    return response.json().get("access_token")


def main():
    
    url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/qianfan_chinese_llama_2_70b?access_token=" + get_access_token()
    
    payload = json.dumps({
         "messages": [
            {
                "role": "user",
                "content": "介绍一下北京"
            }
        ]
    })
    headers = {
        'Content-Type': 'application/json'
    }
    
    response = requests.request("POST", url, headers=headers, data=payload)
    
    print(response.text)
    

if __name__ == '__main__':
    main()

响应示例(单轮)

{
  "id": "as-c6qvv4vww1",
  "object": "chat.completion",
  "created": 1706755744,
  "result": "北京是中国的首都,位于中国北部,是中国最大的城市之一。它有着悠久的历史和文化遗产,包括紫禁城、天坛、长城等著名景点。北京也是中国的文化、教育和商业中心,拥有许多高等学府和国际企业。此外,北京还是中国的交通枢纽,拥有现代化的机场、火车站和高速公路系统。北京的美食文化也非常丰富,包括烤鸭、炸酱面、豆汁等传统美食。总的来说,北京是一个充满活力和魅力的城市,值得一游。",
  "is_truncated": false,
  "need_clear_history": false,
  "usage": {
    "prompt_tokens": 2,
    "completion_tokens": 105,
    "total_tokens": 107
  }
}

请求示例(多轮)

# 步骤一,获取access_token,替换下列示例中的应用API Key与应用Secret Key
curl 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=[应用API Key]&client_secret=[应用Secret Key]'

# 步骤二,调用本文API,使用步骤一获取的access_token,替换下列示例中的“调用接口获取的access_token”;
curl -X POST 'https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/qianfan_chinese_llama_2_70b?access_token=[步骤一调用接口获取的access_token]' -d '{
  "messages": [
    {"role":"user","content": "介绍一下北京"},
    {"role":"assistant","content": "北京是中国的首都,位于中国北部,是中国最大的城市之一。它有着悠久的历史和文化遗产,包括紫禁城、天坛、长城等著名景点。北京也是中国的文化、教育和商业中心,拥有许多高等学府和国际企业。此外,北京还是中国的交通枢纽,拥有现代化的机场、火车站和高速公路系统。北京的美食文化也非常丰富,包括烤鸭、炸酱面、豆汁等传统美食。总的来说,北京是一个充满活力和魅力的城市,值得一游。"},
    {"role":"user","content": "介绍一下故宫"}
  ]
}'  | iconv -f utf-8 -t utf-8
import requests
import json

def get_access_token():
    """
    使用 API Key,Secret Key 获取access_token,替换下列示例中的应用API Key、应用Secret Key
    """
        
    url = "https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=[应用API Key]&client_secret=[应用Secret Key]"
    
    payload = json.dumps("")
    headers = {
        'Content-Type': 'application/json',
        'Accept': 'application/json'
    }
    
    response = requests.request("POST", url, headers=headers, data=payload)
    return response.json().get("access_token")

def main():
     
    url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/qianfan_chinese_llama_2_70b?access_token=" + get_access_token()
    
    payload = json.dumps({
        "messages": [
            {
                "role": "user",
                "content": "介绍一下北京"
            },
            {
                "role": "assistant",
                "content": "北京是中国的首都,位于中国北部,是中国最大的城市之一。它有着悠久的历史和文化遗产,包括紫禁城、天坛、长城等著名景点。北京也是中国的文化、教育和商业中心,拥有许多高等学府和国际企业。此外,北京还是中国的交通枢纽,拥有现代化的机场、火车站和高速公路系统。北京的美食文化也非常丰富,包括烤鸭、炸酱面、豆汁等传统美食。总的来说,北京是一个充满活力和魅力的城市,值得一游。"
            },
            {
                "role": "user",
                "content": "介绍一下故宫"
            }
        ]
    })
    headers = {
        'Content-Type': 'application/json'
    }
    
    response = requests.request("POST", url, headers=headers, data=payload)
    
    print(response.text)
    

if __name__ == '__main__':
    main()

响应示例(多轮)

{
  "id": "as-ajn7hzxa2b",
  "object": "chat.completion",
  "created": 1706755925,
  "result": "故宫,又称紫禁城,位于中国北京市中心,是明清两代的皇宫,也是中国最著名的古建筑之一。故宫始建于明朝永乐年间,历经多次扩建和修缮,成为中国封建王朝的中心,也是中国传统文化的重要代表之一。\n故宫占地面积约72万平方米,建筑面积约15万平方米,共有九千余间房屋,是世界上最大的古代宫殿建筑群之一。故宫的建筑风格典雅庄重,色彩鲜艳,装饰精美,是中国古代建筑艺术的杰出代表。\n故宫的建筑布局严谨有序,分为外朝和内廷两部分。外朝是皇帝处理政务和举行重要仪式的地方,包括三大殿和六大院。内廷是皇帝和后妃居住的地方,包括后宫、御花园和太和殿等。\n故宫的收藏品丰富多彩,包括文物、书画、器物、珠宝等,其中最著名的是故宫博物院的文物收藏,包括了中国历史上各个时期的文物珍品,如《清明上河图》、《千里江山图》等。\n故宫是中国文化的重要象征,也是世界文化遗产之一。每年吸引着数百万游客前来参观,感受中国古代文化的魅力。",
  "is_truncated": false,
  "need_clear_history": false,
  "usage": {
    "prompt_tokens": 109,
    "completion_tokens": 236,
    "total_tokens": 345
  }
}

请求示例(流式)

# 步骤一,获取access_token,替换下列示例中的应用API Key与应用Secret Key
curl 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=[应用API Key]&client_secret=[应用Secret Key]'

# 步骤二,调用本文API,使用步骤一获取的access_token,替换下列示例中的“调用接口获取的access_token”;
curl -X POST 'https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/qianfan_chinese_llama_2_70b?access_token=[步骤一调用接口获取的access_token]' -d '{
  "messages": [
    {"role":"user", "content": "给我推荐一些自驾游路线"}
  ],
  "stream": true
}'
import requests
import json

def get_access_token():
    """
    使用 API Key,Secret Key 获取access_token,替换下列示例中的应用API Key、应用Secret Key
    """
        
    url = "https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=[应用API Key]&client_secret=[应用Secret Key]"
    
    payload = json.dumps("")
    headers = {
        'Content-Type': 'application/json',
        'Accept': 'application/json'
    }
    
    response = requests.request("POST", url, headers=headers, data=payload)
    return response.json().get("access_token")
def main():
      
    url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/qianfan_chinese_llama_2_70b?access_token=" + get_access_token()
    
    payload = json.dumps({
        "messages": [
            {
                "role": "user",
                "content": "给我推荐一些自驾游路线"
            }
        ],
         "stream": True
    })
    headers = {
        'Content-Type': 'application/json'
    }
    
    response = requests.request("POST", url, headers=headers, data=payload, stream=True)
    
    for line in response.iter_lines():
        print(line.decode("UTF-8"))
    

if __name__ == '__main__':
    main()

响应示例(流式)

data: {"id":"as-ywwpgx4dt7","object":"chat.completion","created":1680166793,"sentence_id":0,"is_end":false,"is_truncated":false,"result":"以下是一些适合自驾游的路线推荐:\n\n1.","need_clear_history":false,"usage":{"prompt_tokens":11,"completion_tokens":16,"total_tokens":27}}

data: {"id":"as-ywwpgx4dt7","object":"chat.completion","created":1680166794,"sentence_id":1,"is_end":false,"is_truncated":false,"result":" 中国大陆最美的景观大道:川藏线,从成都出发,沿着川藏公路一路向西,经过稻城亚丁、理塘、巴塘、芒康等美景,最终到达拉萨。","need_clear_history":false,"usage":{"prompt_tokens":11,"completion_tokens":50,"total_tokens":77}}

data: {"id":"as-ywwpgx4dt7","object":"chat.completion","created":1680166795,"sentence_id":2,"is_end":false,"is_truncated":false,"result":"\n2. 丝绸之路:这是一条贯穿中国东西部的公路,从上海出发,经过西安、兰州、乌鲁木齐等城市,最终到达喀什。","need_clear_history":false,"usage":{"prompt_tokens":11,"completion_tokens":43,"total_tokens":120}}

data: {"id":"as-ywwpgx4dt7","object":"chat.completion","created":1680166796,"sentence_id":3,"is_end":false,"is_truncated":false,"result":"沿途可以欣赏到中国北方和南方的不同景色。\n3. 西北大环线:从成都出发,经过都江堰、青城山、丹巴、塔公草原、新都桥等景点,最终到达西宁。","need_clear_history":false,"usage":{"prompt_tokens":11,"completion_tokens":56,"total_tokens":176}}

data: {"id":"as-ywwpgx4dt7","object":"chat.completion","created":1680166799,"sentence_id":4,"is_end":false,"is_truncated":false,"result":"这条路线可以领略到中国西北地区的壮美风光。\n4. 东北环线:从沈阳出发,经过长春、吉林、延吉等城市,最终到达哈尔滨。","need_clear_history":false,"usage":{"prompt_tokens":11,"completion_tokens":48,"total_tokens":224}}

data: {"id":"as-ywwpgx4dt7","object":"chat.completion","created":1680166800,"sentence_id":5,"is_end":false,"is_truncated":false,"result":"沿途可以欣赏到中国东北地区的广阔草原和森林。\n5. 西南环线:从成都出发,经过雅安、康定、理塘、稻城亚丁等景点,最终到达香格里拉。","need_clear_history":false,"usage":{"prompt_tokens":11,"completion_tokens":54,"total_tokens":278}}

data: {"id":"as-ywwpgx4dt7","object":"chat.completion","created":1680166802,"sentence_id":6,"is_end":false,"is_truncated":false,"result":"这条路线可以领略到中国西南地区的高山峡谷和民族文化。\n6. 海南环线:从三亚出发,经过海口、文昌、万宁等城市,最终到达三亚。","need_clear_history":false,"usage":{"prompt_tokens":11,"completion_tokens":52,"total_tokens":330}}

data: {"id":"as-ywwpgx4dt7","object":"chat.completion","created":1680166803,"sentence_id":7,"is_end":false,"is_truncated":false,"result":"这条路线可以欣赏到中国南方的海岸线和热带雨林。\n7. 滇藏线:从昆明出发,经过大理、丽江、香格里拉等景点,最终到达西藏拉萨。","need_clear_history":false,"usage":{"prompt_tokens":11,"completion_tokens":52,"total_tokens":382}}

data: {"id":"as-ywwpgx4dt7","object":"chat.completion","created":1680166804,"sentence_id":8,"is_end":true,"is_truncated":false,"result":"这条路线可以领略到中国西南地区和西藏地区的自然风光和人文景观。","need_clear_history":false,"usage":{"prompt_tokens":11,"completion_tokens":30,"total_tokens":412}}

错误码

如果请求错误,服务器返回的JSON文本包含以下参数。

名称 描述
error_code 错误码
error_msg 错误描述信息,帮助理解和解决发生的错误

例如Access Token失效返回以下内容,需要重新获取新的Access Token再次请求。

{
  "error_code": 110,
  "error_msg": "Access token invalid or no longer valid"
}

更多相关错误码,请查看错误码说明

上一篇
Qianfan-Llama-2-70B-compressed
下一篇
Qianfan-Chinese-Llama-2-1.3B