Memprovisikan dan menerbitkan bot

BERLAKU UNTUK: SDK v4

Artikel ini menjelaskan cara menggunakan Azure CLI untuk membuat sumber daya untuk bot Anda, menyiapkan bot Anda untuk penyebaran, dan menyebarkan bot Anda ke Azure.

Artikel ini mengasumsikan bahwa Anda memiliki bot yang siap disebarkan. Untuk informasi tentang cara membuat bot echo sederhana, lihat Membuat bot dengan Bot Framework SDK. Anda juga dapat menggunakan salah satu sampel yang disediakan di repositori Sampel Kerangka Kerja Bot.

Tip

Artikel ini membuat sumber daya Azure Bot untuk bot Anda. Bot yang ada yang menggunakan sumber daya Bot Aplikasi Web atau sumber daya Pendaftaran Saluran Bot akan terus berfungsi, tetapi Anda tidak dapat membuat bot baru yang menggunakan jenis sumber daya ini.

Catatan

Bot Framework JavaScript, C#, dan Python SDK akan terus didukung, namun, Java SDK dihentikan dengan dukungan jangka panjang akhir yang berakhir pada November 2023.

Bot yang ada yang dibangun dengan Java SDK akan terus berfungsi.

Untuk pembuatan bot baru, pertimbangkan untuk menggunakan Power Virtual Agents dan baca tentang memilih solusi chatbot yang tepat.

Untuk informasi selengkapnya, lihat Masa depan pembuatan bot.

Prasyarat

  • Untuk bot Java, instal Maven.

  • Proses ini menggunakan dua templat Azure Resource Manager (templat ARM) untuk membuat sumber daya untuk bot Anda.

    Jika Anda tidak memiliki templat saat ini, buat salinan di proyek bot Anda dari folder deploymentTemplates : C#, JavaScript, Python, atau Java.

Untuk menggunakan Azure CLI untuk memprovisikan dan menerbitkan bot, Anda memerlukan:

  • Akun Azure yang memiliki langganan aktif. Buat akun gratis.

  • Penginstalan Azure CLI.

    Untuk bahasa pemrograman Anda, gunakan versi Azure CLI berikut. Beberapa langkah tidak akan berfungsi dengan versi CLI yang lebih baru.

    Bahasa Versi CLI
    C# dan JavaScript 2.39.0 atau yang lebih baru
    Python 2.55.0 atau yang lebih baru
    Java 2.29.2

Catatan

Jika bot Anda menggunakan sumber daya tambahan, seperti layanan penyimpanan atau layanan bahasa, bot tersebut perlu disebarkan secara terpisah.

Merencanakan penyebaran Anda

Sebelum Anda mulai, buat keputusan ini.

Keputusan Catatan
Bagaimana Anda akan mengelola identitas sumber daya bot Anda di Azure Anda dapat menggunakan identitas terkelola yang ditetapkan pengguna, pendaftaran aplikasi penyewa tunggal, atau pendaftaran aplikasi penyewa mutli. Untuk informasi selengkapnya, lihat Membuat sumber daya identitas.
Di grup sumber daya atau grup sumber daya, Anda akan membuat sumber daya bot Hingga Anda terbiasa dengan proses ini, sebaiknya gunakan satu grup sumber daya. Untuk informasi selengkapnya, lihat Mengelola sumber daya Azure.
Apakah bot Anda akan menjadi regional atau global Untuk informasi tentang bot regional, lihat Regionalisasi di Azure AI Bot Service.

Identitas bot Anda dapat dikelola di Azure dengan beberapa cara berbeda.

  • Sebagai identitas terkelola yang ditetapkan pengguna, sehingga Anda tidak perlu mengelola kredensial bot sendiri.
  • Sebagai aplikasi penyewa tunggal.
  • Sebagai aplikasi multi-penyewa.

Dukungan untuk identitas terkelola yang ditetapkan pengguna dan jenis aplikasi penyewa tunggal ditambahkan ke Bot Framework SDK untuk C# dan JavaScript di versi 4.15.0. Jenis aplikasi ini tidak didukung dalam bahasa lain atau di Bot Framework Composer, Bot Framework Emulator, atau ngrok.

Jenis aplikasi Dukungan
Identitas terkelola yang ditetapkan pengguna Azure AI Bot Service dan SDK C# dan JavaScript
Penyewa tunggal Azure AI Bot Service dan SDK C#, JavaScript, dan Python
Multi-penyewa Azure AI Bot Service, semua bahasa Bot Framework SDK, Composer, Emulator, dan ngrok

Penting

Bot Python tidak dapat disebarkan ke grup sumber daya yang berisi layanan atau bot Windows. Namun, beberapa bot Python dapat disebarkan ke grup sumber daya yang sama. Buat layanan lain, seperti layanan Azure AI, dalam grup sumber daya yang berbeda.

Sumber daya Azure

Sebelum dapat menyebarkan bot, Anda membuat (atau memprovisikan) sumber daya Azure yang akan diperlukan. Untuk beberapa langkah, Anda dapat menggunakan sumber daya yang sudah ada atau membuat yang baru.

Anda mungkin merasa berguna untuk memutuskan sebelumnya pada nama sumber daya baru yang akan Anda buat dan nama sumber daya yang ada yang akan Anda gunakan. Bot Anda akan menggunakan jenis sumber daya ini.

  • Langganan Azure yang akan Anda gunakan untuk memprovisikan, menerbitkan, dan mengelola bot
  • Satu atau beberapa grup sumber daya
  • Identitas terkelola yang ditetapkan pengguna atau pendaftaran aplikasi ID Microsoft Entra
  • Sumber daya Paket App Service
  • Sumber daya App Service
  • Sumber daya Azure Bot

Informasi yang digunakan di seluruh sumber daya

Saat Anda membuat sumber daya di Azure, Azure akan menghasilkan atau meminta ID, kata sandi, dan informasi lain yang akan Anda butuhkan di langkah-langkah selanjutnya. Tabel berikut mencantumkan informasi di luar nama sumber daya yang perlu Anda rekam, di mana langkah tersebut dihasilkan, dan di mana langkah-langkah digunakan.

Perhatian

Banyak dari ID dan kata sandi ini adalah informasi sensitif. Untuk informasi tentang panduan keamanan umum, lihat Panduan keamanan Bot Framework.

Informasi Di mana dihasilkan atau ditemukan Tempat digunakan
ID Penyewa Masuk dan pilih langganan Menggunakan Azure CLI untuk membuat sumber daya App Service, Menggunakan Azure CLI untuk membuat atau memperbarui sumber daya Azure Bot, Memperbarui pengaturan konfigurasi proyek
Jenis aplikasi Membuat sumber daya identitas Menggunakan Azure CLI untuk membuat sumber daya App Service, Menggunakan Azure CLI untuk membuat atau memperbarui sumber daya Azure Bot, Memperbarui pengaturan konfigurasi proyek
ID klien Membuat sumber daya identitas Menggunakan Azure CLI untuk membuat sumber daya App Service, Menggunakan Azure CLI untuk membuat atau memperbarui sumber daya Azure Bot, Memperbarui pengaturan konfigurasi proyek
URL layanan aplikasi dasar Menggunakan Azure CLI untuk membuat sumber daya App Service Menggunakan Azure CLI untuk membuat atau memperbarui sumber daya Azure Bot
Nama App Service Menggunakan Azure CLI untuk membuat sumber daya App Service Menerbitkan bot Anda ke Azure

Masuk dan pilih langganan

  1. Buka jendela perintah.

  2. Masuk ke Azure.

    az login
    
    • Jendela browser akan terbuka. Selesaikan proses masuk.
    • Setelah berhasil, perintah menghasilkan daftar langganan yang dapat diakses akun Anda.
  3. Untuk mengatur langganan yang akan digunakan, jalankan:

    az account set --subscription "<subscription>"
    

    Untuk <langganan>, gunakan ID atau nama langganan untuk digunakan.

  4. Jika Anda akan membuat identitas terkelola yang ditetapkan pengguna atau bot penyewa tunggal, rekam tenantId untuk langganan tersebut. Anda akan menggunakan ID penyewa dalam langkah-langkah berikut.

Tip

Jika Anda perlu bekerja di cloud non-publik, lihat Manajemen cloud Azure dengan Azure CLI.

Membuat grup sumber daya

Jika Anda belum memiliki grup sumber daya yang sesuai, gunakan az group create perintah untuk membuat grup sumber daya baru yang Anda butuhkan.

az group create --name "<group>" --location "<region>"
Opsi Deskripsi
nama Nama grup sumber daya yang akan dibuat.
lokasi Wilayah tempat membuat grup sumber daya.

Untuk informasi selengkapnya, lihat Cara mengelola grup sumber daya Azure dengan Azure CLI.

Membuat sumber daya identitas

  1. Untuk membuat identitas terkelola yang ditetapkan pengguna, gunakan perintah az identity create. Setelah berhasil, perintah menghasilkan output JSON.

    az identity create --resource-group "<group>" --name "<identity>"
    
    Opsi Deskripsi
    grup sumber daya Nama grup sumber daya untuk membuat identitas.
    nama Nama sumber daya identitas yang akan dibuat.

    Untuk informasi selengkapnya, lihat referensi identitas az.

  2. Rekam nilai yang akan Anda perlukan di langkah selanjutnya.

    1. Nama grup sumber daya untuk sumber daya identitas
    2. Nama sumber daya identitas
    3. clientId dari output perintah

Membuat sumber daya dengan templat ARM

Buat App Service dan sumber daya Azure Bot untuk bot Anda. Kedua langkah menggunakan templat ARM dan az deployment group create perintah Azure CLI untuk membuat sumber daya atau sumber daya.

  1. Buat sumber daya App Service untuk bot Anda. Layanan Aplikasi dapat berada dalam Paket App Service baru atau yang sudah ada.

    Untuk langkah-langkah mendetail, lihat Menggunakan Azure CLI untuk membuat App Service.

  2. Buat sumber daya Azure Bot untuk bot Anda.

    Untuk langkah-langkah mendetail, lihat Menggunakan Azure CLI untuk membuat atau memperbarui Azure Bot.

Penting

Anda dapat melakukan langkah-langkah ini dalam salah satu urutan. Namun, jika Anda membuat Azure Bot terlebih dahulu, Anda harus memperbarui titik akhir olahpesannya setelah membuat sumber daya App Service.

Memperbarui pengaturan konfigurasi proyek

Informasi identitas bot

Ikuti langkah-langkah ini untuk menambahkan informasi identitas ke file konfigurasi bot Anda. File berbeda tergantung pada bahasa pemrograman yang Anda gunakan untuk membuat bot.

Penting

Versi Java dari Bot Framework SDK hanya mendukung bot multi-penyewa. Versi Python dari Bot Framework SDK mendukung bot multi-penyewa dan penyewa tunggal. Versi C# dan JavaScript mendukung ketiga jenis aplikasi untuk mengelola identitas bot.

Bahasa Nama file Catatan
C# appsettings.json Mendukung ketiga jenis aplikasi untuk mengelola identitas bot Anda.
JavaScript .env Mendukung ketiga jenis aplikasi untuk mengelola identitas bot Anda.
Java application.properties Hanya mendukung bot multi-penyewa.
Python config.py Mendukung bot multi-penyewa dan penyewa tunggal. Berikan properti sebagai argumen untuk os.environ.get panggilan metode.

Informasi identitas yang perlu Anda tambahkan tergantung pada jenis aplikasi bot. Berikan nilai berikut dalam file konfigurasi Anda.

Hanya tersedia untuk bot C# dan JavaScript.

Properti Nilai
MicrosoftAppType UserAssignedMSI
MicrosoftAppId ID klien identitas terkelola yang ditetapkan pengguna.
MicrosoftAppPassword Tidak berlaku. Biarkan ini kosong untuk bot identitas terkelola yang ditetapkan pengguna.
MicrosoftAppTenantId ID penyewa identitas terkelola yang ditetapkan pengguna.

Menyiapkan file proyek Anda

Siapkan file proyek Anda sebelum menyebarkan bot Anda.

  1. Beralih ke folder akar proyek Anda. Untuk C#, akar adalah folder yang berisi file .csproj.

  2. Lakukan pembangunan ulang yang bersih dalam mode rilis.

  3. Jika Anda belum melakukannya sebelumnya, jalankan az bot prepare-deploy untuk menambahkan file yang diperlukan ke akar direktori kode sumber lokal Anda. Perintah ini menghasilkan .deployment file di folder proyek bot Anda.

    az bot prepare-deploy --lang Csharp --code-dir "." --proj-file-path "<my-cs-proj>"
    
    Opsi Deskripsi
    lang Bahasa atau runtime bot. Gunakan Csharp.
    code-dir Direktori untuk menempatkan file penyebaran yang dihasilkan. Gunakan folder akar proyek Anda. Defaultnya adalah direktori saat ini.
    proj-file-path Jalur ke file .csproj untuk bot Anda, relatif terhadap code-dir opsi .
  4. Dalam folder akar proyek Anda, buat file zip yang berisi semua file dan subfolder.

Menerbitkan pekerjaan ke Azure

Pada titik ini, Anda siap untuk menyebarkan kode untuk bot Anda ke sumber daya App Service Anda.

Catatan

Langkah ini dapat memakan waktu beberapa menit untuk diselesaikan. Juga dapat memakan waktu beberapa menit lagi antara ketika penyebaran selesai dan ketika bot Anda tersedia untuk diuji.

Jalankan perintah berikut dari baris perintah untuk melakukan penyebaran menggunakan penyebaran push zip Kudu untuk layanan aplikasi Anda (aplikasi web).

az webapp deployment source config-zip --resource-group "<resource-group-name>" --name "<name-of-app-service>" --src "<project-zip-path>"
Opsi Deskripsi
grup sumber daya Nama grup sumber daya Azure yang berisi bot Anda.
nama Nama layanan aplikasi yang Anda gunakan sebelumnya.
src Jalur absolut atau relatif ke file proyek zip yang Anda buat.

Tip

Secara default, perintah ini disebarkan ke slot produksi. Gunakan parameter opsional --slot untuk menentukan slot yang berbeda. Untuk informasi selengkapnya, lihat referensi perintah az webapp deployment source config-zip .

Uji di Web Chat

  1. Di browser Anda, navigasikan ke portal Azure.
  2. Buka sumber daya bot Anda.
  3. Buka panel Uji di Web Chat .
  4. Berinteraksi dengan bot yang Anda sebarkan.

Untuk informasi selengkapnya tentang pendaftaran bot, lihat Mendaftarkan bot dengan Bot Service.

Membersihkan sumber daya

Jika Anda tidak akan menerbitkan aplikasi ini, hapus sumber daya terkait dengan langkah-langkah berikut:

  1. Di portal Azure, buka grup sumber daya untuk bot Anda.
    1. Pilih Hapus grup sumber daya untuk menghapus grup dan semua sumber daya yang ada di dalamnya.
    2. Masukkan nama grup sumber daya di panel konfirmasi, lalu pilih Hapus.
  2. Jika Anda membuat aplikasi penyewa tunggal atau multi-penyewa:
    1. Buka bilah ID Microsoft Entra.
    2. Temukan pendaftaran aplikasi yang Anda gunakan untuk bot Anda, dan hapus.

Sumber Daya Tambahan:

Lihat artikel ini untuk informasi selengkapnya tentang aplikasi dan sumber daya Azure yang digunakan untuk menghosting bot.

Subjek Artikel
Azure CLI Apa itu Azure CLI?
Manajemen langganan Azure Cara mengelola langganan Azure dengan Azure CLI
Wilayah Azure Wilayah dan zona ketersediaan
Grup sumber daya dan manajemen sumber daya Mengelola sumber daya Azure
Identitas Terkelola Apa identitas terkelola untuk sumber daya Azure?
Aplikasi penyewa tunggal dan multi-penyewa Penyewaan di MICROSOFT Entra ID
Aplikasi web App Service
Menghitung sumber daya untuk aplikasi web Paket App Service
Templat Azure Resource Manager (templat ARM) Apa itu templat ARM? dan Cara menggunakan templat penyebaran Azure Resource Manager (ARM) dengan Azure CLI
Tagihan Azure Manajemen penagihan dan biaya

File Kudu

Perintah penyebaran aplikasi web menggunakan Kudu untuk menyebarkan bot C#, JavaScript, dan Python. Saat menggunakan API penyebaran zip yang tidak dikonfigurasi untuk menyebarkan kode bot Anda, perilakunya adalah sebagai berikut:

Kudu mengasumsikan secara default bahwa penyebaran dari file .zip siap dijalankan dan tidak memerlukan langkah build tambahan selama penyebaran, seperti penginstalan npm atau dotnet restore/dotnet publish.

Penting untuk menyertakan kode bawaan Anda dengan semua dependensi yang diperlukan dalam file zip yang disebarkan; jika tidak, bot Anda tidak akan berfungsi seperti yang dimaksudkan. Untuk informasi selengkapnya, lihat dokumentasi Azure tentang cara Menyebarkan file ke App Service.

Langkah berikutnya