Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Tutorial ini menunjukkan cara menghubungkan aplikasi Azure Kubernetes Service (AKS) ke Azure OpenAI menggunakan Konektor Layanan dengan autentikasi identitas beban kerja. Anda akan membuat koneksi bebas kredensial dengan menyebarkan contoh aplikasi Python yang berkomunikasi dengan Azure OpenAI.
Anda akan menyelesaikan tugas berikut:
- Membuat kluster AKS dan sumber daya Azure OpenAI dengan model GPT-4
- Mengonfigurasi Konektor Layanan untuk membuat koneksi dengan identitas beban kerja
- Mengkloning aplikasi sampel
- Membangun dan mendorong gambar kontainer ke Azure Container Registry
- Menyebarkan aplikasi ke AKS dan memverifikasi koneksi
- Membersihkan sumber daya
Prasyarat
- Akun Azure dengan langganan aktif. Buat akun secara gratis.
-
Gunakan lingkungan Bash di Azure Cloud Shell. Untuk informasi selengkapnya, lihat Mulai menggunakan Azure Cloud Shell.
Jika Anda lebih suka menjalankan perintah referensi CLI secara lokal, instal Azure CLI. Jika Anda menjalankan Windows atau macOS, pertimbangkan untuk menjalankan Azure CLI dalam kontainer Docker. Untuk informasi lebih lanjut, lihat Cara menjalankan Azure CLI di kontainer Docker.
Jika Anda menggunakan instalasi lokal, masuk ke Azure CLI dengan menggunakan perintah login az. Untuk menyelesaikan proses autentikasi, ikuti langkah-langkah yang ditampilkan di terminal Anda. Untuk opsi masuk lainnya, lihat Mengautentikasi ke Azure menggunakan Azure CLI.
Saat Anda diminta, instal ekstensi Azure CLI pada penggunaan pertama. Untuk informasi selengkapnya tentang ekstensi, lihat Menggunakan dan mengelola ekstensi dengan Azure CLI.
Jalankan versi az untuk menemukan versi dan pustaka dependen yang diinstal. Untuk meningkatkan ke versi terbaru, jalankan peningkatan az.
- Docker dan kubectl untuk mengelola gambar kontainer dan sumber daya Kubernetes.
- Pemahaman dasar tentang kontainer dan AKS. Mulai dari menyiapkan aplikasi untuk AKS.
- Akses izin untuk membuat sumber daya Azure OpenAI dan menyebarkan model.
Membuat sumber daya Azure OpenAI dan AKS
Anda memulai tutorial ini dengan membuat beberapa sumber daya Azure.
Buat grup sumber daya untuk tutorial ini.
az group create \ --name MyResourceGroup \ --location eastusBuat kluster AKS dengan perintah berikut, atau dengan merujuk ke mulai cepat AKS. Dalam tutorial ini, kami membuat koneksi layanan dan definisi pod dan menyebarkan aplikasi sampel ke kluster ini.
az aks create \ --resource-group MyResourceGroup \ --name MyAKSCluster \ --enable-managed-identity \ --node-count 1 \ --generate-ssh-keysSambungkan ke kluster menggunakan perintah az aks get-credentials .
az aks get-credentials \ --resource-group MyResourceGroup \ --name MyAKSClusterBuat sumber daya Azure OpenAI menggunakan perintah az cognitiveservices account create . Secara opsional lihat tutorial ini untuk instruksi lebih lanjut. Azure OpenAI adalah layanan target yang akan disambungkan oleh kluster AKS.
az cognitiveservices account create \ --resource-group MyResourceGroup \ --name MyOpenAI \ --location eastus \ --kind OpenAI \ --sku s0 \ --custom-domain myopenai \ --subscription <SubscriptionID>Sebarkan model dengan perintah az cognitiveservices deployment create . Model digunakan dalam aplikasi sampel untuk menguji koneksi.
az cognitiveservices account deployment create \ --resource-group MyResourceGroup \ --name MyOpenAI \ --deployment-name MyModel \ --model-name gpt-4 \ --model-version 0613 \ --model-format OpenAI \ --sku-name "Standard" \ --capacity 1Buat Azure Container Registry (ACR) untuk menyimpan aplikasi sampel kontainer. Gunakan perintah az acr create , atau lihat tutorial ini.
az acr create \ --resource-group MyResourceGroup \ --name myregistry \ --sku StandardAktifkan penarikan anonim menggunakan perintah az acr update sehingga kluster AKS dapat menggunakan gambar dalam registri.
az acr update \ --resource-group MyResourceGroup \ --name myregistry \ --anonymous-pull-enabledBuat identitas terkelola yang ditetapkan pengguna dengan perintah az identity create , atau dengan merujuk ke tutorial ini. Saat koneksi dibuat, identitas terkelola yang ditetapkan pengguna digunakan untuk mengaktifkan identitas beban kerja untuk beban kerja AKS.
az identity create \ --resource-group MyResourceGroup \ --name MyIdentity
Membuat koneksi layanan dari AKS ke Azure OpenAI
Buat koneksi layanan antara kluster AKS dan Azure OpenAI di portal Microsoft Azure atau Azure CLI.
Lihat mulai cepat koneksi layanan AKS untuk instruksi membuat koneksi baru dan isi pengaturan yang mengacu pada contoh dalam tabel berikut. Biarkan semua pengaturan lain dengan nilai defaultnya.
Tab Dasar:
Pengaturan Contoh nilai Deskripsi Namespace Kubernetes Default Namespace Layanan Kubernetes. Jenis layanan Layanan OpenAI Jenis layanan target. Nama koneksi openai_conn Gunakan nama koneksi yang disediakan oleh Konektor Layanan atau pilih nama koneksi Anda sendiri. Langganan Langganan Saya Langganan Azure yang berisi sumber daya Azure OpenAI Anda. OpenAI MyOpenAI Sumber daya Azure OpenAI target yang ingin Anda sambungkan. Jenis klien Python Bahasa pemrograman atau kerangka kerja untuk konfigurasi koneksi. Tab Autentikasi:
| Pengaturan Autentikasi | Contoh nilai | Deskripsi |
|---|---|---|
| Jenis autentikasi | Identitas Beban Kerja | Metode autentikasi untuk menyambungkan aplikasi ke Azure OpenAI. Identitas beban kerja direkomendasikan untuk keamanan yang ditingkatkan. Metode alternatif termasuk string koneksi dan perwakilan layanan, dan memerlukan pertimbangan manajemen kredensial. |
| Langganan | Langganan Saya | Langganan yang berisi identitas terkelola yang ditetapkan pengguna. |
| Identitas terkelola yang ditetapkan pengguna | myidentity | Identitas terkelola yang ditetapkan pengguna yang memungkinkan autentikasi identitas beban kerja untuk kluster AKS. |
Setelah koneksi dibuat, Anda bisa menampilkan detailnya di panel Konektor Layanan .
Aplikasi sampel Clone Python
Klon sampel repositori:
git clone https://github.com/Azure-Samples/serviceconnector-aks-samples.gitBuka folder sampel repositori untuk Azure OpenAI:
cd serviceconnector-aks-samples/azure-openai-workload-identity<MyModel>Ganti tempat penampung dalamapp.pyfile dengan nama model yang kami sebarkan.
Membangun dan mendorong gambar kontainer ke Azure Container Registry
Buat dan dorong gambar ke registri kontainer Anda menggunakan perintah Azure CLI az acr build .
az acr build --registry myregistry --image sc-demo-openai-identity:latest ./Lihat gambar di registri kontainer Anda menggunakan perintah az acr repository list .
az acr repository list --name myregistry --output table
Menyebarkan dan menguji AKS ke koneksi Azure OpenAI
Ganti tempat penampung dalam
pod.yamlfile diazure-openai-workload-identityfolder.- Ganti
<YourContainerImage>dengan nama gambar yang Anda buat sebelumnya. Contoh:<myregistry>.azurecr.io/<sc-demo-openai-identity>:<latest>. - Ganti
<ServiceAccountCreatedByServiceConnector>dengan nama akun layanan. Ini dapat ditemukan di portal Microsoft Azure, di panel Konektor Layanan . - Ganti
<SecretCreatedByServiceConnector>dengan nama rahasia. Ini dapat ditemukan di portal Microsoft Azure, di panel Konektor Layanan .
- Ganti
Sebarkan pod ke kluster Anda dengan
kubectl applyperintah , yang membuat pod bernamasc-demo-openai-identitydi namespace default kluster AKS Anda. Instalkubectlsecara lokal menggunakan perintah az aks install-cli jika tidak diinstal.kubectl apply -f pod.yamlPeriksa apakah penyebaran berhasil dengan melihat pod dengan
kubectl.kubectl get pod/sc-demo-openai-identityPeriksa apakah koneksi dibuat dengan melihat log dengan
kubectl.kubectl logs pod/sc-demo-openai-identity
Membersihkan sumber daya
Jika Anda tidak lagi memerlukan sumber daya yang dibuat dalam tutorial ini, bersihkan dengan menghapus grup sumber daya.
az group delete \
--resource-group MyResourceGroup