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.
Artikel ini memperlihatkan kepada Anda cara menyebarkan dan menjalankan Chat dengan sampel data Anda sendiri untuk .NET. Sampel ini mengimplementasikan aplikasi obrolan menggunakan C#, Azure OpenAI Service, dan Retrieval Augmented Generation (RAG) di Pencarian Azure AI untuk mendapatkan jawaban tentang manfaat karyawan di perusahaan fiktif. Aplikasi obrolan manfaat karyawan dilengkapi dengan file PDF termasuk buku pegangan karyawan, dokumen manfaat, dan daftar peran dan harapan dalam perusahaan.
Dalam artikel ini, Anda:
- Sebarkan aplikasi obrolan ke Azure.
- Dapatkan jawaban tentang tunjangan karyawan.
- Ubah pengaturan untuk mengubah perilaku respons.
Setelah Anda menyelesaikan prosedur ini, mulai ubah proyek baru dengan kode kustom Anda.
Artikel ini adalah bagian dari kumpulan artikel yang menunjukkan kepada Anda cara membuat aplikasi obrolan menggunakan layanan Azure OpenAI dan Pencarian Azure AI.
Artikel lain dalam koleksi meliputi:
Ikhtisar arsitektur
Dalam aplikasi sampel ini, perusahaan fiktif bernama Contoso Electronics memberikan pengalaman aplikasi obrolan kepada karyawannya untuk mengajukan pertanyaan tentang manfaat, kebijakan internal, dan deskripsi dan peran pekerjaan.
Arsitektur aplikasi obrolan ditampilkan dalam diagram berikut:
- Antarmuka pengguna - Antarmuka obrolan aplikasi adalah aplikasi Blazor WebAssembly . Antarmuka inilah yang menerima kueri pengguna, merutekan permintaan ke backend aplikasi, dan menampilkan respons yang dihasilkan.
-
Backend - Backend aplikasi adalah ASP.NET Core Minimal API. Backend menghosting aplikasi web statis Blazor dan merupakan apa yang mengatur interaksi di antara berbagai layanan. Layanan yang digunakan dalam aplikasi ini meliputi:
- Pencarian Azure AI – Mengindeks dokumen dari data yang disimpan di Akun Azure Storage. Ini membuat dokumen dapat dicari menggunakan kemampuan pencarian vektor.
- Azure OpenAI Service – Menyediakan Model Bahasa Besar (LLM) untuk menghasilkan respons. Microsoft Agent Framework digunakan bersama dengan Azure OpenAI Service untuk mengatur alur kerja AI yang lebih kompleks.
Biaya
Sebagian besar sumber daya dalam arsitektur ini menggunakan tingkat harga dasar atau konsumsi. Harga konsumsi didasarkan pada penggunaan, yang berarti Anda hanya membayar apa yang Anda gunakan. Untuk menyelesaikan artikel ini, ada biaya, tetapi minimal. Setelah selesai dengan artikel, hapus sumber daya untuk berhenti dikenakan biaya.
Untuk informasi selengkapnya, lihat Azure Samples: Biaya di repositori sampel.
Prasyarat
Lingkungan kontainer pengembangan tersedia dengan semua dependensi yang diperlukan untuk menyelesaikan artikel ini. Anda dapat menjalankan kontainer pengembangan di GitHub Codespaces (di browser) atau secara lokal menggunakan Visual Studio Code.
Untuk mengikuti artikel ini, Anda memerlukan prasyarat berikut:
- Langganan Azure - Buat langganan secara gratis
- Izin akun Azure - Akun Azure Anda harus memiliki izin Microsoft.Authorization/roleAssignments/write, seperti Pengguna Access Administrator atau Pemilik.
- akun GitHub
Membuka lingkungan pengembangan
Mulai sekarang dengan lingkungan pengembangan yang memiliki semua dependensi yang diinstal untuk menyelesaikan artikel ini.
GitHub Codespaces menjalankan kontainer pengembangan yang dikelola oleh GitHub dengan Visual Studio Code untuk Web sebagai antarmuka pengguna. Untuk lingkungan pengembangan yang paling mudah, gunakan GitHub Codespaces sehingga Anda memiliki alat dan dependensi pengembang yang benar yang telah diinstal sebelumnya untuk menyelesaikan artikel ini.
Penting
Semua akun GitHub dapat menggunakan Codespace hingga 60 jam gratis setiap bulan dengan 2 instans inti. Untuk informasi selengkapnya, lihat penyimpanan dan jam inti bulanan yang disertakan di GitHub Codespaces.
Mulai proses untuk membuat codespace GitHub baru di cabang
maindari repositoriAzure-Samples/azure-search-openai-demo-csharpGitHub.Agar lingkungan pengembangan dan dokumentasi tersedia secara bersamaan, klik kanan pada
Buka di GitHub Codespace tombol, dan pilihBuka tautan di windows baru .Pada halaman Buat codespace , tinjau pengaturan konfigurasi codespace, lalu pilih Buat codespace baru:
Tunggu hingga codespace dimulai. Proses startup ini dapat memakan waktu beberapa menit.
Di terminal di bagian bawah layar, masuk ke Azure dengan Azure Developer CLI.
azd auth loginSalin kode dari terminal lalu tempelkan ke browser. Ikuti petunjuk untuk mengautentikasi dengan akun Azure Anda.
Tugas yang tersisa dalam artikel ini berlangsung dalam konteks kontainer pengembangan ini.
Sebarkan dan jalankan
Repositori sampel berisi semua file kode dan konfigurasi yang Anda butuhkan untuk menyebarkan aplikasi obrolan ke Azure. Langkah-langkah berikut memandu Anda melalui proses penyebaran contoh ke Azure.
Menyebarkan aplikasi obrolan ke Azure
Penting
Sumber daya Azure yang disiapkan di bagian ini dibebankan biaya segera, terutama dari layanan sumber daya Pencarian Azure AI. Sumber daya ini dapat mengumpulkan biaya bahkan jika Anda mengganggu perintah sebelum sepenuhnya dijalankan.
Jalankan perintah Azure Developer CLI berikut untuk menyediakan sumber daya Azure dan menyebarkan kode sumber:
azd upSaat Anda diminta untuk memasukkan nama lingkungan, tetap pendekkan dan huruf kecil. Contohnya,
myenv. Ini digunakan sebagai bagian dari nama grup sumber daya.Saat diminta, pilih langganan untuk membuat sumber daya di dalamnya.
Saat Anda diminta untuk memilih lokasi untuk pertama kalinya, pilih lokasi di dekat Anda. Lokasi ini digunakan untuk sebagian besar sumber daya termasuk hosting.
Jika Anda dimintai lokasi untuk model OpenAI, pilih lokasi yang ada di dekat Anda. Jika lokasi yang sama tersedia sebagai lokasi pertama Anda, pilih lokasi tersebut.
Tunggu hingga aplikasi disebarkan. Penyebaran mungkin membutuhkan waktu hingga 20 menit untuk diselesaikan.
Setelah aplikasi berhasil disebarkan, URL muncul di terminal.
Pilih URL yang diberi
Deploying service weblabel untuk membuka aplikasi obrolan di browser.
Menggunakan aplikasi obrolan untuk mendapatkan jawaban dari file PDF
Aplikasi obrolan telah dimuat sebelumnya dengan informasi manfaat karyawan dari file PDF. Anda dapat menggunakan aplikasi obrolan untuk mengajukan pertanyaan tentang manfaatnya. Langkah-langkah berikut memandu Anda melalui proses penggunaan aplikasi obrolan.
Di browser, navigasikan ke halaman Obrolan menggunakan navigasi kiri.
Pilih atau masukkan "Apa yang disertakan dalam paket Northwind Health Plus saya yang tidak ada dalam standar?" di kotak teks obrolan. Respons Anda mirip dengan gambar berikut.
Dari jawaban, pilih kutipan. Jendela pop-up terbuka menampilkan sumber informasi.
Navigasi antara tab di bagian atas kotak jawaban untuk memahami bagaimana jawaban dihasilkan.
Tab Deskripsi Proses pemikiran Ini adalah skrip interaksi dalam obrolan. Anda dapat melihat permintaan sistem ( content) dan pertanyaan pengguna Anda (content).Konten pendukung Ini termasuk informasi untuk menjawab pertanyaan Anda dan materi sumber. Jumlah kutipan materi sumber dicatat dalam pengaturan Pengembang. Nilai defaultnya adalah 3. Kutipan Ini menampilkan halaman sumber yang berisi kutipan. Setelah selesai, navigasikan kembali ke tab jawaban.
Menggunakan pengaturan aplikasi obrolan untuk mengubah perilaku respons
Kecerdasan obrolan ditentukan oleh model OpenAI dan pengaturan yang digunakan untuk berinteraksi dengan model.
| Pengaturan | Deskripsi |
|---|---|
| Ambil alih templat perintah | Ini adalah perintah yang digunakan untuk menghasilkan jawaban. |
| Ambil hasil pencarian sebanyak ini | Ini adalah jumlah hasil pencarian yang digunakan untuk menghasilkan jawabannya. Anda dapat melihat sumber-sumber ini dikembalikan dalam tab Proses Pemikiran dan Konten Pendukung dari kutipan. |
| Mengecualikan kategori | Ini adalah kategori dokumen yang dikecualikan dari hasil pencarian. |
| Gunakan pemeringkat semantik untuk memproses pengambilan informasi | Ini adalah fitur Pencarian Azure AI yang menggunakan pembelajaran mesin untuk meningkatkan relevansi hasil pencarian. |
| Mode pengambilan data | Vektor + Teks berarti bahwa hasil pencarian didasarkan pada teks dokumen dan penyematan dokumen. Vektor berarti bahwa hasil pencarian didasarkan pada penyematan dokumen. Teks berarti bahwa hasil pencarian didasarkan pada teks dokumen. |
| Menggunakan ringkasan kontekstual kueri alih-alih seluruh dokumen | Ketika keduanya Use semantic ranker dan Use query-contextual summaries diperiksa, LLM menggunakan deskripsi yang diekstrak dari bagian-bagian penting, alih-alih dari semua bagian, dalam dokumen berperingkat tertinggi. |
| Sarankan pertanyaan tindak lanjut | Minta aplikasi obrolan menyarankan pertanyaan tindak lanjut berdasarkan jawabannya. |
Langkah-langkah berikut menuntun melalui proses mengubah pengaturan.
Di peramban, pilih ikon roda gigi di pojok kanan atas halaman.
Jika tidak dipilih, pilih kotak centang Sarankan pertanyaan tindak lanjut dan ajukan pertanyaan yang sama lagi.
What is included in my Northwind Health Plus plan that is not in standard?Obrolan mungkin kembali dengan saran pertanyaan tindak lanjut.
Di tab Pengaturan, hapus centang Gunakan pemeringkat semantik untuk pengambilan.
Ajukan pertanyaan yang sama lagi.
What is my deductible?Apa perbedaan dalam jawabannya?
Respons yang menggunakan ranker Semantic memberikan satu jawaban. Respons tanpa peringkat semantik mengembalikan jawaban yang kurang langsung.
Membersihkan sumber daya
Untuk menyelesaikannya, bersihkan sumber daya codeSpaces Azure dan GitHub yang Anda gunakan.
Membersihkan sumber daya Azure
Sumber daya Azure yang dibuat dalam artikel ini ditagihkan ke langganan Azure Anda. Jika Anda tidak mengharapkan untuk membutuhkan sumber daya ini di masa mendatang, hapus sumber daya tersebut untuk menghindari dikenakan lebih banyak biaya.
Jalankan perintah Azure Developer CLI berikut untuk menghapus sumber daya Azure dan menghapus kode sumber:
azd down --purge
Membersihkan GitHub Codespace
Menghapus lingkungan GitHub Codespaces memastikan bahwa Anda dapat memaksimalkan jumlah pemberian izin per jam inti gratis yang Anda dapatkan untuk akun Anda.
Penting
Untuk informasi selengkapnya tentang hak istimewa akun GitHub Anda, lihat penyimpanan dan jam inti GitHub Codespaces yang disertakan setiap bulan.
Masuk ke dasbor GitHub Codespaces (https://github.com/codespaces).
Temukan codespace yang sedang berjalan yang bersumber dari repositori
Azure-Samples/azure-search-openai-demo-csharpGitHub.
Buka menu konteks untuk codespace, lalu pilih Hapus.
Dapatkan bantuan
Repositori sampel ini menawarkan informasi pemecahan masalah.
Jika masalah Anda tidak diatasi, catat masalah Anda ke repositori Issues.
Langkah berikutnya
- Dapatkan kode sumber untuk sampel yang digunakan dalam artikel ini
- Membangun aplikasi obrolan dengan Azure OpenAI arsitektur praktik terbaik solusi
- Kontrol Akses di Aplikasi AI Generatif dengan Pencarian Azure AI
- Bangun solusi OpenAI siap untuk perusahaan dengan Azure API Management
- Mengungguli pencarian vektor dengan kemampuan pengambilan dan peringkat hibrida