すべてのプロダクト
Search
ドキュメントセンター

Alibaba Cloud Model Studio:OpenAI 互換 - チャット

最終更新日:Jul 15, 2026

OpenAI 互換の Chat API を使用してモデルを呼び出すことができます。このドキュメントでは、入出力パラメーターについて説明し、呼び出し例を示します。

シンガポール

SDK 呼び出し設定の base_urlhttps://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1

HTTP リクエスト: POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions

米国 (バージニア)

SDK 呼び出し設定の base_urlhttps://dashscope-us.aliyuncs.com/compatible-mode/v1

HTTP リクエスト: POST https://dashscope-us.aliyuncs.com/compatible-mode/v1/chat/completions

中国 (北京)

SDK 呼び出し設定の base_urlhttps://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-mode/v1

HTTP リクエスト: POST https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-mode/v1/chat/completions

香港 (中国)

SDK 呼び出し設定の base_urlhttps://{WorkspaceId}.cn-hongkong.maas.aliyuncs.com/compatible-mode/v1

HTTP リクエスト: POST https://{WorkspaceId}.cn-hongkong.maas.aliyuncs.com/compatible-mode/v1/chat/completions

ドイツ (フランクフルト)

SDK 呼び出し設定の base_url<u><u>https://{WorkspaceId}.eu-central-1.maas.aliyuncs.com/compatible-mode/v1</u></u>

リクエスト URL: POST https://<u>{WorkspaceId}.eu-central-1.maas.aliyuncs.com</u>/compatible-mode/v1/chat/completions

日本 (東京)

SDK 呼び出し設定の base_urlhttps://{WorkspaceId}.ap-northeast-1.maas.aliyuncs.com/compatible-mode/v1

HTTP リクエスト: POST https://{WorkspaceId}.ap-northeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions

{WorkspaceId} を実際のワークスペース ID に置き換えてください。

API キーを取得し、環境変数として設定します。OpenAI SDK を使用する場合は、SDK をインストールする必要もあります。

重要

Alibaba Cloud Model Studio は、中国 (北京)、シンガポール、および香港 (中国) リージョン向けにワークスペース固有のドメインをリリースしました。新しい専用ドメインは、推論リクエストに対して優れたパフォーマンスと高い安定性を提供します。新しいドメインへの移行を推奨します:

  • 中国 (北京): https://dashscope.aliyuncs.com から https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com

  • シンガポール: https://dashscope-intl.aliyuncs.com から https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com

  • 香港 (中国): https://cn-hongkong.dashscope.aliyuncs.com から https://{WorkspaceId}.cn-hongkong.maas.aliyuncs.com

{WorkspaceId} は、Alibaba Cloud Model Studio コンソールの [ワークスペース詳細] ページで確認できるワークスペース ID です。既存のドメインは引き続き完全に機能します。

リクエストボディ

POST /chat/completions

OpenAI 互換 API オンラインデバッグ

POST https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions

テキスト入力

Python

import os
from openai import OpenAI


client = OpenAI(
    # 環境変数が設定されていない場合は、次の行を Model Studio API キーに置き換えてください:api_key="sk-xxx"
    # API キーはリージョンによって異なります。API キーの取得:https://www.alibabacloud.com/help/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/model-studio/getting-started/models
    model="qwen-plus",
    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()
                // API キーはリージョンによって異なります。API キーの取得:https://www.alibabacloud.com/help/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("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(
    {
        // 環境変数が設定されていない場合は、次の行を Model Studio API キーに置き換えてください:apiKey: "sk-xxx",
        // API キーはリージョンによって異なります。API キーの取得:https://www.alibabacloud.com/help/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/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(
	        // API キーはリージョンによって異なります。API キーの取得:https://www.alibabacloud.com/help/model-studio/get-api-key
		option.WithAPIKey(os.Getenv("DASHSCOPE_API_KEY")), // デフォルトは 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)
    {
        // 環境変数が設定されていない場合は、次の行を Model Studio API キーに置き換えてください:string? apiKey = "sk-xxx";
        // API キーはリージョンによって異なります。API キーの取得:https://www.alibabacloud.com/help/model-studio/get-api-key
        string? apiKey = Environment.GetEnvironmentVariable("DASHSCOPE_API_KEY");

        if (string.IsNullOrEmpty(apiKey))
        {
            Console.WriteLine("API Key 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";
        // この例では qwen-plus を使用しています。必要に応じて別のモデル名に置き換えることができます。モデルリスト:https://www.alibabacloud.com/help/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';
// 環境変数が設定されていない場合は、次の行を Model Studio API キーに置き換えてください:$apiKey = "sk-xxx";
// API キーはリージョンによって異なります。API キーの取得:https://www.alibabacloud.com/help/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/model-studio/getting-started/models
    "model" => "qwen-plus",
    "messages" => [
        [
            "role" => "system",
            "content" => "You are a helpful assistant."
        ],
        [
            "role" => "user",
            "content" => "Who are you?"
        ]
    ]
];
// 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 キーは https://www.alibabacloud.com/help/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": "Who are you?"
        }
    ]
}'

ストリーミング出力

使用方法の詳細については、「ストリーミング出力」をご参照ください。

Python

import os
from openai import OpenAI

client = OpenAI(
    # 環境変数が設定されていない場合は、次の行をお使いの Model Studio API キーに置き換えてください: api_key="sk-xxx"
    # API キーはリージョンによって異なります。API キーの取得: https://www.alibabacloud.com/help/en/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/en/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(
    {
        // API キーはリージョンによって異なります。API キーの取得:https://www.alibabacloud.com/help/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/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 キーは https://www.alibabacloud.com/help/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": "Who are you?"
        }
    ],
    "stream":true
}'

画像入力

大規模言語モデルが画像を分析する方法の詳細については、「画像と動画の理解」をご参照ください。

Python

import os
from openai import OpenAI

client = OpenAI(
    # 環境変数が設定されていない場合は、次の行を Model Studio API キーに置き換えてください:api_key="sk-xxx"
    # API キーはリージョンによって異なります。API キーの取得:https://www.alibabacloud.com/help/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/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(
    {
        // API キーはリージョンによって異なります。API キーの取得:https://www.alibabacloud.com/help/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/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 キーは https://www.alibabacloud.com/help/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": "What is this?"}
       ]}]
}'

動画入力

次の例は、画像のリストを渡す方法を示しています。動画ファイルの受け渡しなど、使用方法の詳細については、「視覚理解」をご参照ください。

Python

import os
from openai import OpenAI

client = OpenAI(
    # 環境変数が設定されていない場合は、次の行を Model Studio API キーに置き換えてください:api_key="sk-xxx"
    # API キーはリージョンによって異なります。API キーの取得:https://www.alibabacloud.com/help/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/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 specific process in this video"
            }]}]
)
print(completion.model_dump_json())

Node.js

// package.json で "type": "module" が指定されていることを確認してください
import OpenAI from "openai"; 

const openai = new OpenAI({
    // 環境変数が設定されていない場合は、次の行をご自身の Model Studio API キーに置き換えてください: apiKey: "sk-xxx",
    // API キーはリージョンによって異なります。 API キーの取得: https://www.alibabacloud.com/help/en/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/en/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 specific 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 specific process in this video"
                }
            ]
        }
    ]
}'

ツール呼び出し

完全な関数呼び出しプロセスのコードについては、「関数呼び出し」をご参照ください。

Python

import os
from openai import OpenAI

client = OpenAI(
    # 環境変数が設定されていない場合は、次の行を Model Studio API キーに置き換えてください:api_key="sk-xxx"
    # API キーはリージョンによって異なります。API キーの取得:https://www.alibabacloud.com/help/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": "What's the weather like in Hangzhou?"}]
completion = client.chat.completions.create(
    model="qwen-plus",  // この例では qwen-plus を使用しています。必要に応じて別のモデル名に置き換えることができます。モデルリスト:https://www.alibabacloud.com/help/model-studio/getting-started/models
    messages=messages,
    tools=tools
)

print(completion.model_dump_json())

Node.js

import OpenAI from "openai";

const openai = new OpenAI(
    {
        // 環境変数が設定されていない場合は、次の行を Model Studio API キーに置き換えてください:apiKey: "sk-xxx",
        // API キーはリージョンによって異なります。API キーの取得:https://www.alibabacloud.com/help/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": "What's the weather like in Hangzhou?"}];
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/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 query the weather of a specified 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(
    # 環境変数が設定されていない場合は、次の行を Model Studio API キーに置き換えます: api_key="sk-xxx"
    # 中国 (北京) リージョンのモデルを使用する場合は、中国 (北京) リージョンの API キーを使用する必要があります。取得リンク: https://modelstudio.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",  # この例では 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。

特定のモデル名と請求明細については、Model Studio コンソールをご参照ください。

messages array (必須)

大規模言語モデルに渡されるコンテキストで、対話の順に並べられます。

メッセージタイプ

システムメッセージ object (任意)

大規模言語モデルのロール、トーン、タスク、または制約を定義するシステムメッセージです。通常、messages 配列の最初の要素です。

QwQ モデルにはシステムメッセージを設定しないでください。システムメッセージは QVQ モデルには影響しません。

プロパティ

content string (必須)

システム命令。モデルのロール、動作、応答スタイル、タスクの制約を指定します。

role string (必須)

システムメッセージのロール。値は system に固定されています。

ユーザーメッセージ object (必須)

ユーザーメッセージ。質問、命令、またはコンテキストをモデルに渡します。

プロパティ

content string or 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

入力テキスト。このパラメーターは、typetext の場合に必須です。

image_url object

入力画像情報。このパラメーターは、typeimage_url の場合に必須です。

プロパティ

url string(必須)

画像の URL または Base64 エンコードされたデータ URL。ローカルファイルを渡すには、「画像と動画の理解」をご参照ください。

input_audio object

入力音声情報。このパラメーターは、typeinput_audio の場合に必須です。

プロパティ

data string(必須)

音声の URL または Base64 エンコードされたデータ URL。ローカルファイルを渡すには、「Base64 エンコードされたローカルファイルの入力」をご参照ください。

format string(必須)

入力音声のフォーマット、例えば mp3wav など。

video array

画像のリストとして提供される入力動画情報。このパラメーターは、typevideo の場合に必須です。使用方法の詳細については、「動画理解 (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

入力動画ファイル情報。このパラメーターは、typevideo_url の場合に必須です。

Qwen-VL は動画ファイルの視覚情報のみを理解できますが、Qwen-Omni は視覚情報と音声情報の両方を理解できます。

プロパティ

url string(必須)

動画ファイルの公開 URL または Base64 エンコードされたデータ URL。ローカル動画ファイルを入力するには、「Base64 エンコードされたローカルファイルの入力」をご参照ください。

fps float (任意)

1 秒あたりに抽出するフレーム数。有効値:[0.1, 10]。デフォルト値:2.0。

MiniMax/MiniMax-M3 の有効範囲は [0.2, 5] で、デフォルト値は 1 です。

特徴の説明

fps パラメーターには 2 つの機能があります:

  • 動画ファイルを入力すると、フレーム抽出の周波数を制御します。 秒ごとに 1 フレームが抽出されます。

    これは Qwen-VLQVQ モデルに適用されます。
  • 隣接するフレーム間の時間間隔をモデルに通知し、動画の時間の経過に伴う進行をよりよく理解するのに役立ちます。これは、動画ファイルと画像リストの両方の入力に適用されます。この機能は、イベント時間のローカライズやセグメント化されたコンテンツの要約などのシナリオに適しています。

    Qwen3.7、Qwen3.6、Qwen3.5、Qwen3-VLQwen2.5-VL、Qwen3.5-Omni、および QVQ モデルでサポートされています。

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.6Qwen3.5Qwen3-VL:デフォルト値と最小値:65536

    • Qwen3.5-Omni:デフォルト値と最小値:24576

    • qwen-vl-maxqwen-vl-max-0813qwen-vl-plusqwen-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-maxqwen-vl-max-0813qwen-vl-plusqwen-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 モデルに適用されます。

値の範囲

  • 画像入力:

    max_pixels の値は、<a baseurl="t3230321_v1_0_0.xdita" data-node="4759789" data-root="85177" data-tag="xref" href="t2614691.xdita#0edad44583knr" id="bfbaba10a77e0">vl_high_resolution_images</a> パラメーターが有効になっているかどうかによって異なります。

    • vl_high_resolution_imagesFalse の場合:

      • Qwen3.7、Qwen3.6Qwen3.5Qwen3-VL:デフォルト値:2621440。最大値:16777216

      • Qwen3.5-Omni:デフォルト値:1310720。最大値:16777216

      • qwen-vl-maxqwen-vl-max-0813qwen-vl-plusqwen-vl-plus-0815:デフォルト値:1310720。最大値:16777216

      • その他の qwen-vl-plus モデル、その他の qwen-vl-max モデル、Qwen2.5-VL オープンソースシリーズ、および QVQ シリーズモデル:デフォルト値:1003520。最大値:12845056

    • vl_high_resolution_imagesTrue の場合:

      • Qwen3.7、Qwen3.6Qwen3.5-OmniQwen3.5Qwen3-VLqwen-vl-maxqwen-vl-max-0813qwen-vl-plusqwen-vl-plus-0815max_pixels は無効です。入力画像の最大ピクセル数は 16777216 に固定されます。

      • その他の qwen-vl-plus モデル、その他の qwen-vl-max モデル、Qwen2.5-VL オープンソースシリーズ、および QVQ シリーズモデル:max_pixels は無効です。入力画像の最大ピクセル数は 12845056 に固定されます。

  • 動画ファイルまたは画像リストの入力:

    • Qwen3.7 シリーズ、Qwen3.6 シリーズ、Qwen3.5 シリーズ、Qwen3.5-OmniQwen3-VL クローズドソースシリーズqwen3-vl-235b-a22b-thinkingqwen3-vl-235b-a22b-instruct:デフォルト値:655360。最大値:2048000

    • その他の Qwen3-VL オープンソースモデル、qwen-vl-maxqwen-vl-max-0813qwen-vl-plusqwen-vl-plus-0815:デフォルト値:655360。最大値:786432

    • その他の qwen-vl-plus モデル、その他の qwen-vl-max モデル、Qwen2.5-VL オープンソースシリーズ、および QVQ シリーズモデル:デフォルト値:501760。最大値:602112

値の例

  • 画像入力: {"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 画像トークンに相当します (1 画像トークンあたり 32×32 ピクセル)。

  • Qwen3-VL クローズドソースシリーズqwen3-vl-235b-a22b-thinkingqwen3-vl-235b-a22b-instruct:デフォルト値と最大値:134217728。これは 131072 画像トークンに相当します (1 画像トークンあたり 32×32 ピクセル)。

  • Qwen3.5-Omni:デフォルト値と最小値:184549376。これは 180224 画像トークンに相当します (1 画像トークンあたり 32×32 ピクセル)。

  • その他の Qwen3-VL オープンソースモデル、qwen-vl-maxqwen-vl-max-0813qwen-vl-plusqwen-vl-plus-0815:デフォルト値と最小値:67108864。これは 65536 画像トークンに相当します (1 画像トークンあたり 32×32 ピクセル)。

  • その他の qwen-vl-plus モデル、その他の qwen-vl-max モデル、Qwen2.5-VL オープンソースシリーズ、および QVQ シリーズモデル:デフォルト値と最小値:51380224。これは 65536 画像トークンに相当します (1 画像トークンあたり 28×28 ピクセル)。

値の例

  • 動画ファイル入力: {"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

部分補完モードを有効にするかどうかを指定します。

有効値:

  • true:有効にする。

  • false:無効にする。

サポートされているモデルのリストについては、「部分補完モード」をご参照ください。

tool_calls array (任意)

モデルが呼び出すことを決定したツールとその入力パラメーターに関する情報。1 つ以上のオブジェクトを含み、前のモデル応答の tool_calls フィールドから取得されます。

プロパティ

id string (必須)

ツール呼び出しの ID。

type string(必須)

ツールタイプ。現在、function のみがサポートされています。

function object(必須)

ツールと入力パラメーター

プロパティ

name string(必須)

ツール名。

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

ストリーミング出力モードで応答するかどうかを指定します。詳細については、「ストリーミング出力」をご参照ください。

有効値:

  • false:生成が完了した後、モデルは完全なコンテンツを返します。

  • true:モデルは生成されると同時にコンテンツを出力します。コンテンツの一部が生成されるたびにデータチャンクが返されます。完全な応答を組み立てるには、これらのチャンクを読み取る必要があります。

ユーザーエクスペリエンスを向上させ、タイムアウトのリスクを減らすために、これを true に設定することを推奨します。

説明

非ストリーミング呼び出しが 300 秒以内に完了しない場合、サービスはリクエストを中断し、エラーではなく生成されたコンテンツを返します。長い出力が必要なシナリオでは、ストリーミング呼び出しを使用することを推奨します。詳細については、「テキスト生成モデルの概要」のタイムアウトの説明をご参照ください。

stream_options object (任意)

ストリーミング出力の設定項目。このパラメーターは、streamtrue に設定されている場合にのみ有効です。

プロパティ

include_usage boolean (任意) デフォルト値:false

応答の最後のデータチャンクにトークン消費情報を含めるかどうかを指定します。

有効値:

  • true:含める。

  • false:含めない。

ストリーミング出力の場合、トークン消費情報は応答の最後のデータチャンクにのみ表示されます。

modalities array (任意) デフォルト値:["text"]

出力データのモダリティ。このパラメーターは Qwen-Omni モデルにのみ適用されます。詳細については、「非リアルタイム (Qwen-Omni)」をご参照ください。

有効値:

  • ["text","audio"]:テキストと音声を出力します。

  • ["text"]:テキストのみを出力します。

audio object (任意)

出力音声の声とフォーマット。このパラメーターは Qwen-Omni モデルにのみ適用され、modalities パラメーターを ["text","audio"] に設定する必要があります。詳細については、「非リアルタイム (Qwen-Omni)」をご参照ください。

プロパティ

voice string (必須)

出力音声の声。詳細については、「非リアルタイム (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 蒸留版: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 モデルにはデフォルト値がありません。

仕組み

パラメーター値が正の場合、モデルはテキスト内に既に存在するトークンにペナルティを適用します。ペナルティはトークンの出現回数とは関係ありません。これにより、これらのトークンが再出現する可能性が減り、コンテンツの繰り返しが減少し、単語の多様性が増します。

プロンプト: 次の文を中国語に翻訳してください: "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": "text"}:テキスト応答を出力します。

  • {"type": "json_object"}:標準の JSON 形式の文字列を出力します。

詳細については、「構造化出力」をご参照ください。
{"type": "json_object"} を指定する場合、プロンプトでモデルに JSON を出力するように明示的に指示する必要があります (例:「JSON 形式で出力してください」)。そうしないと、エラーが発生します。
サポートされているモデルについては、「構造化出力」をご参照ください。

プロパティ

type string (必須)

返されるコンテンツのフォーマット。有効値:

  • text:テキスト応答を出力します。

  • json_object:標準の JSON 形式の文字列を出力します。

max_tokens integer (任意、非推奨予定)

このパラメーターは非推奨になります。新しい統合では、max_completion_tokens を使用してください。

モデルの回答の最大長で、Chain-of-Thought の内容は除外されます。つまり、モデルの回答 = モデルの出力 – Chain-of-Thought (もしあれば)。

デフォルト値と最大値は両方ともモデルの最大出力長です。

モデルの回答がこの値を超えると、生成は早期に停止し、返される finish_reasonlength になります。

GLM-5.2 以降の GLM シリーズモデルでは、max_tokens は max_completion_tokens と同じように動作し、最終的な応答だけでなく、Chain-of-Thought を含む総出力長を制限します。より意味的に明確な制御のために、GLM-5.2 シリーズモデルでは max_completion_tokens パラメーターを直接使用することを推奨します。

max_completion_tokens integer (任意)

Chain-of-Thought とモデルの回答を含む、モデルの出力の最大長。モデルの出力がこの値を超えると、生成は早期に停止し、返される finish_reasonlength になります。

デフォルト値と最大値は両方ともモデルの最大出力長です。

max_tokens との違い:max_completion_tokens は完全なモデル出力 (Chain-of-Thought + 回答) を制限し、max_tokens は回答部分のみを制限します。思考モデルでは、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_imagesTrue の場合、ピクセル制限はモデルによって異なります:

    • Qwen3.7 シリーズ、Qwen3.6 シリーズ、Qwen3.5 シリーズ、Qwen3-VL シリーズqwen-vl-maxqwen-vl-max-0813qwen-vl-plusqwen-vl-plus-0815、および モデルの場合、値は 16777216 です。(各 Token32*32 ピクセルに対応します。合計値は 16384*32*32 として計算されます。)

    • QVQ シリーズ、その他の Qwen2.5-VL シリーズ モデル:12845056 (1 token28*28 ピクセルに対応し、これは 16384*28*28 です)

  • vl_high_resolution_imagesfalse の場合、ピクセル制限は 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}
Xiyu Technology の MiniMax および MiniMax-M3 モデルは、このパラメーターを使用しません。代わりに thinking パラメーターを使用してください。

thinking object (任意) デフォルト値:{"type":"adaptive"}

MiniMax 提供の MiniMax/MiniMax-M3 の思考モードを制御します。

thinking.type の有効値:

  • adaptive:自動 (デフォルト)。モデルが思考するかどうかを決定します。

  • disabled:思考を無効にし、直接応答します。

このパラメーターは標準の OpenAI パラメーターではありません。Python SDK を使用して呼び出す場合は、extra_body オブジェクトに配置してください。 構成:extra_body={"thinking": {"type": "adaptive"}}

preserve_thinking boolean (任意) デフォルト値:false

会話履歴のアシスタントメッセージからの 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 (Alibaba Cloud Model Studio にデプロイ)、kimi-k2.7-code (Alibaba Cloud Model Studio にデプロイ、デフォルトで有効)、kimi/kimi-k2.7-code-highspeed (Moonshot AI 提供、デフォルトで有効)、および kimi/kimi-k2.7-code (Moonshot AI 提供、デフォルトで有効) でサポートされています。

  • 履歴メッセージに reasoning_content が含まれていない場合、このパラメーターを有効にしてもエラーは発生しません。

  • 有効にすると、過去の会話からの reasoning_content が入力トークン数に含まれ、課金対象となります。

このパラメーターは標準の 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 および GLM シリーズモデルの推論強度を制御します。

有効値:

  • high:高強度推論

  • max:最大強度推論

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-max シリーズ:qwen3.7-max シリーズのテキストモダリティ

  • qwen-plus シリーズ:qwen3.7-plus および qwen3.6-plus シリーズのテキストモダリティ、および qwen3.5-plus シリーズのオムニモダリティ

  • qwen-flash シリーズ:qwen3.6-flash および qwen3.5-flash シリーズのオムニモダリティ

Qwen シリーズの使用リファレンス:

`tool_stream` は複雑なツールパラメーターにのみ影響します。通常のツールパラメーターの場合、stream=true である限り、ストリーミング出力が有効になります。複雑なツールとは、ツール定義の一部のパラメータータイプが `array` または `object` であるツールです。

  • tool_stream=false:複雑なツールパラメーターは一度に出力されます。これはデフォルトの動作であり、複雑なフォーマットはより正確です。

  • tool_stream=true:複雑なツールパラメーターはストリームで出力され、複雑なフォーマットのタイムアウトリスクを回避します。

GLM シリーズのサポートリスト: glm-4.6、glm-4.7、glm-5、および glm-5.1。

GLM シリーズの使用リファレンス:

  • tool_stream=false:ツールパラメーターは一度に出力されます。これはデフォルトの動作であり、複雑なフォーマットはより正確です。

  • tool_stream=true:ツールパラメーターはストリームで出力され、複雑なフォーマットのタイムアウトリスクを回避します。

このパラメーターは標準の OpenAI パラメーターではありません。Python SDK を使用して呼び出す場合は、extra_body オブジェクトに配置してください。 構成:extra_body={"tool_stream": true}

enable_code_interpreter boolean (任意) デフォルト値:false

コードインタープリター機能を有効にするかどうかを指定します。詳細については、「コードインタープリター」をご参照ください。

有効値:

  • true:有効

  • false:無効

このパラメーターは標準の OpenAI パラメーターではありません。Python SDK を使用して呼び出す場合は、extra_body オブジェクトに配置してください。 構成:extra_body={"enable_code_interpreter": xxx}

seed integer (任意)

乱数シード。このパラメーターは、同じ入力とパラメーターで再現可能な結果を保証するために使用されます。呼び出しで同じ seed 値を渡し、他のパラメーターが変更されない場合、モデルは可能な限り同じ結果を返します。

値の範囲:[0,2<sup>31</sup>−1]

logprobs boolean (任意) デフォルト値:false

出力トークンの対数確率を返すかどうかを指定します。有効値:

  • true

    返す

  • false

    返さない

思考フェーズ (reasoning_content) 中に生成されたコンテンツは、対数確率を返しません。

サポートされているモデル

  • qwen-plus シリーズのスナップショットモデル (安定版モデルを除く)

  • qwen-turbo シリーズのスナップショットモデル (安定版モデルを除く)

  • qwen3-vl-plus シリーズモデル (安定版モデルを含む)

  • qwen3-vl-flash シリーズモデル (安定版モデルを含む)

  • Qwen3 オープンソースモデル

top_logprobs integer (任意) デフォルト値:0

各生成ステップで返す、最も可能性の高い候補トークンの数を指定します。

値の範囲:[0, 5]

このパラメーターは、logprobstrue の場合にのみ有効です。

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

並列ツール呼び出しを有効にするかどうかを指定します。詳細については、「並列ツール呼び出し」をご参照ください。

有効値:

  • true:有効

  • false:無効

enable_search boolean (任意) デフォルト値:false

Web 検索を有効にするかどうかを指定します。詳細については、「Web 検索」をご参照ください。

有効値:

  • true:有効にする。

    有効にした後、Web 検索が実行されない場合は、プロンプトを最適化するか、search_optionsforced_search パラメーターを設定して強制検索を有効にすることができます。
  • false:無効にする。

Web 検索機能を有効にすると、トークンの消費量が増加する可能性があります。
このパラメーターは標準の OpenAI パラメーターではありません。Python SDK を使用して呼び出す場合は、extra_body オブジェクトに配置してください。 構成:extra_body={"enable_search": True}

search_options object (任意)

Web 検索の戦略。詳細については、「Web 検索」をご参照ください。

プロパティ

forced_search boolean(任意) デフォルト値:false

Web 検索を強制するかどうかを指定します。このパラメーターは、enable_searchtrue に設定されている場合にのみ有効です。

有効値:

  • true:強制的に有効にする。

  • false:強制的に有効にしない。モデルが Web 検索を実行するかどうかを決定します。

search_strategy string(任意) デフォルト値:turbo

検索戦略。このパラメーターは、enable_searchtrue に設定されている場合にのみ有効です。

有効値:

  • 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_maxagent 戦略に基づいた Web スクレイピングをサポートします。詳細については、「Web スクレイピング」をご参照ください。

    この戦略は、qwen3-max および qwen3-max-2026-01-23 の思考モードにのみ適用されます。

enable_search_extension boolean(任意) デフォルト値:false

垂直検索を有効にするかどうかを指定します。このパラメーターは、enable_searchtrue に設定されている場合にのみ有効です。

有効値:

  • true:有効にする。

  • false:無効にする。

このパラメーターは標準の 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 を有効にする場合は、履歴の reasoning_content をメッセージ内で完全に、変更せずに、元の順序で渡す必要があります。欠落、トリミング、書き換え、または並べ替えは、パフォーマンスを低下させるか、失敗の原因となります。

チャット応答オブジェクト (非ストリーミング出力)

{
    "choices": [
        {
            "message": {
                "role": "assistant",
                "content": "I am a large-scale language model developed by Alibaba Cloud. My name is Qwen."
            },
            "finish_reason": "stop",
            "index": 0,
            "logprobs": null
        }
    ],
    "object": "chat.completion",
    "usage": {
        "prompt_tokens": 3019,
        "completion_tokens": 104,
        "total_tokens": 3123,
        "prompt_tokens_details": {
            "cached_tokens": 2048
        }
    },
    "created": 1735120033,
    "system_fingerprint": null,
    "model": "qwen-plus",
    "id": "chatcmpl-6ada9ed2-7f33-9de2-8bb0-78bd4035025a"
}

id string

この呼び出しの一意の識別子。

choices array

モデルによって生成されたコンテンツの配列。

プロパティ

finish_reason string

モデルが生成を停止した理由。

次の 3 つのシナリオを考慮してください:

  • stop:モデルは、入力の stop パラメーターをトリガーしたか、自然に停止したため、生成を停止しました。

  • length:生成長が長すぎるため、モデルは生成を停止しました。

  • tool_calls:ツールを呼び出す必要があるため、モデルは生成を停止しました。

index integer

choices 配列内のこのオブジェクトのインデックス。

logprobs object

モデルの出力のトークン確率情報。

プロパティ

content array

各トークンとその対数確率を含む配列。

プロパティ

token string

現在のトークンのテキスト。

bytes array

現在のトークンの生の UTF-8 バイトのリスト。これは、絵文字や漢字などの出力コンテンツを正確に復元するために使用されます。

logprob float

現在のトークンの対数確率。戻り値 null は、確率が非常に低いことを示します。

top_logprobs array

現在のトークン位置で最も可能性の高い候補トークン。トークンの数は top_logprobs リクエストパラメーターと一致します。各要素には以下が含まれます:

プロパティ

token string

候補トークンのテキスト。

bytes array

現在のトークンの生の UTF-8 バイトのリスト。これは、絵文字や漢字などの出力コンテンツを正確に復元するために使用されます。

logprob float

この候補トークンの対数確率。null 値は、確率が非常に低いことを示します。

message object

モデルによって出力されるメッセージ。

プロパティ

content string

モデルの応答のコンテンツ。

reasoning_content string

モデルの Chain-of-Thought コンテンツ。

refusal string

このパラメーターは現在 null に固定されています。

role string

メッセージのロール。値は assistant に固定されています。

audio object

このパラメーターは現在 null に固定されています。

function_call (非推奨予定)object

この値は null に固定されています。詳細については、tool_calls パラメーターをご参照ください。

tool_calls array

モデルが呼び出すことを決定したツールとその入力パラメーターに関する情報。

プロパティ

id string

このツール呼び出しの一意の識別子。

type string

ツールタイプ。現在、function のみがサポートされています。

function object

ツールの詳細

プロパティ

name string

ツール名。

arguments string

JSON 形式の文字列としての入力パラメーター情報。

大規模言語モデルの応答はランダムであるため、出力パラメーター情報が関数シグネチャに準拠していない場合があります。関数を呼び出す前にパラメーターを検証する必要があります。

index integer

tool_calls 配列内のこのツール呼び出しのインデックス。

created integer

リクエストが作成されたときの UNIX タイムスタンプ (秒単位)。

model string

このリクエストに使用されるモデル。

object string

値は常に chat.completion です。

service_tier string

このパラメーターは現在 null に固定されています。

system_fingerprint string

このパラメーターは現在 null に固定されています。

usage object

このリクエストのトークン消費情報。

プロパティ

completion_tokens integer

モデルの出力に含まれるトークンの数。

prompt_tokens integer

入力トークンの数。詳細については、「追加の注意点」をご参照ください。

total_tokens integer

消費されたトークンの総数。これは prompt_tokenscompletion_tokens の合計です。

completion_tokens_details object

出力トークンの詳細な分類。

プロパティ

audio_tokens integer

このパラメーターは現在 null に固定されています。

reasoning_tokens integer

このパラメーターは現在 null に固定されています。

text_tokens integer

出力テキストのトークン数。

prompt_tokens_details object

入力トークンの詳細な分類。

プロパティ

audio_tokens integer

このパラメーターは現在 null に固定されています。

cached_tokens integer

キャッシュにヒットしたトークンの数。コンテキストキャッシュの詳細については、「コンテキストキャッシュ」をご参照ください。

text_tokens integer

入力テキストトークンの数。

image_tokens integer

入力画像トークンの数。

video_tokens integer

入力動画ファイルまたは画像リストのトークン数。

cache_creation object

明示的なキャッシュ作成情報。

プロパティ

ephemeral_5m_input_tokens integer

明示的なキャッシュの作成に使用されるトークンの数。

cache_creation_input_tokens integer

明示的なキャッシュの作成に使用されるトークンの数。

cache_type string

明示的なキャッシュを使用する場合、パラメーター値は ephemeral です。それ以外の場合、このパラメーターは存在しません。

チャット応答チャンクオブジェクト (ストリーミング出力)

{"id":"chatcmpl-e30f5ae7-3063-93c4-90fe-beb5f900bd57","choices":[{"delta":{"content":"","function_call":null,"refusal":null,"role":"assistant","tool_calls":null},"finish_reason":null,"index":0,"logprobs":null}],"created":1735113344,"model":"qwen-plus","object":"chat.completion.chunk","service_tier":null,"system_fingerprint":null,"usage":null}
{"id":"chatcmpl-e30f5ae7-3063-93c4-90fe-beb5f900bd57","choices":[{"delta":{"content":"I am","function_call":null,"refusal":null,"role":null,"tool_calls":null},"finish_reason":null,"index":0,"logprobs":null}],"created":1735113344,"model":"qwen-plus","object":"chat.completion.chunk","service_tier":null,"system_fingerprint":null,"usage":null}
{"id":"chatcmpl-e30f5ae7-3063-93c4-90fe-beb5f900bd57","choices":[{"delta":{"content":" a large-scale","function_call":null,"refusal":null,"role":null,"tool_calls":null},"finish_reason":null,"index":0,"logprobs":null}],"created":1735113344,"model":"qwen-plus","object":"chat.completion.chunk","service_tier":null,"system_fingerprint":null,"usage":null}
{"id":"chatcmpl-e30f5ae7-3063-93c4-90fe-beb5f900bd57","choices":[{"delta":{"content":" language","function_call":null,"refusal":null,"role":null,"tool_calls":null},"finish_reason":null,"index":0,"logprobs":null}],"created":1735113344,"model":"qwen-plus","object":"chat.completion.chunk","service_tier":null,"system_fingerprint":null,"usage":null}
{"id":"chatcmpl-e30f5ae7-3063-93c4-90fe-beb5f900bd57","choices":[{"delta":{"content":" model from Alibaba","function_call":null,"refusal":null,"role":null,"tool_calls":null},"finish_reason":null,"index":0,"logprobs":null}],"created":1735113344,"model":"qwen-plus","object":"chat.completion.chunk","service_tier":null,"system_fingerprint":null,"usage":null}
{"id":"chatcmpl-e30f5ae7-3063-93c4-90fe-beb5f900bd57","choices":[{"delta":{"content":" Cloud. My name","function_call":null,"refusal":null,"role":null,"tool_calls":null},"finish_reason":null,"index":0,"logprobs":null}],"created":1735113344,"model":"qwen-plus","object":"chat.completion.chunk","service_tier":null,"system_fingerprint":null,"usage":null}
{"id":"chatcmpl-e30f5ae7-3063-93c4-90fe-beb5f900bd57","choices":[{"delta":{"content":" is Qwen","function_call":null,"refusal":null,"role":null,"tool_calls":null},"finish_reason":null,"index":0,"logprobs":null}],"created":1735113344,"model":"qwen-plus","object":"chat.completion.chunk","service_tier":null,"system_fingerprint":null,"usage":null}
{"id":"chatcmpl-e30f5ae7-3063-93c4-90fe-beb5f900bd57","choices":[{"delta":{"content":".","function_call":null,"refusal":null,"role":null,"tool_calls":null},"finish_reason":null,"index":0,"logprobs":null}],"created":1735113344,"model":"qwen-plus","object":"chat.completion.chunk","service_tier":null,"system_fingerprint":null,"usage":null}
{"id":"chatcmpl-e30f5ae7-3063-93c4-90fe-beb5f900bd57","choices":[{"delta":{"content":"","function_call":null,"refusal":null,"role":null,"tool_calls":null},"finish_reason":"stop","index":0,"logprobs":null}],"created":1735113344,"model":"qwen-plus","object":"chat.completion.chunk","service_tier":null,"system_fingerprint":null,"usage":null}
{"id":"chatcmpl-e30f5ae7-3063-93c4-90fe-beb5f900bd57","choices":[],"created":1735113344,"model":"qwen-plus","object":"chat.completion.chunk","service_tier":null,"system_fingerprint":null,"usage":{"completion_tokens":17,"prompt_tokens":22,"total_tokens":39,"completion_tokens_details":null,"prompt_tokens_details":{"audio_tokens":null,"cached_tokens":0}}}

id string

この呼び出しの一意の識別子。各チャンクオブジェクトは同じ ID を持ちます。

choices array

モデルによって生成されたコンテンツの配列。1 つ以上のオブジェクトを含むことができます。include_usage パラメーターが true に設定されている場合、最後のチャンクでは choices は空の配列になります。

プロパティ

delta object

リクエストの増分オブジェクト。

プロパティ

content string

増分メッセージコンテンツ。

reasoning_content string

増分 Chain-of-Thought コンテンツ。

function_call object

この値はデフォルトで null です。詳細については、tool_calls パラメーターをご参照ください。

audio object

Qwen-Omni モデルを使用するときに生成される応答。

プロパティ

data string

増分 Base64 エンコードされた音声データ。

expires_at integer

リクエストが作成されたときのタイムスタンプ。

refusal object

このパラメーターは現在 null に固定されています。

role string

増分メッセージオブジェクトのロール。最初のチャンクにのみ値があります。

tool_calls array

モデルが呼び出すことを決定したツールとその入力パラメーターに関する情報。

プロパティ

index integer

tool_calls 配列内のこのツール呼び出しのインデックス。

id string

このツール呼び出しの一意の識別子。

function object

呼び出されたツールに関する情報。

プロパティ

arguments string

増分入力パラメーター。すべてのチャンクからの arguments が連結されて、完全な入力パラメーターセットが形成されます。

大規模言語モデルの応答はランダムであるため、出力パラメーター情報が関数シグネチャに準拠していない場合があります。関数を呼び出す前にパラメーターを検証する必要があります。

name string

ツール名。最初のチャンクにのみ値があります。

type string

ツールタイプ。現在、function のみがサポートされています。

finish_reason string

モデルが生成を停止した理由。値は次のいずれかになります:

  • stop:モデルは、入力の stop パラメーターをトリガーしたか、自然に停止したため、生成を停止しました。

  • 値は、生成が完了するまで null です。

  • length:生成長が長すぎるため、モデルは生成を停止しました。

  • tool_calls:ツールを呼び出す必要があるため、モデルは生成を停止しました。

index integer

choices 配列内の現在の応答のインデックス。入力パラメーター n が 1 より大きい場合、このパラメーターを使用して、異なる応答に対応する完全なコンテンツを連結できます。

logprobs object

現在のオブジェクトの確率情報。

プロパティ

content array

対数確率情報を持つトークンの配列。

プロパティ

token string

現在のトークン。

bytes array

現在のトークンの生の UTF-8 バイトのリスト。これは、絵文字や漢字を処理する際に役立ちます。

logprob float

現在のトークンの対数確率。null 値は、確率が非常に低いことを示します。

top_logprobs array

現在のトークン位置で最も可能性の高いトークンとその対数確率。要素の数は top_logprobs 入力パラメーターと一致します。

プロパティ

token string

現在のトークン。

bytes array

現在のトークンの生の UTF-8 バイトのリスト。これは、絵文字や漢字を処理する際に役立ちます。

logprob float

現在のトークンの対数確率。null 値は、確率が非常に低いことを示します。

created integer

このリクエストが作成されたときのタイムスタンプ。各チャンクは同じタイムスタンプを持ちます。

model string

このリクエストに使用されるモデル。

object string

値は常に chat.completion.chunk です。

service_tier string

このパラメーターは現在 null に固定されています。

system_fingerprintstring

このパラメーターは現在 null に固定されています。

usage object

このリクエストによって消費されたトークン。include_usagetrue に設定されている場合、最後のチャンクにのみ表示されます。

プロパティ

completion_tokens integer

モデルの出力に含まれるトークンの数。

prompt_tokens integer

入力トークンの数。

total_tokens integer

トークンの総数。これは prompt_tokenscompletion_tokens の合計です。

completion_tokens_details object

出力トークンの詳細情報。

プロパティ

audio_tokens integer

出力音声トークンの数。

reasoning_tokens integer

思考プロセスにおけるトークンの数。

text_tokens integer

出力テキストトークンの数。

prompt_tokens_details object

入力トークンの詳細な分類。

プロパティ

audio_tokens integer

入力音声トークンの数。

動画ファイル内の音声トークンの数は、このパラメーターで返されます。

text_tokens integer

入力テキストトークンの数。

video_tokens integer

画像リストまたは動画ファイルである入力動画のトークン数。

image_tokens integer

入力画像トークンの数。

cached_tokens integer

キャッシュにヒットしたトークンの数。コンテキストキャッシュの詳細については、「コンテキストキャッシュ」をご参照ください。

cache_creation object

明示的なキャッシュ作成情報。

プロパティ

ephemeral_5m_input_tokens integer

明示的なキャッシュの作成に使用されるトークンの数。

cache_creation_input_tokens integer

明示的なキャッシュの作成に使用されるトークンの数。

cache_type string

キャッシュタイプ。値は ephemeral に固定されています。

エラーコード

モデルの呼び出しに失敗し、エラーメッセージが返された場合は、「エラーコード」を参照して問題を解決してください。