Model Qwen di Model Studio mendukung antarmuka yang kompatibel dengan OpenAI. Anda dapat memigrasikan kode OpenAI yang sudah ada ke Model Studio hanya dengan mengubah Kunci API, URL dasar, dan nama model.
Informasi kompatibilitas
BASE_URL
BASE_URL adalah titik akhir jaringan untuk mengakses layanan model. Saat menggunakan antarmuka kompatibel OpenAI dengan Model Studio, konfigurasikan BASE_URL sebagai berikut.
Saat melakukan panggilan melalui SDK OpenAI atau SDK kompatibel OpenAI lainnya, gunakan BASE_URL berikut:
Pemecahan masalah panggilan gagal: Jika panggilan melalui antarmuka kompatibel OpenAI gagal dengan error 404, 401, 403, atau error koneksi, periksa konfigurasi berikut:
Panggilan cross-region
Kunci API Model Studio terikat pada wilayah tempat kunci tersebut dibuat. Saat memanggil URL dasar suatu wilayah, Anda harus menggunakan Kunci API yang dibuat di wilayah yang sama. Kunci API dari wilayah lain akan ditolak dengan error autentikasi.
Aturan ini berlaku untuk setiap wilayah yang menyediakan titik akhir, termasuk Tiongkok (Beijing), AS (Virginia), Singapura, dan Jepang (Tokyo), serta Tiongkok (Hong Kong). Buat Kunci API di Konsol wilayah yang titik akhirnya Anda panggil.
Sebagai contoh, jika Anda menggunakan Kunci API yang dibuat di wilayah Tiongkok (Beijing) untuk memanggil titik akhir AS (Virginia), permintaan akan mengembalikan HTTP 401 dengan pesan error Incorrect API key provided dan kode error invalid_api_key. Error ini menunjukkan bahwa Kunci API dan titik akhir berasal dari wilayah yang berbeda, bukan berarti Kunci API tidak valid atau tidak memiliki izin.
Model yang didukung
Model yang didukung: model bahasa besar Qwen (edisi komersial dan open-source), Qwen-VL, Qwen-Coder, Qwen-Omni, Qwen-Math, DeepSeek, Kimi, GLM, MiniMax.
Qwen-Audio tidak mendukung protokol kompatibel OpenAI. Gunakan protokol DashScope sebagai gantinya.
Panggilan melalui SDK OpenAI
Prasyarat
- Python telah diinstal di mesin Anda.
- Versi terbaru SDK OpenAI telah diinstal.
- Anda telah mengaktifkan Model Studio dan memperoleh Kunci API. Untuk petunjuknya, lihat Dapatkan Kunci API.
- (Disarankan) Konfigurasikan Kunci API sebagai variabel lingkungan untuk mengurangi risiko eksposur kunci. Anda juga dapat mengonfigurasikannya langsung dalam kode, tetapi hal ini meningkatkan risiko eksposur.
- Pilih model yang ingin Anda gunakan dari daftar model yang didukung.
Penggunaan
Contoh berikut menunjukkan cara menggunakan SDK OpenAI untuk mengakses model Qwen di Model Studio.
Contoh non-streaming
Contoh streaming
Contoh pemanggilan tool
Contoh berikut menunjukkan pemanggilan tool (pemanggilan fungsi) melalui antarmuka kompatibel OpenAI, menggunakan tool kueri cuaca dan tool kueri waktu. Kode contoh ini mendukung pemanggilan tool multi-turn.
Parameter permintaan
Parameter permintaan diselaraskan dengan antarmuka OpenAI. Tabel berikut menjelaskan parameter yang saat ini didukung:
Parameter | Tipe | Bawaan | Deskripsi |
|---|---|---|---|
model | string | - | Model yang digunakan. Untuk model yang tersedia, lihat Model yang didukung. |
messages | array | - | Riwayat percakapan antara pengguna dan model. Setiap elemen array memiliki format |
top_p (opsional) | float | - | Ambang batas probabilitas pengambilan sampel inti. Misalnya, nilai 0,8 hanya menyimpan himpunan token terkecil yang probabilitas kumulatifnya minimal 0,8. Nilai yang valid: (0, 1,0). Nilai yang lebih tinggi meningkatkan keacakan; nilai yang lebih rendah meningkatkan determinisme. |
temperature (opsional) | float | - | Mengontrol keacakan dan keragaman respons model. Nilai yang lebih tinggi meratakan distribusi probabilitas, memilih lebih banyak token berprobabilitas rendah untuk output yang lebih beragam. Nilai yang lebih rendah mempertajam distribusi, mengutamakan token berprobabilitas tinggi untuk output yang lebih deterministik. Nilai yang valid: [0, 2). Nilai 0 tidak disarankan. |
presence_penalty (opsional) | float | - | Mengontrol pengulangan di seluruh urutan yang dihasilkan. Nilai yang lebih tinggi mengurangi pengulangan. Nilai yang valid: [-2,0, 2,0]. Hanya didukung pada model komersial Qwen dan model open-source qwen1.5 ke atas. |
n (opsional) | integer | 1 | Jumlah respons yang dihasilkan. Nilai yang valid: |
max_tokens (opsional) | integer | - | Jumlah maksimum token yang dapat dihasilkan model. Misalnya, jika model mendukung hingga 2k token output, Anda dapat mengatur ini menjadi 1k untuk mencegah respons yang terlalu panjang. Model yang berbeda memiliki batas output yang berbeda. Lihat daftar model untuk detailnya. |
seed (opsional) | integer | - | Seed acak untuk generasi, digunakan untuk mengontrol keacakan output model. Mendukung bilangan bulat tak bertanda 64-bit. |
stream (opsional) | boolean | False | Mengontrol apakah akan menggunakan output streaming. Saat streaming diaktifkan, antarmuka mengembalikan generator. Iterasi di atasnya untuk mendapatkan hasil, di mana setiap output adalah urutan inkremental yang dihasilkan. |
stop (opsional) | string atau array | None | Mengontrol penghentian tepat pembuatan konten. Pembuatan berhenti secara otomatis ketika model akan menghasilkan string atau token_id yang ditentukan. Dapat berupa tipe string atau array. Saat tipe string: pembuatan berhenti ketika model akan menghasilkan kata berhenti yang ditentukan. Saat tipe array: elemen array dapat berupa token_ids, string, atau array token_ids. Pembuatan berhenti ketika token yang dihasilkan atau token_id-nya cocok dengan elemen dalam stop. Saat stop bertipe array, Anda tidak dapat mencampur token_ids dan string sebagai elemen. |
tools (opsional) | array | None | Pustaka tool yang tersedia untuk dipanggil model. Selama alur pemanggilan fungsi, model memilih satu tool dari pustaka ini. Setiap tool memiliki struktur berikut: Parameter tools tidak dapat digunakan bersamaan dengan stream=True. |
stream_options (opsional) | object | None | Mengonfigurasi apakah akan menampilkan penggunaan token dalam output streaming. Hanya berlaku saat stream bernilai True. Untuk menghitung token dalam mode streaming, atur |
Parameter respons
Parameter | Tipe | Deskripsi | Catatan |
|---|---|---|---|
id | string | ID yang dihasilkan sistem untuk permintaan ini. | - |
model | string | Nama model yang digunakan untuk permintaan ini. | - |
system_fingerprint | string | Versi konfigurasi yang digunakan oleh waktu proses model. Saat ini tidak didukung; mengembalikan string kosong. | - |
choices | array | Detail konten yang dihasilkan model. | - |
choices[i].finish_reason | string | Alasan penghentian generasi. Nilai: null (masih menghasilkan), stop (berhenti karena kondisi berhenti), length (berhenti karena melebihi panjang maksimum). | - |
choices[i].message | object | Pesan yang dikeluarkan oleh model. | - |
choices[i].message.role | string | Peran model. Nilai tetap: assistant. | - |
choices[i].message.content | string | Teks yang dihasilkan model. | - |
choices[i].index | integer | Nomor urut hasil yang dihasilkan. Bawaan: 0. | - |
created | integer | Timestamp (dalam detik) hasil yang dihasilkan. | - |
usage | object | Informasi metering yang menunjukkan konsumsi token untuk permintaan ini. | - |
usage.prompt_tokens | integer | Jumlah token teks input pengguna. | - |
usage.completion_tokens | integer | Jumlah token respons yang dihasilkan model. | - |
usage.total_tokens | integer | Jumlah usage.prompt_tokens dan usage.completion_tokens. | - |
Panggilan melalui SDK langchain_openai
Prasyarat
- Python telah diinstal di mesin Anda.
- SDK langchain_openai telah diinstal.
- Anda telah mengaktifkan Model Studio dan memperoleh Kunci API. Untuk petunjuknya, lihat Dapatkan Kunci API.
- (Disarankan) Konfigurasikan Kunci API sebagai variabel lingkungan untuk mengurangi risiko eksposur kunci. Anda juga dapat mengonfigurasikannya langsung dalam kode, tetapi hal ini meningkatkan risiko eksposur.
- Pilih model yang ingin Anda gunakan dari daftar model yang didukung.
Penggunaan
Contoh berikut menunjukkan cara menggunakan SDK langchain_openai untuk mengakses model Qwen di Model Studio.
Output non-streaming
Output non-streaming menggunakan metode invoke:
Output streaming
Output streaming menggunakan metode stream. Anda tidak perlu mengonfigurasi parameter stream secara terpisah.
Panggilan melalui HTTP
Anda dapat memanggil Model Studio melalui permintaan HTTP dan menerima respons dengan struktur yang sama seperti respons HTTP OpenAI.
Prasyarat
- Anda telah mengaktifkan Model Studio dan memperoleh Kunci API. Untuk petunjuknya, lihat Dapatkan Kunci API.
- (Disarankan) Konfigurasikan Kunci API sebagai variabel lingkungan untuk mengurangi risiko eksposur kunci. Anda juga dapat mengonfigurasikannya langsung dalam kode, tetapi hal ini meningkatkan risiko eksposur.
Titik akhir
Contoh permintaan
Contoh berikut menggunakan perintah cURL untuk memanggil API.
$DASHSCOPE_API_KEY dengan Kunci API aktual Anda.Output non-streaming
Output streaming
Untuk menggunakan output streaming, atur parameter stream menjadi true dalam badan permintaan.
Respons error
Saat permintaan gagal, respons mencakup bidang code dan message yang menunjukkan penyebabnya:
Konfigurasi klien pihak ketiga
Anda dapat memanggil model Model Studio dari klien pihak ketiga mana pun yang mendukung protokol kompatibel OpenAI. Langkah-langkah berikut menggunakan klien Zhipu sebagai contoh:
- Pada pengaturan penyedia klien, pilih Custom provider.
-
Base URL: Masukkan URL dasar yang digunakan SDK OpenAI untuk wilayah Anda. Untuk URL dasar setiap wilayah, lihat BASE_URL. URL dasar diakhiri dengan
/compatible-mode/v1dan tidak mencakup/chat/completions. Karena URL dasar berbeda-beda menurut wilayah, gunakan yang sesuai dengan wilayah Kunci API Anda. Misalnya, untuk wilayah Singapura, masukkanhttps://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1. Ganti{WorkspaceId}dengan ID ruang kerja Anda, yang dapat Anda temukan di halaman detail ruang kerja di Konsol Model Studio. Domain lamahttps://dashscope.aliyuncs.commasih tersedia, tetapi gunakan domain spesifik ruang kerja kapan pun memungkinkan. - Kunci API: Masukkan Kunci API Model Studio untuk wilayah yang dituju oleh URL dasar. Anda dapat membuat dan memperoleh Kunci API di halaman manajemen Kunci API di Konsol Model Studio.
-
Nama model: Masukkan nama model bahasa besar yang mendukung protokol kompatibel OpenAI. Untuk model yang dapat Anda pilih, lihat Model yang didukung. Misalnya,
qwen3-vl-32b-thinking. Nama model ini hanya contoh dan tidak menunjukkan bahwa model tersebut menyediakan kuota gratis. - Simpan konfigurasi dan mulai percakapan untuk memverifikasi bahwa klien pihak ketiga dapat memanggil model.
error.message diatur ke current user api does not support http call dan error.type diatur ke invalid_request_error. Error ini berarti model yang Anda masukkan tidak mendukung panggilan HTTP melalui antarmuka kompatibel OpenAI. Ganti dengan model dari Model yang didukung dan coba lagi. Misalnya, qvq-max tidak mendukung metode panggilan ini.
Kode kesalahan
Kode kesalahan | Deskripsi |
|---|---|
400 - Invalid Request Error | Permintaan tidak valid. Lihat pesan error untuk detailnya. |
401 - Incorrect API key provided | Kunci API salah. |
429 - Rate limit reached for requests | Batas QPS atau QPM terlampaui. |
429 - You exceeded your current quota, please check your plan and billing details | Kuota terlampaui atau akun menunggak. |
500 - The server had an error while processing your request | Error server. |
503 - The engine is currently overloaded, please try again later | Server kelebihan beban. Coba lagi nanti. |