Setelah menyempurnakan model, Anda mungkin ingin menguji kualitasnya melalui API Penyelesaian Obrolan atau layanan Evaluasi .
Penyebaran Tingkat Pengembang memungkinkan Anda untuk menyebarkan model baru Anda tanpa biaya hosting per jam yang dikeluarkan oleh penyebaran Standar atau Global. Biaya hanya dikenakan per token. Lihat halaman harga untuk harga terkini up-to-tanggal.
Penting
Tingkat Pengembang tidak menawarkan ketersediaan SLA dan tidak ada jaminan residensi data . Jika Anda memerlukan SLA atau residensi data, pilih jenis penyebaran alternatif untuk menguji model Anda.
Penyebaran Tingkat Pengembang memiliki masa pakai tetap 24 jam. Pelajari selengkapnya di bawah ini tentang siklus hidup penyebaran.
Distribusikan model yang telah disempurnakan Anda
Untuk menyebarkan kandidat model Anda, pilih model yang disempurnakan untuk disebarkan, lalu pilih Sebarkan.
Kotak dialog Penerapan model terbuka. Dalam kotak dialog, masukkan Nama penyebaran Anda lalu pilih Pengembang dari menu drop-down jenis penyebaran. Pilih Buat untuk memulai penyebaran model kustom Anda.
Anda dapat memantau kemajuan penyebaran baru Anda di panel Penyebaran di portal Azure AI Foundry.
import json
import os
import requests
token = os.getenv("<TOKEN>")
subscription = "<YOUR_SUBSCRIPTION_ID>"
resource_group = "<YOUR_RESOURCE_GROUP_NAME>"
resource_name = "<YOUR_AZURE_OPENAI_RESOURCE_NAME>"
model_deployment_name = "gpt41-mini-candidate-01" # custom deployment name that you will use to reference the model when making inference calls.
deploy_params = {'api-version': "2024-10-21"}
deploy_headers = {'Authorization': 'Bearer {}'.format(token), 'Content-Type': 'application/json'}
deploy_data = {
"sku": {"name": "developer", "capacity": 50},
"properties": {
"model": {
"format": "OpenAI",
"name": <"fine_tuned_model">, #retrieve this value from the previous call, it will look like gpt41-mini-candidate-01.ft-b044a9d3cf9c4228b5d393567f693b83
"version": "1"
}
}
}
deploy_data = json.dumps(deploy_data)
request_url = f'https://management.azure.com/subscriptions/{subscription}/resourceGroups/{resource_group}/providers/Microsoft.CognitiveServices/accounts/{resource_name}/deployments/{model_deployment_name}'
print('Creating a new deployment...')
r = requests.put(request_url, params=deploy_params, headers=deploy_headers, data=deploy_data)
print(r)
print(r.reason)
print(r.json())
variabel |
Definisi |
token |
Ada beberapa cara untuk menghasilkan token otorisasi. Metode term mudah untuk pengujian awal adalah meluncurkan Cloud Shell dari portal Azure. Kemudian jalankan az account get-access-token . Anda dapat menggunakan token ini sebagai token otorisasi sementara untuk pengujian API. Sebaiknya simpan ini dalam variabel lingkungan baru. |
langganan |
ID langganan untuk sumber daya Azure OpenAI terkait. |
grup sumber daya |
Nama grup sumber daya untuk sumber daya Azure OpenAI Anda. |
nama_sumber |
Nama sumber daya Azure OpenAI. |
nama_penerapan_model |
Nama kustom untuk penerapan model baru yang sudah disesuaikan. Ini adalah nama yang akan direferensikan dalam kode Anda saat melakukan panggilan penyelesaian obrolan. |
model yang disesuaikan |
Ambil nilai ini dari hasil pekerjaan penyempurnaan Anda pada langkah sebelumnya. Ini akan terlihat seperti gpt41-mini-candidate-01.ft-b044a9d3cf9c4228b5d393567f693b83 . Anda harus menambahkan nilai tersebut ke json deploy_data. Atau Anda juga dapat menggunakan checkpoint, dengan memasukkan ID checkpoint yang akan muncul dalam format ftchkpt-e559c011ecc04fc68eaa339d8227d02d |
Contoh berikut menunjukkan cara menggunakan REST API untuk membuat penyebaran model untuk model yang disesuaikan. REST API menghasilkan nama untuk penerapan model yang disesuaikan.
curl -X POST "https://management.azure.com/subscriptions/<SUBSCRIPTION>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.CognitiveServices/accounts/<RESOURCE_NAME>/deployments/<MODEL_DEPLOYMENT_NAME>api-version=2024-10-21" \
-H "Authorization: Bearer <TOKEN>" \
-H "Content-Type: application/json" \
-d '{
"sku": {"name": "developer", "capacity": 50},
"properties": {
"model": {
"format": "OpenAI",
"name": "<FINE_TUNED_MODEL>",
"version": "1"
}
}
}'
variabel |
Definisi |
token |
Ada beberapa cara untuk menghasilkan token otorisasi. Metode term mudah untuk pengujian awal adalah meluncurkan Cloud Shell dari portal Azure. Kemudian jalankan az account get-access-token . Anda dapat menggunakan token ini sebagai token otorisasi sementara untuk pengujian API. Sebaiknya simpan ini dalam variabel lingkungan baru. |
langganan |
ID langganan untuk sumber daya Azure OpenAI terkait. |
grup sumber daya |
Nama grup sumber daya untuk sumber daya Azure OpenAI Anda. |
nama_sumber |
Nama sumber daya Azure OpenAI. |
nama_penerapan_model |
Nama kustom untuk penerapan model baru yang sudah disesuaikan. Ini adalah nama yang akan direferensikan dalam kode Anda saat melakukan panggilan penyelesaian obrolan. |
model yang disesuaikan |
Ambil nilai ini dari hasil pekerjaan penyempurnaan Anda pada langkah sebelumnya. Ini akan terlihat seperti gpt-35-turbo-0125.ft-b044a9d3cf9c4228b5d393567f693b83 . Anda harus menambahkan nilai tersebut ke json deploy_data. Atau Anda juga dapat menggunakan checkpoint, dengan memasukkan ID checkpoint yang akan muncul dalam format ftchkpt-e559c011ecc04fc68eaa339d8227d02d |
Menyebarkan model dengan Azure CLI
Contoh berikut menunjukkan cara menggunakan Azure CLI untuk menyebarkan model yang disesuaikan. Dengan Azure CLI, Anda harus menentukan nama untuk penyebaran model yang disesuaikan. Untuk informasi selengkapnya tentang cara menggunakan Azure CLI untuk menyebarkan model yang disesuaikan, lihat az cognitiveservices account deployment
.
Untuk menjalankan perintah Azure CLI ini di jendela terminal, Anda harus mengganti placeholder berikut dengan nilai yang sesuai untuk model yang telah disesuaikan:
Pengganti sementara |
Nilai |
<YOUR_AZURE_SUBSCRIPTION> |
Nama atau ID langganan Azure Anda. |
<YOUR_RESOURCE_GROUP> |
Nama grup sumber daya Azure Anda. |
<YOUR_RESOURCE_NAME> |
Nama Sumber Daya Azure OpenAI Anda. |
<NAMA_PENYEBARAN_ANDA> |
Nama yang ingin Anda gunakan untuk penyebaran model Anda. |
<YOUR_FINE_TUNED_MODEL_ID> |
Nama model kustom Anda. |
az cognitiveservices account deployment create
--resource-group <YOUR_RESOURCE_GROUP>
--name <YOUR_RESOURCE_NAME>
--deployment-name <YOUR_DEPLOYMENT_NAME>
--model-name <YOUR_FINE_TUNED_MODEL_ID>
--model-version "1"
--model-format OpenAI
--sku-capacity "50"
--sku-name "Developer"
Gunakan model yang telah diterapkan dan disesuaikan
Setelah model kustom Anda disebarkan, Anda dapat menggunakannya seperti model lain yang disebarkan. Anda dapat menggunakan Playgrounds dalam portal Azure AI Foundry untuk bereksperimen dengan penyebaran baru Anda. Anda dapat terus menggunakan parameter yang sama dengan model kustom Anda, seperti temperature
dan max_tokens
, sebagaimana yang dapat Anda lakukan dengan model lain yang disebarkan.
Anda juga dapat menggunakan layanan Evaluasi untuk membuat dan menjalankan evaluasi model terhadap kandidat model yang Anda sebarkan serta versi model lainnya.
import os
from openai import AzureOpenAI
client = AzureOpenAI(
azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT"),
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
api_version="2024-02-01"
)
response = client.chat.completions.create(
model="gpt41-mini-candidate-01", # model = "Custom deployment name you chose for your fine-tuning model"
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?"}
]
)
print(response.choices[0].message.content)
curl $AZURE_OPENAI_ENDPOINT/openai/deployments/<deployment_name>/chat/completions?api-version=2024-10-21 \
-H "Content-Type: application/json" \
-H "api-key: $AZURE_OPENAI_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?"}]}'
Merapikan penerapan Anda
Penyebaran pengembang akan secara otomatis terhapus, terlepas dari aktivitas. Setiap penyebaran memiliki masa pakai tetap 24 jam setelah itu dapat dihapus. Penghapusan penyebaran tidak menghapus atau memengaruhi model yang disesuaikan yang mendasar dan model yang disesuaikan dapat disebarkan ulang kapan saja.
Untuk menghapus penyebaran secara manual, Anda dapat menggunakan portal Azure AI Foundry atau menggunakan Azure CLI.
Untuk menggunakan Deployments - Delete REST API , kirim HTTP DELETE
ke sumber daya penyebaran. Seperti halnya membuat penyebaran, Anda harus menyertakan parameter berikut:
- ID langganan Azure
- Nama grup sumber daya Azure
- Nama sumber daya Azure OpenAI
- Nama penyebaran yang akan dihapus
Di bawah ini adalah contoh REST API untuk menghapus penyebaran:
curl -X DELETE "https://management.azure.com/subscriptions/<SUBSCRIPTION>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.CognitiveServices/accounts/<RESOURCE_NAME>/deployments/<MODEL_DEPLOYMENT_NAME>api-version=2024-10-21" \
-H "Authorization: Bearer <TOKEN>"
Langkah selanjutnya