Falcon-40B-Instruct
Falcon-40B-Instruct由TII研发的仅使用解码器的模型,并在Baize的混合数据集上进行微调,具备优异的推理效果。本文介绍了相关API。
功能介绍
调用本接口,发起一次对话请求。
在线调试
平台提供了 API在线调试平台-示例代码 ,用于帮助开发者调试接口,平台集成快速检索、查看开发文档、查看在线调用的请求内容和返回结果、复制和下载示例代码等功能,简单易用,更多内容请查看API在线调试介绍。
HTTP调用
鉴权说明
本文API,支持2种鉴权方式。不同鉴权方式,调用方式不同,使用Header、Query参数不同,详见本文请求说明。开发者可以选择以下任一种方式进行鉴权。
· 访问凭证access_token鉴权
· 基于安全认证AK/SK进行签名计算鉴权
请求说明
- 基本信息
请求地址: https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/{创建服务时填写的API地址}
请求方式: POST
- API地址说明
创建服务时填写的API地址,相关内容请查看模型服务-在线服务-服务配置。
- Header参数
根据不同鉴权方式,查看对应Header参数。
访问凭证access_token鉴权
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
Content-Type | string | 是 | 固定值application/json |
基于安全认证AK/SK进行签名计算鉴权
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
Content-Type | string | 是 | 固定值application/json |
x-bce-date | string | 否 | 当前时间,遵循ISO8601规范,格式如2016-04-06T08:23:49Z |
Authorization | string | 是 | 用于验证请求合法性的认证信息,更多内容请参考鉴权认证机制,签名工具可参考IAM签名工具 |
- 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 | 否 | 表示最终用户的唯一标识符 |
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”;替换示例中的创建服务时填写的API名称
curl -X POST 'https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/[创建服务时填写的API名称]?access_token=[步骤一调用接口获取的access_token]' -d '{
"messages": [
{"role":"user","content":"Please introduce The Great Wall"}
]
}' | 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():
"""
替换下列示例中的创建服务时填写的API名称
"""
url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/[创建服务时填写的API名称]?access_token=" + get_access_token()
payload = json.dumps({
"messages": [
{
"role": "user",
"content": "Please introduce The Great Wall"
}
]
})
headers = {
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
if __name__ == '__main__':
main()
响应示例(单轮)
HTTP/1.1 200 OK
Date: Thu, 23 Mar 2023 03:12:03 GMT
Content-Type: application/json;charset=utf-8
Statement: AI-generated
{
"id": "as-v1tqiiqgg4",
"object": "chat.completion",
"created": 1702551146,
"result": " Hello! I'm happy to help you with your question. The Great Wall of China is an ancient series of fortifications built across the northern borders of China to protect the Chinese Empire from invasions by nomadic tribes. It was constructed over the course of many centuries, with the first versions of the wall being built as early as the 7th century BC. The wall was continuously expanded and fortified over time, with the most famous and impressive sections being built during the Ming Dynasty (1368-1644).\n\nThe Great Wall stretches for over 4,000 miles, making it one of the longest structures ever built. It was originally built to be up to 30 feet high and up to 25 feet wide, with watchtowers and beacon towers spaced at regular intervals. The wall was designed to be impenetrable, with its thick stone and brick construction making it difficult for invaders to breach.\n\nThe Great Wall is not only an engineering marvel but also a testament to the ingenuity and determination of the Chinese people. It has become a symbol of China's rich history and culture, and is now one of the most popular tourist attractions in the country. Visitors can walk or hike along certain sections of the wall, taking in the stunning views of the surrounding countryside and learning about the history of this incredible structure.\n\nI hope this introduction to the Great Wall has been helpful! Is there anything else you would like to know about this amazing historical site?",
"is_truncated": false,
"need_clear_history": false,
"usage": {
"prompt_tokens": 5,
"completion_tokens": 320,
"total_tokens": 325
}
}
请求示例(多轮)
# 步骤一,获取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”;替换示例中的创建服务时填写的API名称
curl -X POST 'https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/[创建服务时填写的api名称}]?access_token=[步骤一调用接口获取的access_token]' -d '{
"messages": [
{"role":"user","content":"Please introduce The Great Wall"},
{"role":"assistant","content":"Hello! I'm happy to help you with your question. The Great Wall of China is an ancient series of fortifications built across the northern borders of China to protect the Chinese Empire from invasions by nomadic tribes. It was constructed over the course of many centuries, with the first versions of the wall being built as early as the 7th century BC. The wall was continuously expanded and fortified over time, with the most famous and impressive sections being built during the Ming Dynasty (1368-1644).\n\nThe Great Wall stretches for over 4,000 miles, making it one of the longest structures ever built. It was originally built to be up to 30 feet high and up to 25 feet wide, with watchtowers and beacon towers spaced at regular intervals. The wall was designed to be impenetrable, with its thick stone and brick construction making it difficult for invaders to breach.\n\nThe Great Wall is not only an engineering marvel but also a testament to the ingenuity and determination of the Chinese people. It has become a symbol of China's rich history and culture, and is now one of the most popular tourist attractions in the country. Visitors can walk or hike along certain sections of the wall, taking in the stunning views of the surrounding countryside and learning about the history of this incredible structure.\n\nI hope this introduction to the Great Wall has been helpful! Is there anything else you would like to know about this amazing historical site?"},
{"role":"user","content": "Please introduce Beijing"}
]
}' | 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():
"""
替换下列示例中的创建服务时填写的API名称
"""
url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/[创建服务时填写的API名称]?access_token=" + get_access_token()
payload = json.dumps({
"messages": [
{
"role": "user",
"content": "Please introduce The Great Wall"
},
{
"role": "assistant",
"content": "Hello! I'm happy to help you with your question. The Great Wall of China is an ancient series of fortifications built across the northern borders of China to protect the Chinese Empire from invasions by nomadic tribes. It was constructed over the course of many centuries, with the first versions of the wall being built as early as the 7th century BC. The wall was continuously expanded and fortified over time, with the most famous and impressive sections being built during the Ming Dynasty (1368-1644).\n\nThe Great Wall stretches for over 4,000 miles, making it one of the longest structures ever built. It was originally built to be up to 30 feet high and up to 25 feet wide, with watchtowers and beacon towers spaced at regular intervals. The wall was designed to be impenetrable, with its thick stone and brick construction making it difficult for invaders to breach.\n\nThe Great Wall is not only an engineering marvel but also a testament to the ingenuity and determination of the Chinese people. It has become a symbol of China's rich history and culture, and is now one of the most popular tourist attractions in the country. Visitors can walk or hike along certain sections of the wall, taking in the stunning views of the surrounding countryside and learning about the history of this incredible structure.\n\nI hope this introduction to the Great Wall has been helpful! Is there anything else you would like to know about this amazing historical site?"
},
{
"role": "user",
"content": "Please introduce Beijing"
}
]
})
headers = {
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
if __name__ == '__main__':
main()
响应示例(多轮)
HTTP/1.1 200 OK
Date: Mon, 12 Apr 2021 06:27:55 GMT
Content-Type: application/json;charset=utf-8
Statement: AI-generated
{
"id": "as-bx27f2i6cp",
"object": "chat.completion",
"created": 1702551504,
"result": " Hello! I'd be happy to introduce Beijing, the capital city of China. Beijing is a city with a rich history dating back over 3,000 years, and it has been the capital of China for over 800 years. It is known for its cultural and historical landmarks, as well as its vibrant modern society.\n\nBeijing is located in the northern part of China, and it is the country's second-largest city after Shanghai. It has a population of over 21 million people, and it is a major transportation hub with a large international airport, a busy train station, and an extensive network of buses and subways.\n\nBeijing is perhaps most famous for its many UNESCO World Heritage Sites, including the Great Wall of China, the Forbidden City, and the Temple of Heaven. The Great Wall is a fortification that was built over several centuries to protect China from invaders, and it stretches for over 4,000 miles. The Forbidden City is a palace complex that was the residence of Chinese emperors for over 500 years, and it is home to many important historical artifacts. The Temple of Heaven is a beautiful Taoist temple that was used by emperors for ceremonies and sacrifices.\n\nIn addition to its historical landmarks, Beijing is also known for its vibrant cultural scene. The city has a thriving arts community, with many museums, galleries, and performance venues. Beijing is also famous for its cuisine, with many traditional dishes such as Peking duck, jiaozi (dumplings), and zhajiangmian (noodles with fermented soybean paste).\n\nBeijing has hosted many major international events, including the 2008 Summer Olympics and the 2014 APEC Summit. The city is also home to many universities and research institutions, making it a hub for education and innovation.\n\nOverall, Beijing is a city that offers a unique blend of history, culture, and modernity, and it is a must-visit destination for anyone interested in exploring China's rich heritage and contemporary society.",
"is_truncated": false,
"need_clear_history": false,
"usage": {
"prompt_tokens": 328,
"completion_tokens": 448,
"total_tokens": 776
}
}
请求示例(流式)
# 步骤一,获取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”;替换示例中的创建服务时填写的API名称
curl -X POST 'https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/[创建服务时填写的API名称]?access_token=[步骤一调用接口获取的access_token]' -d '{
"messages": [
{"role":"user", "content": "Please introduce The Great Wall"}
],
"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():
"""
替换下列示例中的创建服务时填写的API名称
"""
url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/[创建服务时填写的API名称]?access_token=" + get_access_token()
payload = json.dumps({
"messages": [
{
"role": "user",
"content": "Please introduce The Great Wall"
}
],
"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()
响应示例(流式)
HTTP/1.1 200 OK
Date: Mon, 12 Apr 2021 06:27:55 GMT
Content-Type: text/event-stream;charset=utf-8
Cache-Control: no-cache
Statement: AI-generated
data: {"id":"as-2m3nh3th6b","object":"chat.completion","created":1702551868,"sentence_id":0,"is_end":false,"is_truncated":false,"result":" Hello! I'm happy to help you with your question. The Great Wall of China is an ancient series of fortifications built to protect the Chinese Empire from invasions by foreign enemies, particularly the nomadic tribes from the north. It stretches for over 4,000 miles, making it one of the longest structures ever built.\n\nThe Great Wall was constructed over several centuries, with the first versions being built as ","need_clear_history":false,"usage":{"prompt_tokens":5,"completion_tokens":0,"total_tokens":5}}
data: {"id":"as-2m3nh3th6b","object":"chat.completion","created":1702551874,"sentence_id":1,"is_end":false,"is_truncated":false,"result":"early as the 7th century BC. It was continuously expanded and fortified over time, with the most famous and well-preserved sections being built during the Ming Dynasty (1368-1644).\n\nThe Great Wall is not only an engineering marvel but also a testament to the ingenuity and determination of the Chinese people. It's a popular tourist destination, with many visitors each year walking or hiking along its historic paths.\n\nIt's important to ","need_clear_history":false,"usage":{"prompt_tokens":5,"completion_tokens":0,"total_tokens":5}}
data: {"id":"as-2m3nh3th6b","object":"chat.completion","created":1702551880,"sentence_id":2,"is_end":true,"is_truncated":false,"result":"note that while the Great Wall is an incredible feat of engineering and history, it's not without controversy. Some sections of the wall have been damaged or destroyed over time, and there are concerns about the impact of tourism on the structure's preservation. Additionally, it's important to recognize the cultural and historical context of the wall, and to be respectful of the communities and traditions that it represents.","need_clear_history":false,"usage":{"prompt_tokens":5,"completion_tokens":276,"total_tokens":281}}
SDK调用
平台支持通过Python SDK、Go SDK、Java SDK 和 Node.js SDK调用本文API,SDK调用说明文档请参考推理服务V1-对话Chat文档。
错误码
如果请求错误,服务器返回的JSON文本包含以下参数。
名称 | 描述 |
---|---|
error_code | 错误码 |
error_msg | 错误描述信息,帮助理解和解决发生的错误 |
例如Access Token失效返回以下内容,需要重新获取新的Access Token再次请求。
{
"error_code": 110,
"error_msg": "Access token invalid or no longer valid"
}
更多相关错误码,请查看错误码说明。