請求體
POST
/chat/completions
調試
文本輸入
Python import os
from openai import OpenAI
client = OpenAI(
# 若沒有配置環境變數,請用百鍊API Key將下行替換為:api_key="sk-xxx"
# 各地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
api_key=os.getenv("DASHSCOPE_API_KEY"),
# 請將{WorkspaceId}替換為真實的業務空間ID,各地區URL不同。
base_url="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(
# 此處以qwen-plus為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
model="qwen-plus",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "你是誰?"},
],
# extra_body={"enable_thinking": False},
)
print(completion.model_dump_json())
Java // 該代碼 OpenAI SDK 版本為 2.6.0
import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.models.chat.completions.ChatCompletion;
import com.openai.models.chat.completions.ChatCompletionCreateParams;
public class Main {
public static void main(String[] args) {
OpenAIClient client = OpenAIOkHttpClient.builder()
// 各地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
.apiKey(System.getenv("DASHSCOPE_API_KEY"))
// 請將{WorkspaceId}替換為真實的業務空間ID,各地區URL不同。
.baseUrl("https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1")
.build();
ChatCompletionCreateParams params = ChatCompletionCreateParams.builder()
.addUserMessage("你是誰")
.model("qwen-plus")
.build();
try {
ChatCompletion chatCompletion = client.chat().completions().create(params);
System.out.println(chatCompletion);
} catch (Exception e) {
System.err.println("Error occurred: " + e.getMessage());
e.printStackTrace();
}
}
}
Node.js import OpenAI from "openai";
const openai = new OpenAI(
{
// 若沒有配置環境變數,請用百鍊API Key將下行替換為:apiKey: "sk-xxx",
// 各地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
apiKey: process.env.DASHSCOPE_API_KEY,
// 請將{WorkspaceId}替換為真實的業務空間ID,各地區URL不同。
baseURL: "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1"
}
);
async function main() {
const completion = await openai.chat.completions.create({
model: "qwen-plus", //此處以qwen-plus為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
messages: [
{ role: "system", content: "You are a helpful assistant." },
{ role: "user", content: "你是誰?" }
],
});
console.log(JSON.stringify(completion))
}
main();
Go package main
import (
"context"
"os"
"github.com/openai/openai-go"
"github.com/openai/openai-go/option"
)
func main() {
client := openai.NewClient(
// 各地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
option.WithAPIKey(os.Getenv("DASHSCOPE_API_KEY")), // defaults to os.LookupEnv("OPENAI_API_KEY")
// 請將{WorkspaceId}替換為真實的業務空間ID,各地區URL不同。
option.WithBaseURL("https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/"),
)
chatCompletion, err := client.Chat.Completions.New(
context.TODO(), openai.ChatCompletionNewParams{
Messages: openai.F(
[]openai.ChatCompletionMessageParamUnion{
openai.UserMessage("你是誰"),
},
),
Model: openai.F("qwen-plus"),
},
)
if err != nil {
panic(err.Error())
}
println(chatCompletion.Choices[0].Message.Content)
}
C#(HTTP) using System.Net.Http.Headers;
using System.Text;
class Program
{
private static readonly HttpClient httpClient = new HttpClient();
static async Task Main(string[] args)
{
// 若沒有配置環境變數,請用百鍊API Key將下行替換為:string? apiKey = "sk-xxx";
// 各地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
string? apiKey = Environment.GetEnvironmentVariable("DASHSCOPE_API_KEY");
if (string.IsNullOrEmpty(apiKey))
{
Console.WriteLine("API Key 未設定。請確保環境變數 'DASHSCOPE_API_KEY' 已設定。");
return;
}
// 佈建要求 URL 和內容
// 請將{WorkspaceId}替換為真實的業務空間ID,各地區URL不同。chat/completions
string url = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions";
// 此處以qwen-plus為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
string jsonContent = @"{
""model"": ""qwen-plus"",
""messages"": [
{
""role"": ""system"",
""content"": ""You are a helpful assistant.""
},
{
""role"": ""user"",
""content"": ""你是誰?""
}
]
}";
// 發送請求並擷取響應
string result = await SendPostRequestAsync(url, jsonContent, apiKey);
// 輸出結果
Console.WriteLine(result);
}
private static async Task<string> SendPostRequestAsync(string url, string jsonContent, string apiKey)
{
using (var content = new StringContent(jsonContent, Encoding.UTF8, "application/json"))
{
// 佈建要求頭
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", apiKey);
httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
// 發送請求並擷取響應
HttpResponseMessage response = await httpClient.PostAsync(url, content);
// 處理響應
if (response.IsSuccessStatusCode)
{
return await response.Content.ReadAsStringAsync();
}
else
{
return $"請求失敗: {response.StatusCode}";
}
}
}
}
PHP(HTTP) <?php
// 佈建要求的URL
// 請將{WorkspaceId}替換為真實的業務空間ID,各地區URL不同。chat/completions
$url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions';
// 若沒有配置環境變數,請用百鍊API Key將下行替換為:$apiKey = "sk-xxx";
// 各地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
$apiKey = getenv('DASHSCOPE_API_KEY');
// 佈建要求頭
$headers = [
'Authorization: Bearer '.$apiKey,
'Content-Type: application/json'
];
// 佈建要求體
$data = [
// 此處以qwen-plus為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
"model" => "qwen-plus",
"messages" => [
[
"role" => "system",
"content" => "You are a helpful assistant."
],
[
"role" => "user",
"content" => "你是誰?"
]
]
];
// 初始化cURL會話
$ch = curl_init();
// 設定cURL選項
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
// 執行cURL會話
$response = curl_exec($ch);
// 檢查是否有錯誤發生
if (curl_errno($ch)) {
echo 'Curl error: ' . curl_error($ch);
}
// 關閉cURL資源
curl_close($ch);
// 輸出響應結果
echo $response;
?>
curl
請將{WorkspaceId}替換為真實的業務空間ID,各地區URL不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key curl -X POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen-plus",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "你是誰?"
}
]
}'
流式輸出
更多用法請參見流式輸出 。
Python import os
from openai import OpenAI
client = OpenAI(
# 若沒有配置環境變數,請用百鍊API Key將下行替換為:api_key="sk-xxx"
# 各地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
api_key=os.getenv("DASHSCOPE_API_KEY"),
base_url="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(
model="qwen-plus", # 此處以qwen-plus為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
messages=[{'role': 'system', 'content': 'You are a helpful assistant.'},
{'role': 'user', 'content': '你是誰?'}],
stream=True,
stream_options={"include_usage": True}
)
for chunk in completion:
print(chunk.model_dump_json())
Node.js import OpenAI from "openai";
const openai = new OpenAI(
{
// 各地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
apiKey: process.env.DASHSCOPE_API_KEY,
baseURL: "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1"
}
);
async function main() {
const completion = await openai.chat.completions.create({
model: "qwen-plus", // 此處以qwen-plus為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
messages: [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "你是誰?"}
],
stream: true,
});
for await (const chunk of completion) {
console.log(JSON.stringify(chunk));
}
}
main();
curl
請將{WorkspaceId}替換為真實的業務空間ID,各地區URL不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key curl --location "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions" \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"model": "qwen-plus",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "你是誰?"
}
],
"stream":true
}'
映像輸入
關於大模型分析映像的更多用法,請參見映像與視頻理解 。
Python import os
from openai import OpenAI
client = OpenAI(
# 若沒有配置環境變數,請用百鍊API Key將下行替換為:api_key="sk-xxx"
# 各地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
api_key=os.getenv("DASHSCOPE_API_KEY"),
base_url="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(
model="qwen-vl-plus", # 此處以qwen-vl-plus為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/models
messages=[{"role": "user","content": [
{"type": "image_url",
"image_url": {"url": "https://dashscope.oss-cn-beijing.aliyuncs.com/images/dog_and_girl.jpeg"}},
{"type": "text", "text": "這是什麼"},
]}]
)
print(completion.model_dump_json())
Node.js import OpenAI from "openai";
const openai = new OpenAI(
{
// 各地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
apiKey: process.env.DASHSCOPE_API_KEY,
baseURL: "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1"
}
);
async function main() {
const response = await openai.chat.completions.create({
model: "qwen-vl-max", // 此處以qwen-vl-max為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/models
messages: [{role: "user",content: [
{ type: "image_url",image_url: {"url": "https://dashscope.oss-cn-beijing.aliyuncs.com/images/dog_and_girl.jpeg"}},
{ type: "text", text: "這是什嗎?" },
]}]
});
console.log(JSON.stringify(response));
}
main();
curl
請將{WorkspaceId}替換為真實的業務空間ID,各地區URL不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key curl -X POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"model": "qwen-vl-plus",
"messages": [{
"role": "user",
"content": [
{"type": "image_url","image_url": {"url": "https://dashscope.oss-cn-beijing.aliyuncs.com/images/dog_and_girl.jpeg"}},
{"type": "text","text": "這是什麼"}
]}]
}'
視頻輸入
以下為傳入圖片列表的範例程式碼,關於更多用法(如傳入的視訊檔案),請參見視覺理解 。
Python import os
from openai import OpenAI
client = OpenAI(
# 若沒有配置環境變數,請用百鍊API Key將下行替換為:api_key="sk-xxx"
# 各地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
api_key=os.getenv("DASHSCOPE_API_KEY"),
base_url="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(
# 此處以qwen-vl-max為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/models
model="qwen-vl-max",
messages=[{
"role": "user",
"content": [
{
"type": "video",
"video": [
"https://img.alicdn.com/imgextra/i3/O1CN01K3SgGo1eqmlUgeE9b_!!6000000003923-0-tps-3840-2160.jpg",
"https://img.alicdn.com/imgextra/i4/O1CN01BjZvwg1Y23CF5qIRB_!!6000000003000-0-tps-3840-2160.jpg",
"https://img.alicdn.com/imgextra/i4/O1CN01Ib0clU27vTgBdbVLQ_!!6000000007859-0-tps-3840-2160.jpg",
"https://img.alicdn.com/imgextra/i1/O1CN01aygPLW1s3EXCdSN4X_!!6000000005710-0-tps-3840-2160.jpg"]
},
{
"type": "text",
"text": "描述這個視頻的具體過程"
}]}]
)
print(completion.model_dump_json())
Node.js // 確保之前在 package.json 中指定了 "type": "module"
import OpenAI from "openai";
const openai = new OpenAI({
// 若沒有配置環境變數,請用百鍊API Key將下行替換為:apiKey: "sk-xxx",
// 各地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
apiKey: process.env.DASHSCOPE_API_KEY,
baseURL: "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1"
});
async function main() {
const response = await openai.chat.completions.create({
// 此處以qwen-vl-max為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/models
model: "qwen-vl-max",
messages: [{
role: "user",
content: [
{
type: "video",
video: [
"https://img.alicdn.com/imgextra/i3/O1CN01K3SgGo1eqmlUgeE9b_!!6000000003923-0-tps-3840-2160.jpg",
"https://img.alicdn.com/imgextra/i4/O1CN01BjZvwg1Y23CF5qIRB_!!6000000003000-0-tps-3840-2160.jpg",
"https://img.alicdn.com/imgextra/i4/O1CN01Ib0clU27vTgBdbVLQ_!!6000000007859-0-tps-3840-2160.jpg",
"https://img.alicdn.com/imgextra/i1/O1CN01aygPLW1s3EXCdSN4X_!!6000000005710-0-tps-3840-2160.jpg"
]
},
{
type: "text",
text: "描述這個視頻的具體過程"
}
]}]
});
console.log(JSON.stringify(response));
}
main();
curl
請將{WorkspaceId}替換為真實的業務空間ID,各地區URL不同,擷取API Key 。 curl -X POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"model": "qwen-vl-max",
"messages": [
{
"role": "user",
"content": [
{
"type": "video",
"video": [
"https://img.alicdn.com/imgextra/i3/O1CN01K3SgGo1eqmlUgeE9b_!!6000000003923-0-tps-3840-2160.jpg",
"https://img.alicdn.com/imgextra/i4/O1CN01BjZvwg1Y23CF5qIRB_!!6000000003000-0-tps-3840-2160.jpg",
"https://img.alicdn.com/imgextra/i4/O1CN01Ib0clU27vTgBdbVLQ_!!6000000007859-0-tps-3840-2160.jpg",
"https://img.alicdn.com/imgextra/i1/O1CN01aygPLW1s3EXCdSN4X_!!6000000005710-0-tps-3840-2160.jpg"
]
},
{
"type": "text",
"text": "描述這個視頻的具體過程"
}
]
}
]
}'
工具調用
完整的Function Calling 流程代碼請參見Function Calling 。
Python import os
from openai import OpenAI
client = OpenAI(
# 若沒有配置環境變數,請用百鍊API Key將下行替換為:api_key="sk-xxx"
# 各地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
api_key=os.getenv("DASHSCOPE_API_KEY"),
base_url="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1",
)
tools = [
# 工具1 擷取當前時刻的時間
{
"type": "function",
"function": {
"name": "get_current_time",
"description": "當你想知道現在的時間時非常有用。",
"parameters": {} # 因為擷取目前時間無需輸入參數,因此parameters為空白字典
}
},
# 工具2 擷取指定城市的天氣
{
"type": "function",
"function": {
"name": "get_current_weather",
"description": "當你想查詢指定城市的天氣時非常有用。",
"parameters": {
"type": "object",
"properties": {
# 查詢天氣時需要提供位置,因此參數設定為location
"location": {
"type": "string",
"description": "城市或縣區,比如北京市、杭州市、餘杭區等。"
}
},
"required": ["location"]
}
}
}
]
messages = [{"role": "user", "content": "杭州天氣怎麼樣"}]
completion = client.chat.completions.create(
model="qwen-plus", # 此處以qwen-plus為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
messages=messages,
tools=tools
)
print(completion.model_dump_json())
Node.js import OpenAI from "openai";
const openai = new OpenAI(
{
// 若沒有配置環境變數,請用百鍊API Key將下行替換為:apiKey: "sk-xxx",
// 各地區的API Key不同。擷取API Key:https://www.alibabacloud.com/help/zh/model-studio/get-api-key
apiKey: process.env.DASHSCOPE_API_KEY,
baseURL: "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1"
}
);
const messages = [{"role": "user", "content": "杭州天氣怎麼樣"}];
const tools = [
// 工具1 擷取當前時刻的時間
{
"type": "function",
"function": {
"name": "get_current_time",
"description": "當你想知道現在的時間時非常有用。",
// 因為擷取目前時間無需輸入參數,因此parameters為空白
"parameters": {}
}
},
// 工具2 擷取指定城市的天氣
{
"type": "function",
"function": {
"name": "get_current_weather",
"description": "當你想查詢指定城市的天氣時非常有用。",
"parameters": {
"type": "object",
"properties": {
// 查詢天氣時需要提供位置,因此參數設定為location
"location": {
"type": "string",
"description": "城市或縣區,比如北京市、杭州市、餘杭區等。"
}
},
"required": ["location"]
}
}
}
];
async function main() {
const response = await openai.chat.completions.create({
model: "qwen-plus", // 此處以qwen-plus為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
messages: messages,
tools: tools,
});
console.log(JSON.stringify(response));
}
main();
curl
請將{WorkspaceId}替換為真實的業務空間ID,各地區URL不同,擷取API Key 。 curl -X POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen-plus",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "杭州天氣怎麼樣"
}
],
"tools": [
{
"type": "function",
"function": {
"name": "get_current_time",
"description": "當你想知道現在的時間時非常有用。",
"parameters": {}
}
},
{
"type": "function",
"function": {
"name": "get_current_weather",
"description": "當你想查詢指定城市的天氣時非常有用。",
"parameters": {
"type": "object",
"properties": {
"location":{
"type": "string",
"description": "城市或縣區,比如北京市、杭州市、餘杭區等。"
}
},
"required": ["location"]
}
}
}
]
}'
非同步呼叫 import os
import asyncio
from openai import AsyncOpenAI
import platform
client = AsyncOpenAI(
# 若沒有配置環境變數,請用百鍊API Key將下行替換為:api_key="sk-xxx"
# 如果使用華北2(北京)地區的模型,需要使用華北2(北京)地區的 API KEY,擷取連結:https://bailian.console.alibabacloud.com/?tab=model#/api-key
api_key=os.getenv("DASHSCOPE_API_KEY"),
base_url="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1",
)
async def main():
response = await client.chat.completions.create(
messages=[{"role": "user", "content": "你是誰"}],
model="qwen-plus", # 此處以qwen-plus為例,可按需更換模型名稱。模型列表:https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
)
print(response.model_dump_json())
if platform.system() == "Windows":
asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
asyncio.run(main())
model string (必選)
模型名稱。
支援的模型:Qwen 大語言模型(商業版、開源版)、Qwen-VL、Qwen-Coder、Qwen-Omni、Qwen-Math、DeepSeek、Kimi、GLM、MiniMax。
具體模型名稱和計費,請參見 百鍊控制台 。
messages array (必選)
傳遞給大模型的上下文,按對話順序排列。
訊息類型
System Message object (可選)
系統訊息,用於設定大模型的角色、語氣、任務目標或約束條件等。一般放在messages數組的第一位。
QwQ 模型不建議設定 System Message,QVQ 模型設定 System Message不會生效。
屬性
content string (必選)
系統指令,用於明確模型的角色、行為規範、回答風格和任務約束等。
role string (必選)
系統訊息的角色,固定為system。
User Message object (必選)
使用者訊息,用於向模型傳遞問題、指令或上下文等。
屬性
content string 或 array (必選)
訊息內容。若輸入只有文本,則為 string 類型;若輸入包含映像等多模態資料,或啟用顯式緩衝,則為 array 類型。
使用多模態模型或啟用顯式緩衝時的屬性
type string (必選)
可選值:
text
輸入文本時需設為text。
image_url
輸入圖片時需設為image_url。
input_audio
輸入音頻時需設為input_audio。
video
輸入圖片列表形式的視頻時需設為video。
video_url
輸入視頻檔案時需設為video_url。
Qwen-VL僅部分模型可輸入視頻檔案,詳情參見視頻理解(Qwen-VL) ;QVQ與Qwen-Omni 模型支援直接傳入的視訊檔案。
text string
輸入的文本。當type為text時,是必選參數。
image_url object
輸入的圖片資訊。當type為image_url時是必選參數。
屬性
url string (必選)
圖片的 URL或 Base64 Data URL。傳入本地檔案請參考映像與視頻理解 。
input_audio object
輸入的音頻資訊。當type為input_audio時是必選參數。
屬性
format string (必選)
輸入音訊格式,如mp3、wav等。
video array
輸入的圖片列表形式的視頻資訊 。當type為video時是必選參數。使用方法請參見:視頻理解(Qwen-VL) 、視頻理解(QVQ) 或視頻理解(Qwen-Omni) 。
樣本值:
[
"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241108/xzsgiz/football1.jpg",
"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241108/tdescd/football2.jpg",
"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241108/zefdja/football3.jpg",
"https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241108/aedbqh/football4.jpg"
]
video_url object
輸入的視頻檔案資訊。當type為video_url時是必選參數。
Qwen-VL 只可理解視頻檔案的視覺資訊,Qwen-Omni 可理解視頻檔案中的視覺與音頻資訊。
fps float (可選)
每秒抽幀數。取值範圍為 [0.1, 10],預設值為2.0。
MiniMax/MiniMax-M3 的 fps 取值範圍為 [0.2, 5],預設值為 1。
功能說明
fps有兩個功能:
較大的fps適合高速運動的情境(如體育賽事、動作電影等),較小的fps適合長視頻或內容偏靜態情境。
樣本值
映像列表傳入:{"video":["https://xx1.jpg",...,"https://xxn.jpg"],"fps":2}
視頻檔案傳入:{"video": "https://xx1.mp4","fps":2}
min_pixels integer (可選)
設定輸入映像或視訊框架的最小像素閾值。當輸入映像或視訊框架的像素小於min_pixels時,會將其進行放大,直到總像素高於min_pixels。適用於 Qwen-VL、QVQ 模型。
取值範圍
輸入映像:
Qwen3.7、Qwen3.6、Qwen3.5、Qwen3-VL:預設值和最小值均為:65536
Qwen3.5-Omni:預設值和最小值均為:24576
qwen-vl-max、qwen-vl-max-0813、qwen-vl-plus、qwen-vl-plus-0815:預設值和最小值均為4096
其他qwen-vl-plus模型、其他qwen-vl-max模型、Qwen2.5-VL開源系列及QVQ系列模型:預設值和最小值均為3136
輸入視頻檔案或映像列表:
Qwen3.7、Qwen3.6、Qwen3.5、Qwen3.5-Omni、Qwen3-VL(包括商業版和開源版)、qwen-vl-max、qwen-vl-max-0813、qwen-vl-plus、qwen-vl-plus-0815:預設值為65536,最小值為4096
其他qwen-vl-plus模型、其他qwen-vl-max模型、Qwen2.5-VL開源系列及QVQ系列模型:預設值為50176,最小值為3136
樣本值
輸入映像:{"type": "image_url","image_url": {"url":"https://xxxx.jpg"},"min_pixels": 65536}
輸入視頻檔案時:{"type": "video_url","video_url": {"url":"https://xxxx.mp4"},"min_pixels": 65536}
輸入映像列表時:{"type": "video","video": ["https://xx1.jpg",...,"https://xxn.jpg"],"min_pixels": 65536}
max_pixels integer (可選)
用於設定輸入映像或視訊框架的最大像素閾值。當輸入映像或視頻的像素在[min_pixels, max_pixels]區間內時,模型會按原圖進行識別。當輸入映像像素大於max_pixels時,會將映像進行縮小,直到總像素低於max_pixels。適用於 Qwen-VL、QVQ 模型。
樣本值
輸入映像:{"type": "image_url","image_url": {"url":"https://xxxx.jpg"},"max_pixels": 8388608}
輸入視頻檔案時:{"type": "video_url","video_url": {"url":"https://xxxx.mp4"},"max_pixels": 655360}
輸入映像列表時:{"type": "video","video": ["https://xx1.jpg",...,"https://xxn.jpg"],"max_pixels": 655360}
total_pixels integer (可選)
用於限制從視頻中抽取的所有幀的總像素(單幀映像像素 × 總幀數)。如果視頻總像素超過此限制,系統將對視訊框架進行縮放,但仍會確保單幀映像的像素值在[min_pixels, max_pixels]範圍內。適用於 Qwen-VL、QVQ 模型。
對於抽幀數量較多的長視頻,可適當降低此值以減少Token消耗和處理時間,但這可能會導致映像細節丟失。
取值範圍
Qwen3.7系列、Qwen3.6系列、Qwen3.5系列:預設值和最大值均為819200000,該值對應 800000 個映像 Token(每 32×32 像素對應 1 個映像 Token)。
Qwen3-VL閉源系列、qwen3-vl-235b-a22b-thinking、qwen3-vl-235b-a22b-instruct:預設值和最大值均為134217728,該值對應 131072 個映像 Token(每 32×32 像素對應 1 個映像 Token)。
Qwen3.5-Omni:預設值和最小值均為184549376,該值對應 180224 個映像 Token(每 32×32 像素對應 1 個映像 Token)。
其他Qwen3-VL開源模型、qwen-vl-max、qwen-vl-max-0813、qwen-vl-plus、qwen-vl-plus-0815:預設值和最小值均為67108864,該值對應 65536 個映像 Token(每 32×32 像素對應 1 個映像 Token)。
其他qwen-vl-plus模型、其他qwen-vl-max模型、Qwen2.5-VL開源系列及QVQ系列模型:預設值和最小值均為51380224,該值對應 65536 個映像 Token(每 28×28 像素對應 1 個映像 Token)。
樣本值
輸入視頻檔案時:{"type": "video_url","video_url": {"url":"https://xxxx.mp4"},"total_pixels": 134217728}
輸入映像列表時:{"type": "video","video": ["https://xx1.jpg",...,"https://xxn.jpg"],"total_pixels": 134217728}
cache_control object (可選)
用於開啟顯式緩衝。相關文檔:顯式緩衝 。
屬性
type string (必選)
僅支援設定為ephemeral。
role string (必選)
使用者訊息的角色,固定為user。
Assistant Message object (可選)
模型的回複。通常用於在多輪對話中作為上下文回傳給模型。
屬性
content string (可選)
模型回複的常值內容。包含tool_calls時,content可以為空白;否則content為必選。
role string (必選)
助手訊息的角色,固定為assistant。
partial boolean (可選)預設值為false
是否開啟首碼續寫。
可選值:
支援的模型參見首碼續寫 。
tool_calls array (可選)
發起 Function Calling 後,返回的工具與入參資訊,包含一個或多個對象。由上一輪模型響應的tool_calls欄位獲得。
屬性
type string (必選)
工具類型,當前只支援設為function。
function object (必選)
工具與入參資訊。
屬性
arguments string (必選)
入參資訊,為JSON格式字串。
index integer (必選)
當前工具資訊在tool_calls數組中的索引。
Tool Message object (可選)
工具的輸出資訊。
屬性
content string (必選)
工具函數的輸出內容,必須為字串。若工具返回結構化資料(如JSON),需將其序列化為字串。
role string (必選)
固定為tool。
tool_call_id string (必選)
發起 Function Calling 後返回的 id,通過completion.choices[0].message.tool_calls[$index].id擷取,用於標記 Tool Message 對應的工具。
stream boolean (可選) 預設值為 false
是否以流式輸出方式回複。相關文檔:流式輸出
可選值:
推薦設定為true,可提升閱讀體驗並降低逾時風險。
說明
非流式調用若超過 300 秒未完成,服務將插斷要求並返回已產生的內容(而非報錯)。建議輸出較長的情境務必使用流式調用。詳情請參見文本產生模型概述 中的逾時說明。
stream_options object (可選)
流式輸出的配置項,僅在 stream 為 true 時生效。
屬性
include_usage boolean (可選)預設值為false
是否在響應的最後一個資料區塊 包含Token消耗資訊。
可選值:
流式輸出時,Token 消耗資訊僅可出現在響應的最後一個資料區塊。
modalities array (可選)預設值為["text"]
輸出資料的模態,僅適用於 Qwen-Omni 模型。相關文檔:非即時(Qwen-Omni)
可選值:
audio object (可選)
輸出音訊音色與格式,僅適用於 Qwen-Omni 模型,且modalities參數需為["text","audio"]。相關文檔:非即時(Qwen-Omni)
屬性
format string (必選)
輸出音訊格式,僅支援設定為wav。
temperature float (可選)
採樣溫度,控制模型產生文本的多樣性。
temperature越高,產生的文本更多樣,反之,產生的文本更確定。
取值範圍: [0, 2)
temperature與top_p均可以控制產生文本的多樣性,建議只設定其中一個值。更多說明,請參見概述 。
不建議修改QVQ模型的預設temperature值 。
top_p float (可選)
核採樣的機率閾值,控制模型產生文本的多樣性。
top_p越高,產生的文本更多樣。反之,產生的文本更確定。
取值範圍:(0,1.0]
temperature與top_p均可以控制產生文本的多樣性,建議只設定其中一個值。更多說明,請參見概述 。
不建議修改QVQ模型的預設 top_p 值。
top_k integer (可選)
指定產生過程中用於採樣的候選 Token 數量。值越大,輸出越隨機;值越小,輸出越確定。若設為 null 或大於 100,則禁用 top_k 策略,僅 top_p 策略生效。取值必須為大於或等於 0 的整數。
top_k預設值
QVQ系列:10;
QwQ 系列:40;
其餘qwen-vl-plus系列之前的模型、qwen2.5-omni-7b:1;
Qwen3-Omni-Flash系列:50;
其餘模型均為20。
GLM系列(阿里雲直供):20;
DeepSeek/Kimi/MiniMax系列均不支援top_k參數。
該參數非OpenAI標準參數。通過 Python SDK調用時,請放入 extra_body 對象中。 配置方式為:extra_body={"top_k":xxx}。
不建議修改QVQ模型的預設 top_k 值。
repetition_penalty float (可選)
模型產生時連續序列中的重複度。提高repetition_penalty時可以降低模型產生的重複度,1.0表示不做懲罰。沒有嚴格的取值範圍,只要大於0即可。
該參數非OpenAI標準參數。通過 Python SDK調用時,請放入 extra_body 對象中。 配置方式為:extra_body={"repetition_penalty":xxx}。
使用qwen-vl-plus_2025-01-25模型進行文字提取時,建議設定repetition_penalty為1.0。
不建議修改QVQ模型的預設 repetition_penalty 值。
presence_penalty float (可選)
控制模型產生文本時的內容重複度。
取值範圍:[-2.0, 2.0]。正值降低重複度,負值增加重複度。
在創意寫作或頭腦風暴等需要多樣性、趣味性或創造力的情境中,建議調高該值;在技術文檔或正式文本等強調一致性與術語準確性的情境中,建議調低該值。
presence_penalty預設值
Qwen3.7(非思考模式)、Qwen3.6(非思考模式)、Qwen3.5-Omni、Qwen3.5(非思考模式)、qwen3-max-preview(思考模式)、Qwen3(非思考模式)、Qwen3-Instruct系列/1.7b/4b(思考模式)、QVQ系列、qwen-max、qwen2.5-vl系列、qwen-vl-max系列、qwen-vl-plus、Qwen3-VL(非思考):1.5;
qwen3-8b/14b/32b/30b-a3b/235b-a22b(思考模式)、qwen-plus/qwen-plus-latest/2025-04-28(思考模式)、qwen-turbo/qwen-turbo/2025-04-28(思考模式):0.5;
其餘均為0.0。
DeepSeek系列(阿里雲直供):deepseek-r1、deepseek-r1-0528、deepseek-r1-distill-qwen 蒸餾版: 1;
Kimi系列(阿里雲直供):kimi-k2.7-code、kimi-k2.6、kimi-k2.5: 0.0;
Kimi系列(月之暗面直供):0.0;
MiniMax系列(阿里雲直供):MiniMax-M2.5、MiniMax-M2.1: 0.0;
其餘DeepSeek/Kimi/GLM/MiniMax模型無預設值。
原理介紹
如果參數值是正數,模型將對目前文本中已存在的Token施加一個懲罰值(懲罰值與文本出現的次數無關),減少這些Token重複出現的幾率,從而減少內容重複度,增加用詞多樣性。
樣本
提示詞:把這句話翻譯成中文“This movie is good. The plot is good, the acting is good, the music is good, and overall, the whole movie is just good. It is really good, in fact. The plot is so good, and the acting is so good, and the music is so good.”
參數值為2.0:這部電影很好。劇情很棒,演技棒,音樂也非常好聽,總的來說,整部電影都好得不得了。實際上它真的很優秀。劇情非常精彩,演技出色,音樂也是那麼的動聽。
參數值為0.0:這部電影很好。劇情好,演技好,音樂也好,總的來說,整部電影都很好。事實上,它真的很棒。劇情非常好,演技也非常出色,音樂也同樣優秀。
參數值為-2.0:這部電影很好。情節很好,演技很好,音樂也很好,總的來說,整部電影都很好。實際上,它真的很棒。情節非常好,演技也非常好,音樂也非常好。
使用qwen-vl-plus模型進行文字提取時,建議設定presence_penalty為1.5。
不建議修改QVQ模型的預設presence_penalty值。
response_format object (可選) 預設值為{"type": "text"}
返回內容的格式。可選值:
相關文檔:結構化輸出 。
若指定為{"type": "json_object"},需在提示詞中明確指示模型輸出JSON,如:“請按照json格式輸出”,否則會報錯。
支援的模型參見結構化輸出 。
屬性
type string (必選)
返回內容的格式。可選值:
max_tokens integer (可選,即將廢棄 )
該參數即將廢棄,新接入請使用 max_completion_tokens。
模型回答的最大長度(不包含思維鏈內容)。即:模型回答 = 模型輸出 – 思維鏈(如有)。
預設值與最大值均為模型的最大輸出長度。
模型回答超過此值時將提前停止,返回的 finish_reason 為 length。
對於 GLM-5.2 及以上版本,max_tokens 的實際行為與 max_completion_tokens 一致,即限制的是包含思維鏈在內的模型完整輸出長度,而非僅限純回複部分。建議使用 GLM5.2系列模型時直接使用 max_completion_tokens 參數以獲得語義更明確的控制。
max_completion_tokens integer (可選)
模型輸出的最大長度,包含思維鏈和模型回答。模型輸出超過此值時產生將提前停止,返回的 finish_reason 為 length。
預設值與最大值均為模型的最大輸出長度。
與 max_tokens 的區別:max_completion_tokens 限制模型完整輸出(思維鏈 + 回答),而 max_tokens 僅限制回答部分。思考類模型推薦使用 max_completion_tokens。
支援以下模型:
千問 Max:Qwen3.7-Max 及之後的模型
千問 Plus:Qwen3.5-Plus 及之後的模型
千問 Flash:Qwen3.5-Flash 及之後的模型
Kimi:kimi-k2.5 及其之後推出的Kimi模型
GLM:glm-5 及其之後推出的GLM系列模型
MiniMax:MiniMax-M2.5 及之後推出的MiniMax模型
DeepSeek:deepseek-v3、deepseek-r1、deepseek-r1-0528、deepseek-v3.1、deepseek-v3.2、deepseek-v3.2-exp、deepseek-v4-pro、deepseek-v4-flash 及之後推出的的DeekSeek模型
以上模型均不包含三方直供模型。
實際輸出 Token 數與設定的 max_completion_tokens 值之間最多可能存在 10 個 Token 的誤差。
vl_high_resolution_images boolean (可選)預設值為false
是否將輸入映像的像素上限提升至 16384 Token 對應的像素值。相關文檔:處理高解析度映像 。
該參數非OpenAI標準參數。通過 Python SDK調用時,請放入 extra_body 對象中。 配置方式為:extra_body={"vl_high_resolution_images":xxx}。
n integer (可選) 預設值為1
產生響應的數量,取值範圍是1-4。適用於需產生多個候選響應的情境,例如創意寫作或廣告文案。
僅支援 Qwen3(非思考模式) 模型。
若傳入 tools 參數, 請將n 設為 1。
增大 n 會增加輸出 Token 的消耗,但不增加輸入 Token 消耗。
enable_thinking boolean (可選)
使用混合思考(回複前既可思考也可不思考)模型時,是否開啟思考模式。適用於 Qwen3.7、Qwen3.6、Qwen3.5、Qwen3、Qwen3-Omni-Flash、Qwen3-VL模型,以及 DeepSeek-V4-Pro/V4-Flash 系列、DeepSeek-V3.2/V3.2-exp/V3.1 系列、Kimi-K2.7-code(僅思考模型)、Kimi-K2.6/K2.5 系列、GLM 系列。DeepSeek-V4 系列預設開啟思考,可通過 reasoning_effort 參數調整推理力度。
可選值:
true:開啟
開啟後,思考內容將通過reasoning_content欄位返回。
false:不開啟
不同模型的預設值:支援的模型
該參數非OpenAI標準參數。通過 Python SDK調用時,請放入 extra_body 對象中。 配置方式為:extra_body={"enable_thinking": xxx}。
稀宇科技直供的MiniMax/MiniMax-M3 不使用此參數,請使用 thinking 參數。
thinking object (可選)預設值為 {"type":"adaptive"}
控制稀宇科技直供的MiniMax/MiniMax-M3 的思考模式。
thinking.type 可選值:
preserve_thinking boolean (可選)預設值為 false
是否將對話歷史中 assistant 訊息的 reasoning_content 拼接至模型輸入。適用於需要模型參考歷史思考過程的情境。
目前支援qwen3.7-max、qwen3.7-max-2026-05-20以及後續快照、qwen3.6-max-preview、qwen3.7-plus、qwen3.7-plus-2026-05-26、qwen3.6-plus、qwen3.6-plus-2026-04-02、qwen3.6-flash、qwen3.6-flash-2026-04-16、kimi-k2.6(阿里雲百鍊部署)、kimi-k2.7-code(阿里雲百鍊部署,預設開啟)、kimi/kimi-k2.7-code-highspeed(月之暗面直供,預設開啟)、kimi/kimi-k2.7-code(月之暗面直供,預設開啟)。
該參數非OpenAI標準參數。通過 Python SDK調用時,請放入 extra_body 對象中。 配置方式為:extra_body={"preserve_thinking": True}。
thinking_budget integer (可選)
思考過程的最大 Token 數。適用於Qwen3.7、Qwen3.6、Qwen3.5、Qwen3-VL、Qwen3 的商業版與開源版模型。相關文檔:限制思考長度 。
預設值為模型最大思維鏈長度,請參見:模型列表
該參數非OpenAI標準參數。通過 Python SDK調用時,請放入 extra_body 對象中。 配置方式為:extra_body={"thinking_budget": xxx}。
reasoning_effort string (可選)預設值為 high
控制DeepSeek-V4與GLM系列模型的推理力度。
可選值:
low和medium映射為high,xhigh映射為max。
適用於glm-5.2、glm-5.1、glm-5、deepseek-v4-pro、deepseek-v4-flash。
該參數非OpenAI標準參數。通過 Python SDK調用時,請放入 extra_body 對象中。 配置方式為:extra_body={"reasoning_effort": "high"}。
tool_stream boolean (可選)預設值為 false
僅在stream=true時生效。當前僅Qwen和GLM系列支援。
Qwen系列支援列表:
Qwen系列使用參考:
tool_stream僅影響複雜工具參數的情況。普通工具參數只要開啟stream=true就會流式輸出。複雜工具是指工具定義中某些參數類型為array或object。
GLM系列支援列表: glm-4.6、glm-4.7、glm-5、glm-5.1。
GLM系列使用參考:
該參數非OpenAI標準參數。通過 Python SDK調用時,請放入 extra_body 對象中。 配置方式為:extra_body={"tool_stream": true}。
enable_code_interpreter boolean (可選)預設值為 false
是否開啟代碼解譯器功能。相關文檔:代碼解譯器
可選值:
該參數非OpenAI標準參數。通過 Python SDK調用時,請放入 extra_body 對象中。 配置方式為:extra_body={"enable_code_interpreter": xxx}。
seed integer (可選)
隨機數種子。用於確保在相同輸入和參數下產生結果可複現。若調用時傳入相同的 seed 且其他參數不變,模型將儘可能返回相同結果。
取值範圍:[0,231 −1]。
logprobs boolean (可選)預設值為 false
是否返回輸出 Token 的對數機率,可選值:
思考階段產生的內容(reasoning_content)不會返回對數機率。
支援的模型
qwen-plus系列的快照模型(不包含穩定版模型)
qwen-turbo 系列的快照模型(不包含穩定版模型)
qwen3-vl-plus系列模型(包含穩定版模型)
qwen3-vl-flash系列模型(包含穩定版模型)
Qwen3 開源模型
top_logprobs integer (可選)預設值為0
指定在每一步產生時,返回模型最大機率的候選 Token 個數。
取值範圍:[0,5]
僅當 logprobs 為 true 時生效。
stop string 或 array (可選)
用於指定停止詞。當模型產生的文本中出現stop 指定的字串或token_id時,產生將立即終止。
可傳入敏感詞以控制模型的輸出。
stop為數組時,不可將token_id和字串同時作為元素輸入,比如不可以指定為["你好",104307]。
tools array (可選)
包含一個或多個工具對象的數組,供模型在 Function Calling 中調用。相關文檔:Function Calling
設定 tools 且模型判斷需要調用工具時,響應會通過 tool_calls 返回工具資訊。
屬性
type string (必選)
工具類型,當前僅支援設為function。
function object (必選)
屬性
name string (必選)
工具名稱。僅允許字母、數字、底線(_)和短劃線(-),最長 64 個 Token。
description string (必選)
工具描述資訊,協助模型判斷何時以及如何調用該工具。
parameters object (可選)預設值為 {}
工具的參數描述,需要是一個合法的JSON Schema。JSON Schema的描述可以見連結 。若parameters參數為空白,表示該工具沒有入參(如時間查詢工具)。
為提高工具調用的準確性,建議傳入 parameters。
tool_choice string 或 object (可選)預設值為 auto
工具選擇策略。若需對某類問題強制指定工具調用方式(例如始終使用某工具或禁用所有工具),可設定此參數。
可選值:
auto
大模型自主選擇工具策略。
none
若不希望進行工具調用,可設定tool_choice參數為none;
{"type": "function", "function": {"name": "the_function_to_call"}}
若希望強制調用某個工具,可設定tool_choice參數為{"type": "function", "function": {"name": "the_function_to_call"}},其中the_function_to_call是指定的工具函數名稱。
思考模式的模型不支援強制調用某個工具。
parallel_tool_calls boolean (可選)預設值為 false
是否開啟並行工具調用。相關文檔:並行工具調用
可選值:
enable_search boolean (可選)預設值為 false
是否開啟連網搜尋。相關文檔:連網搜尋
可選值:
true:開啟;
若開啟後未連網搜尋,可最佳化提示詞,或設定search_options中的forced_search參數開啟強制搜尋。
false:不開啟。
啟用互連網搜尋功能可能會增加 Token 的消耗。
該參數非OpenAI標準參數。通過 Python SDK調用時,請放入 extra_body 對象中。 配置方式為:extra_body={"enable_search": True}。
search_options object (可選)
連網搜尋的策略。相關文檔:連網搜尋
屬性
forced_search boolean (可選)預設值為false
是否強制開啟連網搜尋,僅當enable_search為true時生效。
可選值:
true:強制開啟;
false:不強制開啟,由模型判斷是否連網搜尋。
search_strategy string (可選)預設值為turbo
搜尋量級策略,僅當enable_search為true時生效。
可選值:
turbo (預設): 兼顧響應速度與搜尋效果,適用於大多數情境。
max: 採用更全面的搜尋策略,可調用多源搜尋引擎,以擷取更詳盡的搜尋結果,但回應時間可能更長。
agent:可多次調用連網搜尋工具與大模型,實現多輪資訊檢索與內容整合。
該策略僅適用於 qwen3.5-plus、qwen3.5-plus-2026-02-15、qwen3.5-flash、qwen3.5-flash-2026-02-23、qwen3-max、qwen3-max-2026-01-23、qwen3-max-2025-09-23、qwen3.5-omni-plus、qwen3.5-omni-plus-2026-03-15、qwen3.5-omni-flash、qwen3.5-omni-flash-2026-03-15。
agent_max:在agent策略基礎上支援網頁抓取,參見:網頁抓取 。
該策略僅適用於 qwen3-max、qwen3-max-2026-01-23的思考模式。
enable_search_extension boolean (可選)預設值為false
是否開啟垂域搜尋,僅當enable_search為true時生效。
可選值:
該參數非OpenAI標準參數。通過 Python SDK調用時,請放入 extra_body 對象中。 配置方式為:extra_body={"search_options": xxx}。
clear_thinking boolean (可選)預設值為false
用於控制多輪對話中是否將歷史輪次的 reasoning_content(思考過程)作為上下文輸入給模型。僅 GLM 系列glm-5.2、glm-5.1、glm-5、glm-4.7模型支援。
該參數非OpenAI標準參數。通過 Python SDK調用時,請放入 extra_body 對象中。配置方式為:extra_body={"skill": [...]}。
true:忽略歷史輪次的 reasoning_content,僅使用可見文本、工具調用與結果等非推理內容作為上下文輸入,可降低上下文長度與成本。
false(預設):保留歷史輪次的 reasoning_content 並隨上下文一同提供給模型。若希望啟用 Preserved Thinking,必須在 messages 中完整、未修改、按原順序透傳歷史 reasoning_content,缺失、裁剪、改寫或重排會導致效果下降或無法生效。