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.
Dengan menggunakan Copilot Studio, Anda dapat membuat agen yang berkomunikasi dengan pelanggan dalam berbagai bahasa. Anda dapat mengonfigurasi agen multibahasa untuk secara otomatis mendeteksi bahasa yang diinginkan berdasarkan pengaturan browser web pengguna agen dan merespons dalam bahasa yang sama, memberikan pengalaman yang lebih personal dan menarik bagi pelanggan.
Saat membuat agen, Anda menentukan bahasa utamanya.
Setelah menambahkan bahasa sekunder ke agen, Anda bertanggung jawab untuk menyediakan terjemahan untuk pesan dalam topik yang Anda buat. Untuk agen yang menggunakan orkestrasi generatif, pesan yang dihasilkan diterjemahkan secara otomatis.
Saat pelanggan memulai sesi dengan agen yang aktif, agen memilih salah satu bahasanya untuk menyesuaikan dengan bahasa yang ditentukan pada klien atau browser pelanggan. Jika agen tidak dapat mendeteksi bahasa, atau jika mendeteksi bahasa yang tidak didukungnya, agen akan default ke bahasa utamanya.
Anda dapat merancang agen untuk mengubah bahasa yang digunakannya selama percakapan (lihat Membuat agen beralih ke bahasa lain). Anda juga dapat menyiapkan agen yang menggunakan orkestrasi generatif untuk beralih bahasa secara dinamis untuk mengikuti bahasa yang digunakan dalam giliran percakapan saat ini (lihat Menyiapkan agen untuk pengalihan bahasa dinamis).
Untuk daftar bahasa yang didukung, lihat dukungan bahasa.
Note
Chatbots klasik hanya mendukung satu bahasa. Untuk informasi selengkapnya tentang mengonversi chatbot klasik ke agen, lihat Upgrade ke penulisan terpadu Copilot Studio.
Tambahkan bahasa ke agen
Buka halaman Pengaturan untuk agen, dan pilih Bahasa.
Pilih Tambahkan bahasa.
Di panel Tambahkan bahasa , pilih bahasa yang ingin Anda tambahkan ke agen, dan pilih Tambahkan.
Tinjau daftar bahasa, dan tutup halaman Pengaturan .
Mengelola pelokalan untuk agen multibahasa
Di Copilot Studio, Anda melakukan semua topik dan pengeditan konten dalam bahasa utama agen. Bagian ini menjelaskan cara mengunduh string dari agen Anda dan menerjemahkannya ke dalam bahasa sekunder agen Anda. Setelah mengunggah string yang diterjemahkan, Anda dapat mengalihkan bahasa di panel pengujian dan memverifikasi bahwa percakapan dalam bahasa sekunder juga mengalir seperti yang diharapkan.
Menyiapkan konten yang dilokalkan
Ketika Anda pertama kali mengunduh file pelokalan untuk bahasa sekunder, semua string berada dalam bahasa utama agen. Setelah Anda mengunduh file pelokalan, gunakan dengan proses pelokalan pilihan Anda.
Buka halaman Pengaturan untuk agen Anda, dan pilih Bahasa.
Pada halaman Bahasa , dalam daftar bahasa sekunder, pilih Unggah untuk bahasa yang ingin Anda perbarui.
Di panel Perbarui pelokalan , pilih format JSON atau ResX untuk mengunduh file pelokalan saat ini untuk bahasa tersebut.
Note
File yang diunduh berisi konten pelokalan terbaru untuk agen. Untuk mengunduh versi file pelokalan sebelumnya, buka solusi agen.
Buka file yang diunduh dan ganti string bahasa utama dengan teks terjemahan yang sesuai.
Kembali ke panel Perbarui pelokalan , pilih Telusuri, dan unggah file yang diterjemahkan.
Tutup panel Perbarui pelokalan dan halaman Pengaturan .
Memperbarui konten yang dilokalkan
Jika Anda mengubah string bahasa utama, Anda juga harus memperbarui konten dalam bahasa sekunder. Proses ini mencakup konten baru dan konten yang dimodifikasi. Perubahan bertahap tidak diterjemahkan secara otomatis. Anda harus mengunduh file JSON atau ResX bahasa sekunder, dan memperbarui string yang tidak diterjemahkan dengan menggunakan proses pelokalan pilihan Anda.
Skenario berikut adalah tipikal alur kerja untuk konten yang diterjemahkan. Anda sebelumnya menerjemahkan bahasa utama (en-US) ke dalam bahasa sekunder (fr-FR), dan menambahkan dan memodifikasi konten dalam bahasa utama. Saat Anda mengunduh file pelokalan untuk bahasa sekunder, string baru apa pun dalam bahasa utama (en-US) dan string yang sebelumnya diterjemahkan tetap dalam bahasa sekunder (fr-FR). Namun, string yang diterjemahkan sebelumnya yang teks aslinya dimodifikasi sejak terakhir kali Anda mengupload file pelokalan masih muncul saat terakhir diterjemahkan ke dalam bahasa sekunder. Karena ID string tidak berubah, string bahasa sekunder dan string bahasa utama mungkin menjadi tidak sinkron setelah perubahan terjadi dalam bahasa utama. Pastikan membandingkan file pelokalan baru dengan versi yang terakhir Anda upload—untuk mengidentifikasi perubahan string bahasa utama—adalah bagian dari proses pelokalan Anda.
Menyediakan konten dinamis dari Kartu Adaptif untuk lokalisasi.
Berkas lokalisasi tidak menyertakan string jenis campuran dari Kartu Adaptif. Jika Anda perlu melokalisasi Kartu Adaptif tempat string dapat menyertakan teks statis dan variabel (konten dinamis), gunakan solusi berikut. Prosedur ini menunjukkan kepada Anda cara menggunakan node Atur variabel teks untuk menyimpan string lengkap dengan teks statis dan variabel dalam variabel perantara. Kemudian Anda hanya mereferensikan variabel perantara tersebut di Kartu Adaptif Anda. Saat Anda mengunduh file pelokalan untuk agen Anda, nilai variabel perantara Anda, dengan teks statis dan referensi variabel, tersedia untuk pelokalan sebagai bagian dari tindakan setVariable.
Untuk membuat konten dinamis Kartu Adaptif dapat dilokalkan:
Tambahkan node Atur nilai variabel sebelum Kartu Adaptif Anda. Langkah ini membuat representasi YAML yang dapat Anda perbarui dengan menggunakan editor kode untuk mengonversi simpul menjadi simpul variabel teks Set . Anda tidak dapat membuat Atur node variabel teks langsung dari kanvas penulisan.
Di simpul Atur nilai variabel , buat variabel baru tetapi belum mengatur nilainya.
Buka editor kode untuk topik Anda.
Di editor kode, temukan bagian yang mewakili node nilai variabel Set Anda dan ganti
kind: SetVariabledengankind: SetTextVariable. Perubahan ini mengonversi simpul atur nilai variabel Anda ke simpul atur variabel teks.Tutup editor kode.
Pilih bidang bawah simpul Atur variabel teks dan masukkan string lengkap dengan teks statis dan variabel yang ingin Anda tampilkan di Kartu Adaptif Anda. Sisipkan variabel dengan cara yang sama seperti Anda menyisipkan variabel dalam pesan.
Perbarui Kartu Adaptif Anda dengan referensi ke variabel baru ini.
Simpan topik Anda. Anda sekarang dapat mengunduh file pelokalan dan memverifikasi bahwa file tersebut menyertakan konten dinamis untuk Kartu Adaptif Anda.
Pelajari selengkapnya di Melokalkan konten Kartu Adaptif.
Menguji agen multibahasa
Buka panel pengujian.
Pilih tiga titik (...) di bagian atas panel pengujian, dan pilih bahasa yang Anda inginkan. Panel pengujian memuat ulang dirinya sendiri, kali ini menggunakan bahasa yang dipilih. Kanvas penulisan tetap dalam bahasa utama dan Anda tidak dapat menyimpan perubahan yang Anda buat pada topik hingga Anda beralih kembali ke bahasa utama.
Untuk menguji agen, masukkan pesan dalam bahasa yang dipilih.
Anda juga dapat mengatur bahasa browser Anda ke salah satu bahasa agen Anda, dan membuka situs web demo bawaan. Situs web demo terbuka dalam bahasa yang ditentukan, dan agen mengobrol dalam bahasa tersebut.
Membuat agen beralih ke bahasa lain
Saat menulis, Anda dapat mengonfigurasi agen untuk beralih ke bahasa lain di tengah percakapan. Logika dapat berada dalam topik apa pun di agen. Namun, praktik terbaik adalah mengganti bahasa langsung setelah node Pertanyaan, yang memastikan bahwa semua pesan berikut hingga node Pertanyaan berikutnya ada dalam bahasa yang sama.
Untuk mengubah bahasa agen saat ini, atur User.Languagevariabel sistem ke salah satu bahasa sekunder agen Anda. Pilihan ini segera mengubah bahasa yang digunakan oleh agen Anda.
** Menyiapkan agen untuk peralihan bahasa dinamis
Note
Fitur ini hanya tersedia untuk agen dengan orkestrasi generatif diaktifkan.
Anda dapat mengonfigurasi agen untuk mendeteksi bahasa yang digunakan pelanggan dan merespons dalam bahasa yang sama. Dengan konfigurasi ini, agen dapat beralih bahasa beberapa kali selama satu percakapan. Skenario berikut menunjukkan cara menyiapkan agen untuk beralih antara bahasa Belanda dan Inggris. Anda dapat memperluasnya untuk kombinasi bahasa yang didukung agen Anda.
Peringatan
Metode pengalihan bahasa dinamis ini tidak kompatibel dengan deteksi bahasa berbasis browser. Setelah topik yang secara dinamis mendeteksi bahasa pengguna mengatur User.Language variabel, deteksi bahasa berbasis browser tidak lagi berlaku untuk pengguna tersebut, bahkan jika topik tersebut kemudian dimatikan atau dihapus. Jika Anda ingin bereksperimen atau memvalidasi kedua pendekatan, gunakan agen pengujian terpisah. Setelah menguji pengalihan bahasa dinamis, Anda harus menghapus status bahasa pengguna yang bertahan sebelum mencoba menguji deteksi bahasa berbasis browser.
Skenario ini menggunakan topik dengan Pesan diterimapemicu topik. Pemicu topik ini memungkinkan agen Anda memeriksa setiap pesan yang diterimanya. Topik ini menggunakan perintah kustom untuk mendeteksi bahasa dan kondisi untuk mengatur variabel sistem bahasa agen.
Verifikasi bahwa agen Anda dikonfigurasi untuk mendukung semua bahasa yang Anda inginkan.
Ganti jenis pemicu default untuk topik dengan Pesan diterima.
Tambahkan perintah ke topik Anda:
Pilih ikon
Tambahkan simpul di bawah simpul Pemicu.Pilih Tambahkan alat>Perintah baru.
Di editor perintah, masukkan nama perwakilan untuk perintah Anda, seperti "Deteksi bahasa."
Di panel Instruksi , masukkan "Tentukan bahasa mana pesan ini ditulis: ".
Di bagian bawah panel Instruksi , pilih Tambahkan konten dan pilih Teks. Jendela muncul mengundang Anda untuk memasukkan nama dan pesan sampel.
Untuk Nama, masukkan "Pesan." Untuk Data sampel, masukkan "Pesan dari pengguna," dan pilih Tutup.
Di panel Respons model, alihkan format Output ke JSON.
Pilih Uji. Prompt Anda menunjukkan literal JSON, dengan satu properti yang mengidentifikasi bahasa sebagai Inggris.
Pilih Simpan. Sebuah Simpul Prompt muncul di kanvas.
Konfigurasikan simpul Prompt :
- Untuk Input, pilih variabel
Activity.Textsistem (teks pesan masuk). - Untuk Output, buat variabel baru yang disebut
DetectedLanguage.
- Untuk Input, pilih variabel
Cabangkan logika Anda berdasarkan bahasa yang terdeteksi:
Tambahkan kondisi di bawah simpul Prompt .
Dasarkan kondisi Anda pada variabel
DetectedLanguage.structuredOutput.languagekustom , yang menyimpan nama bahasa yang terdeteksi.Tambahkan cabang kondisi untuk setiap bahasa yang perlu Anda deteksi.
Di bawah setiap cabang, tambahkan node Atur nilai variabel untuk mengatur
User.Languagevariabel sistem yang sesuai. Gambar berikut menunjukkan topik dengan kondisi untuk beralih antara bahasa Belanda dan Inggris.
Memulihkan deteksi bahasa berbasis browser
Ketika agen yang dikonfigurasi untuk pengalihan bahasa dinamis mengatur variabel sistem User.Language, bahasa yang dipilih tetap ada sebagai penimpaan untuk pengguna agen. Bahasa pilihan pengguna ditentukan dalam urutan prioritas berikut:
- Preferensi bahasa secara eksplisit ditetapkan oleh pengguna dan disimpan sebagai penggantian untuk pengguna ini (prioritas tertinggi).
- Pesan masuk dari pengguna dalam bahasa yang cocok dengan salah satu bahasa yang didukung agen (
Activity.Locale). - Bahasa utama agen (fallback).
Untuk menghapus bahasa yang bertahan setelah menguji pengalihan bahasa dinamis:
- Kirim
/debug clearstateke agen. Perintah ini menghapus pengaturan penggantian bahasa dari kondisi pengguna.
Mengatasi masalah agen multibahasa
Bagian ini memberikan tips untuk membantu Anda memahami perilaku agen multibahasa yang tidak terduga.
Perilaku agen multibahasa untuk bahasa yang tidak dikonfigurasi
Jika pengguna mengonfigurasi browser mereka untuk bahasa yang tidak Anda konfigurasi untuk agen, agen akan kembali ke bahasa utamanya.
Anda menentukan bahasa utama untuk agen saat membuat agen. Anda tidak dapat mengubah bahasa utama setelah pembuatan tetapi Anda dapat mengubah wilayah untuk bahasa utama agen, jika lebih dari satu wilayah tersedia.
Perilaku agen multibahasa untuk terjemahan yang hilang
Jika Anda menambahkan pesan ke agen dalam bahasa utamanya tetapi tidak mengunggah terjemahan untuk pesan baru, agen akan menampilkan perubahan yang belum diterjemahkan dalam bahasa utamanya. Selalu pastikan terjemahan sudah terbaru setelah melakukan perubahan pada agen.
File lokalisasi tidak menyertakan string bertipe campuran dari Kartu Adaptif. Jika Anda perlu melokalisasi Kartu Adaptif di mana string dapat menyertakan teks statis dan variabel (konten dinamis), Anda harus menggunakan solusinya. Pelajari cara menyimpan string berjenis campuran dalam variabel teks sebelum menggunakannya dalam Kartu Adaptif.
Kesalahan saat menerbitkan agen multibahasa
Ketika Anda mencoba menerbitkan agen multibahasa, Anda mungkin melihat pesan kesalahan "Validasi untuk bot gagal" dengan kode kesalahan respons mentah, SynonymsNotUnique. Kesalahan ini berarti file pelokalan Anda berisi sinonim duplikat atau sinonim yang cocok dengan DisplayName nilai. Anda biasanya mengalami kesalahan ini ketika node berisi Entity.Definition.'closedListItem' di mana salah satu skenario berikut terjadi:
- Salah satu elemennya
Synonymstidak unik. - Salah satu elemen
Synonymsmemiliki nilai yang sama dengan elemenDisplayName.
Semua Synonyms untuk entitas yang sama harus unik dan memiliki nama yang berbeda dari DisplayName elemen.
Untuk memperbaiki kesalahan, tinjau file JSON atau ResX untuk bahasa sekunder Anda, dan identifikasi instans apa pun di mana kondisi ini mungkin ada.