Pemvektor Azure OpenAI

Catatan

Pencarian Azure AI tersedia melalui portal Azure, REST API, dan Azure SDK. Ini juga mendukung Foundry IQ, lapisan pengetahuan terkelola yang mengubah konten perusahaan menjadi pangkalan pengetahuan yang dapat digunakan kembali dan sadar izin untuk agen di portal Microsoft Foundry.

Vektorizer Azure OpenAI terhubung ke model penyematan yang diterapkan ke sumber daya Azure OpenAI di Foundry Models atau proyek Microsoft Foundry untuk menghasilkan embedding pada saat kueri. Data Anda diproses di Geo tempat model Anda disebarkan.

Meskipun pengvektor digunakan pada saat kueri, Anda menentukannya dalam definisi indeks dan mereferensikannya pada bidang vektor melalui profil vektor. Untuk informasi selengkapnya, lihat Mengonfigurasi vektorizer dalam indeks pencarian.

Vektorizer OpenAI Azure disebut AzureOpenAIVectorizer di REST API. Gunakan versi stabil terbaru Indexes - Create (REST API) atau paket Azure SDK yang menyediakan fitur.

Catatan

Vektorizer ini terkait dengan Azure OpenAI dan dikenakan biaya sesuai dengan harga Azure OpenAI Standard.

Prasyarat

  • Azure OpenAI di sumber daya Foundry Models atau proyek Foundry.

    • Sumber daya OpenAI Azure Anda harus memiliki subdomain kustom, seperti https://<resource-name>.openai.azure.com. Anda dapat menemukan titik akhir ini di halaman Keys dan Endpoint di portal Azure dan menggunakannya untuk properti resourceUri dalam skill ini.

    • Sumber daya induk proyek Foundry Anda menyediakan akses ke beberapa titik akhir, termasuk https://<resource-name>.openai.azure.com, , https://<resource-name>.services.ai.azure.comdan https://<resource-name>.cognitiveservices.azure.com. Anda dapat menemukan titik akhir ini di halaman Keys dan Endpoint di portal Azure dan menggunakan salah satunya untuk properti resourceUri dalam keterampilan ini.

  • Model embedding Azure OpenAI yang diterapkan ke sumber daya atau proyek Anda. Untuk model yang didukung, lihat bagian berikutnya.

Parameter vektorisasi

Parameter sensitif terhadap huruf besar dan kecil.

Nama parameter Deskripsi
resourceUri (Diperlukan) URI penyedia model. Domain yang didukung adalah:

  • openai.azure.com
  • services.ai.azure.com
  • cognitiveservices.azure.com

Titik akhir Azure API Management juga didukung, kecuali domain kustom API Management. Untuk penyiapan, termasuk autentikasi, RBAC, dan konektivitas privat opsional, lihat Gunakan Azure API Management dengan keterampilan dan vektorizer OpenAI Azure.

apiKey Kunci rahasia yang digunakan untuk mengakses model. Jika Anda menyediakan kunci, biarkan authIdentity kosong. Jika Anda mengatur apiKey dan authIdentity, apiKey digunakan pada koneksi.
deploymentId (Diperlukan) ID dari model penyematan Azure OpenAI yang telah disebarkan. Ini adalah nama penyebaran yang Anda tentukan saat Anda menyebarkan model.
authIdentity Identitas yang dikelola pengguna yang digunakan oleh layanan pencarian untuk koneksi. Anda dapat menggunakan identitas yang dikelola sistem atau pengguna. Untuk menggunakan identitas yang dikelola sistem, biarkan apiKey dan authIdentity kosong. Identitas yang dikelola sistem digunakan secara otomatis. Identitas terkelola harus memiliki izin Cognitive Services OpenAI User untuk mengirim teks ke Azure OpenAI.
modelName (Diperlukan) Nama model OpenAI Azure yang disebarkan pada deploymentId yang ditentukan. Nilai yang didukung adalah:

  • text-embedding-ada-002
  • text-embedding-3-large
  • text-embedding-3-small

Jenis kueri vektor yang didukung

Vektorizer OpenAI Azure hanya mendukung kueri vektor text.

Dimensi bidang yang diharapkan

Dimensi bidang yang diharapkan untuk bidang yang dikonfigurasi dengan Azure OpenAI vectorizer bergantung pada modelName yang dikonfigurasi.

modelName Dimensi minimum Dimensi maksimum
text-embedding-ada-002 1536 1536
text-embedding-3-large 1 3072
text-embedding-3-small 1 1536

Contoh definisi

"vectorizers": [
    {
        "name": "my-openai-vectorizer",
        "kind": "azureOpenAI",
        "azureOpenAIParameters": {
            "resourceUri": "https://my-fake-azure-openai-resource.openai.azure.com",
            "apiKey": "0000000000000000000000000000000000000",
            "deploymentId": "my-ada-002-deployment",
            "authIdentity": null,
            "modelName": "text-embedding-ada-002",
        },
    }
]

Praktik terbaik kinerja

Berikut ini adalah beberapa praktik terbaik yang perlu Anda pertimbangkan saat menggunakan vektorizer ini:

  • Jika Anda mencapai batas Azure OpenAI TPM (Token per Menit), pertimbangkan saran tentang batas kuota agar Anda dapat menanganinya dengan tepat. Lihat dokumentasi pemantauan Azure OpenAI untuk informasi selengkapnya tentang performa instans OpenAI Azure Anda.

  • Penerapan model penyematan OpenAI Azure yang Anda gunakan untuk vektorizer ini idealnya harus terpisah dari penerapan yang digunakan untuk skenario penggunaan lain, termasuk keterampilan penyematan embedding. Ini membantu setiap penyebaran dapat disesuaikan dengan masing-masing kasus penggunaan spesifiknya, yang mengarah ke performa yang dioptimalkan dan memudahkan identifikasi lalu lintas dari pengindeks dan panggilan penyematan indeks dengan mudah.

  • Instans OpenAI Azure Anda harus berada di wilayah yang sama atau setidaknya secara geografis dekat dengan wilayah tempat layanan Pencarian AI Anda dihosting. Ini mengurangi latensi dan meningkatkan kecepatan transfer data antara layanan.

  • Untuk menghindari kode kesalahan 429 yang sering, pertimbangkan untuk menerapkan penyeimbangan beban melalui API Management dengan menerapkan gateway penyeimbangan beban di depan beberapa penyebaran model penyematan OpenAI Azure.

  • Jika Anda memiliki batas TPM (Token per Menit) Azure OpenAI yang lebih besar dari default seperti yang dipublikasikan dalam dokumentasi kuota dan batasan, buka sebuah kasus dukungan dengan tim Pencarian Azure AI agar dapat disesuaikan sebagaimana mestinya. Ini membantu proses pengindeksan Anda tidak diperlambat secara tidak perlu oleh batas TPM default yang didokumenkan, jika Anda memiliki batas yang lebih tinggi.

Pertimbangan keamanan untuk autentikasi identitas terkelola

Ketika vektorizer OpenAI Azure menggunakan autentikasi identitas terkelola, Pencarian Azure AI mendapatkan token akses Microsoft Entra untuk audiens Foundry Tools (https://cognitiveservices.azure.com) dan menyertakannya dalam permintaan yang dikirim ke titik akhir yang ditentukan oleh resourceUri. Autentikasi identitas terkelola berlaku saat Anda mengatur authIdentity, atau ketika keduanya apiKey dan authIdentity kosong dan layanan menggunakan identitas yang ditetapkan sistem.

Titik akhir yang dirujuk oleh resourceUri diharapkan menjadi sumber daya OpenAI atau Foundry Tools Azure Anda sendiri. Domain yang didukung adalah:

  • openai.azure.com
  • cognitiveservices.azure.com
  • services.ai.azure.com

titik akhir Azure API Management (APIM) (*.azure-api.net) juga didukung. Karena nama host APIM tidak dapat diverifikasi dari namanya saja, Pencarian Azure AI memvalidasi titik akhir ini dengan pemeriksaan konektivitas langsung pada waktu konfigurasi daripada dengan pencocokan domain. Anda bertanggung jawab untuk mengonfigurasi dan memelihara hubungan antara titik akhir APIM dan sumber daya OpenAI atau Foundry Tools Azure di belakangnya.

Catatan

Token identitas terkelola yang dikeluarkan untuk audiens Foundry Tools valid terhadap Foundry Tools atau Azure sumber daya OpenAI tempat identitas diotorisasi. Mengirimnya ke titik akhir yang tidak tepercaya dapat mengekspos token.

Untuk membantu mempertahankan penyebaran yang aman, ikuti praktik berikut:

  • Atur resourceUri hanya ke titik akhir yang Anda miliki dan percayai. Lebih suka domain Foundry Tools yang tercantum sebelumnya. Jika Anda menggunakan titik akhir APIM, konfirmasikan titik akhir tersebut akan memisahkan sumber daya Anda sendiri sebelum mengaktifkan identitas terkelola. Nama host yang terlihat tepercaya bukan bukti kepemilikan.
  • Terapkan prinsip hak istimewa paling sedikit ke identitas terkelola yang digunakan oleh layanan pencarian. Vektorizer OpenAI Azure hanya memerlukan peran Pengguna OpenAI Cognitive Services pada sumber daya target. Hindari memberikan peran yang lebih luas.
  • Gunakan Perimeter Keamanan Jaringan (NSP) dan titik akhir privat atau integrasi VNet untuk membatasi titik akhir mana yang dapat dijangkau layanan pencarian dan sumber sumber daya target mana yang menerima permintaan.
  • Jika Anda menggunakan titik akhir APIM, pastikan gateway memvalidasi permintaan masuk dan meneruskannya hanya ke backend yang dimaksudkan. Anda juga harus meninjau kebijakan aksesnya secara berkala.
  • Lebih suka identitas terkelola daripada apiKey. Jika Anda menggunakan apiKey, simpan dan putar dengan aman dan jangan sematkan dalam kontrol sumber. Layanan menolak konfigurasi yang mengatur dan apiKeyauthIdentity.
  • Tinjau definisi indeks secara berkala, penetapan peran identitas terkelola, dan konfigurasi APIM untuk mengonfirmasi bahwa resourceUri nilai, kontrol akses, dan izin identitas tetap terkini dan sesuai. Tinjau perubahan konfigurasi melalui proses manajemen perubahan dan peninjauan keamanan yang ditetapkan.
  • Pantau Azure log masuk OpenAI dan Foundry Tools, peristiwa autentikasi, dan log akses untuk aktivitas yang tidak terduga atau tidak sah.
  • Hapus vektorizer, titik akhir, penetapan peran, dan kunci API yang tidak lagi diperlukan.

Membatasi akses ke konfigurasi indeks dan vektorizer

Pengguna yang dapat membuat atau mengubah definisi indeks mengontrol titik akhir tujuan (resourceUri) dan konfigurasi autentikasi yang digunakan oleh vektorizer. Karena vektorizer mengirim token identitas terkelola untuk audiens Foundry Tools ke titik akhir tersebut, batasi izin ini ke administrator tepercaya dan ikuti proses manajemen perubahan dan peninjauan keamanan standar Anda saat mengonfigurasi vektorizer yang diaktifkan identitas terkelola.

Lihat juga