Referensi REST API Azure OpenAI Service
Artikel ini menyediakan detail tentang titik akhir REST API inferensi untuk Azure OpenAI.
Autentikasi
Azure OpenAI menyediakan dua metode untuk autentikasi. Anda dapat menggunakan Kunci API atau ID Microsoft Entra.
Autentikasi Kunci API: Untuk jenis autentikasi ini, semua permintaan API harus menyertakan Kunci API di
api-key
header HTTP. Mulai Cepat menyediakan panduan tentang cara melakukan panggilan dengan jenis autentikasi ini.Autentikasi ID Microsoft Entra: Anda dapat mengautentikasi panggilan API menggunakan token Microsoft Entra. Token autentikasi disertakan dalam permintaan sebagai header
Authorization
. Nilai token yang diberikan harus didahului denganBearer
, contohnyaBearer YOUR_AUTH_TOKEN
. Anda dapat membaca panduan cara mengautentikasi dengan MICROSOFT Entra ID.
Penerapan versi REST API
API layanan diterapkan versinya menggunakan parameter kueri api-version
. Semua versi mengikuti struktur tanggal YYYY-MM-DD. Contohnya:
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/completions?api-version=2024-02-01
Penyelesaian
Dengan operasi Penyelesaian, model menghasilkan satu atau beberapa penyelesaian yang diprediksi berdasarkan perintah yang disediakan. Layanan ini juga dapat mengembalikan kemungkinan token alternatif pada setiap posisi.
Membuat sebuah penyelesaian
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/completions?api-version={api-version}
Parameter jalur
Parameter | Tipe | Wajib diisi? | Deskripsi |
---|---|---|---|
your-resource-name |
string | Wajib | Nama Sumber Daya Azure OpenAI Anda. |
deployment-id |
string | Wajib | Nama penyebaran yang Anda pilih saat menyebarkan model. |
api-version |
string | Wajib | Versi API yang digunakan untuk operasi ini. Ini mengikuti format YYYY-MM-DD. |
Versi yang didukung
2022-12-01
Spesifikasi Swagger2023-03-15-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2023-05-15
Spesifikasi Swagger2023-06-01-preview
Spesifikasi Swagger2023-07-01-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2023-08-01-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2023-09-01-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2023-10-01-preview
Spesifikasi Swagger2023-12-01-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2024-02-15-preview
Spesifikasi Swagger2024-03-01-preview
Spesifikasi Swagger2024-04-01-preview
Spesifikasi Swagger2024-02-01
Spesifikasi Swagger
Badan permintaan
Parameter | Tipe | Wajib diisi? | Default | Deskripsi |
---|---|---|---|---|
prompt |
string atau array | Opsional | <\|endoftext\|> |
Perintah atau permintaan untuk menghasilkan penyelesaian, dikodekan sebagai string, atau array string. <\|endoftext\|> adalah pemisah dokumen yang dilihat model selama pelatihan, jadi jika perintah tidak ditentukan, model menghasilkan seolah-olah dari awal dokumen baru. |
max_tokens |
Integer | Opsional | 16 | Jumlah maksimum token yang akan dihasilkan dalam penyelesaian. Jumlah token perintah Anda ditambah max_tokens tidak dapat melebihi panjang konteks model. Sebagian besar model memiliki panjang konteks 2048 token (kecuali untuk model terbaru, yang mendukung 4096). |
temperature |
number | Opsional | 1 | Suhu pengambilan sampel apa yang akan digunakan, antara 0 dan 2. Nilai yang lebih tinggi berarti model mengambil lebih banyak risiko. Cobalah 0,9 untuk aplikasi yang lebih kreatif dan 0 (argmax sampling ) untuk aplikasi dengan jawaban yang jelas. Kami umumnya merekomendasikan untuk mengubah ini atau top_p tetapi tidak keduanya. |
top_p |
number | Opsional | 1 | Alternatif untuk pengambilan sampel dengan suhu, yang disebut pengambilan sampel nukleus, di mana model mempertimbangkan hasil token dengan massa peluang top_p. Jadi 0,1 berarti hanya token yang terdiri dari 10% massa peluang teratas yang dipertimbangkan. Kami umumnya merekomendasikan untuk mengubah ini atau suhu tetapi tidak keduanya. |
logit_bias |
peta | Opsional | nihil | Ubah kemungkinan token tertentu muncul dalam penyelesaian. Menerima objek json yang memetakan token (ditentukan oleh ID token mereka dalam tokenizer GPT) ke nilai bias terkait dari -100 hingga 100. Anda dapat menggunakan alat pembuat token ini (yang berfungsi untuk GPT-2 dan GPT-3) untuk mengonversi teks ke ID token. Secara matematis, bias ditambahkan ke logit yang dihasilkan oleh model sebelum pengambilan sampel. Efek yang tepat bervariasi per model, tetapi nilai antara -1 dan 1 harus mengurangi atau meningkatkan kemungkinan pemilihan; nilai seperti -100 atau 100 harus menghasilkan larangan atau pilihan eksklusif dari token yang relevan. Sebagai contoh, Anda dapat meneruskan {"50256": -100} untuk mencegah token <|endoftext|> dihasilkan. |
user |
string | Opsional | Pengidentifikasi unik yang mewakili pengguna akhir Anda, yang dapat membantu memantau dan mendeteksi penyalahgunaan | |
n |
Integer | Opsional | 1 | Berapa banyak penyelesaian yang dihasilkan untuk setiap perintah. Catatan: Karena parameter ini menghasilkan banyak penyelesaian, parameter ini dapat dengan cepat menggunakan kuota token Anda. Gunakan dengan hati-hati dan pastikan Anda memiliki pengaturan yang wajar untuk max_tokens dan berhenti. |
stream |
Boolean | Opsional | Salah | Apakah akan kembali melakukan streaming pada kemajuan parsial. Jika diatur, token dikirim sebagai peristiwa yang dikirim server khusus data saat tersedia, dengan aliran dihentikan oleh data: pesan [DONE]. |
logprobs |
Integer | Opsional | nihil | Sertakan peluang log pada token logprob yang paling mungkin, serta token yang dipilih. Contohnya, jika logprob adalah 10, API akan mengembalikan daftar 10 token yang paling mungkin. API akan selalu mengembalikan logprob token sampel, sehingga mungkin ada hingga elemen logprobs+1 dalam respons. Parameter ini tidak dapat digunakan dengan gpt-35-turbo . |
suffix |
string | Opsional | nihil | Akhiran yang muncul setelah penyelesaian teks yang disisipkan. |
echo |
Boolean | Opsional | Salah | Gema kembali perintah selain penyelesaian. Parameter ini tidak dapat digunakan dengan gpt-35-turbo . |
stop |
string atau array | Opsional | nihil | Hingga empat urutan di mana API akan berhenti menghasilkan token lebih lanjut. Teks yang dikembalikan tidak akan berisi urutan berhenti. Untuk GPT-4 Turbo dengan Visi, hingga dua urutan didukung. |
presence_penalty |
number | Opsional | 0 | Angka antara -2,0 dan 2,0. Nilai positif mengkhususkan token baru berdasarkan apakah token tersebut muncul dalam teks sejauh ini, meningkatkan kemungkinan model untuk berbicara tentang topik baru. |
frequency_penalty |
number | Opsional | 0 | Angka antara -2,0 dan 2,0. Nilai positif mengkhususkan token baru berdasarkan frekuensi yang ada dalam teks sejauh ini, mengurangi kemungkinan model untuk mengulangi verbatim baris yang sama. |
best_of |
Integer | Opsional | 1 | Menghasilkan penyelesaian best_of sisi server dan mengembalikan "best" (yang memiliki peluang log terendah per token). Hasil tidak dapat dialirkan. Saat digunakan dengan n, best_of mengontrol jumlah penyelesaian kandidat dan n menentukan berapa banyak yang akan dikembalikan – best_of harus lebih besar dari n. Catatan: Karena parameter ini menghasilkan banyak penyelesaian, parameter ini dapat dengan cepat menggunakan kuota token Anda. Gunakan dengan hati-hati dan pastikan Anda memiliki pengaturan yang wajar untuk max_tokens dan berhenti. Parameter ini tidak dapat digunakan dengan gpt-35-turbo . |
Contoh permintaan
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/completions?api-version=2024-02-01\
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d "{
\"prompt\": \"Once upon a time\",
\"max_tokens\": 5
}"
Contoh tanggapan
{
"id": "cmpl-4kGh7iXtjW4lc9eGhff6Hp8C7btdQ",
"object": "text_completion",
"created": 1646932609,
"model": "ada",
"choices": [
{
"text": ", a dark line crossed",
"index": 0,
"logprobs": null,
"finish_reason": "length"
}
]
}
Dalam contoh respons, finish_reason
sama dengan stop
. Jika finish_reason
sama dengan berkonsultasi content_filter
dengan panduan pemfilteran konten kami untuk memahami mengapa hal ini terjadi.
Penyematan
Dapatkan representasi vektor dari input tertentu yang dapat dengan mudah digunakan oleh model pembelajaran mesin dan algoritma lainnya.
Catatan
OpenAI saat ini memungkinkan sejumlah besar input array dengan text-embedding-ada-002
. Azure OpenAI saat ini mendukung array input hingga 16 untuk text-embedding-ada-002 (Version 2)
. Keduanya memerlukan batas token input maksimum per permintaan API agar tetap di bawah 8191 untuk model ini.
Membuat penyematan
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/embeddings?api-version={api-version}
Parameter jalur
Parameter | Tipe | Wajib diisi? | Deskripsi |
---|---|---|---|
your-resource-name |
string | Wajib | Nama Sumber Daya Azure OpenAI Anda. |
deployment-id |
string | Wajib | Nama penyebaran model Anda. Anda diharuskan untuk terlebih dahulu menyebarkan model sebelum dapat melakukan panggilan. |
api-version |
string | Wajib | Versi API yang digunakan untuk operasi ini. Ini mengikuti format YYYY-MM-DD. |
Versi yang didukung
2023-03-15-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2023-05-15
Spesifikasi Swagger2023-06-01-preview
Spesifikasi Swagger2023-07-01-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2023-08-01-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2023-09-01-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2023-10-01-preview
Spesifikasi Swagger2023-12-01-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2024-02-15-preview
Spesifikasi Swagger2024-03-01-preview
Spesifikasi Swagger2024-04-01-preview
Spesifikasi Swagger2024-02-01
Spesifikasi Swagger
Badan permintaan
Parameter | Tipe | Wajib diisi? | Default | Deskripsi |
---|---|---|---|---|
input |
string atau array | Ya | T/A | Masukkan teks untuk mendapatkan penyematan, dikodekan sebagai array atau string. Jumlah token input bervariasi tergantung pada model apa yang Anda gunakan. Hanya text-embedding-ada-002 (Version 2) mendukung input array. |
user |
string | No | Null | Pengidentifikasi unik yang mewakili pengguna akhir Anda. Ini akan membantu Azure OpenAI memantau dan mendeteksi penyalahgunaan. Jangan meneruskan pengidentifikasi PII, sebagai gantinya gunakan nilai dengan pseudo-anonim seperti GUID |
encoding_format |
string | No | float |
Format untuk mengembalikan penyematan. Dapat berupa float atau base64 . Default ke float . [Ditambahkan dalam 2024-03-01-preview ]. |
dimensions |
Integer | No | Jumlah dimensi yang harus dimiliki penyematan output yang dihasilkan. Hanya didukung dalam text-embedding-3 model dan yang lebih baru. [Ditambahkan dalam 2024-03-01-preview ] |
Contoh permintaan
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/embeddings?api-version=2024-02-01 \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d "{\"input\": \"The food was delicious and the waiter...\"}"
Contoh tanggapan
{
"object": "list",
"data": [
{
"object": "embedding",
"embedding": [
0.018990106880664825,
-0.0073809814639389515,
.... (1024 floats total for ada)
0.021276434883475304,
],
"index": 0
}
],
"model": "text-similarity-babbage:001"
}
Penyelesaian obrolan
Buat penyelesaian untuk pesan obrolan dengan model GPT-35-Turbo dan GPT-4.
Membuat penyelesaian obrolan
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/chat/completions?api-version={api-version}
Parameter jalur
Parameter | Tipe | Wajib diisi? | Deskripsi |
---|---|---|---|
your-resource-name |
string | Wajib | Nama Sumber Daya Azure OpenAI Anda. |
deployment-id |
string | Wajib | Nama penyebaran model Anda. Anda diharuskan untuk terlebih dahulu menyebarkan model sebelum dapat melakukan panggilan. |
api-version |
string | Wajib | Versi API yang digunakan untuk operasi ini. Ini mengikuti format YYYY-MM-DD atau YYYY-MM-DD-preview. |
Versi yang didukung
2023-03-15-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2023-05-15
Spesifikasi Swagger2023-06-01-preview
Spesifikasi Swagger2023-07-01-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2023-08-01-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2023-09-01-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2023-10-01-preview
Spesifikasi Swagger2023-12-01-preview
(pensiun 1 Juli 2024) (Versi ini atau lebih besar diperlukan untuk skenario Visi) Spesifikasi Swagger2024-02-15-preview
Spesifikasi Swagger2024-03-01-preview
Spesifikasi Swagger2024-04-01-preview
Spesifikasi Swagger2024-02-01
Spesifikasi Swagger
Badan permintaan
Isi permintaan terdiri dari serangkaian pesan. Model akan menghasilkan respons ke pesan terakhir, menggunakan pesan sebelumnya sebagai konteks.
Parameter | Tipe | Wajib diisi? | Default | Deskripsi |
---|---|---|---|---|
messages |
array | Ya | T/A | Rangkaian pesan yang terkait dengan permintaan penyelesaian obrolan ini. Ini harus menyertakan pesan sebelumnya dalam percakapan. Setiap pesan memiliki role dan content . |
role |
string | Ya | T/A | Menunjukkan siapa yang memberikan pesan saat ini. Bisa ,system user ,,assistant tool , atau function . |
content |
string atau array | Ya | T/A | Konten pesan. Ini harus berupa string, kecuali dalam skenario berkemampuan Visi. Jika ini adalah bagian user dari pesan, menggunakan GPT-4 Turbo dengan model Visi, dengan versi API terbaru, maka content harus berupa array struktur, di mana setiap item mewakili teks atau gambar:
|
contentPart |
object | No | T/A | Bagian dari pesan multi-modal pengguna. Ini bisa berupa jenis teks atau jenis gambar. Jika teks, teks akan menjadi string teks. Jika gambar, itu akan menjadi contentPartImage objek. |
contentPartImage |
object | No | T/A | Mewakili gambar yang diunggah pengguna. Ini memiliki url properti, yang merupakan URL gambar atau data gambar dasar yang dikodekan 64. Ini juga memiliki detail properti yang dapat berupa auto , low , atau high . |
enhancements |
object | No | T/A | Mewakili fitur peningkatan Visi yang diminta untuk obrolan. grounding Memiliki properti dan ocr , masing-masing memiliki properti booleanenabled . Gunakan ini untuk meminta layanan OCR dan/atau layanan deteksi/grounding objek [Parameter pratinjau ini tidak tersedia di 2024-02-01 GA API dan tidak lagi tersedia dalam API pratinjau setelah 2024-03-01-preview .] |
dataSources |
object | No | T/A | Mewakili data sumber daya tambahan. Data sumber daya Computer Vision diperlukan untuk peningkatan Visi. Ini memiliki type properti, yang seharusnya "AzureComputerVision" dan properti parameters , yang memiliki endpoint properti dan key . String ini harus diatur ke URL titik akhir dan kunci akses sumber daya Computer Vision Anda. |
Contoh permintaan
Obrolan teks saja
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/chat/completions?api-version=2024-02-01 \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d '{"messages":[{"role": "system", "content": "You are a helpful assistant."},{"role": "user", "content": "Does Azure OpenAI support customer managed keys?"},{"role": "assistant", "content": "Yes, customer managed keys are supported by Azure OpenAI."},{"role": "user", "content": "Do other Azure AI services support this too?"}]}'
Mengobrol dengan visi
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/chat/completions?api-version=2023-12-01-preview \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d '{"messages":[{"role":"system","content":"You are a helpful assistant."},{"role":"user","content":[{"type":"text","text":"Describe this picture:"},{ "type": "image_url", "image_url": { "url": "https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png", "detail": "high" } }]}]}'
Peningkatan obrolan dengan visi
- Tidak didukung dengan Versi model
gpt-4
GPT-4 Turbo GA:turbo-2024-04-09
- Tidak didukung kecerdasan
2024-02-01
dan2024-04-01-preview
rilis API yang lebih baru.
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/extensions/chat/completions?api-version=2023-12-01-preview \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d '{"enhancements":{"ocr":{"enabled":true},"grounding":{"enabled":true}},"dataSources":[{"type":"AzureComputerVision","parameters":{"endpoint":" <Computer Vision Resource Endpoint> ","key":"<Computer Vision Resource Key>"}}],"messages":[{"role":"system","content":"You are a helpful assistant."},{"role":"user","content":[{"type":"text","text":"Describe this picture:"},{"type":"image_url","image_url":"https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png"}]}]}'
Contoh tanggapan
{
"id": "chatcmpl-6v7mkQj980V1yBec6ETrKPRqFjNw9",
"object": "chat.completion",
"created": 1679072642,
"model": "gpt-35-turbo",
"usage":
{
"prompt_tokens": 58,
"completion_tokens": 68,
"total_tokens": 126
},
"choices":
[
{
"message":
{
"role": "assistant",
"content": "Yes, other Azure AI services also support customer managed keys.
Azure AI services offer multiple options for customers to manage keys, such as
using Azure Key Vault, customer-managed keys in Azure Key Vault or
customer-managed keys through Azure Storage service. This helps customers ensure
that their data is secure and access to their services is controlled."
},
"finish_reason": "stop",
"index": 0
}
]
}
Pemformatan output yang disesuaikan untuk kemudahan membaca, output aktual adalah satu blok teks tanpa hentian baris.
Dalam contoh respons, finish_reason
sama dengan stop
. Jika finish_reason
sama dengan berkonsultasi content_filter
dengan panduan pemfilteran konten kami untuk memahami mengapa hal ini terjadi.
Penting
Parameter functions
dan function_call
telah ditolak dengan rilis 2023-12-01-preview
versi API. Penggantian untuk functions
adalah tools
parameter . Penggantian untuk function_call
adalah tool_choice
parameter . Panggilan fungsi paralel yang diperkenalkan sebagai bagian 2023-12-01-preview
dari hanya didukung dengan gpt-35-turbo
(1106) dan gpt-4
(pratinjau 1106) juga dikenal sebagai Pratinjau Turbo GPT-4.
Parameter | Tipe | Wajib diisi? | Default | Deskripsi |
---|---|---|---|---|
messages |
array | Wajib | Kumpulan pesan konteks yang terkait dengan permintaan penyelesaian obrolan ini. Penggunaan umum dimulai dengan pesan obrolan untuk peran Sistem yang memberikan instruksi untuk perilaku asisten, diikuti dengan pesan alternatif antara peran Pengguna dan Asisten. | |
temperature |
number | Opsional | 1 | Suhu pengambilan sampel apa yang akan digunakan, antara 0 dan 2. Nilai yang lebih tinggi seperti 0,8 akan membuat output lebih acak, sementara nilai yang lebih rendah seperti 0,2 akan membuatnya lebih fokus dan deterministik. Kami umumnya merekomendasikan untuk mengubah ini atau top_p tetapi tidak keduanya. |
n |
Integer | Opsional | 1 | Berapa banyak pilihan penyelesaian obrolan yang akan dihasilkan untuk setiap pesan input. |
stream |
Boolean | Opsional | salah | Jika diatur, delta pesan parsial akan dikirim, seperti di ChatGPT. Token akan dikirim sebagai peristiwa yang dikirim server khusus data saat tersedia, dengan aliran dihentikan oleh pesan data: [DONE] ." |
stop |
string atau array | Opsional | nihil | Hingga 4 urutan di mana API akan berhenti menghasilkan token lebih lanjut. |
max_tokens |
Integer | Opsional | Inf | Jumlah maksimum token yang diizinkan untuk jawaban yang dihasilkan. Secara default, jumlah token yang dapat dikembalikan model adalah (4096 - token prompt). |
presence_penalty |
number | Opsional | 0 | Angka antara -2,0 dan 2,0. Nilai positif mengkhususkan token baru berdasarkan apakah token tersebut muncul dalam teks sejauh ini, meningkatkan kemungkinan model untuk berbicara tentang topik baru. |
frequency_penalty |
number | Opsional | 0 | Angka antara -2,0 dan 2,0. Nilai positif mengkhususkan token baru berdasarkan frekuensi yang ada dalam teks sejauh ini, mengurangi kemungkinan model untuk mengulangi verbatim baris yang sama. |
logit_bias |
object | Opsional | nihil | Ubah kemungkinan token tertentu muncul dalam penyelesaian. Menerima objek json yang memetakan token (ditentukan oleh ID token mereka di tokenizer) ke nilai bias terkait dari -100 hingga 100. Secara matematis, bias ditambahkan ke logit yang dihasilkan oleh model sebelum pengambilan sampel. Efek yang tepat bervariasi per model, tetapi nilai antara -1 dan 1 harus mengurangi atau meningkatkan kemungkinan pemilihan; nilai seperti -100 atau 100 harus menghasilkan larangan atau pilihan eksklusif dari token yang relevan. |
user |
string | Opsional | Pengidentifikasi unik yang mewakili pengguna akhir Anda, yang dapat membantu Azure OpenAI memantau dan mendeteksi penyalahgunaan. | |
function_call |
Opsional | [Deprecated in 2023-12-01-preview replacement parameter is tools_choice] Mengontrol bagaimana model merespons panggilan fungsi. "none" berarti model tidak memanggil fungsi, dan merespons pengguna akhir. auto berarti model dapat memilih antara pengguna akhir atau memanggil fungsi. Menentukan fungsi tertentu melalui {"name": "my_function"} memaksa model untuk memanggil fungsi tersebut. "none" adalah default ketika tidak ada fungsi yang ada. auto adalah default jika fungsi ada. Parameter ini memerlukan versi API 2023-07-01-preview |
||
functions |
FunctionDefinition[] |
Opsional | [Deprecated in 2023-12-01-preview replacement paremeter is tools] Daftar fungsi yang digunakan model untuk menghasilkan input JSON. Parameter ini memerlukan versi API 2023-07-01-preview |
|
tools |
string (Jenis alat. Hanya function didukung.) |
Opsional | Daftar alat yang dapat dipanggil model. Saat ini, hanya fungsi yang didukung sebagai alat. Gunakan ini untuk menyediakan daftar fungsi yang dapat dihasilkan oleh model input JSON. Parameter ini memerlukan versi API 2023-12-01-preview |
|
tool_choice |
string atau objek | Opsional | tidak ada yang default ketika tidak ada fungsi yang ada. auto adalah default jika fungsi ada. |
Mengontrol fungsi (jika ada) mana yang dipanggil oleh model. Tidak ada berarti model tidak akan memanggil fungsi dan sebaliknya menghasilkan pesan. auto berarti model dapat memilih antara menghasilkan pesan atau memanggil fungsi. Menentukan fungsi tertentu melalui {"type: "function", "function": {"name": "my_function"}} memaksa model untuk memanggil fungsi tersebut. Parameter ini memerlukan versi API atau yang lebih 2023-12-01-preview baru. |
ChatMessage
Satu pesan yang diatribusikan peran dalam interaksi penyelesaian obrolan.
Nama | Tipe | Deskripsi |
---|---|---|
konten | string | Teks yang terkait dengan payload pesan ini. |
function_call | FunctionCall | Nama dan argumen fungsi yang harus dipanggil, seperti yang dihasilkan oleh model. |
nama | string | Penulis name pesan ini. name diperlukan jika peran adalah function , dan itu harus menjadi nama fungsi yang responsnya ada di content . Dapat berisi a-z, A-Z, 0-9, dan garis bawah, dengan panjang maksimum 64 karakter. |
role | ChatRole | Peran yang terkait dengan payload pesan ini |
ChatRole
Deskripsi tujuan yang dimaksudkan dari pesan dalam interaksi penyelesaian obrolan.
Nama | Tipe | Deskripsi |
---|---|---|
assistant | string | Peran yang memberikan respons terhadap input yang diinstruksikan sistem dan diminta pengguna. |
fungsi | string | Peran yang menyediakan hasil fungsi untuk penyelesaian obrolan. |
sistem | string | Peran yang menginstruksikan atau mengatur perilaku asisten. |
pengguna | string | Peran yang menyediakan input untuk penyelesaian obrolan. |
Fungsi
Ini digunakan dengan tools
parameter yang ditambahkan dalam versi 2023-12-01-preview
API .
Nama | Tipe | Deskripsi |
---|---|---|
description | string | Deskripsi tentang apa yang dilakukan fungsi, digunakan oleh model untuk memilih kapan dan cara memanggil fungsi |
nama | string | Nama fungsi yang akan dipanggil. Harus a-z, A-Z, 0-9, atau berisi garis bawah dan tanda hubung, dengan panjang maksimum 64 |
parameter | object | Parameter yang diterima fungsi, dijelaskan sebagai objek Skema JSON. Lihat referensi Skema JSON untuk dokumentasi tentang format." |
FunctionCall-Tidak digunakan lagi
Nama dan argumen fungsi yang harus dipanggil, seperti yang dihasilkan oleh model. Ini memerlukan versi API 2023-07-01-preview
Nama | Tipe | Deskripsi |
---|---|---|
arguments | string | Argumen untuk memanggil fungsi dengan, seperti yang dihasilkan oleh model dalam format JSON. Model tidak selalu menghasilkan JSON yang valid, dan mungkin membuat parameter yang tidak ditentukan oleh skema fungsi Anda. Validasi argumen dalam kode Anda sebelum memanggil fungsi Anda. |
nama | string | Nama fungsi yang akan dipanggil. |
FunctionDefinition-Deprecated
Definisi fungsi yang ditentukan pemanggil yang dapat dipanggil penyelesaian obrolan sebagai respons terhadap input pengguna yang cocok. Ini memerlukan versi API 2023-07-01-preview
Nama | Tipe | Deskripsi |
---|---|---|
description | string | Deskripsi tentang apa yang dilakukan fungsi. Model menggunakan deskripsi ini saat memilih fungsi dan menginterpretasikan parameternya. |
nama | string | Nama fungsi yang akan dipanggil. |
parameter | Parameter yang diterima fungsi, dijelaskan sebagai objek Skema JSON. |
Ekstensi penyelesaian
Dokumentasi untuk bagian ini telah dipindahkan. Lihat dokumentasi referensi Azure OpenAI On Your Data sebagai gantinya.
Pembuatan gambar
Meminta gambar yang dihasilkan (DALL-E 3)
Buat dan ambil batch gambar dari keterangan teks.
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/images/generations?api-version={api-version}
Parameter jalur
Parameter | Tipe | Wajib diisi? | Deskripsi |
---|---|---|---|
your-resource-name |
string | Wajib | Nama Sumber Daya Azure OpenAI Anda. |
deployment-id |
string | Wajib | Nama penyebaran model DALL-E 3 Anda seperti MyDalle3. Anda diharuskan untuk terlebih dahulu menyebarkan model DALL-E 3 sebelum dapat melakukan panggilan. |
api-version |
string | Wajib | Versi API yang digunakan untuk operasi ini. Ini mengikuti format YYYY-MM-DD. |
Versi yang didukung
2023-12-01-preview (retiring July 1, 2024)
Spesifikasi Swagger2024-02-15-preview
Spesifikasi Swagger2024-03-01-preview
Spesifikasi Swagger2024-04-01-preview
Spesifikasi Swagger2024-02-01
Spesifikasi Swagger
Badan permintaan
Parameter | Tipe | Wajib diisi? | Default | Deskripsi |
---|---|---|---|---|
prompt |
string | Wajib | Deskripsi teks gambar yang diinginkan. Panjang maksimum adalah 4000 karakter. | |
n |
Integer | Opsional | 1 | Jumlah gambar yang akan dihasilkan. Hanya n=1 didukung untuk DALL-E 3. |
size |
string | Opsional | 1024x1024 |
Ukuran gambar yang dihasilkan. Harus salah satu dari 1792x1024 , , 1024x1024 atau 1024x1792 . |
quality |
string | Opsional | standard |
Kualitas gambar yang dihasilkan. Harus hd atau standard . |
response_format |
string | Opsional | url |
Format di mana gambar yang dihasilkan dikembalikan Harus ( url URL yang menunjuk ke gambar) atau b64_json (kode dasar 64-byte dalam format JSON). |
style |
string | Opsional | vivid |
Gaya gambar yang dihasilkan. Harus natural atau vivid (untuk gambar hiper-realistis / dramatis). |
user |
string | Opsional | Pengidentifikasi unik yang mewakili pengguna akhir Anda, yang dapat membantu memantau dan mendeteksi penyalahgunaan. |
Contoh permintaan
curl -X POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/images/generations?api-version=2023-12-01-preview \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d '{
"prompt": "An avocado chair",
"size": "1024x1024",
"n": 1,
"quality": "hd",
"style": "vivid"
}'
Contoh tanggapan
Operasi mengembalikan 202
kode status dan objek JSON yang GenerateImagesResponse
berisi ID dan status operasi.
{
"created": 1698116662,
"data": [
{
"url": "url to the image",
"revised_prompt": "the actual prompt that was used"
},
{
"url": "url to the image"
},
...
]
}
Meminta gambar yang dihasilkan (pratinjau DALL-E 2)
Hasilkan batch gambar dari keterangan teks.
POST https://{your-resource-name}.openai.azure.com/openai/images/generations:submit?api-version={api-version}
Parameter jalur
Parameter | Tipe | Wajib diisi? | Deskripsi |
---|---|---|---|
your-resource-name |
string | Wajib | Nama Sumber Daya Azure OpenAI Anda. |
api-version |
string | Wajib | Versi API yang digunakan untuk operasi ini. Ini mengikuti format YYYY-MM-DD. |
Versi yang didukung
2023-06-01-preview
Spesifikasi Swagger
Badan permintaan
Parameter | Tipe | Wajib diisi? | Default | Deskripsi |
---|---|---|---|---|
prompt |
string | Wajib | Deskripsi teks gambar yang diinginkan. Panjang maksimum adalah 1000 karakter. | |
n |
Integer | Opsional | 1 | Jumlah gambar yang akan dihasilkan. Harus antara 1 dan 5. |
size |
string | Opsional | 1024 x 1024 | Ukuran gambar yang dihasilkan. Harus salah satu dari 256x256 , , 512x512 atau 1024x1024 . |
Contoh permintaan
curl -X POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/images/generations:submit?api-version=2023-06-01-preview \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d '{
"prompt": "An avocado chair",
"size": "512x512",
"n": 3
}'
Contoh tanggapan
Operasi mengembalikan 202
kode status dan objek JSON yang GenerateImagesResponse
berisi ID dan status operasi.
{
"id": "f508bcf2-e651-4b4b-85a7-58ad77981ffa",
"status": "notRunning"
}
Mendapatkan hasil gambar yang dihasilkan (pratinjau DALL-E 2)
Gunakan API ini untuk mengambil hasil operasi pembuatan gambar. Pembuatan gambar saat ini hanya tersedia dengan api-version=2023-06-01-preview
.
GET https://{your-resource-name}.openai.azure.com/openai/operations/images/{operation-id}?api-version={api-version}
Parameter jalur
Parameter | Tipe | Wajib diisi? | Deskripsi |
---|---|---|---|
your-resource-name |
string | Wajib | Nama Sumber Daya Azure OpenAI Anda. |
operation-id |
string | Wajib | GUID yang mengidentifikasi permintaan pembuatan gambar asli. |
Versi yang didukung
2023-06-01-preview
Spesifikasi Swagger
Contoh permintaan
curl -X GET "https://{your-resource-name}.openai.azure.com/openai/operations/images/{operation-id}?api-version=2023-06-01-preview"
-H "Content-Type: application/json"
-H "Api-Key: {api key}"
Contoh tanggapan
Setelah berhasil, operasi mengembalikan 200
kode status dan OperationResponse
objek JSON. Bidang status
bisa ( "notRunning"
tugas diantrekan tetapi belum dimulai), "running"
, , "succeeded"
, "canceled"
(tugas telah kehabisan waktu), "failed"
, atau "deleted"
. Status succeeded
menunjukkan bahwa gambar yang dihasilkan tersedia untuk diunduh di URL yang diberikan. Jika beberapa gambar dihasilkan, URL mereka semuanya dikembalikan di result.data
bidang .
{
"created": 1685064331,
"expires": 1685150737,
"id": "4b755937-3173-4b49-bf3f-da6702a3971a",
"result": {
"data": [
{
"url": "<URL_TO_IMAGE>"
},
{
"url": "<URL_TO_NEXT_IMAGE>"
},
...
]
},
"status": "succeeded"
}
Menghapus gambar yang dihasilkan dari server (pratinjau DALL-E 2)
Anda dapat menggunakan ID operasi yang dikembalikan oleh permintaan untuk menghapus gambar yang sesuai dari server Azure. Gambar yang dihasilkan secara otomatis dihapus setelah 24 jam secara default, tetapi Anda dapat memicu penghapusan sebelumnya jika Anda mau.
DELETE https://{your-resource-name}.openai.azure.com/openai/operations/images/{operation-id}?api-version={api-version}
Parameter jalur
Parameter | Tipe | Wajib diisi? | Deskripsi |
---|---|---|---|
your-resource-name |
string | Wajib | Nama Sumber Daya Azure OpenAI Anda. |
operation-id |
string | Wajib | GUID yang mengidentifikasi permintaan pembuatan gambar asli. |
Versi yang didukung
2023-06-01-preview
Spesifikasi Swagger
Contoh permintaan
curl -X DELETE "https://{your-resource-name}.openai.azure.com/openai/operations/images/{operation-id}?api-version=2023-06-01-preview"
-H "Content-Type: application/json"
-H "Api-Key: {api key}"
Respons
Operasi mengembalikan 204
kode status jika berhasil. API ini hanya berhasil jika operasi dalam status akhir (bukan running
).
Ucapan ke Teks
Anda dapat menggunakan model Whisper di Azure OpenAI Service untuk transkripsi ucapan ke teks atau terjemahan ucapan. Untuk informasi selengkapnya tentang menggunakan model Whisper, lihat mulai cepat dan gambaran umum model Whisper.
Meminta transkripsi ucapan ke teks
Mentranskripsikan file audio.
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/audio/transcriptions?api-version={api-version}
Parameter jalur
Parameter | Tipe | Wajib diisi? | Deskripsi |
---|---|---|---|
your-resource-name |
string | Wajib | Nama Sumber Daya Azure OpenAI Anda. |
deployment-id |
string | Wajib | Nama penyebaran model Whisper Anda seperti MyWhisperDeployment. Anda diharuskan untuk terlebih dahulu menyebarkan model Whisper sebelum dapat melakukan panggilan. |
api-version |
string | Wajib | Versi API yang digunakan untuk operasi ini. Nilai ini mengikuti format YYYY-MM-DD. |
Versi yang didukung
2023-09-01-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2023-10-01-preview
Spesifikasi Swagger2023-12-01-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2024-02-15-preview
Spesifikasi Swagger2024-03-01-preview
Spesifikasi Swagger2024-04-01-preview
Spesifikasi Swagger2024-02-01
Spesifikasi Swagger
Badan permintaan
Parameter | Tipe | Wajib diisi? | Default | Deskripsi |
---|---|---|---|---|
file |
file | Ya | T/A | Objek file audio (bukan nama file) untuk ditranskripsikan, dalam salah satu format berikut: flac , , , mp4 mp3 , mpga mpeg , , m4a , ogg , wav , atau webm .Batas ukuran file untuk model Whisper di Azure OpenAI Service adalah 25 MB. Jika Anda perlu mentranskripsikan file yang lebih besar dari 25 MB, pecahkan menjadi potongan. Atau Anda dapat menggunakan API transkripsi batch Ucapan Azure AI. Anda bisa mendapatkan sampel file audio dari repositori Azure AI Speech SDK di GitHub. |
language |
string | No | Null | Bahasa audio input seperti fr . Menyediakan bahasa input dalam format ISO-639-1 meningkatkan akurasi dan latensi.Untuk daftar bahasa yang didukung, lihat dokumentasi OpenAI. |
prompt |
string | No | Null | Teks opsional untuk memandu gaya model atau melanjutkan segmen audio sebelumnya. Perintah harus cocok dengan bahasa audio. Untuk informasi selengkapnya tentang perintah termasuk contoh kasus penggunaan, lihat dokumentasi OpenAI. |
response_format |
string | No | json | Format output transkrip, dalam salah satu opsi ini: json, teks, srt, verbose_json, atau vtt. Nilai defaultnya adalah json. |
temperature |
number | No | 0 | Suhu pengambilan sampel, antara 0 dan 1. Nilai yang lebih tinggi seperti 0,8 membuat output lebih acak, sementara nilai yang lebih rendah seperti 0,2 membuatnya lebih fokus dan deterministik. Jika diatur ke 0, model menggunakan probabilitas log untuk secara otomatis meningkatkan suhu hingga ambang batas tertentu terpukul. Nilai default adalah 0. |
timestamp_granularities |
array | Opsional | segmen | Granularitas tanda waktu untuk mengisi transkripsi ini. response_format harus diatur verbose_json untuk menggunakan granularitas tanda waktu. Salah satu atau kedua opsi ini didukung: word , atau segment . Catatan: Tidak ada latensi tambahan untuk tanda waktu segmen, tetapi menghasilkan tanda waktu kata menimbulkan latensi tambahan. [Ditambahkan pada 2024-04-01-prevew] |
Contoh permintaan
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/audio/transcriptions?api-version=2023-09-01-preview \
-H "Content-Type: multipart/form-data" \
-H "api-key: $YOUR_API_KEY" \
-F file="@./YOUR_AUDIO_FILE_NAME.wav" \
-F "language=en" \
-F "prompt=The transcript contains zoology terms and geographical locations." \
-F "temperature=0" \
-F "response_format=srt"
Contoh tanggapan
1
00:00:00,960 --> 00:00:07,680
The ocelot, Lepardus paradalis, is a small wild cat native to the southwestern United States,
2
00:00:07,680 --> 00:00:13,520
Mexico, and Central and South America. This medium-sized cat is characterized by
3
00:00:13,520 --> 00:00:18,960
solid black spots and streaks on its coat, round ears, and white neck and undersides.
4
00:00:19,760 --> 00:00:27,840
It weighs between 8 and 15.5 kilograms, 18 and 34 pounds, and reaches 40 to 50 centimeters
5
00:00:27,840 --> 00:00:34,560
16 to 20 inches at the shoulders. It was first described by Carl Linnaeus in 1758.
6
00:00:35,360 --> 00:00:42,880
Two subspecies are recognized, L. p. paradalis and L. p. mitis. Typically active during twilight
7
00:00:42,880 --> 00:00:48,480
and at night, the ocelot tends to be solitary and territorial. It is efficient at climbing,
8
00:00:48,480 --> 00:00:54,480
leaping, and swimming. It preys on small terrestrial mammals such as armadillo, opossum,
9
00:00:54,480 --> 00:00:56,480
and lagomorphs.
Meminta terjemahan ucapan ke teks
Menerjemahkan file audio dari bahasa lain ke dalam bahasa Inggris. Untuk daftar bahasa yang didukung, lihat dokumentasi OpenAI.
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/audio/translations?api-version={api-version}
Parameter jalur
Parameter | Tipe | Wajib diisi? | Deskripsi |
---|---|---|---|
your-resource-name |
string | Wajib | Nama Sumber Daya Azure OpenAI Anda. |
deployment-id |
string | Wajib | Nama penyebaran model Whisper Anda seperti MyWhisperDeployment. Anda diharuskan untuk terlebih dahulu menyebarkan model Whisper sebelum dapat melakukan panggilan. |
api-version |
string | Wajib | Versi API yang digunakan untuk operasi ini. Nilai ini mengikuti format YYYY-MM-DD. |
Versi yang didukung
2023-09-01-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2023-10-01-preview
Spesifikasi Swagger2023-12-01-preview
(pensiun 1 Juli 2024) Spesifikasi Swagger2024-02-15-preview
Spesifikasi Swagger2024-03-01-preview
Spesifikasi Swagger2024-02-01
Spesifikasi Swagger
Badan permintaan
Parameter | Tipe | Wajib diisi? | Default | Deskripsi |
---|---|---|---|---|
file |
file | Ya | T/A | Objek file audio (bukan nama file) untuk ditranskripsikan, dalam salah satu format ini: flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, atau webm. Batas ukuran file untuk model Azure OpenAI Whisper adalah 25 MB. Jika Anda perlu mentranskripsikan file yang lebih besar dari 25 MB, pecahkan menjadi potongan. Anda dapat mengunduh file audio sampel dari repositori Azure AI Speech SDK di GitHub. |
prompt |
string | No | Null | Teks opsional untuk memandu gaya model atau melanjutkan segmen audio sebelumnya. Perintah harus cocok dengan bahasa audio. Untuk informasi selengkapnya tentang perintah termasuk contoh kasus penggunaan, lihat dokumentasi OpenAI. |
response_format |
string | No | json | Format output transkrip, dalam salah satu opsi ini: json, teks, srt, verbose_json, atau vtt. Nilai defaultnya adalah json. |
temperature |
number | No | 0 | Suhu pengambilan sampel, antara 0 dan 1. Nilai yang lebih tinggi seperti 0,8 membuat output lebih acak, sementara nilai yang lebih rendah seperti 0,2 membuatnya lebih fokus dan deterministik. Jika diatur ke 0, model menggunakan probabilitas log untuk secara otomatis meningkatkan suhu hingga ambang batas tertentu terpukul. Nilai default adalah 0. |
Contoh permintaan
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/audio/translations?api-version=2023-09-01-preview \
-H "Content-Type: multipart/form-data" \
-H "api-key: $YOUR_API_KEY" \
-F file="@./YOUR_AUDIO_FILE_NAME.wav" \
-F "temperature=0" \
-F "response_format=json"
Contoh tanggapan
{
"text": "Hello, my name is Wolfgang and I come from Germany. Where are you heading today?"
}
Teks ke ucapan
Mensintesis teks ke ucapan.
POST https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/audio/speech?api-version={api-version}
Parameter jalur
Parameter | Tipe | Wajib diisi? | Deskripsi |
---|---|---|---|
your-resource-name |
string | Wajib | Nama Sumber Daya Azure OpenAI Anda. |
deployment-id |
string | Wajib | Nama penyebaran model teks ke ucapan Anda seperti MyTextToSpeechDeployment. Anda diharuskan untuk terlebih dahulu menyebarkan model teks ke ucapan (seperti tts-1 atau tts-1-hd ) sebelum dapat melakukan panggilan. |
api-version |
string | Wajib | Versi API yang digunakan untuk operasi ini. Nilai ini mengikuti format YYYY-MM-DD. |
Versi yang didukung
2024-02-15-preview
Spesifikasi Swagger2024-03-01-preview
Spesifikasi Swagger2024-04-01-preview
Spesifikasi Swagger
Badan permintaan
Parameter | Tipe | Wajib diisi? | Default | Deskripsi |
---|---|---|---|---|
model |
string | Ya | T/A | Salah satu model TTS yang tersedia: tts-1 atau tts-1-hd |
input |
string | Ya | T/A | Teks yang akan dihasilkan audionya. Panjang maksimum adalah 4096 karakter. Tentukan teks input dalam bahasa pilihan Anda.1 |
voice |
string | Ya | T/A | Suara yang akan digunakan saat menghasilkan audio. Suara yang didukung adalah alloy , , fable echo , onyx , nova , dan shimmer . Pratinjau suara tersedia di panduan teks ke ucapan OpenAI. |
1 Model teks ke ucapan umumnya mendukung bahasa yang sama dengan model Whisper. Untuk daftar bahasa yang didukung, lihat dokumentasi OpenAI.
Contoh permintaan
curl https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/audio/speech?api-version=2024-02-15-preview \
-H "api-key: $YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "tts-hd",
"input": "I'm excited to try text to speech.",
"voice": "alloy"
}' --output speech.mp3
Contoh tanggapan
Ucapan dikembalikan sebagai file audio dari permintaan sebelumnya.
API Manajemen
Azure OpenAI disebarkan sebagai bagian dari layanan Azure AI. Semua layanan Azure AI mengandalkan serangkaian API manajemen yang sama untuk operasi pembuatan, pembaruan, dan penghapusan. API manajemen juga digunakan untuk menyebarkan model dalam sumber daya Azure OpenAI.
Dokumentasi referensi API Manajemen
Langkah berikutnya
Pelajari tentang Model, dan penyempurnaan dengan REST API. Pelajari selengkapnya tentang model yang mendasari yang mendukung Azure OpenAI.