All Products
Search
Document Center

Alibaba Cloud Model Studio:Referensi API Chat OpenAI

Last Updated:Mar 31, 2026

Topik ini menjelaskan cara memanggil model Qwen menggunakan API Chat yang kompatibel dengan OpenAI. Dokumen ini mencakup deskripsi parameter permintaan dan respons serta contoh kode.

Singapura

base_url untuk SDK: https://dashscope-intl.aliyuncs.com/compatible-mode/v1

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

AS (Virginia)

base_url untuk SDK: https://dashscope-us.aliyuncs.com/compatible-mode/v1

Titik akhir HTTP: POST https://dashscope-us.aliyuncs.com/compatible-mode/v1/chat/completions

Tiongkok (Beijing)

base_url untuk SDK: https://dashscope.aliyuncs.com/compatible-mode/v1

Titik akhir HTTP: POST https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions

Tiongkok (Hong Kong)

base_url untuk SDK: https://cn-hongkong.dashscope.aliyuncs.com/compatible-mode/v1

Titik akhir HTTP: POST https://cn-hongkong.dashscope.aliyuncs.com/compatible-mode/v1/chat/completions

Jerman (Frankfurt)

base_url untuk SDK: <u>https://{WorkspaceId}.eu-central-1.maas.aliyuncs.com/compatible-mode/v1</u>

Titik akhir permintaan: POST https://{WorkspaceId}.eu-central-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions

Ganti WorkspaceId dengan ID Workspace Anda yang sebenarnya.

Sebelum memulai, dapatkan Kunci API dan tetapkan sebagai Variabel lingkungan. Jika Anda menggunakan SDK OpenAI, instal SDK tersebut.

Badan permintaan

POST /chat/completions

Debugging API online yang kompatibel dengan OpenAI

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

Masukan teks

Python

import os
from openai import OpenAI


client = OpenAI(
    # Jika variabel lingkungan tidak diatur, ganti baris berikut dengan: api_key="sk-xxx"
    # Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Lihat Dapatkan kunci API untuk detailnya. Dalam contoh kode, ganti DASHSCOPE_API_KEY dengan kunci Anda yang sebenarnya jika tidak menggunakan variabel lingkungan.
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    # Berikut ini adalah base_url untuk wilayah Singapura.
    base_url="https://dashscope-intl.aliyuncs.com/compatible-mode/v1",  
)

completion = client.chat.completions.create(
    # Daftar model: https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
    model="qwen-plus",
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Who are you?"},
    ],
    # extra_body={"enable_thinking": False},
)
print(completion.model_dump_json())

Java

// Kode ini menggunakan SDK OpenAI versi 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()
                // Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Lihat Dapatkan kunci API untuk detailnya. Dalam contoh kode, ganti DASHSCOPE_API_KEY dengan kunci Anda yang sebenarnya jika tidak menggunakan variabel lingkungan.
                .apiKey(System.getenv("DASHSCOPE_API_KEY"))
                // Berikut ini adalah base_url untuk wilayah Singapura.
                .baseUrl("https://dashscope-intl.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(
    {
        // Jika variabel lingkungan tidak diatur, ganti baris berikut dengan: apiKey: "sk-xxx",
        // Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Lihat Dapatkan kunci API untuk detailnya. Dalam contoh kode, ganti DASHSCOPE_API_KEY dengan kunci Anda yang sebenarnya jika tidak menggunakan variabel lingkungan.
        apiKey: process.env.DASHSCOPE_API_KEY,
        // Berikut ini adalah base_url untuk wilayah Singapura.
        baseURL: "https://dashscope-intl.aliyuncs.com/compatible-mode/v1" 
    }
);

async function main() {
    const completion = await openai.chat.completions.create({
        model: "qwen-plus",  // Daftar model: https://www.alibabacloud.com/help/zh/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(
	        // Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Lihat Dapatkan kunci API untuk detailnya. Dalam contoh kode, ganti DASHSCOPE_API_KEY dengan kunci Anda yang sebenarnya jika tidak menggunakan variabel lingkungan.
		option.WithAPIKey(os.Getenv("DASHSCOPE_API_KEY")), // defaults to os.LookupEnv("OPENAI_API_KEY")
		// Berikut ini adalah base_url untuk wilayah Singapura.
		option.WithBaseURL("https://dashscope-intl.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)
    {
        // Jika variabel lingkungan tidak diatur, ganti baris berikut dengan: string? apiKey = "sk-xxx";
        // Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Lihat Dapatkan kunci API untuk detailnya. Dalam contoh kode, ganti DASHSCOPE_API_KEY dengan kunci Anda yang sebenarnya jika tidak menggunakan variabel lingkungan.
        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;
        }

        // Set the request URL and content
        // Berikut ini adalah base_url untuk wilayah Singapura.
        string url = "https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions";
        // Daftar model: https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
        string jsonContent = @"{
            ""model"": ""qwen-plus"",
            ""messages"": [
                {
                    ""role"": ""system"",
                    ""content"": ""You are a helpful assistant.""
                },
                {
                    ""role"": ""user"", 
                    ""content"": ""Who are you?""
                }
            ]
        }";

        // Send the request and get the response
        string result = await SendPostRequestAsync(url, jsonContent, apiKey);

        // Output the result
        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"))
        {
            // Set the request headers
            httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", apiKey);
            httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

            // Send the request and get the response
            HttpResponseMessage response = await httpClient.PostAsync(url, content);

            // Process the response
            if (response.IsSuccessStatusCode)
            {
                return await response.Content.ReadAsStringAsync();
            }
            else
            {
                return $"Request failed: {response.StatusCode}";
            }
        }
    }
}

PHP (HTTP)

<?php
// Set the request URL
// Berikut ini adalah base_url untuk wilayah Singapura.
$url = 'https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions';
// Jika variabel lingkungan tidak diatur, ganti baris berikut dengan: $apiKey = "sk-xxx";
// Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Lihat Dapatkan kunci API untuk detailnya. Dalam contoh kode, ganti DASHSCOPE_API_KEY dengan kunci Anda yang sebenarnya jika tidak menggunakan variabel lingkungan.
$apiKey = getenv('DASHSCOPE_API_KEY');
// Set the request headers
$headers = [
    'Authorization: Bearer '.$apiKey,
    'Content-Type: application/json'
];
// Set the request body
$data = [
    // Daftar model: https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
    "model" => "qwen-plus",
    "messages" => [
        [
            "role" => "system",
            "content" => "You are a helpful assistant."
        ],
        [
            "role" => "user",
            "content" => "Who are you?"
        ]
    ]
];
// Initialize cURL session
$ch = curl_init();
// Set cURL options
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);
// Execute cURL session
$response = curl_exec($ch);
// Check for errors
if (curl_errno($ch)) {
    echo 'Curl error: ' . curl_error($ch);
}
// Close cURL resources
curl_close($ch);
// Output the response
echo $response;
?>

curl

Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Lihat Dapatkan kunci API untuk detailnya. Jika Anda menggunakan model di wilayah Tiongkok (Beijing), ganti URL dengan: https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions
curl -X POST https://dashscope-intl.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?"
        }
    ]
}'

keluaran streaming

Untuk informasi selengkapnya, lihat Keluaran streaming.

Python

import os
from openai import OpenAI

client = OpenAI(
    # Jika variabel lingkungan tidak diatur, ganti baris berikut dengan: api_key="sk-xxx"
    # Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Lihat Dapatkan kunci API untuk detailnya. Dalam contoh kode, ganti DASHSCOPE_API_KEY dengan kunci Anda yang sebenarnya jika tidak menggunakan variabel lingkungan.
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    base_url="https://dashscope-intl.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(
    model="qwen-plus",  // Daftar model: https://www.alibabacloud.com/help/zh/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(
    {
        // Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Lihat Dapatkan kunci API untuk detailnya. Dalam contoh kode, ganti DASHSCOPE_API_KEY dengan kunci Anda yang sebenarnya jika tidak menggunakan variabel lingkungan.
        apiKey: process.env.DASHSCOPE_API_KEY,
        baseURL: "https://dashscope-intl.aliyuncs.com/compatible-mode/v1"
    }
);

async function main() {
    const completion = await openai.chat.completions.create({
        model: "qwen-plus", // Daftar model: https://www.alibabacloud.com/help/zh/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

Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Lihat Dapatkan kunci API untuk detailnya.
Jika Anda menggunakan model di wilayah Tiongkok (Beijing), ganti URL dengan: https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions
curl --location "https://dashscope-intl.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
}'

Masukan gambar

Untuk informasi selengkapnya tentang analisis gambar oleh model bahasa besar, lihat Pemahaman gambar dan video.

Python

import os
from openai import OpenAI

client = OpenAI(
    # Jika variabel lingkungan tidak diatur, ganti baris berikut dengan: api_key="sk-xxx"
    # Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Lihat Dapatkan kunci API untuk detailnya. Dalam contoh kode, ganti DASHSCOPE_API_KEY dengan kunci Anda yang sebenarnya jika tidak menggunakan variabel lingkungan.
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    base_url="https://dashscope-intl.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(
    model="qwen-vl-plus",  // Daftar model: https://www.alibabacloud.com/help/zh/model-studio/models
    messages=[{"role": "user","content": [
            {"type": "image_url",
             "image_url": {"url": "https://dashscope.oss-cn-beijing.aliyuncs.com/images/dog_and_girl.jpeg"}},
            {"type": "text", "text": "What is this?"},
            ]}]
    )
print(completion.model_dump_json())

Node.js

import OpenAI from "openai";

const openai = new OpenAI(
    {
        // Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Lihat Dapatkan kunci API untuk detailnya. Dalam contoh kode, ganti DASHSCOPE_API_KEY dengan kunci Anda yang sebenarnya jika tidak menggunakan variabel lingkungan.
        apiKey: process.env.DASHSCOPE_API_KEY,
        baseURL: "https://dashscope-intl.aliyuncs.com/compatible-mode/v1"
    }
);

async function main() {
    const response = await openai.chat.completions.create({
        model: "qwen-vl-max", // Daftar model: https://www.alibabacloud.com/help/zh/model-studio/models
        messages: [{role: "user",content: [
            { type: "image_url",image_url: {"url": "https://dashscope.oss-cn-beijing.aliyuncs.com/images/dog_and_girl.jpeg"}},
            { type: "text", text: "What is this?" },
        ]}]
    });
    console.log(JSON.stringify(response));
}

main();

curl

Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Lihat Dapatkan kunci API untuk detailnya.
Jika Anda menggunakan model di wilayah Tiongkok (Beijing), ganti URL dengan: https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions
curl -X POST https://dashscope-intl.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?"}
       ]}]
}'

Masukan video

Contoh berikut menunjukkan cara meneruskan daftar gambar. Untuk contoh penggunaan lainnya, seperti meneruskan file video, lihat pemahaman visual.

Python

import os
from openai import OpenAI

client = OpenAI(
    # Jika variabel lingkungan tidak diatur, ganti baris berikut dengan: api_key="sk-xxx"
    # Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Lihat Dapatkan kunci API untuk detailnya. Dalam contoh kode, ganti DASHSCOPE_API_KEY dengan kunci Anda yang sebenarnya jika tidak menggunakan variabel lingkungan.
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    base_url="https://dashscope-intl.aliyuncs.com/compatible-mode/v1",  
)
completion = client.chat.completions.create(
    # Daftar model: https://www.alibabacloud.com/help/zh/model-studio/models
    model="qwen-vl-max",
    messages=[{
        "role": "user",
        "content": [
            {
                "type": "video",
                "video": [
                    "https://img.alicdn.com/imgextra/i3/O1CN01K3SgGo1eqmlUgeE9b_!!6000000003923-0-tps-3840-2160.jpg",
                    "https://img.alicdn.com/imgextra/i4/O1CN01BjZvwg1Y23CF5qIRB_!!6000000003000-0-tps-3840-2160.jpg",
                    "https://img.alicdn.com/imgextra/i4/O1CN01Ib0clU27vTgBdbVLQ_!!6000000007859-0-tps-3840-2160.jpg",
                    "https://img.alicdn.com/imgextra/i1/O1CN01aygPLW1s3EXCdSN4X_!!6000000005710-0-tps-3840-2160.jpg"]
            },
            {
                "type": "text",
                "text": "Describe the process in this video."
            }]}]
)
print(completion.model_dump_json())

Node.js

// Pastikan Anda telah menentukan "type": "module" di package.json.
import OpenAI from "openai"; 

const openai = new OpenAI({
    // Jika variabel lingkungan tidak diatur, ganti baris berikut dengan: apiKey: "sk-xxx",
    // Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Lihat Dapatkan kunci API untuk detailnya. Dalam contoh kode, ganti DASHSCOPE_API_KEY dengan kunci Anda yang sebenarnya jika tidak menggunakan variabel lingkungan.
    apiKey: process.env.DASHSCOPE_API_KEY, 
    baseURL: "https://dashscope-intl.aliyuncs.com/compatible-mode/v1"    
});

async function main() {
    const response = await openai.chat.completions.create({
        // Daftar model: https://www.alibabacloud.com/help/zh/model-studio/models 
        model: "qwen-vl-max",
        messages: [{
            role: "user",
            content: [
                {
                    type: "video",
                    video: [
                        "https://img.alicdn.com/imgextra/i3/O1CN01K3SgGo1eqmlUgeE9b_!!6000000003923-0-tps-3840-2160.jpg",
                        "https://img.alicdn.com/imgextra/i4/O1CN01BjZvwg1Y23CF5qIRB_!!6000000003000-0-tps-3840-2160.jpg",
                        "https://img.alicdn.com/imgextra/i4/O1CN01Ib0clU27vTgBdbVLQ_!!6000000007859-0-tps-3840-2160.jpg",
                        "https://img.alicdn.com/imgextra/i1/O1CN01aygPLW1s3EXCdSN4X_!!6000000005710-0-tps-3840-2160.jpg"
                    ]
                },
                {
                    type: "text",
                    text: "Describe the process in this video."
                }
        ]}]
    });
    console.log(JSON.stringify(response));
}

main();

curl

Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Dapatkan Kunci API. Berikut ini adalah base_url untuk wilayah Singapura.
curl -X POST https://dashscope-intl.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."
                }
            ]
        }
    ]
}'

Pemanggilan alat

Untuk kode lengkap alur kerja Pemanggilan fungsi, lihat Pemanggilan fungsi.

Python

import os
from openai import OpenAI

client = OpenAI(
    # Jika variabel lingkungan tidak diatur, ganti baris berikut dengan: api_key="sk-xxx"
    # Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Lihat Dapatkan kunci API untuk detailnya. Dalam contoh kode, ganti DASHSCOPE_API_KEY dengan kunci Anda yang sebenarnya jika tidak menggunakan variabel lingkungan.
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    base_url="https://dashscope-intl.aliyuncs.com/compatible-mode/v1",  
)

tools = [
    // Alat 1: Dapatkan waktu saat ini (tidak perlu parameter)
    {
        "type": "function",
        "function": {
            "name": "get_current_time",
            "description": "Useful when you want to know the current time.",
            "parameters": {}  // Karena tidak diperlukan parameter masukan untuk mendapatkan waktu saat ini, parameters adalah kamus kosong.
        }
    },  
    // Alat 2: Dapatkan cuaca (memerlukan parameter lokasi)
    {
        "type": "function",
        "function": {
            "name": "get_current_weather",
            "description": "Useful when you want to check the weather in a specific city.",
            "parameters": {  
                "type": "object",
                "properties": {
                    // Untuk menanyakan cuaca, Anda perlu memberikan lokasi. Oleh karena itu, atur parameternya menjadi location.
                    "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",  // Daftar model: https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
    messages=messages,
    tools=tools
)

print(completion.model_dump_json())

Node.js

import OpenAI from "openai";

const openai = new OpenAI(
    {
        // Jika variabel lingkungan tidak diatur, ganti baris berikut dengan: apiKey: "sk-xxx",
        // Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Lihat Dapatkan kunci API untuk detailnya. Dalam contoh kode, ganti DASHSCOPE_API_KEY dengan kunci Anda yang sebenarnya jika tidak menggunakan variabel lingkungan.
        apiKey: process.env.DASHSCOPE_API_KEY,
        baseURL: "https://dashscope-intl.aliyuncs.com/compatible-mode/v1"
    }
);

const messages = [{"role": "user", "content": "What is the weather like in Hangzhou?"}];
const tools = [
// Alat 1: Dapatkan waktu saat ini (tidak perlu parameter)
{
    "type": "function",
    "function": {
        "name": "get_current_time",
        "description": "Useful when you want to know the current time.",
        // Karena tidak diperlukan parameter masukan untuk mendapatkan waktu saat ini, parameters kosong.
        "parameters": {}  
    }
},  
// Alat 2: Dapatkan cuaca (memerlukan parameter lokasi)
{
    "type": "function",
    "function": {
        "name": "get_current_weather",
        "description": "Useful when you want to check the weather in a specific city.",
        "parameters": {  
            "type": "object",
            "properties": {
                // Untuk menanyakan cuaca, Anda perlu memberikan lokasi. Oleh karena itu, atur parameternya menjadi location.
                "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", // Daftar model: https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
        messages: messages,
        tools: tools,
    });
    console.log(JSON.stringify(response));
}

main();

curl

Kunci API berbeda berdasarkan wilayah (Beijing vs Singapura/Virginia). Dapatkan Kunci API. Berikut ini adalah base_url untuk wilayah Singapura.
curl -X POST https://dashscope-intl.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"]
            }
        }
    }
  ]
}'

Pemanggilan asinkron

import os
import asyncio
from openai import AsyncOpenAI
import platform

client = AsyncOpenAI(
    # Jika Anda belum mengonfigurasi variabel lingkungan, ganti baris berikut dengan kunci API Model Studio Anda: api_key="sk-xxx"
    # Jika Anda menggunakan model di wilayah China (Beijing), Anda harus menggunakan kunci API untuk wilayah China (Beijing). Untuk mendapatkannya, kunjungi: https://bailian.console.alibabacloud.com/?tab=model#/api-key
    api_key=os.getenv("DASHSCOPE_API_KEY"),
    base_url="https://dashscope-intl.aliyuncs.com/compatible-mode/v1",
)

async def main():
    response = await client.chat.completions.create(
        messages=[{"role": "user", "content": "Siapa Anda?"}],
        model="qwen-plus",  # Di sini, qwen-plus digunakan sebagai contoh. Ganti dengan nama model yang diperlukan. Daftar Model: https://www.alibabacloud.com/help/zh/model-studio/getting-started/models
    )
    print(response.model_dump_json())

if platform.system() == "Windows":
    asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
asyncio.run(main())

model string (Wajib)

Nama model yang akan digunakan.

Model yang didukung meliputi model bahasa besar Qwen (komersial dan open source), Qwen-VL, Qwen-Coder, Qwen-Omni, dan Qwen-Math.

Untuk nama model spesifik dan informasi penagihan, lihat Generasi teks - Qwen.

messages array (Wajib)

Riwayat percakapan untuk model, yang disusun secara kronologis.

Jenis pesan

Pesan Sistem object (Opsional)

Pesan sistem yang menentukan peran, nada, tujuan tugas, atau batasan untuk model bahasa besar. Tempatkan di awal array messages.

Jangan atur Pesan Sistem untuk model QwQ. Pesan Sistem tidak berpengaruh pada model QVQ.

Properti

content string (Wajib)

Instruksi sistem yang menentukan peran, perilaku, gaya respons, dan batasan tugas model.

role string (Wajib)

Peran untuk pesan sistem. Nilainya tetap sebagai system.

Pesan Pengguna object (Wajib)

Pesan pengguna yang meneruskan pertanyaan, instruksi, atau konteks ke model.

Properti

content string atau array(Wajib)

Isi pesan. Ini adalah string untuk masukan teks saja. Ini adalah array untuk masukan multi-modal, seperti gambar, atau jika caching eksplisit diaktifkan.

Properti untuk model multi-modal atau ketika caching eksplisit diaktifkan

type string (Wajib)

Nilai yang valid:

  • text

    Atur ke text untuk masukan teks.

  • image_url

    Atur ke image_url untuk masukan gambar.

  • input_audio

    Atur ke input_audio untuk masukan audio.

  • video

    Atur ke video untuk masukan video sebagai daftar gambar.

  • video_url

    Atur ke video_url untuk masukan file video.

    Hanya beberapa model Qwen-VL yang menerima file video sebagai masukan. Untuk informasi selengkapnya, lihat Pemahaman video (Qwen-VL). Model QVQ dan Qwen-Omni mendukung masukan file video langsung.

text string

Teks masukan. Parameter ini wajib ketika type adalah text.

image_url object

Informasi gambar masukan. Parameter ini wajib ketika type adalah image_url.

Properti

url string(Wajib)

URL atau URL Data Base64 gambar. Untuk meneruskan file lokal, lihat Pemahaman gambar dan video.

input_audio object

Informasi audio masukan. Parameter ini wajib ketika type adalah input_audio.

Properti

data string(Wajib)

URL atau URL Data Base64 audio. Untuk meneruskan file lokal, lihat Masukkan file lokal yang dikodekan Base64.

format string(Wajib)

Format audio masukan, seperti mp3 atau wav.

video array

Informasi video yang direpresentasikan sebagai daftar gambar. Parameter ini wajib ketika type adalah video. Untuk petunjuk penggunaan, lihat Pemahaman video (Qwen-VL), Pemahaman video (QVQ), atau Pemahaman video (Qwen-Omni).

Nilai contoh:

[
    "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

Informasi file video masukan. Parameter ini wajib ketika type adalah video_url.

Qwen-VL hanya dapat memahami informasi visual dalam file video. Qwen-Omni dapat memahami informasi visual dan audio.

Properti

url string(Wajib)

URL jaringan publik atau URL Data Base64 file video. Untuk memasukkan file video lokal, lihat Masukkan file lokal yang dikodekan Base64.

fps float (Opsional)

Jumlah frame yang diekstraksi per detik. Nilainya harus berada dalam rentang [0,1, 10]. Nilai default adalah 2,0.

Deskripsi fungsi

Fps menyediakan fitur berikut:

  • Untuk masukan file video, ini mengontrol frekuensi ekstraksi frame. Satu frame diekstraksi setiap detik.

    Berlaku untuk model Qwen-VL dan QVQ.
  • Ini memberi tahu model tentang interval waktu antara frame yang berdekatan. Hal ini membantu model memahami dinamika temporal video dengan lebih baik. Fungsi ini berlaku untuk masukan file video maupun daftar gambar. Cocok untuk skenario seperti pelokalisasi waktu kejadian atau ringkasan konten segmen.

    Mendukung model Qwen3.5, Qwen3-VL, Qwen2.5-VL, Qwen3.5-Omni, dan model QVQ.

Nilai fps yang lebih besar cocok untuk skenario gerakan cepat, seperti acara olahraga atau film aksi. Nilai fps yang lebih kecil cocok untuk video panjang atau konten dengan adegan statis.

Nilai contoh

  • Untuk masukan daftar gambar: {"video":["https://xx1.jpg",...,"https://xxn.jpg"],"fps":2}

  • Untuk masukan file video: {"video": "https://xx1.mp4","fps":2}

min_pixels integer (Opsional)

Menetapkan ambang batas piksel minimum untuk gambar atau frame video masukan. Jika gambar atau frame video masukan memiliki jumlah piksel kurang dari min_pixels, gambar tersebut diperbesar hingga jumlah piksel total melebihi min_pixels. Berlaku untuk model Qwen-VL dan QVQ.

Rentang nilai

  • Untuk masukan gambar:

    • Qwen3.5-Omni, Qwen3.5, Qwen3-VL: Nilai default dan minimum adalah 65536.

    • qwen-vl-max, qwen-vl-max-latest, qwen-vl-max-0813, qwen-vl-plus, qwen-vl-plus-latest, qwen-vl-plus-0815: Nilai default dan minimum adalah 4096.

    • Model qwen-vl-plus lainnya, model qwen-vl-max lainnya, seri open source Qwen2.5-VL, dan model seri QVQ: Nilai default dan minimum adalah 3136.

  • Untuk masukan file video atau daftar gambar:

    • Qwen3.5-Omni, Qwen3.5, Qwen3-VL (termasuk versi komersial dan open source), qwen-vl-max, qwen-vl-max-latest, qwen-vl-max-0813, qwen-vl-plus, qwen-vl-plus-latest, qwen-vl-plus-0815: Nilai default adalah 65536. Nilai minimum adalah 4096.

    • Model qwen-vl-plus lainnya, model qwen-vl-max lainnya, seri open source Qwen2.5-VL, dan model seri QVQ: Nilai default adalah 50176. Nilai minimum adalah 3136.

Nilai contoh

  • Untuk masukan gambar: {"type": "image_url","image_url": {"url":"https://xxxx.jpg"},"min_pixels": 65536}

  • Untuk masukan file video: {"type": "video_url","video_url": {"url":"https://xxxx.mp4"},"min_pixels": 65536}

  • Untuk masukan daftar gambar: {"type": "video","video": ["https://xx1.jpg",...,"https://xxn.jpg"],"min_pixels": 65536}

max_pixels integer (Opsional)

Menetapkan ambang batas piksel maksimum untuk gambar atau frame video masukan. Jika gambar atau video masukan memiliki jumlah piksel dalam rentang [min_pixels, max_pixels], model memproses gambar aslinya. Jika jumlah piksel melebihi max_pixels, gambar diperkecil hingga jumlah piksel totalnya kurang dari max_pixels. Berlaku untuk model Qwen-VL dan QVQ.

Rentang nilai

  • Untuk masukan gambar:

    max_pixels terkait dengan apakah parameter <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> diaktifkan.

    • Ketika vl_high_resolution_images adalah False:

      • Qwen3.5-Omni, Qwen3.5, Qwen3-VL: Nilai default adalah 2621440. Nilai maksimum adalah 16777216.

      • qwen-vl-max, qwen-vl-max-latest, qwen-vl-max-0813, qwen-vl-plus, qwen-vl-plus-latest, qwen-vl-plus-0815: Nilai default adalah 1310720. Nilai maksimum adalah 16777216.

      • Model qwen-vl-plus lainnya, model qwen-vl-max lainnya, seri open source Qwen2.5-VL, dan model seri QVQ: Nilai default adalah 1003520. Nilai maksimum adalah 12845056.

    • Ketika vl_high_resolution_images adalah True:

      • Qwen3.5-Omni, Qwen3.5, Qwen3-VL, qwen-vl-max, qwen-vl-max-latest, qwen-vl-max-0813, qwen-vl-plus, qwen-vl-plus-latest, qwen-vl-plus-0815: max_pixels tidak berlaku. Jumlah piksel maksimum untuk gambar masukan ditetapkan pada 16777216.

      • Model qwen-vl-plus lainnya, model qwen-vl-max lainnya, seri open source Qwen2.5-VL, dan model seri QVQ: max_pixels tidak berlaku. Jumlah piksel maksimum untuk gambar masukan ditetapkan pada 12845056.

  • Untuk masukan file video atau daftar gambar:

    • Qwen3.5-Omni, Qwen3.5 series, Qwen3-VL closed-source series, qwen3-vl-235b-a22b-thinking, qwen3-vl-235b-a22b-instruct: Nilai default adalah 655360. Nilai maksimum adalah 2048000.

    • Model open source Qwen3-VL lainnya, qwen-vl-max, qwen-vl-max-latest, qwen-vl-max-0813, qwen-vl-plus, qwen-vl-plus-latest, qwen-vl-plus-0815: Nilai default adalah 655360. Nilai maksimum adalah 786432.

    • Model qwen-vl-plus lainnya, model qwen-vl-max lainnya, seri open source Qwen2.5-VL, dan model seri QVQ: Nilai default adalah 501760. Nilai maksimum adalah 602112.

Nilai contoh

  • Untuk masukan gambar: {"type": "image_url","image_url": {"url":"https://xxxx.jpg"},"max_pixels": 8388608}

  • Untuk masukan file video: {"type": "video_url","video_url": {"url":"https://xxxx.mp4"},"max_pixels": 655360}

  • Untuk masukan daftar gambar: {"type": "video","video": ["https://xx1.jpg",...,"https://xxn.jpg"],"max_pixels": 655360}

total_pixels integer (Opsional)

Membatasi jumlah total piksel untuk semua frame yang diekstraksi dari video (piksel per frame × jumlah total frame). Jika jumlah piksel total video melebihi batas ini, sistem memperkecil frame video. Namun, sistem memastikan bahwa jumlah piksel frame tunggal tetap berada dalam rentang [min_pixels, max_pixels]. Berlaku untuk model Qwen-VL dan QVQ.

Untuk video panjang dengan banyak frame yang diekstraksi, turunkan nilai ini untuk mengurangi konsumsi token dan waktu pemrosesan. Namun, hal ini dapat menyebabkan hilangnya detail gambar.

Rentang nilai

  • Qwen3.5-Omni, Qwen3.5 series, Qwen3-VL closed-source series, qwen3-vl-235b-a22b-thinking, qwen3-vl-235b-a22b-instruct: Nilai default dan minimum adalah 134217728. Nilai ini sesuai dengan 131072 token gambar (1 token gambar per 32×32 piksel).

  • Model open source Qwen3-VL lainnya, qwen-vl-max, qwen-vl-max-latest, qwen-vl-max-0813, qwen-vl-plus, qwen-vl-plus-latest, qwen-vl-plus-0815: Nilai default dan minimum adalah 67108864. Nilai ini sesuai dengan 65536 token gambar (1 token gambar per 32×32 piksel).

  • Model qwen-vl-plus lainnya, model qwen-vl-max lainnya, seri open source Qwen2.5-VL, dan model seri QVQ: Nilai default dan minimum adalah 51380224. Nilai ini sesuai dengan 65536 token gambar (1 token gambar per 28×28 piksel).

Nilai contoh

  • Untuk masukan file video: {"type": "video_url","video_url": {"url":"https://xxxx.mp4"},"total_pixels": 134217728}

  • Untuk masukan daftar gambar: {"type": "video","video": ["https://xx1.jpg",...,"https://xxn.jpg"],"total_pixels": 134217728}

cache_control object (Opsional)

Mengaktifkan caching eksplisit. Lihat Cache eksplisit.

Properti

type string(Wajib)

Hanya ephemeral yang didukung.

role string (Wajib)

Peran untuk pesan pengguna. Nilainya tetap sebagai user.

Pesan Asisten object (Opsional)

Balasan model. Biasanya dikirim kembali ke model sebagai konteks dalam percakapan multi-putaran.

Properti

content string (Opsional)

Isi teks balasan model. Jika tool_calls disertakan, content bisa kosong. Jika tidak, content wajib diisi.

role string (Wajib)

Peran untuk pesan asisten. Nilainya tetap sebagai assistant.

partial boolean (Opsional) Nilai default adalah false

Menentukan apakah akan mengaktifkan mode sebagian.

Nilai yang valid:

  • true: Diaktifkan.

  • false: Dinonaktifkan.

Lihat Mode sebagian.

tool_calls array (Opsional)

Informasi alat dan parameter masukan yang dikembalikan setelah pemanggilan fungsi dimulai. Berisi satu atau beberapa objek dan diambil dari bidang tool_calls dari respons model sebelumnya.

Properti

id string (Wajib)

ID respons alat.

type string(Wajib)

Jenis alat. Saat ini, hanya function yang didukung.

function object(Wajib)

Informasi alat dan parameter masukan.

Properti

name string(Wajib)

Nama alat.

arguments string(Wajib)

Informasi parameter masukan, diformat sebagai string JSON.

index integer(Wajib)

Indeks informasi alat saat ini dalam array tool_calls.

Pesan Alat object (Opsional)

Informasi keluaran alat.

Properti

content string (Wajib)

Isi keluaran fungsi alat. Harus berupa string. Jika alat mengembalikan data terstruktur (seperti JSON), serialisasikan menjadi string.

role string (Wajib)

Nilainya tetap sebagai tool.

tool_call_id string (Wajib)

ID yang dikembalikan setelah pemanggilan fungsi dimulai. Ambil dari completion.choices[0].message.tool_calls[$index].id. ID ini menandai alat yang sesuai dengan Pesan Alat.

stream boolean (Opsional. Nilai default adalah false.)

Mengaktifkan mode keluaran streaming. Lihat Keluaran streaming.

Nilai yang valid:

  • false: Model mengembalikan konten lengkap sekaligus setelah generasi selesai.

  • true: Model menghasilkan dan mengirim keluaran secara bertahap. Blok data (chunk) dikembalikan segera setelah bagian konten dihasilkan. Anda harus membaca chunk ini secara real-time untuk merakit balasan lengkap.

Kami menyarankan mengatur parameter ini ke true untuk meningkatkan pengalaman membaca dan mengurangi risiko timeout.

stream_options object (Opsional)

Opsi konfigurasi untuk keluaran streaming. Parameter ini hanya berlaku ketika stream diatur ke true.

Properti

include_usage boolean (Opsional. Nilai default adalah false.)

Menentukan apakah akan menyertakan informasi konsumsi token dalam blok data terakhir respons.

Nilai yang valid:

  • true: Disertakan.

  • false: Tidak menyertakan item tersebut.

Untuk keluaran streaming, informasi konsumsi token hanya muncul di blok data terakhir respons.

modalities array (Opsional. Nilai default adalah ["text"].)

Modalitas data keluaran. Parameter ini hanya berlaku untuk model Qwen-Omni. Lihat Non-real-time (Qwen-Omni).

Nilai yang valid:

  • ["text","audio"]: Keluaran teks dan audio.

  • ["text"]: Keluaran teks saja.

audio object (Opsional)

Suara dan format audio keluaran. Parameter ini hanya berlaku untuk model Qwen-Omni, dan Anda harus mengatur parameter modalities ke ["text","audio"]. Lihat Non-real-time (Qwen-Omni).

Properti

voice string (Wajib)

Suara yang digunakan untuk audio keluaran. Lihat Non-real-time (Qwen-Omni).

format string (Wajib)

Format audio keluaran. Hanya wav yang didukung.

temperature float (Opsional)

Suhu pengambilan sampel mengontrol keragaman teks yang dihasilkan.

Suhu yang lebih tinggi menghasilkan teks yang lebih beragam. Suhu yang lebih rendah menghasilkan teks yang lebih deterministik.

Rentang nilai: [0, 2)

Baik temperature maupun top_p mengontrol keragaman teks yang dihasilkan. Atur hanya salah satunya. Untuk informasi selengkapnya, lihat Ikhtisar model generasi teks.

Jangan ubah nilai temperature default untuk model QVQ.

top_p float (Opsional)

Ambang batas probabilitas untuk pengambilan sampel inti. Parameter ini mengontrol keragaman teks yang dihasilkan model.

Nilai top_p yang lebih tinggi menghasilkan teks yang lebih beragam. Nilai top_p yang lebih rendah menghasilkan teks yang lebih deterministik.

Rentang nilai: (0,1.0]

Baik temperature maupun top_p mengontrol keragaman teks yang dihasilkan. Atur hanya salah satu dari parameter ini. Untuk informasi selengkapnya, lihat Ikhtisar model generasi teks.

Jangan ubah nilai top_p default untuk model QVQ.

top_k integer (Opsional)

Menentukan jumlah token kandidat yang digunakan untuk pengambilan sampel selama generasi. Nilai yang lebih besar menghasilkan keluaran yang lebih acak, sedangkan nilai yang lebih kecil menghasilkan keluaran yang lebih deterministik. Jika diatur ke null atau nilai lebih besar dari 100, strategi top_k dinonaktifkan dan hanya strategi top_p yang berlaku. Nilainya harus integer yang lebih besar atau sama dengan 0.

Nilai top_k default

Seri QVQ, qwen-vl-plus-2025-07-10, qwen-vl-plus-2025-08-15: 10.

Seri QwQ: 40.

seri qwen-vl-plus lainnya, model sebelum qwen-vl-max-2025-08-13, qwen2.5-omni-7b: 1.

Seri Qwen3-Omni-Flash: 50.

Semua model lainnya: 20.

Parameter ini bukan parameter OpenAI standar. Saat menggunakan SDK Python, sertakan dalam objek extra_body. Konfigurasikan sebagai berikut: extra_body={"top_k":xxx}.
Anda tidak boleh mengubah nilai top_k default untuk model QVQ.

repetition_penalty float (Opsional)

Hukuman pengulangan untuk urutan berurutan dalam generasi model. Meningkatkan repetition_penalty mengurangi pengulangan dalam keluaran model. Nilai 1,0 berarti tidak ada hukuman. Tidak ada rentang nilai ketat, tetapi nilainya harus lebih besar dari 0.

Parameter ini bukan parameter OpenAI standar. Saat menggunakan SDK Python, sertakan dalam objek extra_body. Konfigurasikan sebagai berikut: extra_body={"repetition_penalty":xxx}.
Saat menggunakan model qwen-vl-plus-2025-01-25 untuk ekstraksi teks, atur repetition_penalty ke 1.0.
Anda tidak boleh mengubah nilai repetition_penalty default untuk model QVQ.

presence_penalty float (Opsional)

Mengontrol seberapa kuat model menghindari pengulangan konten.

Nilai yang valid: [-2.0, 2.0]. Nilai positif mengurangi pengulangan. Nilai negatif meningkatkannya.

Dalam skenario penulisan kreatif atau brainstorming yang membutuhkan keragaman, kesenangan, atau kreativitas, tingkatkan nilai ini. Dalam dokumen teknis atau teks formal yang menekankan konsistensi dan akurasi terminologi, turunkan nilai ini.

Nilai presence_penalty default

Qwen3.5-Omni, Qwen3.5 (mode non-thinking), qwen3-max-preview (mode thinking), Qwen3 (mode non-thinking), seri Qwen3-Instruct, qwen3-0.6b/1.7b/4b (mode thinking), seri QVQ, qwen-max, qwen-max-latest, qwen-max-latest seri qwen2.5-vl, seri qwen-vl-max, qwen-vl-plus, Qwen3-VL (non-thinking): 1.5

qwen-vl-plus-latest, qwen-vl-plus-2025-08-15: 1.2

qwen-vl-plus-2025-01-25: 1.0

qwen3-8b/14b/32b/30b-a3b/235b-a22b (mode thinking), qwen-plus/qwen-plus-latest/2025-04-28 (mode thinking), qwen-turbo/qwen-turbo/2025-04-28 (mode thinking): 0.5

Sisa nilai adalah 0.0.

Cara kerjanya

Jika nilai parameter positif, model memberikan hukuman pada token yang sudah muncul dalam teks yang dihasilkan. Hukuman tidak bergantung pada berapa kali token muncul. Hal ini mengurangi kemungkinan token tersebut muncul kembali, yang mengurangi pengulangan dan meningkatkan keragaman leksikal.

Contoh

Petunjuk: Terjemahkan kalimat berikut ke dalam bahasa Tionghoa: “Film ini bagus. Alur ceritanya bagus, aktingnya bagus, musiknya bagus, dan secara keseluruhan, seluruh film ini memang bagus. Bahkan, film ini sangat bagus. Alur ceritanya sangat bagus, aktingnya sangat bagus, dan musiknya juga sangat bagus.”

Nilai parameter 2.0: Film ini sangat bagus. Alurnya hebat, aktingnya hebat, musiknya juga sangat bagus, dan secara keseluruhan, seluruh film ini luar biasa bagus. Bahkan, film ini benar-benar luar biasa. Alurnya sangat menarik, aktingnya luar biasa, dan musiknya begitu indah.

Nilai parameter 0.0: Film ini bagus. Alurnya bagus, aktingnya bagus, musiknya juga bagus, dan secara keseluruhan, seluruh film ini sangat bagus. Bahkan, film ini benar-benar hebat. Alurnya sangat bagus, aktingnya juga sangat luar biasa, dan musiknya juga luar biasa.

Nilai parameter -2.0: Film ini sangat bagus. Alurnya sangat bagus, aktingnya sangat bagus, musiknya juga sangat bagus, dan secara keseluruhan, seluruh film ini sangat bagus. Bahkan, film ini benar-benar hebat. Alurnya sangat bagus, aktingnya juga sangat bagus, dan musiknya juga sangat bagus.

Saat menggunakan model qwen-vl-plus-2025-01-25 untuk ekstraksi teks, atur presence_penalty ke 1.5.
Anda tidak boleh mengubah nilai presence_penalty default untuk model QVQ.

response_format object (Opsional. Nilai default adalah {"type": "text"}.)

Format konten respons. Nilai yang valid:

  • {"type": "text"}: Mengembalikan respons teks biasa.

  • {"type": "json_object"}: Mengembalikan string JSON yang sesuai dengan sintaks JSON standar.

  • {"type": "json_schema","json_schema": {...}}: Mengembalikan string JSON yang sesuai dengan skema kustom.

Untuk informasi selengkapnya, lihat Output terstruktur.
Jika Anda menentukan {"type": "json_object"}, instruksikan model secara eksplisit untuk mengeluarkan JSON dalam prompt, misalnya dengan menambahkan “Silakan keluarkan dalam format JSON.” Jika tidak, akan terjadi error.
Untuk model yang didukung, lihat Output terstruktur.

Properti

type string (Wajib)

Format konten respons. Nilai yang valid:

  • text: Mengembalikan respons teks biasa.

  • json_object: Mengembalikan string JSON yang sesuai dengan sintaks JSON standar.

  • json_schema: Mengembalikan string JSON yang sesuai dengan skema kustom.

json_schema object

Ketika type adalah json_schema, bidang ini wajib dan menentukan konfigurasi untuk output terstruktur.

Properti

name string (Wajib)

Nama unik untuk skema. Nama hanya boleh berisi huruf (tidak peka huruf besar/kecil), angka, garis bawah (_), dan tanda hubung (-). Panjang maksimum adalah 64 karakter.

description string (Opsional)

Deskripsi tujuan skema. Ini membantu model memahami konteks semantik keluaran.

schema object (Opsional)

Objek yang sesuai dengan standar JSON Schema. Ini menentukan struktur data untuk keluaran model.

Untuk mempelajari cara membuat JSON Schema, lihat JSON Schema

strict boolean (Opsional. Nilai default adalah false.)

Menentukan apakah akan memaksa model untuk secara ketat mengikuti semua batasan dalam skema.

  • true (direkomendasikan)

    Model secara ketat mengikuti semua batasan, seperti jenis bidang, item yang wajib, dan format. Ini memastikan kepatuhan penuh keluaran.

  • false (tidak direkomendasikan)

    Model secara longgar mengikuti skema. Keluaran mungkin tidak sesuai dengan spesifikasi dan dapat menyebabkan kegagalan validasi.

max_tokens integer (Opsional)

Membatasi jumlah maksimum token dalam keluaran model. Jika konten yang dihasilkan melebihi nilai ini, generasi dihentikan lebih awal, dan bidang finish_reason dalam respons diatur ke length.

Nilai default dan maksimum sesuai dengan panjang keluaran maksimum model. Untuk informasi selengkapnya, lihat Generasi Teks - Qwen.

Parameter ini berguna untuk mengontrol panjang keluaran dalam skenario seperti menghasilkan ringkasan atau kata kunci, atau untuk mengurangi biaya dan mempersingkat waktu respons.

Ketika max_tokens dipicu, bidang finish_reason dalam respons diatur ke length.

max_tokens tidak membatasi panjang rantai-pikiran.

vl_high_resolution_images boolean (Opsional. Nilai default adalah false.)

Meningkatkan batas piksel maksimum untuk gambar masukan ke nilai piksel yang sesuai dengan 16384 token. Lihat Memproses gambar resolusi tinggi.

  • vl_high_resolution_images: true: Menggunakan strategi resolusi tetap dan mengabaikan pengaturan max_pixels. Jika gambar melebihi resolusi ini, jumlah piksel totalnya diperkecil agar sesuai dengan batas.

    Klik untuk melihat batas piksel untuk setiap model

    vl_high_resolution_images adalah true, model yang berbeda memiliki batas piksel yang berbeda:

    • model qwen3.5 series, Qwen3-VL series, qwen-vl-max, qwen-vl-max-latest, qwen-vl-max-0813, qwen-vl-plus, qwen-vl-plus-latest, qwen-vl-plus-0815, : 16,777,216 (setiap Token sesuai dengan 32*32 piksel, yaitu 16384*32*32)

    • model QVQ series, model Qwen2.5-VL series lainnya: 12,845,056 (setiap token sesuai dengan 28×28 piksel, yaitu 16,384×28×28)

  • Jika vl_high_resolution_images adalah false, batas piksel ditentukan oleh max_pixels. Jika gambar masukan melebihi max_pixels, gambar diperkecil agar sesuai dengan max_pixels. Batas piksel default untuk setiap model sesuai dengan nilai default max_pixels.

Parameter ini bukan parameter OpenAI standar. Saat melakukan panggilan dengan SDK Python, sertakan parameter ini dalam objek extra_body. Konfigurasinya sebagai berikut: extra_body={"vl_high_resolution_images":xxx}.

n integer (Opsional. Defaultnya 1)

Jumlah respons yang dihasilkan. Harus berupa bilangan bulat dari 1-4. Gunakan ini untuk skenario yang memerlukan beberapa respons kandidat, seperti penulisan kreatif atau iklan.

Parameter ini hanya didukung oleh model Qwen3 (mode non-thinking).
Jika Anda meneruskan parameter tools, atur n ke 1.
Meningkatkan n meningkatkan konsumsi token keluaran tetapi tidak memengaruhi konsumsi token masukan.

enable_thinking boolean (Opsional)

Mengaktifkan mode berpikir untuk model berpikir hibrida. Mode ini tersedia untuk model Qwen3.5, Qwen3, Qwen3-Omni-Flash, dan Qwen3-VL. Lihat Deep thinking.

Nilai yang valid:

  • true: Mengaktifkan fitur.

    Saat diaktifkan, konten berpikir dikembalikan dalam bidang reasoning_content.
  • false: Dinonaktifkan

Nilai default untuk model yang berbeda: Model yang didukung

Parameter ini bukan parameter OpenAI standar. Saat Anda melakukan panggilan menggunakan SDK Python, letakkan di objek extra_body. Konfigurasinya sebagai berikut: extra_body={"enable_thinking": xxx}.

thinking_budget integer (Opsional)

Jumlah maksimum token untuk proses berpikir. Ini berlaku untuk model Qwen3.5, Qwen3-VL, dan versi komersial serta open source model Qwen3. Lihat Batasi panjang berpikir.

Nilai default adalah panjang rantai-pikiran maksimum model. Lihat Daftar Model.

Parameter ini bukan parameter OpenAI standar. Saat Anda menggunakan SDK Python, letakkan parameter ini di objek extra_body. Konfigurasi parameternya sebagai berikut: extra_body={"thinking_budget": xxx}.

enable_code_interpreter boolean (Opsional. Defaultnya false.)

Tentukan apakah akan mengaktifkan fitur Penafsir Kode. Lihat Penafsir kode.

Nilai yang valid:

  • true: Diaktifkan

  • false: Tidak diaktifkan

Parameter ini bukan parameter OpenAI standar. Saat melakukan panggilan menggunakan SDK Python, sertakan parameter ini dalam objek extra_body. Konfigurasinya sebagai berikut: extra_body={"enable_code_interpreter": xxx}.

seed integer (Opsional)

Bilangan acak seed. Parameter ini memastikan hasil yang dapat direproduksi untuk masukan dan parameter yang sama. Jika Anda menggunakan nilai seed yang sama dalam panggilan dan semua parameter lainnya tetap tidak berubah, model mengembalikan hasil yang sama kapan pun memungkinkan.

Nilai yang valid: [0,2<sup>31</sup>-1].

logprobs boolean (Opsional) Defaultnya false

Menentukan apakah akan mengembalikan log probabilitas token keluaran. Nilai yang valid:

  • true

    Kembalikan

  • false

    Tidak mengembalikan

Konten yang dihasilkan selama fase berpikir (reasoning_content) tidak termasuk log probabilitas.

Model yang didukung

  • Cuplikan seri Qwen-plus (tidak termasuk model stabil)

  • Cuplikan seri Qwen-turbo (tidak termasuk model stabil)

  • Model Qwen3-vl-plus (termasuk model stabil)

  • Model Qwen3-vl-flash (termasuk model stabil)

  • Model open source Qwen3

top_logprobs integer (Opsional. Defaultnya 0)

Menentukan jumlah token kandidat paling mungkin yang dikembalikan pada setiap langkah generasi.

Nilai yang valid: 0 hingga 5

Parameter ini hanya berlaku ketika logprobs adalah true.

stop string atau array (Opsional)

Parameter ini menentukan kata berhenti. Jika string atau token_id yang ditentukan dalam stop muncul dalam teks yang dihasilkan model, generasi segera dihentikan.

Teruskan kata sensitif untuk mengontrol keluaran model.

Jika stop adalah array, jangan gunakan token_id atau string sebagai elemen secara bersamaan. Misalnya, ["Hello",104307] bukan nilai yang valid.

tools array (Opsional)

Array satu atau beberapa objek alat yang dapat dipanggil model dalam pemanggilan fungsi. Lihat Pemanggilan fungsi.

Ketika tools diatur dan model menentukan bahwa alat perlu dipanggil, respons mengembalikan informasi alat dalam bidang tool_calls.

Properti

type string (Wajib)

Jenis alat. Saat ini hanya mendukung function.

function object (Wajib)

Properti

name string (Wajib)

Nama alat. Hanya boleh berisi huruf, angka, garis bawah (_), dan tanda hubung (-). Nama bisa sepanjang maksimal 64 token.

description string (Wajib)

Deskripsi alat. Ini membantu model menentukan kapan dan bagaimana memanggil alat.

parameters object (Opsional. Nilai default adalah {}.)

Parameter alat harus dijelaskan menggunakan JSON Schema yang valid. Untuk informasi selengkapnya tentang JSON Schema, lihat tautan ini. Jika parameter parameters kosong, ini menunjukkan bahwa alat tidak memiliki parameter masukan, seperti alat kueri waktu.

Untuk meningkatkan akurasi pemanggilan alat, kami merekomendasikan meneruskan parameters.

tool_choice string atau object (Opsional. Nilai default adalah auto.)

Kebijakan pemilihan alat. Gunakan parameter ini untuk memaksa pemanggilan alat untuk jenis pertanyaan tertentu, seperti selalu menggunakan alat tertentu atau menonaktifkan semua alat.

Nilai yang valid:

  • auto

    Model secara otomatis memilih alat.

  • none

    Untuk menonaktifkan pemanggilan alat, atur parameter tool_choice ke none.

  • {"type": "function", "function": {"name": "the_function_to_call"}}

    Untuk memaksa pemanggilan alat tertentu, atur parameter tool_choice ke {"type": "function", "function": {"name": "the_function_to_call"}}, di mana the_function_to_call adalah nama fungsi alat yang ditentukan.

    Model dalam mode berpikir tidak mendukung pemaksaan pemanggilan alat tertentu.

parallel_tool_calls boolean (Opsional. Nilai default adalah false.)

Menentukan apakah akan mengaktifkan pemanggilan alat paralel. Lihat Pemanggilan alat paralel.

Nilai yang valid:

  • true: Diaktifkan

  • false: Dinonaktifkan

enable_search boolean (Opsional) Defaultnya: false

Mengaktifkan pencarian web. Lihat Pencarian web.

Nilai yang valid:

  • true: diaktifkan.

    Jika pencarian web tidak dipicu setelah mengaktifkan parameter ini, optimalkan prompt atau atur parameter search_options dengan forced_search untuk mengaktifkan pencarian paksa.
  • false — Nonaktifkan opsi ini.

Mengaktifkan fitur pencarian web dapat meningkatkan konsumsi token.
Parameter ini bukan parameter OpenAI standar. Saat memanggil dengan SDK Python, sertakan dalam objek extra_body. Konfigurasinya sebagai berikut: extra_body={"enable_search": True}.

search_options object (Opsional)

Strategi pencarian web. Lihat Pencarian web.

Properti

forced_search boolean (Opsional. Nilai default adalah false.)

Memaksa pencarian web. Parameter ini hanya berlaku ketika enable_search adalah true.

Nilai yang valid:

  • true: Paksa aktifkan.

  • false: Biarkan model memutuskan apakah akan melakukan pencarian web.

search_strategy string (Opsional) Default: turbo

Strategi skala pencarian. Parameter ini hanya berlaku ketika enable_search adalah true.

Nilai yang valid:

  • turbo (default): Menyeimbangkan kecepatan respons dan efektivitas pencarian. Cocok untuk sebagian besar skenario.

  • max: Menggunakan strategi pencarian yang lebih komprehensif dan memanggil beberapa mesin pencari untuk mengambil hasil yang lebih detail. Waktu respons mungkin lebih lama.

  • agent: Memanggil alat pencarian web dan Model Bahasa Besar (LLM) beberapa kali untuk mengambil dan mengintegrasikan informasi dalam beberapa putaran.

    Strategi ini hanya berlaku untuk 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, dan qwen3-max-2025-09-23.
    Saat diaktifkan, strategi ini hanya mendukung kembalikan sumber pencarian (enable_source: true). Semua fitur pencarian web lainnya tidak tersedia.
  • agent_max: Menambahkan dukungan scraping web ke kebijakan agent. Lihat Scraping web.

    Strategi ini hanya berlaku untuk qwen3.5-plus, qwen3.5-plus-2026-02-15, qwen3.5-flash, qwen3.5-flash-2026-02-23, dan mode berpikir qwen3-max dan qwen3-max-2026-01-23.
    Saat diaktifkan, strategi ini hanya mendukung kembalikan sumber pencarian (enable_source: true). Semua fitur pencarian web lainnya tidak tersedia.

enable_search_extension boolean (Opsional) Default: false

Mengaktifkan pencarian khusus domain. Parameter ini hanya berlaku ketika enable_search adalah true.

Nilai yang valid:

  • true: Diaktifkan.

  • false: Menonaktifkan fitur.

Parameter ini bukan parameter OpenAI standar. Saat Anda memanggilnya menggunakan SDK Python, sertakan dalam objek extra_body. Konfigurasinya sebagai berikut: extra_body={"search_options": xxx}.

Objek respons Chat (keluaran non-streaming)

{
    "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

Pengidentifikasi unik untuk permintaan ini.

choices array

Array konten yang dihasilkan dari model.

Properti

finish_reason string

Alasan model berhenti menghasilkan keluaran.

Ada tiga kasus:

  • Dipicu oleh parameter stop dalam masukan atau terminasi keluaran alami: stop.

  • Generasi berakhir karena panjang berlebihan: length.

  • Anda dapat memanggil alat, dan operasi berakhir dengan tool_calls.

index integer

Indeks objek saat ini dalam array choices.

logprobs object

Informasi probabilitas log untuk token dalam keluaran model.

Properti

content array

Array token dan probabilitas log yang sesuai.

Properti

token string

Teks token saat ini.

bytes array

Daftar byte UTF-8 mentah untuk token saat ini. Daftar ini memungkinkan rekonstruksi akurat konten keluaran, seperti emoji atau karakter Tiongkok.

logprob float

Probabilitas log token saat ini. Nilai kembalian null menunjukkan probabilitas yang sangat rendah.

top_logprobs array

Token kandidat paling mungkin untuk posisi token saat ini. Jumlah kandidat sesuai dengan parameter permintaan top_logprobs. Setiap elemen berisi:

Properti

token string

Teks token kandidat

bytes array

Daftar byte UTF-8 mentah untuk token saat ini. Daftar ini memungkinkan rekonstruksi akurat konten keluaran, seperti emoji atau karakter Tiongkok.

logprob float

Probabilitas log token saat ini. Nilai kembalian null menunjukkan probabilitas yang sangat rendah.

message object

Pesan yang dihasilkan oleh model.

Properti

content string

Konten respons model.

reasoning_content string

Konten rantai-pikiran model.

refusal string

Parameter ini saat ini tetap null.

role string

Peran pesan. Nilainya tetap sebagai assistant.

audio object

Parameter ini saat ini diatur ke null.

function_call (akan ditinggalkan) object

Bidang ini tetap null. Untuk pemanggilan fungsi, gunakan parameter tool_calls sebagai gantinya.

tool_calls array

Informasi alat dan parameter masukan yang dihasilkan model setelah memulai pemanggilan fungsi.

Properti

id string

Pengidentifikasi unik untuk respons alat ini.

type string

Jenis alat. Saat ini, hanya function yang didukung.

function object

Informasi alat.

Properti

name string

Nama alat.

arguments string

Informasi parameter masukan, diformat sebagai string JSON.

Karena respons model bahasa besar memiliki tingkat keacakan tertentu, informasi parameter keluaran mungkin tidak sesuai dengan signature fungsi. Validasi parameter sebelum memanggil fungsi.

index integer

Indeks alat saat ini dalam array tool_calls.

created integer

Stempel waktu UNIX (dalam detik) saat permintaan dibuat.

model string

Model yang digunakan untuk permintaan ini.

object string

Nilainya selalu chat.completion.

service_tier string

Bidang ini saat ini tetap null.

system_fingerprint string

Bidang ini saat ini tetap null.

usage object

Rincian konsumsi token untuk permintaan ini.

Properti

completion_tokens integer

Jumlah token dalam keluaran model.

prompt_tokens integer

Jumlah token dalam masukan.

total_tokens integer

Jumlah total token yang dikonsumsi, yaitu jumlah dari prompt_tokens dan completion_tokens.

completion_tokens_details object

Rincian rinci token keluaran saat menggunakan model Qwen-VL.

Properti

audio_tokens integer

Parameter ini saat ini diatur ke null.

reasoning_tokens integer

Parameter ini saat ini diatur ke null.

text_tokens integer

Jumlah token teks dalam keluaran model Qwen-VL.

prompt_tokens_details object

Rincian rinci token masukan.

Properti

audio_tokens integer

Parameter ini saat ini diatur ke null.

cached_tokens integer

Jumlah token yang mengenai cache. Untuk informasi selengkapnya, lihat cache konteks.

text_tokens integer

Jumlah token teks dalam masukan model Qwen-VL.

image_tokens integer

Jumlah token gambar dalam masukan model Qwen-VL.

video_tokens integer

Jumlah token untuk file video masukan atau daftar gambar dalam model Qwen-VL.

cache_creation object

Informasi tentang pembuatan cache eksplisit.

Properti

ephemeral_5m_input_tokens integer

Jumlah token yang digunakan untuk membuat cache eksplisit.

cache_creation_input_tokens integer

Jumlah token yang digunakan untuk membuat cache eksplisit.

cache_type string

Saat cache eksplisit digunakan, nilai parameter adalah ephemeral. Jika tidak, parameter ini tidak ada.

Objek chunk respons Chat (keluaran streaming)

{"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 a ","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":"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 model ","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":"from Alibaba 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":"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

Pengidentifikasi unik untuk permintaan ini. Semua chunk dalam respons yang sama memiliki id yang sama.

choices array

Array satu atau beberapa objek konten yang dihasilkan. Jika Anda mengatur parameter include_usage ke true, array choices kosong di chunk terakhir.

Properti

delta object

Objek konten inkremental untuk chunk ini.

Properti

content string

Konten pesan inkremental.

reasoning_content string

Konten rantai-pikiran inkremental.

function_call object

Nilai ini default ke null. Untuk informasi selengkapnya, lihat parameter tool_calls.

audio object

Respons yang dihasilkan oleh model Qwen-Omni.

Properti

data string

Data pengkodean audio inkremental yang dikodekan Base64.

expires_at integer

Stempel waktu UNIX saat permintaan dibuat.

refusal object

Parameter ini selalu null.

role string

Peran objek pesan inkremental. Properti ini hanya muncul di chunk pertama.

tool_calls array

Informasi tentang alat dan parameter masukan yang dihasilkan model setelah pemanggilan fungsi.

Properti

index integer

Indeks alat saat ini dalam array tool_calls.

id string

ID unik untuk respons alat ini.

function object

Informasi tentang alat yang dipanggil.

Properti

arguments string

Informasi inkremental tentang parameter masukan. Gabungkan arguments dari semua chunk untuk mendapatkan parameter masukan lengkap.

Karena respons Model Bahasa Besar (LLM) memiliki tingkat keacakan tertentu, informasi parameter keluaran mungkin tidak sesuai dengan signature fungsi. Validasi parameter sebelum memanggil fungsi.

name string

Nama alat. Properti ini hanya muncul di chunk pertama.

type string

Jenis alat. Saat ini, hanya function yang didukung.

finish_reason string

Alasan model berhenti menghasilkan konten. Ini bisa berupa salah satu nilai berikut:

  • stop: Generasi berhenti karena parameter masukan stop dipicu atau keluaran selesai secara alami.

  • null: Generasi belum selesai.

  • length: Generasi berhenti karena panjang keluaran maksimum tercapai.

  • tool_calls: Generasi berhenti untuk melakukan pemanggilan alat.

index integer

Indeks respons saat ini dalam array choices. Jika parameter masukan n lebih besar dari 1, gunakan parameter ini untuk merekonstruksi konten lengkap untuk setiap respons.

logprobs object

Informasi probabilitas untuk objek saat ini.

Properti

content array

Array token dengan informasi probabilitas log terkait.

Properties

token string

Token saat ini.

bytes array

Daftar byte UTF-8 mentah token saat ini. Ini digunakan untuk memulihkan konten keluaran secara akurat dan membantu saat menangani emoji dan karakter Tiongkok.

logprob float

Probabilitas log token saat ini. Nilai kembalian null menunjukkan probabilitas yang sangat rendah.

top_logprobs array

Token paling mungkin pada posisi saat ini dan probabilitas log mereka. Jumlah elemen sesuai dengan parameter masukan top_logprobs.

Properti

token string

Token saat ini.

bytes array

Daftar byte UTF-8 mentah token saat ini. Ini digunakan untuk memulihkan konten keluaran secara akurat dan membantu saat menangani emoji dan karakter Tiongkok.

logprob float

Probabilitas log token saat ini. Nilai kembalian null menunjukkan probabilitas yang sangat rendah.

created integer

Stempel waktu UNIX saat permintaan ini dibuat. Semua chunk dalam respons yang sama memiliki stempel waktu created yang sama.

model string

Model yang digunakan untuk permintaan ini.

object string

Nilainya selalu chat.completion.chunk.

service_tier string

Parameter ini saat ini tetap null.

system_fingerprint string

Parameter ini saat ini tetap null.

usage object

Statistik penggunaan token untuk permintaan ini. Objek ini hanya muncul di chunk terakhir ketika include_usage adalah true.

Properti

completion_tokens integer

Jumlah token dalam keluaran model.

prompt_tokens integer

Jumlah token masukan.

total_tokens integer

Jumlah total token, sama dengan jumlah dari prompt_tokens dan completion_tokens.

completion_tokens_details object

Rincian rinci token keluaran.

Properti

audio_tokens integer

Jumlah token audio dalam keluaran model Qwen-Omni.

reasoning_tokens integer

Jumlah token dalam proses berpikir.

text_tokens integer

Jumlah token teks keluaran.

prompt_tokens_details object

Rincian rinci token masukan.

Properti

audio_tokens integer

Jumlah token dalam audio masukan.

Jumlah token audio dalam file video dikembalikan dalam parameter ini.

text_tokens integer

Jumlah token dalam teks masukan.

video_tokens integer

Jumlah token untuk video masukan, yang bisa berupa daftar gambar atau file video.

image_tokens integer

Jumlah token dalam gambar masukan.

cached_tokens integer

Jumlah token yang mengenai cache. Lihat Cache konteks.

cache_creation object

Informasi tentang pembuatan cache eksplisit.

Properti

ephemeral_5m_input_tokens integer

Jumlah token yang digunakan untuk membuat cache eksplisit.

cache_creation_input_tokens integer

Jumlah token yang digunakan untuk membuat cache eksplisit.

cache_type string

Jenis cache. Nilainya tetap ephemeral.