Request body |
Input teks
Pythonimport os
from openai import OpenAI
client = OpenAI(
# Jika variabel lingkungan belum dikonfigurasi, ganti baris berikut dengan Kunci API Model Studio Anda: api_key="sk-xxx"
# Kunci API bervariasi berdasarkan wilayah. Dapatkan Kunci API: https://www.alibabacloud.com/help/en/model-studio/get-api-key
api_key=os.getenv("DASHSCOPE_API_KEY"),
# Ganti {WorkspaceId} dengan ID ruang kerja aktual Anda. URL bervariasi berdasarkan wilayah.
base_url="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(
# Contoh ini menggunakan qwen-plus. Anda dapat menggantinya dengan nama model lain sesuai kebutuhan. Daftar model: https://www.alibabacloud.com/help/en/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 OpenAI SDK 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 bervariasi berdasarkan wilayah. Dapatkan Kunci API: https://www.alibabacloud.com/help/en/model-studio/get-api-key
.apiKey(System.getenv("DASHSCOPE_API_KEY"))
// Ganti {WorkspaceId} dengan ID ruang kerja aktual Anda. URL bervariasi berdasarkan wilayah.
.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.jsimport OpenAI from "openai";
const openai = new OpenAI(
{
// Jika variabel lingkungan belum dikonfigurasi, ganti baris berikut dengan Kunci API Model Studio Anda: apiKey: "sk-xxx",
// Kunci API bervariasi berdasarkan wilayah. Dapatkan Kunci API: https://www.alibabacloud.com/help/en/model-studio/get-api-key
apiKey: process.env.DASHSCOPE_API_KEY,
// Ganti {WorkspaceId} dengan ID ruang kerja aktual Anda. URL bervariasi berdasarkan wilayah.
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", // Contoh ini menggunakan qwen-plus. Anda dapat menggantinya dengan nama model lain sesuai kebutuhan. Daftar model: 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?" }
],
});
console.log(JSON.stringify(completion))
}
main();
Gopackage main
import (
"context"
"os"
"github.com/openai/openai-go"
"github.com/openai/openai-go/option"
)
func main() {
client := openai.NewClient(
// Kunci API bervariasi berdasarkan wilayah. Dapatkan Kunci API: https://www.alibabacloud.com/help/en/model-studio/get-api-key
option.WithAPIKey(os.Getenv("DASHSCOPE_API_KEY")), // defaults to os.LookupEnv("OPENAI_API_KEY")
// Ganti {WorkspaceId} dengan ID ruang kerja aktual Anda. URL bervariasi berdasarkan wilayah.
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)
{
// Jika variabel lingkungan belum dikonfigurasi, ganti baris berikut dengan Kunci API Model Studio Anda: string? apiKey = "sk-xxx";
// Kunci API bervariasi berdasarkan wilayah. Dapatkan Kunci API: https://www.alibabacloud.com/help/en/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;
}
// Setel URL permintaan dan konten
// Ganti {WorkspaceId} dengan ID ruang kerja aktual Anda. URL bervariasi berdasarkan wilayah.
string url = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions";
// Contoh ini menggunakan qwen-plus. Anda dapat menggantinya dengan nama model lain sesuai kebutuhan. Daftar model: https://www.alibabacloud.com/help/en/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?""
}
]
}";
// Kirim permintaan dan dapatkan respons
string result = await SendPostRequestAsync(url, jsonContent, apiKey);
// Cetak hasilnya
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"))
{
// Setel header permintaan
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", apiKey);
httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
// Kirim permintaan dan dapatkan respons
HttpResponseMessage response = await httpClient.PostAsync(url, content);
// Proses respons
if (response.IsSuccessStatusCode)
{
return await response.Content.ReadAsStringAsync();
}
else
{
return $"Request failed: {response.StatusCode}";
}
}
}
}
PHP (HTTP)<?php
// Setel URL permintaan
// Ganti {WorkspaceId} dengan ID ruang kerja aktual Anda. URL bervariasi berdasarkan wilayah.
$url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/chat/completions';
// Jika variabel lingkungan belum dikonfigurasi, ganti baris berikut dengan Kunci API Model Studio Anda: $apiKey = "sk-xxx";
// Kunci API bervariasi berdasarkan wilayah. Dapatkan Kunci API: https://www.alibabacloud.com/help/en/model-studio/get-api-key
$apiKey = getenv('DASHSCOPE_API_KEY');
// Setel header permintaan
$headers = [
'Authorization: Bearer '.$apiKey,
'Content-Type: application/json'
];
// Setel badan permintaan
$data = [
// Contoh ini menggunakan qwen-plus. Anda dapat menggantinya dengan nama model lain sesuai kebutuhan. Daftar model: https://www.alibabacloud.com/help/en/model-studio/getting-started/models
"model" => "qwen-plus",
"messages" => [
[
"role" => "system",
"content" => "You are a helpful assistant."
],
[
"role" => "user",
"content" => "Who are you?"
]
]
];
// Inisialisasi sesi cURL
$ch = curl_init();
// Setel opsi 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);
// Jalankan sesi cURL
$response = curl_exec($ch);
// Periksa kesalahan
if (curl_errno($ch)) {
echo 'Curl error: ' . curl_error($ch);
}
// Tutup resource cURL
curl_close($ch);
// Cetak respons
echo $response;
?>
curl
Ganti {WorkspaceId} dengan ID ruang kerja Anda. URL bervariasi berdasarkan wilayah. Anda dapat memperoleh kunci API di https://www.alibabacloud.com/help/en/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?"
}
]
}'
keluaran streaming
Untuk informasi selengkapnya tentang penggunaan, lihat Keluaran streaming.
Pythonimport os
from openai import OpenAI
client = OpenAI(
# Jika variabel lingkungan tidak dikonfigurasi, ganti baris berikut dengan kunci API Model Studio Anda: api_key="sk-xxx"
# Kunci API bervariasi menurut wilayah. Dapatkan Kunci 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", # Contoh ini menggunakan qwen-plus. Anda dapat menggantinya dengan nama model lain sesuai kebutuhan. Daftar model: 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.jsimport OpenAI from "openai";
const openai = new OpenAI(
{
// Kunci API bervariasi berdasarkan wilayah. Dapatkan Kunci 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 completion = await openai.chat.completions.create({
model: "qwen-plus", // Contoh ini menggunakan qwen-plus. Anda dapat menggantinya dengan nama model lain sesuai kebutuhan. Daftar model: 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,
});
for await (const chunk of completion) {
console.log(JSON.stringify(chunk));
}
}
main();
curl
Ganti {WorkspaceId} dengan ID ruang kerja Anda. URL bervariasi berdasarkan wilayah. Anda dapat memperoleh kunci API di https://www.alibabacloud.com/help/en/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
}'
Input gambar
Untuk informasi selengkapnya tentang cara model bahasa besar menganalisis gambar, lihat Pemahaman gambar dan video.
Pythonimport os
from openai import OpenAI
client = OpenAI(
# Jika variabel lingkungan tidak dikonfigurasi, ganti baris berikut dengan kunci API Model Studio Anda: api_key="sk-xxx"
# Kunci API bervariasi menurut wilayah. Dapatkan Kunci 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-vl-plus", # Contoh ini menggunakan qwen-vl-plus. Anda dapat menggantinya dengan nama model lain sesuai kebutuhan. Daftar model: https://www.alibabacloud.com/help/en/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.jsimport OpenAI from "openai";
const openai = new OpenAI(
{
// Kunci API bervariasi berdasarkan wilayah. Dapatkan Kunci 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({
model: "qwen-vl-max", // Contoh ini menggunakan qwen-vl-max. Anda dapat menggantinya dengan nama model lain sesuai kebutuhan. Daftar model: https://www.alibabacloud.com/help/en/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
Ganti {WorkspaceId} dengan ID ruang kerja Anda. URL bervariasi berdasarkan wilayah. Anda dapat memperoleh kunci API di https://www.alibabacloud.com/help/en/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?"}
]}]
}'
Input video
Contoh berikut menunjukkan cara meneruskan daftar gambar. Untuk informasi selengkapnya tentang penggunaan, seperti meneruskan file video, lihat Pemahaman visual.
Pythonimport os
from openai import OpenAI
client = OpenAI(
# Jika variabel lingkungan belum dikonfigurasi, ganti baris berikut dengan Kunci API Model Studio Anda: api_key="sk-xxx"
# Kunci API bervariasi berdasarkan wilayah. Dapatkan Kunci 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(
# Contoh ini menggunakan qwen-vl-max. Anda dapat menggantinya dengan nama model lain sesuai kebutuhan. Daftar model: 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"
}]}]
)
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 belum dikonfigurasi, ganti baris berikut dengan Kunci API Model Studio Anda: apiKey: "sk-xxx",
// Kunci API bervariasi berdasarkan wilayah. Dapatkan Kunci 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({
// Contoh ini menggunakan qwen-vl-max. Anda dapat menggantinya dengan nama model lain sesuai kebutuhan. Daftar model: 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
Ganti {WorkspaceId} dengan ID ruang kerja Anda. URL bervariasi berdasarkan wilayah. Untuk informasi selengkapnya, lihat Dapatkan Kunci 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"
}
]
}
]
}'
Pemanggilan alat
Untuk kode proses Function Calling lengkap, lihat Function Calling.
Pythonimport os
from openai import OpenAI
client = OpenAI(
# Jika variabel lingkungan tidak dikonfigurasi, ganti baris berikut dengan kunci API Model Studio Anda: api_key="sk-xxx"
# Kunci API bervariasi menurut wilayah. Dapatkan Kunci 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",
)
tools = [
# Alat 1: Dapatkan waktu saat ini
{
"type": "function",
"function": {
"name": "get_current_time",
"description": "Berguna saat Anda ingin mengetahui waktu saat ini.",
"parameters": {} # Karena mendapatkan waktu saat ini tidak memerlukan parameter input, parameter adalah kamus kosong
}
},
# Alat 2: Dapatkan cuaca untuk kota yang ditentukan
{
"type": "function",
"function": {
"name": "get_current_weather",
"description": "Berguna saat Anda ingin menanyakan cuaca di kota yang ditentukan.",
"parameters": {
"type": "object",
"properties": {
# Lokasi harus disediakan untuk menanyakan cuaca, jadi parameter diatur ke lokasi
"location": {
"type": "string",
"description": "Kota atau distrik, seperti Beijing, Hangzhou, atau Distrik Yuhang."
}
},
"required": ["location"]
}
}
}
]
messages = [{"role": "user", "content": "What's the weather like in Hangzhou?"}]
completion = client.chat.completions.create(
model="qwen-plus", # Contoh ini menggunakan qwen-plus. Anda dapat menggantinya dengan nama model lain sesuai kebutuhan. Daftar model: https://www.alibabacloud.com/help/en/model-studio/getting-started/models
messages=messages,
tools=tools
)
print(completion.model_dump_json())
Node.jsimport OpenAI from "openai";
const openai = new OpenAI(
{
// Jika variabel lingkungan belum dikonfigurasi, ganti baris berikut dengan Kunci API Model Studio Anda: apiKey: "sk-xxx",
// Kunci API bervariasi berdasarkan wilayah. Dapatkan Kunci 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"
}
);
const messages = [{"role": "user", "content": "What's the weather like in Hangzhou?"}];
const tools = [
// Alat 1: Dapatkan waktu saat ini
{
"type": "function",
"function": {
"name": "get_current_time",
"description": "Useful when you want to know the current time.",
// Karena mendapatkan waktu saat ini tidak memerlukan parameter input, parameters kosong
"parameters": {}
}
},
// Alat 2: Dapatkan cuaca kota tertentu
{
"type": "function",
"function": {
"name": "get_current_weather",
"description": "Useful when you want to query the weather of a specified city.",
"parameters": {
"type": "object",
"properties": {
// Lokasi harus disediakan untuk menanyakan cuaca, sehingga parameter diatur ke 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", // Contoh ini menggunakan qwen-plus. Anda dapat menggantinya dengan nama model lain sesuai kebutuhan. Daftar model: https://www.alibabacloud.com/help/en/model-studio/getting-started/models
messages: messages,
tools: tools,
});
console.log(JSON.stringify(response));
}
main();
curl
Ganti {WorkspaceId} dengan ID ruang kerja Anda. URL bervariasi berdasarkan wilayah. Untuk informasi selengkapnya, lihat Dapatkan Kunci 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"]
}
}
}
]
}'
Pemanggilan asinkron
import os
import asyncio
from openai import AsyncOpenAI
import platform
client = AsyncOpenAI(
# Jika variabel lingkungan tidak dikonfigurasi, ganti baris berikut dengan kunci API Model Studio Anda: api_key="sk-xxx"
# Jika Anda menggunakan model di wilayah China (Beijing), Anda perlu menggunakan API KEY untuk wilayah China (Beijing). Dapatkan tautan: 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", # Contoh ini menggunakan qwen-plus. Anda dapat menggantinya dengan nama model lain sesuai kebutuhan. Daftar model: 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 (Wajib) Nama model. Model yang didukung: Model Bahasa Besar Qwen (versi komersial dan open source), Qwen-VL, Qwen-Coder, Qwen-Omni, Qwen-Math, DeepSeek, Kimi, GLM, dan MiniMax. Untuk nama model spesifik dan detail penagihan, lihat konsol Model Studio. |
messages array (Wajib) Konteks yang diteruskan ke model bahasa besar, diatur dalam urutan percakapan. Jenis pesan Pesan Sistem object (Opsional) Pesan sistem yang menentukan peran, nada, tugas, atau batasan untuk model bahasa besar. Biasanya merupakan elemen pertama dalam array messages. Jangan mengatur pesan sistem untuk model QwQ. Pesan sistem tidak berpengaruh pada model QVQ. Properti content string (Wajib) Instruksi sistem. Menentukan peran, perilaku, gaya respons, dan batasan tugas model. role string (Wajib) Peran untuk pesan sistem. Nilainya tetap system. Pesan Pengguna object (Wajib) Pesan pengguna. Meneruskan pertanyaan, instruksi, atau konteks ke model. Properti content string atau array (Wajib) Konten pesan. Jenisnya string jika input hanya teks. Jenisnya array jika input berisi data multimodal seperti gambar, atau jika caching eksplisit diaktifkan. Properti untuk model multimodal atau saat caching eksplisit diaktifkan type string (Wajib) Nilai yang valid: text
Diatur ke text untuk input teks. image_url
Diatur ke image_url untuk input gambar. input_audio
Diatur ke input_audio untuk input audio. video
Diatur ke video untuk input video sebagai daftar gambar. video_url
Diatur ke video_url untuk input file video. Hanya beberapa model Qwen-VL yang mendukung input file video. Untuk informasi selengkapnya, lihat Pemahaman video (Qwen-VL). Model QVQ dan Qwen-Omni mendukung input file video langsung.
text string Teks input. Parameter ini wajib saat type adalah text. image_url object Informasi gambar input. Parameter ini wajib saat type adalah image_url. input_audio object Informasi audio input. Parameter ini wajib saat type adalah input_audio. Properti format string (Wajib) Format audio input, seperti mp3 atau wav. video array Informasi video input, disediakan sebagai daftar gambar. Parameter ini wajib saat type adalah video. Untuk informasi selengkapnya tentang penggunaannya, 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 input. Parameter ini wajib saat type adalah video_url. Qwen-VL hanya dapat memahami informasi visual file video, sedangkan Qwen-Omni dapat memahami informasi visual dan audio. fps float (Opsional) Jumlah frame yang diekstraksi per detik. Nilai yang valid: [0,1–10]. Nilai default: 2,0. Kisaran nilai yang valid untuk MiniMax/MiniMax-M3 adalah [0,2–5], dan nilai defaultnya adalah 1. Deskripsi fitur Parameter fps memiliki dua fungsi: Saat Anda memasukkan file video, parameter ini mengontrol frekuensi ekstraksi frame. Satu frame diekstraksi setiap fps1 detik. Ini berlaku untuk Qwen-VL, model QVQ. Parameter ini menginformasikan model tentang interval waktu antara frame yang berdekatan untuk membantu model memahami perkembangan video secara lebih baik dari waktu ke waktu. Ini berlaku untuk input file video maupun daftar gambar. Fitur ini cocok untuk skenario seperti lokalisasi waktu kejadian atau ringkasan konten tersegmentasi. Didukung oleh Qwen3.7, Qwen3.6, 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 adegan dengan konten statis. Nilai contoh Input untuk daftar gambar: {"video":["https://xx1.jpg",...,"https://xxn.jpg"],"fps":2} Input file video: {"video": "https://xx1.mp4","fps":2}
min_pixels integer (Opsional) Menetapkan ambang batas piksel minimum untuk gambar input atau frame video. Jika jumlah piksel input kurang dari min_pixels, gambar tersebut diperbesar hingga jumlah total pikselnya lebih besar dari min_pixels. Parameter ini berlaku untuk model Qwen-VL dan QVQ. Nilai contoh Input gambar: {"type": "image_url","image_url": {"url":"https://xxxx.jpg"},"min_pixels": 65536} Input file video: {"type": "video_url","video_url": {"url":"https://xxxx.mp4"},"min_pixels": 65536} Input daftar gambar: {"type": "video","video": ["https://xx1.jpg",...,"https://xxn.jpg"],"min_pixels": 65536}
max_pixels integer (Opsional) Menentukan ambang batas piksel maksimum untuk gambar input atau frame video. Jika jumlah piksel gambar input atau video berada dalam rentang [min_pixels, max_pixels], model memproses gambar aslinya. Jika jumlah piksel lebih besar dari max_pixels, gambar diperkecil hingga jumlah pikselnya kurang dari atau sama dengan max_pixels. Parameter ini berlaku untuk model Qwen-VL dan QVQ. Kisaran nilai Input gambar: Nilai max_pixels bergantung pada 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. Masukkan file video atau daftar gambar: Seri Qwen3.7, seri Qwen3.6, seri Qwen3.5, Qwen3.5-Omni, seri Qwen3-VL closed-source, qwen3-vl-235b-a22b-thinking, qwen3-vl-235b-a22b-instruct: Nilai default: 655360. Nilai maksimum: 2048000
Model open source Qwen3-VL lainnya, qwen-vl-max, qwen-vl-max-0813, qwen-vl-plus, qwen-vl-plus-0815: Nilai default: 655360. Nilai maksimum: 786432 Model qwen-vl-plus lainnya, model qwen-vl-max lainnya, seri open source Qwen2.5-VL, dan model seri QVQ: Nilai default: 501760. Nilai maksimum: 602112
Nilai contoh Input gambar: {"type": "image_url","image_url": {"url":"https://xxxx.jpg"},"max_pixels": 8388608} Input file video: {"type": "video_url","video_url": {"url":"https://xxxx.mp4"},"max_pixels": 655360} Input daftar gambar: {"type": "video","video": ["https://xx1.jpg",...,"https://xxn.jpg"],"max_pixels": 655360}
total_pixels integer (Opsional) Membatasi jumlah total piksel dari semua frame yang diekstraksi dari video, yang dihitung sebagai (piksel per frame × total frame). Jika jumlah total piksel video melebihi batas ini, sistem memperkecil frame video. Sistem memastikan bahwa jumlah piksel satu frame tetap berada dalam rentang [min_pixels, max_pixels]. Parameter ini berlaku untuk model Qwen-VL dan QVQ. Untuk video panjang dengan banyak frame yang diekstraksi, Anda dapat mengurangi nilai ini untuk mengurangi konsumsi token dan waktu pemrosesan, tetapi hal ini dapat mengakibatkan hilangnya detail gambar. Kisaran nilai Seri Qwen3.7, Seri Qwen3.6, Seri Qwen3.5: Nilai default dan maksimum: 819200000. Ini setara dengan 800000 token gambar (1 token gambar per 32×32 piksel).
Seri Qwen3-VL closed-source, qwen3-vl-235b-a22b-thinking, qwen3-vl-235b-a22b-instruct: Nilai default dan maksimum: 134217728. Ini setara dengan 131072 token gambar (1 token gambar per 32×32 piksel).
Qwen3.5-Omni: Nilai default dan minimum: 184549376. Ini setara dengan 180224 token gambar (1 token gambar per 32×32 piksel).
Model open source Qwen3-VL lainnya, qwen-vl-max, qwen-vl-max-0813, qwen-vl-plus, qwen-vl-plus-0815: Nilai default dan minimum: 67108864. Ini setara 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: 51380224. Ini setara dengan 65536 token gambar (1 token gambar per 28×28 piksel).
Nilai contoh Input file video: {"type": "video_url","video_url": {"url":"https://xxxx.mp4"},"total_pixels": 134217728} Input daftar gambar: {"type": "video","video": ["https://xx1.jpg",...,"https://xxn.jpg"],"total_pixels": 134217728}
cache_control object (Opsional) Mengaktifkan caching eksplisit. Untuk informasi selengkapnya, lihat Caching eksplisit. Properti type string (Wajib) Hanya ephemeral yang didukung. role string (Wajib) Peran untuk pesan pengguna. Nilainya tetap user. Pesan Asisten object (Opsional) Balasan model. Biasanya diteruskan kembali ke model sebagai konteks dalam percakapan multi-putaran. Properti content string (Opsional) Konten teks balasan model. Saat tool_calls disertakan, content bisa kosong. Jika tidak, content wajib diisi. role string (Wajib) Peran untuk pesan asisten. Nilainya tetap assistant. partial boolean (Opsional) Nilai default: false Menentukan apakah akan mengaktifkan mode sebagian. Nilai yang valid: true: Aktifkan. false: Nonaktifkan.
Untuk daftar model yang didukung, lihat mode sebagian. tool_calls array (Opsional) Informasi tentang alat dan parameter inputnya yang diputuskan model untuk dipanggil. Berisi satu atau lebih objek dan diperoleh dari field tool_calls dari respons model sebelumnya. Properti id string (Wajib) ID pemanggilan alat. type string (Wajib) Jenis alat. Saat ini, hanya function yang didukung. function object (Wajib) Alat dan parameter input Properti name string (Wajib) Nama alat. arguments string (Wajib) Informasi parameter input, sebagai string yang diformat JSON. index integer (Wajib) Indeks pemanggilan alat ini dalam array tool_calls. Pesan Alat object (Opsional) Hasil pemanggilan alat. Properti content string (Wajib) Konten keluaran fungsi alat. Harus berupa string. Jika alat mengembalikan data terstruktur, seperti JSON, data tersebut harus diserialisasi menjadi string. role string (Wajib) Nilainya tetap tool. tool_call_id string (Wajib) ID pemanggilan alat yang menjadi tanggapan pesan ini. Anda dapat memperolehnya dari `completion.choices[0].message.tool_calls[$index].id`. ID ini digunakan untuk mengaitkan pesan alat dengan pemanggilan alat yang sesuai. |
stream boolean (Opsional) Nilai default: false Menentukan apakah respons dikembalikan dalam mode keluaran streaming. Untuk informasi selengkapnya, lihat Keluaran streaming. Nilai yang valid: false: Model mengembalikan konten lengkap setelah generasi selesai.
true: Model mengeluarkan konten secara bertahap saat dihasilkan. Potongan data dikembalikan setiap kali bagian konten dihasilkan, dan Anda perlu menyusun potongan-potongan tersebut untuk membentuk respons lengkap.
Kami merekomendasikan menetapkan nilai ini ke true guna meningkatkan pengalaman pengguna dan mengurangi risiko timeout.
Catatan Jika panggilan non-streaming tidak selesai dalam waktu 300 detik, layanan akan menginterupsi permintaan dan mengembalikan konten yang telah dihasilkan alih-alih mengembalikan error. Untuk skenario yang memerlukan keluaran panjang, kami menyarankan menggunakan panggilan streaming. Informasi selengkapnya tersedia dalam deskripsi timeout di Ikhtisar model generasi teks. |
stream_options object (Opsional) Item konfigurasi untuk keluaran streaming. Parameter ini hanya berlaku ketika stream diatur ke true. Properti include_usage boolean (Opsional) Nilai default: false Menentukan apakah informasi konsumsi token disertakan dalam potongan data terakhir respons. Nilai yang valid: true: Sertakan.
false: Jangan sertakan.
Pada keluaran streaming, informasi konsumsi token hanya muncul dalam potongan data terakhir respons. |
modalities array (Opsional) Nilai default: ["text"] Menentukan modalitas data keluaran. Parameter ini hanya berlaku untuk model Qwen-Omni. Untuk informasi selengkapnya, lihat Non-real-time (Qwen-Omni). Nilai yang valid: |
audio object (Opsional) Menentukan suara dan format audio keluaran. Parameter ini hanya berlaku untuk model Qwen-Omni dan memerlukan parameter modalities diatur ke ["text","audio"]. Untuk informasi selengkapnya, lihat Non-real-time (Qwen-Omni). Properti format string (Wajib) Format audio keluaran. Hanya wav yang didukung. |
temperature float (Opsional) Suhu pengambilan sampel mengontrol keragaman teks yang dihasilkan oleh model. Suhu yang lebih tinggi menghasilkan teks yang lebih beragam, sedangkan suhu yang lebih rendah menghasilkan teks yang lebih deterministik. Kisaran nilai: [0, 2) Baik temperature maupun top_p dapat mengontrol keragaman teks yang dihasilkan. Kami menyarankan Anda hanya mengatur salah satunya. Untuk informasi selengkapnya, lihat Ikhtisar. Jangan mengubah nilai temperature default untuk model QVQ. |
top_p float (Opsional) Ambang batas probabilitas untuk pengambilan sampel inti yang mengontrol keragaman teks yang dihasilkan model. Nilai top_p yang lebih tinggi menghasilkan teks yang lebih beragam, sedangkan nilai yang lebih rendah menghasilkan teks yang lebih deterministik. Kisaran nilai: (0, 1.0] Baik temperature maupun top_p dapat mengontrol keragaman teks yang dihasilkan. Kami menyarankan Anda hanya mengatur salah satu parameter tersebut. Untuk informasi selengkapnya, lihat Ikhtisar. Jangan mengubah nilai top_p default untuk model QVQ. |
top_k integer (Opsional) Menentukan jumlah token kandidat yang akan dipertimbangkan selama proses 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 berupa bilangan bulat yang lebih besar dari atau sama dengan 0. Nilai top_k default Seri QVQ: 10; Seri QwQ: 40; model sebelum seri qwen-vl-plus, dan qwen2.5-omni-7b: 1; Seri Qwen3-Omni-Flash: 50; Semua model lainnya: 20. Seri GLM (disediakan oleh Alibaba Cloud): 20; Seri DeepSeek, Kimi, dan MiniMax tidak mendukung parameter top_k. Parameter ini bukan parameter standar OpenAI. Saat memanggil menggunakan Python SDK, letakkan dalam objek extra_body. Konfigurasi: extra_body={"top_k":xxx}. Jangan mengubah nilai top_k default untuk model QVQ. |
repetition_penalty float (Opsional) Parameter ini memberikan hukuman terhadap pengulangan token berturut-turut selama proses generasi model. Meningkatkan nilai repetition_penalty dapat mengurangi pengulangan dalam keluaran model. Nilai 1,0 berarti tidak ada hukuman. Tidak ada rentang nilai yang ketat, asalkan nilainya lebih besar dari 0. Parameter ini bukan parameter OpenAI standar. Saat Anda memanggil menggunakan Python SDK, letakkan di objek extra_body. Konfigurasi: extra_body={"repetition_penalty":xxx}. Saat menggunakan model qwen-vl-plus_2025-01-25 untuk ekstraksi teks, atur repetition_penalty ke 1,0. Jangan mengubah nilai repetition_penalty default untuk model QVQ. |
presence_penalty float (Opsional) Mengontrol pengulangan konten saat model menghasilkan teks. Kisaran nilai: [-2,0; 2,0]. Nilai positif mengurangi pengulangan, sedangkan nilai negatif meningkatkannya. Dalam skenario yang memerlukan keragaman, kesenangan, atau kreativitas—seperti penulisan kreatif atau brainstorming—Anda dapat menaikkan nilai ini. Sebaliknya, dalam skenario yang menekankan konsistensi dan akurasi istilah—seperti dokumen teknis atau teks formal—Anda dapat menurunkan nilainya. Nilai presence_penalty default Qwen3.7 (mode non-thinking), Qwen3.6 (mode non-thinking), Qwen3.5-Omni, Qwen3.5 (mode non-thinking), qwen3-max-preview (mode thinking), Qwen3 (mode non-thinking), seri Qwen3-Instruct/1.7b/4b (mode thinking), seri QVQ, qwen-max, seri qwen2.5-vl, seri qwen-vl-max, qwen-vl-plus, Qwen3-VL (non-thinking): 1,5; 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; Semua model lainnya: 0,0. Seri DeepSeek (disediakan oleh Alibaba Cloud): deepseek-r1, deepseek-r1-0528, versi distilasi deepseek-r1-distill-qwen: 1; Seri Kimi (disediakan oleh Alibaba Cloud): kimi-k2.7-code, kimi-k2.6, kimi-k2.5: 0,0; Seri Kimi (disediakan oleh Moonshot AI): 0,0; Seri MiniMax (disediakan oleh Alibaba Cloud): MiniMax-M2.5, MiniMax-M2.1: 0,0; Model DeepSeek, Kimi, GLM, dan MiniMax lainnya tidak memiliki nilai default. Cara kerja Jika nilai parameter positif, model memberikan hukuman pada token yang sudah muncul dalam teks. Hukuman ini tidak bergantung pada frekuensi kemunculan token tersebut, sehingga mengurangi kemungkinan token itu muncul kembali. Akibatnya, pengulangan konten berkurang dan keragaman kata meningkat. Contoh Prompt: Terjemahkan kalimat ini ke dalam Bahasa Mandarin: "Film ini bagus. Alur ceritanya bagus, aktingnya bagus, musiknya bagus, dan secara keseluruhan, seluruh filmnya bagus. Faktanya, film ini sangat bagus—alur ceritanya sangat bagus, aktingnya sangat bagus, dan musiknya sangat bagus." Nilai parameter 2,0: Film ini hebat. Alur ceritanya fantastis, aktingnya luar biasa, dan musiknya juga sangat indah. Secara keseluruhan, seluruh film ini benar-benar luar biasa. Faktanya, film ini benar-benar luar biasa. Alur ceritanya sangat menarik, aktingnya sangat bagus, dan soundtrack-nya begitu mengharukan. Nilai parameter 0,0: Film ini bagus. Alur ceritanya bagus, aktingnya bagus, dan musiknya bagus. Secara keseluruhan, seluruh film ini sangat bagus. Faktanya, film ini benar-benar hebat. Alur ceritanya sangat bagus, aktingnya juga sangat bagus, dan musiknya sama-sama luar biasa. Nilai parameter -2,0: Film ini bagus. Alur ceritanya bagus, aktingnya bagus, dan musiknya bagus. Secara keseluruhan, seluruh film ini bagus. Faktanya, film ini benar-benar bagus. Alur ceritanya sangat bagus, aktingnya sangat bagus, dan musiknya sangat bagus. Saat menggunakan model qwen-vl-plus untuk ekstraksi teks, atur presence_penalty ke 1,5. Jangan ubah nilai presence_penalty default untuk model QVQ. |
response_format object (Opsional). Nilai default: {"type": "text"} Format respons. Nilai yang valid: Untuk informasi selengkapnya, lihat Output terstruktur. Jika Anda menentukan {"type": "json_object"}, Anda harus secara eksplisit menginstruksikan model untuk menghasilkan output dalam format JSON melalui prompt, misalnya dengan perintah seperti "Silakan keluarkan dalam format JSON". Jika tidak, akan terjadi error. Untuk daftar model yang didukung, lihat Output terstruktur. Properti type string (Wajib) Format konten yang dikembalikan. Nilai yang valid: |
max_tokens integer (Opsional, akan ditinggalkan) Parameter ini akan ditinggalkan. Untuk integrasi baru, gunakan max_completion_tokens. Panjang maksimum jawaban model, tidak termasuk konten rantai-pikiran. Dengan kata lain: Jawaban model = Keluaran model – Rantai-pikiran (jika ada). Baik nilai default maupun nilai maksimum sama dengan panjang keluaran maksimum model. Jika panjang jawaban model melebihi nilai ini, proses generasi akan dihentikan lebih awal, dan finish_reason yang dikembalikan adalah length. |
max_completion_tokens integer (Opsional) Panjang maksimum keluaran model, termasuk rantai-pikiran dan jawaban. Jika keluaran model melebihi nilai ini, proses generasi akan dihentikan lebih awal, dan finish_reason yang dikembalikan adalah length. Nilai default dan maksimumnya sama dengan panjang keluaran maksimum model. Perbedaan dari max_tokens: max_completion_tokens membatasi seluruh keluaran model (rantai-pikiran + jawaban), sedangkan max_tokens hanya membatasi bagian jawaban. Untuk model thinking, kami merekomendasikan penggunaan max_completion_tokens. Model yang didukung: Qwen Max: Model Qwen3.7-Max dan versi setelahnya Qwen Plus: Model Qwen3.5-Plus dan versi setelahnya Qwen Flash: Model Qwen3.5-Flash dan versi setelahnya Kimi: Model kimi-k2.5 dan versi setelahnya GLM: Model glm-5 dan versi setelahnya MiniMax: Model MiniMax-M2.5 dan versi setelahnya DeepSeek: deepseek-v3, deepseek-r1, deepseek-r1-0528, deepseek-v3.1, deepseek-v3.2, deepseek-v3.2-exp, deepseek-v4-pro, deepseek-v4-flash, dan versi setelahnya
Model yang tercantum di atas tidak mencakup model yang disediakan langsung oleh pihak ketiga. Jumlah token keluaran aktual dapat berbeda hingga 10 token dari nilai max_completion_tokens yang ditentukan. |
vl_high_resolution_images boolean (Opsional) Nilai default: false Menentukan apakah batas piksel untuk gambar input ditingkatkan hingga setara dengan 16.384 token. Untuk informasi selengkapnya, lihat Memproses gambar resolusi tinggi. vl_high_resolution_images: true menggunakan strategi resolusi tetap dan mengabaikan pengaturan max_pixels. Jika resolusi melebihi batas, jumlah total piksel gambar akan diperkecil agar tetap dalam batas tersebut.
Klik untuk melihat batas piksel untuk setiap model Saat vl_high_resolution_images bernilai True, batas piksel bervariasi tergantung model: Untuk seri Qwen3.7, seri Qwen3.6, seri Qwen3.5, seri Qwen3-VL, qwen-vl-max, qwen-vl-max-0813, qwen-vl-plus, qwen-vl-plus-0815, dan model , batasnya adalah 16.777.216. (Setiap Token setara dengan 32×32 piksel. Total dihitung sebagai 16.384×32×32.) Seri QVQ dan model seri Qwen2.5-VL lainnya: 12.845.056 (1 token setara dengan 28×28 piksel, yaitu 16.384×28×28.)
Jika vl_high_resolution_images bernilai false, batas piksel ditentukan oleh max_pixels. Jika jumlah piksel gambar input melebihi max_pixels, gambar akan diperkecil hingga berada dalam batas max_pixels. Batas piksel default untuk setiap model mengikuti nilai default max_pixels.
Parameter ini bukan parameter OpenAI standar. Saat Anda memanggil menggunakan Python SDK, letakkan di objek extra_body. Konfigurasi: extra_body={"vl_high_resolution_images":xxx}. |
n integer (Opsional) Nilai default: 1 Jumlah respons yang dihasilkan, dengan rentang nilai 1–4. Parameter ini cocok untuk skenario yang memerlukan beberapa respons kandidat, seperti penulisan kreatif atau iklan. Hanya didukung oleh Qwen3 (mode non-thinking). Jika parameter tools diteruskan, atur n ke 1. Menambah nilai n meningkatkan konsumsi token keluaran, tetapi tidak memengaruhi konsumsi token input. |
enable_thinking boolean (Opsional) Saat menggunakan model mixed-thinking yang mendukung mode thinking dan non-thinking, parameter ini menentukan apakah mode thinking diaktifkan. Parameter ini berlaku untuk model Qwen3.7, Qwen3.6, Qwen3.5, Qwen3, Qwen3-Omni-Flash, dan Qwen3-VL; seri DeepSeek-V4-Pro/V4-Flash; seri DeepSeek-V3.2/V3.2-exp/V3.1; Kimi-K2.7-code (hanya model thinking); seri Kimi-K2.6/K2.5; serta seri GLM. Seri DeepSeek-V4 mengaktifkan mode thinking secara default. Intensitas inferensi dapat disesuaikan melalui parameter reasoning_effort. Nilai yang valid: true: Aktifkan
Jika diaktifkan, konten thinking dikembalikan dalam field reasoning_content. false: Nonaktifkan
Nilai default bervariasi tergantung model: Model yang didukung Parameter ini bukan bagian dari standar OpenAI. Saat memanggil melalui Python SDK, masukkan parameter ini ke dalam objek extra_body. Contoh konfigurasi: extra_body={"enable_thinking": xxx}. Model MiniMax dan MiniMax-M3 dari Xiyu Technology tidak menggunakan parameter ini. Sebagai gantinya, gunakan parameter thinking. |
thinking object (Opsional). Nilai default: {"type":"adaptive"} Mengontrol mode thinking MiniMax/MiniMax-M3 yang disediakan oleh MiniMax. Nilai yang valid untuk thinking.type: |
preserve_thinking boolean (Opsional) Nilai default: false Menentukan apakah reasoning_content dari pesan asisten dalam riwayat percakapan akan disertakan ke input model. Parameter ini cocok untuk skenario di mana model perlu merujuk kembali ke proses berpikir historis. Saat ini didukung oleh qwen3.7-max, qwen3.7-max-2026-05-20 dan snapshot setelahnya, 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 (dideploy di Alibaba Cloud Model Studio), kimi-k2.7-code (dideploy di Alibaba Cloud Model Studio, diaktifkan secara default), kimi/kimi-k2.7-code-highspeed (disediakan oleh Moonshot AI, diaktifkan secara default), dan kimi/kimi-k2.7-code (disediakan oleh Moonshot AI, diaktifkan secara default). Jika pesan historis tidak berisi reasoning_content, mengaktifkan parameter ini tidak menyebabkan error. Saat diaktifkan, reasoning_content dari percakapan historis ikut dihitung dalam jumlah token input dan dikenai biaya.
Parameter ini bukan parameter OpenAI standar. Saat Anda memanggil menggunakan Python SDK, letakkan di objek extra_body. Konfigurasi: extra_body={"preserve_thinking": True}. |
thinking_budget integer (Opsional) Jumlah maksimum token untuk proses berpikir. Parameter ini berlaku untuk versi komersial dan open source Qwen3.7, Qwen3.6, Qwen3.5, Qwen3-VL, dan Qwen3. Untuk informasi selengkapnya, lihat Batasi panjang berpikir. Nilai default-nya adalah panjang rantai-pikiran maksimum model. Untuk detail lebih lanjut, lihat daftar model. Parameter ini bukan parameter standar OpenAI. Saat memanggil melalui Python SDK, letakkan dalam objek extra_body. Konfigurasi: extra_body={"thinking_budget": xxx}. |
|
reasoning_effort string (Opsional). Nilai default: high. Mengontrol intensitas inferensi model seri DeepSeek-V4 dan GLM. Nilai yang valid: Nilai low dan medium dipetakan ke high, sedangkan xhigh dipetakan ke max. Berlaku untuk glm-5.2, glm-5.1, glm-5, deepseek-v4-pro, dan deepseek-v4-flash. Parameter ini bukan parameter standar OpenAI. Saat memanggilnya menggunakan Python SDK, letakkan dalam objek extra_body. Konfigurasi: extra_body={"reasoning_effort": "high"}.
|
tool_stream boolean (Opsional). Nilai default: false. Hanya berlaku saat stream=true. Parameter ini saat ini hanya didukung oleh seri Qwen dan GLM. Daftar dukungan seri Qwen: Referensi penggunaan seri Qwen: `tool_stream` hanya memengaruhi parameter alat kompleks. Untuk parameter alat normal, keluaran streaming diaktifkan selama stream=true. Alat kompleks adalah alat yang beberapa jenis parameternya dalam definisi alat adalah `array` atau `object`. Daftar dukungan seri GLM: glm-4.6, glm-4.7, glm-5, dan glm-5.1. Referensi penggunaan seri GLM: Parameter ini bukan parameter OpenAI standar. Saat Anda memanggil menggunakan Python SDK, letakkan di objek extra_body. Konfigurasi: extra_body={"tool_stream": true}. |
enable_code_interpreter boolean (Opsional). Nilai default: false. Menentukan apakah fitur interpreter kode diaktifkan. Untuk informasi selengkapnya, lihat Interpreter kode. Nilai yang valid: true: Aktifkan
false: Nonaktifkan
Parameter ini bukan parameter standar OpenAI. Saat memanggil menggunakan Python SDK, letakkan dalam objek extra_body. Konfigurasi: extra_body={"enable_code_interpreter": xxx}. |
seed integer (Opsional) Seed bilangan acak. Parameter ini digunakan untuk memastikan hasil yang dapat direproduksi dengan input dan parameter yang sama. Jika Anda menggunakan nilai seed yang identik dalam panggilan API dan parameter lainnya tidak berubah, model akan mengembalikan hasil yang sama sejauh mungkin. Kisaran nilai: [0, 2<sup>31</sup>−1]. |
logprobs boolean (Opsional). Nilai default: false. Menentukan apakah probabilitas log token keluaran akan dikembalikan. Nilai yang valid: true
Kembalikan. false
Jangan kembalikan.
Konten yang dihasilkan selama fase berpikir (reasoning_content) tidak mengembalikan probabilitas log. Model yang didukung Model snapshot seri qwen-plus (tidak termasuk model versi stabil) Model snapshot seri qwen-turbo (tidak termasuk model versi stabil) Model seri qwen3-vl-plus (termasuk model versi stabil) Model seri qwen3-vl-flash (termasuk model versi stabil) Model open source Qwen3
|
top_logprobs integer (Opsional). Nilai default: 0 Menentukan jumlah token kandidat paling mungkin yang dikembalikan pada setiap langkah generasi. Kisaran nilai: [0, 5] Parameter ini hanya berlaku jika logprobs bernilai true. |
stop string atau array (Opsional) Parameter ini digunakan untuk menentukan kata atau token penghenti. Saat string atau token_id yang ditentukan dalam stop muncul dalam teks yang dihasilkan, proses generasi akan segera dihentikan. Anda dapat menggunakan parameter ini untuk memasukkan kata sensitif guna mengontrol keluaran model. Jika stop berupa array, Anda tidak boleh mencampur token_id dan string sebagai elemen dalam array tersebut. Misalnya, Anda tidak dapat menentukan ["Hello",104307]. | |
tools array (Opsional) Array yang berisi satu atau lebih objek alat untuk dipanggil oleh model dalam Function Calling. Untuk informasi selengkapnya, lihat Function Calling. Jika tools ditentukan dan model menentukan bahwa alat perlu dipanggil, respons akan mengembalikan informasi alat dalam tool_calls. Properti type string (Wajib) Jenis alat. Saat ini, hanya function yang didukung. function object (Wajib) Properti name string (Wajib) Nama alat. Hanya huruf, angka, garis bawah (_), dan tanda hubung (-) yang diizinkan. Panjang maksimum adalah 64 token. description string (Wajib) Deskripsi alat yang membantu model menentukan kapan dan bagaimana memanggil alat tersebut. parameters object (Opsional) Nilai default: {} Deskripsi parameter alat, yang harus berupa JSON Schema yang valid. Untuk informasi mengenai JSON Schema, lihat tautan. Jika parameter parameters kosong, alat tidak memiliki parameter input, seperti alat kueri waktu. Untuk meningkatkan akurasi pemanggilan alat, kami merekomendasikan agar Anda menyertakan parameters. | |
tool_choice string atau object (Opsional) Nilai default: auto Strategi pemilihan alat. Untuk memaksa penggunaan metode pemanggilan alat tertentu sesuai jenis masalah—misalnya, selalu menggunakan alat tertentu atau menonaktifkan semua alat—atur parameter ini. Nilai yang valid: auto
Model bahasa besar menentukan strategi alat secara otomatis. none
Jika Anda tidak ingin memanggil alat apa pun, 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 mode thinking tidak mendukung pemaksaan pemanggilan alat tertentu.
| |
parallel_tool_calls boolean (Opsional). Nilai default: false. Menentukan apakah pemanggilan alat paralel diaktifkan. Untuk informasi selengkapnya, lihat Pemanggilan alat paralel. Nilai yang valid: true: Aktifkan
false: Nonaktifkan
| |
enable_search boolean (Opsional) Nilai default: false Menentukan apakah pencarian web akan diaktifkan. Untuk informasi selengkapnya, lihat Pencarian web. Nilai yang valid: true: Aktifkan.
Jika pencarian web tidak dilakukan meskipun telah diaktifkan, Anda dapat mengoptimalkan prompt atau mengatur parameter forced_search dalam search_options untuk memaksa pencarian dilakukan. false: Nonaktifkan.
Mengaktifkan fitur pencarian web dapat meningkatkan konsumsi token. Parameter ini bukan parameter standar OpenAI. Saat memanggil menggunakan Python SDK, letakkan parameter ini dalam objek extra_body. Contoh konfigurasi: extra_body={"enable_search": True}. | |
search_options object (Opsional) Strategi untuk pencarian web. Untuk informasi selengkapnya, lihat Pencarian web. Properti forced_search boolean (Opsional) Nilai default: false Menentukan apakah pencarian web akan dipaksakan. Parameter ini hanya berlaku saat enable_search diatur ke true. Nilai yang valid: search_strategy string (Opsional) Nilai default: turbo Strategi pencarian. Parameter ini hanya berlaku saat enable_search diatur ke true. Nilai yang valid: turbo (Default): Menyeimbangkan kecepatan respons dan efektivitas pencarian. Strategi ini cocok untuk sebagian besar skenario.
max: Menggunakan strategi pencarian yang lebih komprehensif dengan memanggil mesin pencari multi-sumber untuk hasil yang lebih detail, meskipun waktu respons mungkin lebih lama.
agent: Memungkinkan pemanggilan berulang terhadap alat pencarian web dan model bahasa besar untuk pengambilan informasi multi-putaran serta integrasi konten.
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, qwen3-max-2025-09-23, qwen3.5-omni-plus, qwen3.5-omni-plus-2026-03-15, qwen3.5-omni-flash, dan qwen3.5-omni-flash-2026-03-15. agent_max: Mendukung scraping web berdasarkan strategi agent. Untuk informasi selengkapnya, lihat Scraping web.
Strategi ini hanya berlaku untuk mode thinking qwen3-max dan qwen3-max-2026-01-23.
enable_search_extension boolean (Opsional) Nilai default: false Menentukan apakah pencarian vertikal diaktifkan. Parameter ini hanya berlaku saat enable_search diatur ke true. Nilai yang valid: true: Aktifkan.
false: Nonaktifkan.
Parameter ini bukan parameter OpenAI standar. Saat Anda memanggil menggunakan Python SDK, letakkan di objek extra_body. Konfigurasi: extra_body={"search_options": xxx}. | |
clear_thinking boolean (Opsional) Nilai default: false Mengontrol apakah reasoning_content (proses berpikir) dari putaran sebelumnya dalam percakapan multi-putaran digunakan sebagai input konteks untuk model. Parameter ini hanya didukung oleh model seri GLM glm-5.2, glm-5.1, glm-5, dan glm-4.7. Parameter ini bukan parameter standar OpenAI. Saat memanggil menggunakan Python SDK, letakkan dalam objek extra_body. Contoh konfigurasi: extra_body={"skill": [...]}. true: Mengabaikan reasoning_content dari putaran sebelumnya dan hanya menggunakan teks yang terlihat, pemanggilan alat, hasil, serta konten non-inferensi lainnya sebagai input konteks. Pendekatan ini dapat mengurangi panjang konteks dan biaya.
false (Default): Mempertahankan reasoning_content dari putaran sebelumnya dan menyediakannya ke model bersama dengan konteks lainnya. Untuk mengaktifkan Preserved Thinking, Anda harus meneruskan reasoning_content historis secara lengkap, tidak diubah, dan dalam urutan aslinya dalam pesan. Penghilangan, pemotongan, penulisan ulang, atau pengubahan urutan dapat menurunkan performa atau menyebabkan kegagalan.
| |