リクエストボディ
POST
/chat/completions
デバッグ
テキスト入力
Python import os
from openai import OpenAI
client = OpenAI(
# 環境変数が設定されていない場合は、次の行を api_key="sk-xxx" に置き換えます。
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(
model="qwen-plus", # モデルリスト: https://www.alibabacloud.com/help/en/model-studio/getting-started/models
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Who are you?"},
],
# 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()
.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("Who are you?")
.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(
{
// 環境変数が設定されていない場合は、次の行を apiKey: "sk-xxx" に置き換えてください。
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", //モデルリスト:https://www.alibabacloud.com/help/ja/model-studio/getting-started/models
messages: [
{ role: "system", content: "You are a helpful assistant." },
{ role: "user", content: "Who are you?" }
],
});
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(
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("Who are you?"),
},
),
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)
{
// 環境変数が設定されていない場合は、次の行を string? apiKey = "sk-xxx"; に置き換えてください。
string? apiKey = Environment.GetEnvironmentVariable("DASHSCOPE_API_KEY");
if (string.IsNullOrEmpty(apiKey))
{
Console.WriteLine("API Key is not set. Make sure the 'DASHSCOPE_API_KEY' environment variable is set.");
return;
}
// リクエスト URL とコンテンツを設定
// {WorkspaceId} を実際のワークスペース ID に置き換えてください。URL はリージョンによって異なります。
string url = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions";
// モデルリスト:https://www.alibabacloud.com/help/ja/model-studio/getting-started/models
string jsonContent = @"{
""model"": ""qwen-plus"",
""messages"": [
{
""role"": ""system"",
""content"": ""You are a helpful assistant.""
},
{
""role"": ""user"",
""content"": ""Who are you?""
}
]
}";
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 $"Request failed: {response.StatusCode}";
}
}
}
}
PHP (HTTP) <?php
// リクエスト URL を設定
// {WorkspaceId} を実際のワークスペース ID に置き換えてください。URL はリージョンによって異なります。
$url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions';
// 環境変数が設定されていない場合は、次の行を $apiKey = "sk-xxx"; に置き換えてください。
$apiKey = getenv('DASHSCOPE_API_KEY');
$headers = [
'Authorization: Bearer '.$apiKey,
'Content-Type: application/json'
];
$data = [
// モデルリスト:https://www.alibabacloud.com/help/ja/model-studio/getting-started/models
"model" => "qwen-plus",
"messages" => [
[
"role" => "system",
"content" => "You are a helpful assistant."
],
[
"role" => "user",
"content" => "Who are you?"
]
]
];
$ch = curl_init();
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);
$response = curl_exec($ch);
if (curl_errno($ch)) {
echo 'Curl error: ' . curl_error($ch);
}
curl_close($ch);
echo $response;
?>
curl
{WorkspaceId} を実際のワークスペース ID に置き換えてください。URL はリージョンによって異なります。「API キーの取得」をご参照ください。 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": "Who are you?"
}
]
}'
ストリーミング出力
「ストリーミング出力 」をご参照ください。
Python import os
from openai import OpenAI
client = OpenAI(
# 環境変数が設定されていない場合は、次の行を api_key="sk-xxx" に置き換えてください。
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", // モデルリスト:https://www.alibabacloud.com/help/ja/model-studio/getting-started/models
messages=[{'role': 'system', 'content': 'You are a helpful assistant.'},
{'role': 'user', 'content': 'Who are you?'},],
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(
{
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", // モデルリスト:https://www.alibabacloud.com/help/ja/model-studio/getting-started/models
messages: [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Who are you?"}
],
stream: true,
});
for await (const chunk of completion) {
console.log(JSON.stringify(chunk));
}
}
main();
curl
{WorkspaceId} を実際のワークスペース ID に置き換えてください。URL はリージョンによって異なります。「API キーの取得」をご参照ください。 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": "Who are you?"
}
],
"stream":true
}'
画像入力
その他の画像解析オプションについては、「画像・動画認識 」をご参照ください。
Python import os
from openai import OpenAI
client = OpenAI(
# 環境変数が設定されていない場合は、次の行を api_key="sk-xxx" に置き換えてください。
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", // モデルリスト:https://www.alibabacloud.com/help/ja/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": "What is this?"},
]}]
)
print(completion.model_dump_json())
Node.js import OpenAI from "openai";
const openai = new OpenAI(
{
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", // モデルリスト:https://www.alibabacloud.com/help/ja/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: "What is this?" },
]}]
});
console.log(JSON.stringify(response));
}
main();
curl
{WorkspaceId} を実際のワークスペース ID に置き換えてください。URL はリージョンによって異なります。「API キーの取得」をご参照ください。 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": "What is this?"}
]}]
}'
動画入力
例:画像リストを動画入力として使用します。他の方法 (動画ファイル) については、「視覚認識 」をご参照ください。
Python import os
from openai import OpenAI
client = OpenAI(
# 環境変数が設定されていない場合は、次の行を api_key="sk-xxx" に置き換えてください。
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(
# モデルリスト:https://www.alibabacloud.com/help/ja/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": "Describe the process in this video."
}]}]
)
print(completion.model_dump_json())
Node.js // package.json で "type": "module" を指定していることを確認してください。
import OpenAI from "openai";
const openai = new OpenAI({
// 環境変数が設定されていない場合は、次の行を apiKey: "sk-xxx" に置き換えてください。
// API キーはリージョンによって異なります。{WorkspaceId} を実際のワークスペース ID に置き換えてください。API キーを取得するには、https://www.alibabacloud.com/help/ja/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({
// モデルリスト:https://www.alibabacloud.com/help/ja/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: "Describe the process in this video."
}
]}]
});
console.log(JSON.stringify(response));
}
main();
curl
{WorkspaceId} を実際のワークスペース ID に置き換えてください。URL はリージョンによって異なります。API キーの取得 。 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": "Describe the process in this video."
}
]
}
]
}'
ツール呼び出し
完全な関数呼び出しワークフローのコードについては、「関数呼び出し 」をご参照ください。
Python import os
from openai import OpenAI
client = OpenAI(
# 環境変数が設定されていない場合は、次の行を api_key="sk-xxx" に置き換えてください。
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": "Useful when you want to know the current time.",
"parameters": {}
}
},
# ツール 2:天気を取得 (location パラメーターが必要)
{
"type": "function",
"function": {
"name": "get_current_weather",
"description": "Useful when you want to check the weather in a specific city.",
"parameters": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "A city or district, such as Beijing, Hangzhou, or Yuhang District."
}
},
"required": ["location"]
}
}
}
]
messages = [{"role": "user", "content": "What is the weather like in Hangzhou?"}]
completion = client.chat.completions.create(
model="qwen-plus", // モデルリスト:https://www.alibabacloud.com/help/ja/model-studio/getting-started/models
messages=messages,
tools=tools
)
print(completion.model_dump_json())
Node.js import OpenAI from "openai";
const openai = new OpenAI(
{
// 環境変数が設定されていない場合は、次の行を apiKey: "sk-xxx" に置き換えてください。
apiKey: process.env.DASHSCOPE_API_KEY,
baseURL: "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1"
}
);
const messages = [{"role": "user", "content": "What is the weather like in Hangzhou?"}];
const tools = [
// ツール 1:現在の時刻を取得 (パラメーター不要)
{
"type": "function",
"function": {
"name": "get_current_time",
"description": "Useful when you want to know the current time.",
"parameters": {}
}
},
// ツール 2:天気を取得 (location パラメーターが必要)
{
"type": "function",
"function": {
"name": "get_current_weather",
"description": "Useful when you want to check the weather in a specific city.",
"parameters": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "A city or district, such as Beijing, Hangzhou, or Yuhang District."
}
},
"required": ["location"]
}
}
}
];
async function main() {
const response = await openai.chat.completions.create({
model: "qwen-plus", // モデルリスト:https://www.alibabacloud.com/help/ja/model-studio/getting-started/models
messages: messages,
tools: tools,
});
console.log(JSON.stringify(response));
}
main();
curl
{WorkspaceId} を実際のワークスペース ID に置き換えてください。URL はリージョンによって異なります。API キーの取得 。 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": "What is the weather like in Hangzhou?"
}
],
"tools": [
{
"type": "function",
"function": {
"name": "get_current_time",
"description": "Useful when you want to know the current time.",
"parameters": {}
}
},
{
"type": "function",
"function": {
"name": "get_current_weather",
"description": "Useful when you want to check the weather in a specific city.",
"parameters": {
"type": "object",
"properties": {
"location":{
"type": "string",
"description": "A city or district, such as Beijing, Hangzhou, or Yuhang District."
}
},
"required": ["location"]
}
}
}
]
}'
非同期呼び出し import os
import asyncio
from openai import AsyncOpenAI
import platform
client = AsyncOpenAI(
# 環境変数が設定されていない場合は、次の行を api_key="sk-xxx" に置き換えます。
# 中国 (北京) リージョンのモデルを使用する場合は、そのリージョンの 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": "Who are you?"}],
model="qwen-plus", # モデル一覧: https://www.alibabacloud.com/help/en/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 (必須)
モデルの対話履歴。時系列順にリストされます。
メッセージタイプ
システムメッセージ object (任意)
大規模言語モデルのロール、トーン、タスクの目的、または制約を定義するシステムメッセージです。messages 配列の先頭に配置してください。
QwQ モデルにはシステムメッセージを設定しないでください。システムメッセージは QVQ モデルには影響しません。
プロパティ
content string (必須)
モデルのロール、動作、応答スタイル、タスクの制約を定義するシステム命令です。
role string (必須)
システムメッセージのロールです。値は system に固定されています。
ユーザーメッセージ object (必須)
モデルに質問、命令、またはコンテキストを渡すユーザーメッセージです。
プロパティ
content string or 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 データ 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 (任意)
1 秒あたりに抽出するフレーム数です。値は [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-Omni、Qwen3.5、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 モデルに適用されます。
抽出されたフレームが多い長い動画の場合、この値を下げるとトークン消費量と処理時間を削減できます。ただし、これにより画像の詳細が失われる可能性があります。
値の範囲
Qwen3.7 シリーズ、Qwen3.6 シリーズ、および Qwen3.5 シリーズ:デフォルト値と最大値は 819200000 です。この値は 800000 画像トークン (32×32 ピクセルあたり 1 画像トークン) に相当します。
Qwen3.5-Omni:デフォルト値と最大値は 184549376 です。この値は 180224 画像トークン (32×32 ピクセルあたり 1 画像トークン) に相当します。
クローズドソース Qwen3-VL シリーズ、qwen3-vl-235b-a22b-thinking、および qwen3-vl-235b-a22b-instruct:デフォルト値と最大値は 134217728 です。この値は 131072 画像トークン (32×32 ピクセルあたり 1 画像トークン) に相当します。
その他の Qwen3-VL オープンソースモデル、qwen-vl-max、qwen-vl-max-0813、qwen-vl-plus、qwen-vl-plus-0815:デフォルト値と最小値は 67108864 です。この値は 65536 画像トークン (32×32 ピクセルあたり 1 画像トークン) に相当します。
その他の qwen-vl-plus モデル、その他の qwen-vl-max モデル、オープンソース Qwen2.5-VL シリーズ、および QVQ シリーズモデル:デフォルト値と最小値は 51380224 です。この値は 65536 画像トークン (28×28 ピクセルあたり 1 画像トークン) に相当します。
値の例
動画ファイル入力の場合:{"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 に固定されています。
アシスタントメッセージ object (任意)
モデルの応答です。これは通常、マルチターン対話のコンテキストとしてモデルに返されます。
プロパティ
content string (任意)
モデルの応答のテキストコンテンツです。tool_calls が含まれている場合、content は空にすることができます。それ以外の場合、content は必須です。
role string (必須)
アシスタントメッセージのロールです。値は assistant に固定されています。
partial boolean (任意) デフォルト:false
部分補完モードを有効にするかどうかを指定します。
有効値:
「部分補完モード 」をご参照ください。
tool_calls array (任意)
関数呼び出しが開始された後に返されるツールと入力パラメーター情報です。1 つ以上のオブジェクトを含み、前のモデル応答の tool_calls フィールドから取得されます。
プロパティ
id string (必須)
ツール応答の ID です。
type string (必須)
ツールタイプです。現在、function のみがサポートされています。
function object (必須)
ツールと入力パラメーター情報です。
プロパティ
arguments string (必須)
JSON 文字列としてフォーマットされた入力パラメーター情報です。
index integer (必須)
tool_calls 配列内の現在のツール情報のインデックスです。
ツールメッセージ object (任意)
ツールの出力情報です。
プロパティ
content string (必須)
ツール関数の出力コンテンツです。文字列である必要があります。ツールが JSON などの構造化データを返す場合は、それを文字列にシリアル化してください。
role string (必須)
値は tool に固定されています。
tool_call_id string (必須)
関数呼び出しが開始された後に返される ID です。completion.choices[0].message.tool_calls[$index].id から取得します。この ID は、ツールメッセージに対応するツールをマークします。
stream boolean (任意。デフォルトは false です。)
ストリーミング出力モードを有効にします。「ストリーミング出力 」をご参照ください。
有効値:
このパラメーターを true に設定すると、読書体験を向上させ、タイムアウトのリスクを軽減できます。
説明
非ストリーミング呼び出しの場合、リクエストが 300 秒以内に完了しないと、サービスはリクエストを中断し、それまでに生成されたコンテンツを返します (エラーではなく)。長い出力のシナリオでは、ストリーミング呼び出しを使用してください。詳細については、「テキスト生成モデルの概要 」のタイムアウトセクションをご参照ください。
stream_options object (任意)
ストリーミング出力の構成オプションです。このパラメーターは、stream が true に設定されている場合にのみ有効です。
プロパティ
include_usage boolean (任意。デフォルトは false)
応答の最後のデータブロック にトークン消費情報を含めるかどうかを指定します。
有効値:
ストリーミング出力の場合、トークン消費情報は応答の最後のデータブロックにのみ含まれます。
modalities array (任意) デフォルト:["text"]
出力データのモダリティを指定します。このパラメーターは Qwen-Omni モデルにのみ適用されます。「非リアルタイム (Qwen-Omni) 」をご参照ください。
有効値:
["text","audio"]
["text"]
audio object (任意)
出力音声の音声とフォーマットです。このパラメーターは Qwen-Omni モデルにのみ適用され、modalities パラメーターを ["text","audio"] に設定する必要があります。「非リアルタイム (Qwen-Omni) 」をご参照ください。
プロパティ
format string (必須)
出力音声のフォーマットです。wav のみがサポートされています。
temperature float (任意)
サンプリング温度は、生成されるテキストの多様性を制御します。
値が高いほど多様性が増し、低いほど出力が確定的になります。
値は 0 以上 2 未満である必要があります。
temperature と top_p の両方のパラメーターが生成されるテキストの多様性を制御します。どちらか一方のみを設定してください。「概要 」をご参照ください。
QVQ モデルのデフォルトの temperature 値は変更しないでください。
top_p float (任意)
核サンプリングの確率しきい値です。このパラメーターは、モデルが生成するテキストの多様性を制御します。
`top_p` の値が高いほど、より多様なテキストが生成されます。`top_p` の値が低いほど、より確定的なテキストが生成されます。
値の範囲:(0, 1.0]
`temperature` と `top_p` の両方が生成されるテキストの多様性を制御します。これらのパラメーターのいずれか一方のみを設定してください。「概要 」をご参照ください。
QVQ モデルのデフォルトの `top_p` 値は変更しないでください。
top_k integer (任意)
生成中にサンプリングに使用する候補トークンの数を指定します。値が大きいほどランダムな出力になり、小さいほど確定的な出力になります。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 シリーズ (Alibaba Cloud 直販):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 シリーズ (Alibaba Cloud 直販):deepseek-r1、deepseek-r1-0528、deepseek-r1-distill-qwen distill シリーズ:1
Kimi シリーズ (Alibaba Cloud 直販):kimi-k2.7-code、kimi-k2.6、kimi-k2.5:0.0
Kimi シリーズ (Moonshot AI 直販):0.0
MiniMax シリーズ (Alibaba Cloud 直販):MiniMax-M2.5、MiniMax-M2.1:0.0
その他の DeepSeek/Kimi/GLM/MiniMax モデルにはデフォルト値がありません。
仕組み
パラメーター値が正の場合、モデルは生成されたテキストに既に出現しているトークンにペナルティを課します。ペナルティはトークンが何回出現したかには依存しません。これにより、それらのトークンが再出現する可能性が低くなり、繰り返しが減少し、語彙の多様性が増します。
例
プロンプト:この文章を英語に翻訳してください:「Esta película es buena. La trama es buena, la actuación es buena, la música es buena, y en general, toda la película es simplemente buena. Es realmente buena, de hecho. La trama es tan buena, y la actuación es tan buena, y la música es tan buena.」
パラメーター値 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 に設定されます。
デフォルト値と最大値は、モデルの最大出力長に対応します。コンソールで確認してください。
このパラメーターを使用して、要約やキーワードの生成などのシナリオで出力長を制御したり、コストを削減して応答時間を短縮したりできます。
max_tokens がトリガーされると、応答の finish_reason フィールドが length に設定されます。
max_tokens は Chain-of-Thought の長さを制限しません。
max_completion_tokens integer (任意)
この応答の最大トークン数です。Chain-of-Thought トークンを含みます。この制限に達すると生成が停止し、応答の finish_reason フィールドが length に設定されます。
デフォルト値と最大値は、モデルの最大出力長に対応します。コンソールで確認してください。
max_tokens との違い:max_completion_tokens は Chain-of-Thought と最終応答の両方の合計長を制限しますが、max_tokens は Chain-of-Thought の長さを制限しません。推論モデルには max_completion_tokens を推奨します。
サポートされているモデル:
Qwen-Max:Qwen3.7-Max 以降
Qwen-Plus:Qwen3.5-Plus 以降
Qwen-Flash:Qwen3.5-Flash 以降
Kimi:kimi-k2.5 以降
GLM:glm-5 以降
MiniMax:MiniMax-M2.5 以降
DeepSeek:deepseek-v3、deepseek-r1、deepseek-r1-0528、deepseek-v3.1、deepseek-v3.2、deepseek-v3.2-exp、deepseek-v4-pro、deepseek-v4-flash 以降
サードパーティの直販モデルは含まれません。
実際の出力トークン数は、構成された max_completion_tokens 値と最大 10 トークン異なる場合があります。
vl_high_resolution_images boolean (任意。デフォルトは false です。)
入力画像の最大ピクセル制限を 16384 トークンに対応するピクセル値に増やします。「高解像度画像の処理 」をご参照ください。
vl_high_resolution_images: true:固定解像度戦略を使用し、max_pixels 設定を無視します。画像がこの解像度を超えた場合、その総ピクセル数は制限内に収まるようにダウンスケールされます。
各モデルのピクセル制限を表示するにはクリック
vl_high_resolution_images が true の場合、モデルごとにピクセル制限が異なります:
Qwen3.7 シリーズ、Qwen3.6 シリーズ、Qwen3.5 シリーズ、Qwen3-VL シリーズ、qwen-vl-max、qwen-vl-max-0813、qwen-vl-plus、qwen-vl-plus-0815:16,777,216 (各 トークン は 32×32 ピクセルに対応、つまり 16,384×32×32)
QVQ シリーズ およびその他の Qwen2.5-VL シリーズ モデル:12,845,056 (各 トークン は 28×28 ピクセルに対応、つまり 16,384×28×28)
vl_high_resolution_images が false の場合、実際のピクセル制限は max_pixels によって決定されます。入力画像が max_pixels を超えた場合、max_pixels 内に収まるようにダウンスケールされます。モデルのデフォルトのピクセル制限は、max_pixels のデフォルト値と一致します。
このパラメーターは標準の OpenAI パラメーターではありません。Python SDK で呼び出しを行う場合、このパラメーターを extra_body オブジェクトに含めてください。 構成は次のとおりです:extra_body={"vl_high_resolution_images":xxx}。
n integer (任意。デフォルトは 1)
生成する応答の数は、1-4 の範囲の整数である必要があります。これは、創造的な執筆や広告コピーなど、複数の候補応答が必要なシナリオで役立ちます。
このパラメーターは、Qwen3 (ノンシンキングモード) モデルでのみサポートされています。
tools パラメーターを渡す場合は、n を 1 に設定してください。
n を増やすと出力トークンの消費量が増加しますが、入力トークンの消費量には影響しません。
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 (Xiyu Technology 直販) はこのパラメーターを使用しません。代わりに thinking パラメーターを使用してください。
thinking object (任意) デフォルト:{"type":"adaptive"}
MiniMax/MiniMax-M3 (Xiyu Technology 直販) の思考モードを制御します。
thinking.type オプション:
preserve_thinking boolean (任意) デフォルト:false
過去のアシスタントメッセージの reasoning_content をモデル入力に追加するかどうかを制御します。モデルが過去の推論を参照する必要がある場合に使用します。
このパラメーターは現在、qwen3.7-max、qwen3.7-max-2026-05-20 以降のスナップショットバージョン、qwen3.7-max-preview、qwen3.7-max-2026-05-17、qwen3.6-max-preview、qwen3.7-plus、qwen3.7-plus-2026-05-26、qwen3.6-plus、qwen3.6-plus-2026-04-02、kimi-k2.6 (Alibaba Cloud Model Studio にデプロイ)、kimi-k2.7-code (Alibaba Cloud Model Studio にデプロイ、デフォルトで有効)、および kimi/kimi-k2.7-code (Moonshot AI 直販、デフォルトで有効) をサポートしています。
このパラメーターは標準の OpenAI パラメーターではありません。Python SDK を使用する場合、extra_body オブジェクトに含めてください。 このパラメーターを次のように構成します:extra_body={"preserve_thinking": True}。
thinking_budget integer (任意)
思考プロセスの最大トークン数です。これは Qwen3.7、Qwen3.6、Qwen3.5、Qwen3-VL、および Qwen3 モデルの商用およびオープンソースバージョンに適用されます。「思考長の制限 」をご参照ください。
デフォルト値は、モデルの最大 Chain-of-Thought 長です。コンソールで確認してください。
このパラメーターは標準の OpenAI パラメーターではありません。Python SDK を使用する場合、このパラメーターを extra_body オブジェクトに配置してください。 パラメーターを次のように構成します:extra_body={"thinking_budget": xxx}。
reasoning_effort string (任意) デフォルト:high
DeepSeek-V4 シリーズモデルの推論強度を制御します。
有効値:
low と medium は high に、xhigh は max にマッピングされます。
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 が有効である限りストリーミングされます。複雑なツールとは、配列またはオブジェクト型のパラメーターを含む定義を持つツールを指します。
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,2<sup>31</sup>-1]。
logprobs boolean (任意) デフォルトは false
出力トークンの対数確率を返すかどうかを指定します。有効値:
思考フェーズ (reasoning_content) 中に生成されたコンテンツには、対数確率は含まれません。
サポートされているモデル
Qwen-plus シリーズのスナップショット (安定モデルを除く)
Qwen-turbo シリーズのスナップショット (安定モデルを除く)
Qwen3-vl-plus モデル (安定モデルを含む)
Qwen3-vl-flash モデル (安定モデルを含む)
Qwen3 オープンソースモデル
top_logprobs integer (任意。デフォルトは 0)
各生成ステップで返す最も可能性の高い候補トークンの数を指定できます。
有効値:0 から 5
このパラメーターは、logprobs が true に設定されている場合にのみ適用されます。
stop string or array (任意)
このパラメーターはストップワードを指定します。stop で指定された文字列または token_id がモデルによって生成されたテキストに現れた場合、生成は直ちに停止します。
モデルの出力を制御するために禁止用語を渡します。
stop が配列の場合、token_id または文字列を同時に要素として使用しないでください。たとえば、["Hello",104307] は無効な値です。
tools array (任意)
モデルが関数呼び出しで呼び出すことができる 1 つ以上のツールオブジェクトの配列です。「関数呼び出し 」をご参照ください。
tools が設定され、モデルがツールを呼び出す必要があると判断した場合、応答は tool_calls フィールドにツール情報を返します。
プロパティ
type string (必須)
ツールタイプです。現在、function のみサポートしています。
function object (必須)
プロパティ
name string (必須)
ツール名です。文字、数字、アンダースコア (_)、ハイフン (-) のみを含める必要があります。名前の長さは最大 64 トークンです。
description string (必須)
ツールの説明です。これは、モデルがいつ、どのようにツールを呼び出すかを判断するのに役立ちます。
parameters object (任意) デフォルトは {}
ツールのパラメーターは、有効な JSON スキーマを使用して記述する必要があります。JSON スキーマの詳細については、このリンク をご参照ください。parameters パラメーターが空の場合、これはツールに入力パラメーターがないことを示します (時間クエリツールなど)。
ツール呼び出しの精度を向上させるために、parameters を渡すことを推奨します。
tool_choice string or 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
Web 検索を有効にします。「Web 検索 」をご参照ください。
有効値:
true
このパラメーターを有効にしても Web 検索がトリガーされない場合は、プロンプトを最適化するか、search_options の forced_search パラメーターを設定して強制検索を有効にしてください。
false
Web 検索機能を有効にすると、トークン消費量が増加する可能性があります。
このパラメーターは標準の OpenAI パラメーターではありません。Python SDK で呼び出す場合、extra_body オブジェクトに含めてください。 次のように構成します:extra_body={"enable_search": True}。
search_options object (任意)
Web 検索戦略です。「Web 検索 」をご参照ください。
プロパティ
forced_search boolean (任意) デフォルト:false
Web 検索を強制します。このパラメーターは、enable_search が true の場合にのみ有効です。
有効値:
search_strategy string (任意) デフォルト:turbo
検索スケール戦略です。このパラメーターは、enable_search が true の場合にのみ有効です。
有効値:
turbo (デフォルト):応答速度と検索効果のバランスを取ります。ほとんどのシナリオに適しています。
max:より包括的な検索戦略を使用し、複数の検索エンジンを呼び出してより詳細な結果を取得します。応答時間が長くなる場合があります。
agent:Web 検索ツールとモデルを複数回呼び出して、複数ラウンドにわたって情報を取得および統合します。
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 戦略に Web 抽出サポートを追加します。「Web 抽出ツール 」をご参照ください。
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}。