API Completions dirancang untuk skenario penyelesaian teks, seperti penyelesaian kode dan kelanjutan konten.
CatatanDokumen ini hanya berlaku untuk wilayah North China 2 (Beijing). Anda harus menggunakan API key dari wilayah North China 2 (Beijing).
Model yang didukung
Model Qwen Coder berikut didukung:
qwen-coder-turbo
Prasyarat
Dapatkan API key dan konfigurasikan sebagai Variabel lingkungan. Jika Anda menggunakan kit pengembangan perangkat lunak (SDK) OpenAI, instal SDK tersebut.
Mulai cepat
Anda dapat menggunakan API Completions untuk penyelesaian teks. Dua skenario penyelesaian teks didukung:
- Hasilkan konten yang mengikuti awalan tertentu.
- Hasilkan konten di antara awalan dan akhiran tertentu.
Penghasilan konten yang mendahului akhiran tertentu tidak didukung.
Mulai cepat
Masukkan informasi seperti nama fungsi, parameter input, dan instruksi penggunaan dalam awalan. API Completions akan mengembalikan kode yang dihasilkan.
Templat prompt-nya adalah:
<|fim_prefix|>{prefix_content}<|fim_suffix|>
Dalam templat tersebut, {prefix_content} adalah informasi awalan yang Anda masukkan.
import os
from openai import OpenAI
client = OpenAI(
base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
api_key=os.getenv("DASHSCOPE_API_KEY")
)
completion = client.completions.create(
model="qwen-coder-turbo",
prompt="<|fim_prefix|>Write a Python quick sort function, def quick_sort(arr):<|fim_suffix|>",
)
print(completion.choices[0].text)
import OpenAI from "openai";
const openai = new OpenAI(
{
// Jika Anda belum mengonfigurasi variabel lingkungan, ganti baris berikut dengan Kunci API Model Studio Anda: apiKey: "sk-xxx",
apiKey: process.env.DASHSCOPE_API_KEY,
baseURL: "https://dashscope.aliyuncs.com/compatible-mode/v1"
}
);
async function main() {
const completion = await openai.completions.create({
model: "qwen-coder-turbo",
prompt: "<|fim_prefix|>Write a Python quick sort function, def quick_sort(arr):<|fim_suffix|>",
});
console.log(completion.choices[0].text)
}
main();
curl -X POST https://dashscope.aliyuncs.com/compatible-mode/v1/completions \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen-coder-turbo",
"prompt": "<|fim_prefix|>Write a Python quick sort function, def quick_sort(arr):<|fim_suffix|>"
}'
Hasilkan konten di antara awalan dan akhiran
API Completions dapat menghasilkan konten di antara awalan dan akhiran tertentu. Masukkan informasi seperti nama fungsi, parameter input, dan instruksi penggunaan dalam awalan. Masukkan informasi seperti parameter return fungsi dalam akhiran. API Completions akan mengembalikan kode yang dihasilkan.
Templat prompt-nya adalah:
<|fim_prefix|>{prefix_content}<|fim_suffix|>{suffix_content}<|fim_middle|>
Dalam templat tersebut, {prefix_content} adalah informasi awalan dan {suffix_content} adalah informasi akhiran.
import os
from openai import OpenAI
client = OpenAI(
base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
api_key=os.getenv("DASHSCOPE_API_KEY")
)
prefix_content = f"""def reverse_words_with_special_chars(s):
'''
Reverse each word in the string (preserving the position of non-alphabetic characters) and maintain the word order.
Example:
reverse_words_with_special_chars("Hello, world!") -> "olleH, dlrow!"
Parameters:
s (str): The input string, which may contain punctuation.
Returns:
str: The processed string, where words are reversed but non-alphabetic characters remain in their original positions.
'''
"""
suffix_content = "return result"
completion = client.completions.create(
model="qwen-coder-turbo",
prompt=f"<|fim_prefix|>{prefix_content}<|fim_suffix|>{suffix_content}<|fim_middle|>",
)
print(completion.choices[0].text)
import OpenAI from 'openai';
const client = new OpenAI({
baseURL: "https://dashscope.aliyuncs.com/compatible-mode/v1",
apiKey: process.env.DASHSCOPE_API_KEY
});
const prefixContent = `def reverse_words_with_special_chars(s):
'''
Reverse each word in the string (preserving the position of non-alphabetic characters) and maintain the word order.
Example:
reverse_words_with_special_chars("Hello, world!") -> "olleH, dlrow!"
Parameters:
s (str): The input string, which may contain punctuation.
Returns:
str: The processed string, where words are reversed but non-alphabetic characters remain in their original positions.
'''
`;
const suffixContent = "return result";
async function main() {
const completion = await client.completions.create({
model: "qwen-coder-turbo",
prompt: `<|fim_prefix|>${prefixContent}<|fim_suffix|>${suffixContent}<|fim_middle|>`
});
console.log(completion.choices[0].text);
}
main();
curl -X POST https://dashscope.aliyuncs.com/compatible-mode/v1/completions \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen-coder-turbo",
"prompt": "<|fim_prefix|>def reverse_words_with_special_chars(s):\n\"\"\"\nReverse each word in the string (preserving the position of non-alphabetic characters) and maintain the word order.\n Example:\n reverse_words_with_special_chars(\"Hello, world!\") -> \"olleH, dlrow!\"\n Parameters:\n s (str): The input string, which may contain punctuation.\n Returns:\n str: The processed string, where words are reversed but non-alphabetic characters remain in their original positions.\n\"\"\"\n<|fim_suffix|>return result<|fim_middle|>"
}'
Parameter input dan output
Parameter input
| Parameter | Type | Wajib | Deskripsi |
|---|---|---|---|
model | string | Ya | Nama model yang akan dipanggil. |
prompt | string | Ya | Prompt untuk menghasilkan penyelesaian. |
max_tokens | integer | Tidak | Jumlah maksimum token yang dikembalikan dalam permintaan.
|
temperature | float | Tidak | Suhu pengambilan sampel, yang mengontrol keragaman teks yang dihasilkan. Suhu yang lebih tinggi menghasilkan teks yang lebih beragam, sedangkan suhu yang lebih rendah menghasilkan teks yang lebih deterministik. Nilai valid: [0, 2.0). Karena baik temperature maupun top_p mengontrol keragaman teks, atur hanya salah satunya. |
top_p | float | Tidak | Ambang batas probabilitas untuk pengambilan sampel inti, yang mengontrol keragaman teks yang dihasilkan. Nilai top_p yang lebih tinggi menghasilkan teks yang lebih beragam, sedangkan nilai top_p yang lebih rendah menghasilkan teks yang lebih deterministik. Nilai valid: (0, 1.0]. Karena baik temperature maupun top_p mengontrol keragaman teks, atur hanya salah satunya. |
stream | boolean | Tidak | Menentukan apakah respons akan dialirkan. Nilai valid:
|
stream_options | object | Tidak | Saat keluaran streaming diaktifkan, atur parameter ini menjadi |
stop | string atau array | Tidak | Model secara otomatis berhenti menghasilkan teks ketika akan menyertakan string atau Anda dapat memasukkan kata sensitif dalam parameter stop untuk mengontrol output model. |
seed | integer | Tidak | Mengatur parameter seed membuat proses generasi teks lebih deterministik. Ini biasanya digunakan untuk memastikan bahwa model menghasilkan hasil yang konsisten pada setiap eksekusi. Jika Anda memberikan nilai seed yang sama untuk setiap pemanggilan model dan menjaga parameter lain tetap tidak berubah, model akan mengembalikan hasil yang sama sebisa mungkin. Nilainya harus berada dalam rentang 0 hingga 231−1. |
presence_penalty | float | Tidak | Mengontrol tingkat pengulangan konten saat model menghasilkan teks. Nilainya harus berada dalam rentang [-2.0, 2.0]. Nilai positif mengurangi pengulangan, sedangkan nilai negatif meningkatkan pengulangan. |
Parameter output
Parameter | Type | Deskripsi |
|---|---|---|
id | string | Pengidentifikasi unik untuk pemanggilan. |
choices | array | Array berisi konten yang dihasilkan model. |
choices[0].text | string | Konten yang dihasilkan oleh permintaan. |
choices[0].finish_reason | string | Alasan mengapa model berhenti menghasilkan konten. |
choices[0].index | integer | Indeks elemen saat ini dalam array. Nilainya tetap 0. |
choices[0].logprobs | object | Saat ini nilainya tetap |
created | integer | Waktu saat permintaan dibuat. |
model | string | Nama model yang digunakan untuk permintaan. |
system_fingerprint | string | Parameter ini saat ini tetap |
object | string | Tipe objek. Nilainya selalu |
usage | object | Statistik penggunaan untuk permintaan. |
usage.prompt_tokens | integer | Jumlah token dalam |
usage.completion_tokens | integer | Jumlah token dalam |
usage.total_tokens | integer | Jumlah dari |
Kode error
Jika pemanggilan model gagal dan mengembalikan pesan error, lihat Kode error untuk penyelesaiannya.