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.
BERLAKU UNTUK: Semua lapisan API Management
Aktifkan caching semantik untuk respons permintaan LLM API, guna mengurangi kebutuhan bandwidth dan pemrosesan yang dibebankan pada API backend, serta menurunkan latensi yang dialami pengguna API. Dengan caching semantik, Anda dapat mengembalikan respons cache untuk prompt yang identik dan juga untuk prompt yang serupa dalam makna, bahkan jika teksnya tidak identik. Untuk latar belakang, lihat Tutorial: Menggunakan Azure Managed Redis sebagai cache semantik.
Catatan
Langkah-langkah konfigurasi dalam artikel ini menunjukkan cara mengaktifkan caching semantik untuk API yang ditambahkan ke API Management dari Azure OpenAI dalam model-model Microsoft Foundry. Anda dapat menerapkan langkah serupa untuk mengaktifkan caching semantik untuk API model bahasa besar (LLM) yang sesuai yang tersedia melalui Azure AI Model Inference API atau dengan model yang kompatibel dengan OpenAI yang disajikan melalui penyedia inferensi dari pihak ketiga.
Prasyarat
Tambahkan satu atau beberapa Azure OpenAI dalam penyebaran model di Microsoft Foundry sebagai API ke instance API Management Anda. Untuk informasi selengkapnya, lihat Menambahkan Api Azure OpenAI ke Azure API Management.
Buat penyebaran untuk API berikut:
- Chat Completion API - Penerapan yang digunakan untuk panggilan pengguna API
- Embeddings API - Penerapan yang digunakan untuk caching semantik
Konfigurasikan instans API Management untuk menggunakan autentikasi identitas terkelola ke API Azure OpenAI. Untuk informasi selengkapnya, lihat Mengautentikasi dan mengotorisasi akses ke API Azure OpenAI menggunakan Azure API Management .
Instans Azure Managed Redis dengan modul RediSearch diaktifkan pada cache Redis.
Catatan
Anda hanya dapat mengaktifkan modul RediSearch saat membuat cache Azure Managed Redis baru. Anda tidak dapat menambahkan modul ke cache yang ada. Pelajari lebih lanjut
Konfigurasikan instans Azure Managed Redis sebagai cache eksternal di instans Azure API Management. Untuk langkah-langkahnya, lihat Menggunakan cache eksternal yang kompatibel dengan Redis di Azure API Management.
Menguji penyebaran API Obrolan
Pertama, uji penyebaran Azure OpenAI untuk memastikan CHAT Completion API atau Chat API berfungsi seperti yang diharapkan. Untuk langkah-langkahnya, lihat Mengimpor API Azure OpenAI ke Azure API Management.
Misalnya, uji Azure OpenAI Chat API dengan mengirim permintaan POST ke titik akhir API dengan perintah di isi permintaan. Respons harus mencakup penyelesaian perintah. Contoh permintaan:
POST https://my-api-management.azure-api.net/my-api/openai/deployments/chat-deployment/chat/completions?api-version=2024-02-01
dengan isi permintaan:
{"messages":[{"role":"user","content":"Hello"}]}
Ketika permintaan berhasil, respons menyertakan penyelesaian untuk pesan obrolan.
Membuat backend untuk penyematan API
Buat sumber daya backend untuk menerapkan API embedding dengan pengaturan berikut:
Nama - Nama pilihan Anda, seperti embeddings-backend. Anda menggunakan nama ini untuk merujuk sistem backend dalam kebijakan.
Jenis - Pilih URL Kustom.
URL Runtime - URL API embeddings untuk penyebaran di Azure OpenAI, mirip dengan:
https://my-aoai.openai.azure.com/openai/deployments/embeddings-deployment/embeddings(tanpa parameter kueri).Info masuk otorisasi - Buka tab Identitas Terkelola .
- Identitas klien - Pilih Identitas yang ditetapkan sistem atau masukkan ID klien identitas terkelola yang ditetapkan pengguna.
-
ID Sumber Daya - Masukkan
https://cognitiveservices.azure.com/untuk Azure OpenAI.
Menguji penyematan backend
Untuk menguji backend embedding, buat operasi API untuk Azure OpenAI API Anda:
- Pada tab Desain API Anda, pilih + Tambahkan operasi.
- Masukkan Nama Tampilan seperti Embedding dan, jika diinginkan, Nama untuk operasi.
- Di bagian Frontend , di URL, pilih POST dan masukkan jalur
/. - Pada tab Header , tambahkan header yang diperlukan dengan nama
Content-Typedan nilaiapplication/json. - Pilih Simpan.
Konfigurasikan kebijakan berikut di bagian Pemrosesan masuk dari operasi API. Dalam kebijakan set-backend-service, ganti nama backend yang Anda buat.
<policies>
<inbound>
<set-backend-service backend-id="embeddings-backend" />
<authentication-managed-identity resource="https://cognitiveservices.azure.com/" />
[...]
</inbound>
[...]
</policies>
Pada tab Uji , uji operasi dengan menambahkan api-version parameter kueri dengan nilai seperti 2024-02-01. Berikan isi permintaan yang valid. Contohnya:
{"input":"Hello"}
Jika permintaan berhasil, respons menyertakan representasi vektor teks input. Contoh respons:
{
"object": "list",
"data": [{
"object": "embedding",
"index": 0,
"embedding": [
-0.021829502,
-0.007157768,
-0.028619017,
[...]
]
}]
}
Mengonfigurasi kebijakan caching semantik
Untuk mengaktifkan penyimpanan sementara semantik untuk API Azure OpenAI di Azure API Management, terapkan aturan kebijakan berikut: satu untuk melakukan pencarian dalam cache sebelum mengirim permintaan dan yang lain untuk menyimpan respons untuk penggunaan kembali di masa mendatang.
Di bagian Pemrosesan Inbound untuk API, tambahkan kebijakan azure-openai-semantic-cache-lookup.
embeddings-backend-idDalam atribut , tentukan backend Embeddings API yang Anda buat.Catatan
Saat mengaktifkan cache semantik untuk API model bahasa besar lainnya, gunakan kebijakan llm-semantic-cache-lookup sebagai gantinya.
Contoh:
<azure-openai-semantic-cache-lookup score-threshold="0.15" embeddings-backend-id="embeddings-backend" embeddings-backend-auth="system-assigned" ignore-system-messages="true" max-message-count="10"> <vary-by>@(context.Subscription.Id)</vary-by> </azure-openai-semantic-cache-lookup> <rate-limit calls="10" renewal-period="60" />Catatan
Tambahkan kebijakan batas tarif (atau kebijakan batas tarif berdasarkan kunci ) setelah pencarian cache untuk membantu membatasi jumlah panggilan dan mencegah kelebihan beban pada layanan backend jika cache tidak tersedia.
Di bagian Pemrosesan keluar untuk API, tambahkan kebijakan azure-openai-semantic-cache-store.
Catatan
Saat mengaktifkan penyimpanan semantik untuk API model bahasa besar lainnya, gunakan kebijakan llm-semantic-cache-store.
Contoh:
<azure-openai-semantic-cache-store duration="60" />
Konfirmasi penembolokan
Untuk mengonfirmasi bahwa penembolokan semantik berfungsi sesuai harapan, lacak operasi Penyelesaian pengujian atau Penyelesaian Percakapan dengan menggunakan konsol pengujian di portal. Pastikan bahwa cache digunakan pada percobaan berikutnya dengan memeriksa jejak. Pelajari selengkapnya tentang melacak panggilan API di Azure API Management.
Sesuaikan atribut score-threshold dalam kebijakan pencarian untuk mengontrol seberapa dekat prompt masuk harus cocok dengan prompt yang di-cache untuk mengembalikan respons tersimpannya. Ambang skor yang lebih rendah berarti bahwa perintah harus memiliki kesamaan semantik yang lebih tinggi untuk mengembalikan respons cache. Perintah dengan skor di atas ambang batas tidak menggunakan respons cache.
Misalnya, jika cache digunakan, bagian Output menyertakan entri yang mirip dengan cuplikan layar berikut:
Konten terkait
- Kebijakan cache
- Azure Managed Redis
- Kemampuan gateway AI di Azure API Management