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.
Opsi pencarian Azure AI yang dapat dikonfigurasi saat menggunakan Azure OpenAI On Your Data. Sumber data ini didukung dalam versi 2024-02-01
API .
Nama | Tipe | Diperlukan | Deskripsi |
---|---|---|---|
parameters |
Parameter | Benar | Parameter yang digunakan saat mengonfigurasi Azure Search. |
type |
string | Benar | Harus berupa azure_search . |
Parameter-parameternya
Nama | Tipe | Diperlukan | Deskripsi |
---|---|---|---|
endpoint |
string | Benar | Jalur titik akhir absolut untuk sumber daya Azure Search yang akan digunakan. |
index_name |
string | Benar | Nama indeks yang akan digunakan dalam sumber daya Azure Search yang dirujuk. |
authentication |
Salah satu ApiKeyAuthenticationOptions, SystemAssignedManagedIdentityAuthenticationOptions, UserAssignedManagedIdentityAuthenticationOptions, onYourDataAccessTokenAuthenticationOptions | Benar | Metode autentikasi yang digunakan saat mengakses sumber data yang ditentukan. |
embedding_dependency |
Salah satu DeploymentNameVectorizationSource, EndpointVectorizationSource | Tidak benar | Dependensi penyematan untuk pencarian vektor. Diperlukan ketika query_type adalah vector , vector_simple_hybrid , atau vector_semantic_hybrid . |
fields_mapping |
FieldsMappingOptions | Tidak benar | Perilaku pemetaan bidang yang dikustomisasi untuk digunakan saat berinteraksi dengan indeks pencarian. |
filter |
string | Tidak benar | Filter pencarian. |
in_scope |
Boolean | Tidak benar | Apakah kueri harus dibatasi untuk menggunakan data terindeks. Defaultnya adalah True . |
query_type |
QueryType | Tidak benar | Jenis kueri yang akan digunakan dengan Azure Search. Standarnya adalah simple |
role_information |
string | Tidak benar | Berikan instruksi model tentang bagaimana seharusnya perilakunya dan konteks apa pun yang harus dirujuknya saat menghasilkan respons. Anda dapat menjelaskan kepribadian asisten dan mengatur cara respons diformat. |
semantic_configuration |
string | Tidak benar | Konfigurasi semantik untuk kueri. Diperlukan ketika query_type adalah semantic atau vector_semantic_hybrid . |
strictness |
bilangan bulat | Tidak benar | Ketatnya pemfilteran relevansi pencarian yang dikonfigurasi. Semakin tinggi ketegasan, semakin tinggi presisi tetapi pengenalan jawaban yang lebih rendah. Defaultnya adalah 3 . |
top_n_documents |
bilangan bulat | Tidak benar | Jumlah dokumen terbanyak yang dipilih untuk ditampilkan untuk kueri yang dipilih. Defaultnya adalah 5 . |
max_search_queries |
bilangan bulat | Tidak benar | Jumlah maksimum kueri yang ditulis ulang harus dikirim ke penyedia pencarian untuk satu pesan pengguna. Jika tidak ditentukan, sistem akan memutuskan jumlah kueri yang akan dikirim. |
allow_partial_result |
bilangan bulat | Tidak benar | Jika ditentukan sebagai true, sistem akan mengizinkan hasil pencarian parsial untuk digunakan dan permintaan gagal jika semua kueri gagal. Jika tidak ditentukan, atau ditentukan sebagai false, permintaan akan gagal jika ada kueri pencarian yang gagal. |
include_contexts |
array | Tidak benar | Properti konteks output yang disertakan. Jika tidak ditentukan, nilai defaultnya adalah citations dan intent . Nilai bisa ,citations intent , all_retrieved_documents . |
Opsi autentikasi kunci API
Opsi autentikasi untuk Azure OpenAI On Your Data saat menggunakan kunci API.
Nama | Tipe | Diperlukan | Deskripsi |
---|---|---|---|
key |
string | Benar | Kunci API yang digunakan untuk autentikasi. |
type |
string | Benar | Harus berupa api_key . |
Opsi autentikasi identitas terkelola yang ditetapkan sistem
Opsi autentikasi untuk Azure OpenAI On Your Data saat menggunakan identitas terkelola yang ditetapkan sistem.
Nama | Tipe | Diperlukan | Deskripsi |
---|---|---|---|
type |
string | Benar | Harus berupa system_assigned_managed_identity . |
Opsi autentikasi identitas terkelola yang ditetapkan pengguna
Opsi autentikasi untuk Azure OpenAI On Your Data saat menggunakan identitas terkelola yang ditetapkan pengguna.
Nama | Tipe | Diperlukan | Deskripsi |
---|---|---|---|
managed_identity_resource_id |
string | Benar | ID sumber daya identitas terkelola yang ditetapkan pengguna untuk digunakan untuk autentikasi. |
type |
string | Benar | Harus berupa user_assigned_managed_identity . |
Opsi autentikasi token akses
Opsi autentikasi untuk Azure OpenAI On Your Data saat menggunakan token akses.
Nama | Tipe | Diperlukan | Deskripsi |
---|---|---|---|
access_token |
string | Benar | Token akses yang digunakan untuk autentikasi. |
type |
string | Benar | Harus berupa access_token . |
Sumber vektorisasi nama penyebaran
Detail sumber vektorisasi, digunakan oleh Azure OpenAI On Your Data saat menerapkan pencarian vektor. Sumber vektorisasi ini didasarkan pada nama penyebaran model penyematan internal di sumber daya Azure OpenAI yang sama. Sumber vektorisasi ini memungkinkan Anda menggunakan pencarian vektor tanpa kunci api Azure OpenAI dan tanpa akses jaringan publik Azure OpenAI.
Nama | Tipe | Diperlukan | Deskripsi |
---|---|---|---|
deployment_name |
string | Benar | Nama penyebaran model penyematan dalam sumber daya Azure OpenAI yang sama. |
type |
string | Benar | Harus berupa deployment_name . |
dimensions |
bilangan bulat | Tidak benar | Jumlah dimensi yang harus dimiliki penyematan. Hanya didukung pada model text-embedding-3 dan yang lebih baru. |
Sumber vektorisasi titik akhir
Detail sumber vektorisasi, digunakan oleh Azure OpenAI On Your Data saat menerapkan pencarian vektor. Sumber vektorisasi ini didasarkan pada titik akhir API penyematan Azure OpenAI.
Nama | Tipe | Diperlukan | Deskripsi |
---|---|---|---|
endpoint |
string | Benar | Menentukan URL titik akhir sumber daya tempat penyematan harus diambil. Ini harus dalam format https://{YOUR_RESOURCE_NAME}.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/embeddings . Parameter kueri versi api tidak diizinkan. |
authentication |
ApiKeyAuthenticationOptions | Benar | Menentukan opsi autentikasi yang akan digunakan saat mengambil penyematan dari titik akhir yang ditentukan. |
type |
string | Benar | Harus berupa endpoint . |
dimensions |
bilangan bulat | Tidak benar | Jumlah dimensi yang harus dimiliki penyematan. Hanya didukung pada model text-embedding-3 dan yang lebih baru. Ini didukung dalam versi api 2024-10-21. |
Opsi pemetaan bidang
Pengaturan opsional untuk mengontrol bagaimana bidang diproses saat menggunakan sumber daya Azure Search yang dikonfigurasi.
Nama | Tipe | Diperlukan | Deskripsi |
---|---|---|---|
content_fields |
string[] | Tidak benar | Nama bidang indeks yang harus diperlakukan sebagai konten. |
vector_fields |
string[] | Tidak benar | Nama bidang yang mewakili data vektor. |
content_fields_separator |
string | Tidak benar | Pola pemisah yang harus digunakan oleh bidang konten. Defaultnya adalah \n . |
filepath_field |
string | Tidak benar | Nama bidang indeks yang akan digunakan sebagai jalur file. |
title_field |
string | Tidak benar | Nama bidang indeks yang akan digunakan sebagai judul. |
url_field |
string | Tidak benar | Nama bidang indeks yang akan digunakan sebagai URL. |
Jenis kueri
Jenis kueri pengambilan Azure Search yang harus dijalankan saat menggunakannya sebagai Azure OpenAI On Your Data.
Nilai Enum | Deskripsi |
---|---|
simple |
Mewakili pengurai kueri sederhana default. |
semantic |
Mewakili pengurai kueri semantik untuk pemodelan semantik tingkat lanjut. |
vector |
Mewakili pencarian vektor atas data komputasi. |
vector_simple_hybrid |
Mewakili kombinasi strategi kueri sederhana dengan data vektor. |
vector_semantic_hybrid |
Mewakili kombinasi pencarian semantik dan kueri data vektor. |
Contoh
Prasyarat:
- Konfigurasikan penetapan peran dari sistem Azure OpenAI yang ditetapkan identitas terkelola ke layanan pencarian Azure. Peran yang diperlukan:
Search Index Data Reader
,Search Service Contributor
. - Konfigurasikan penetapan peran dari pengguna ke sumber daya Azure OpenAI. Peran yang diperlukan:
Cognitive Services OpenAI User
. - Instal Az CLI, dan jalankan
az login
. - Tentukan variabel lingkungan berikut:
AzureOpenAIEndpoint
,ChatCompletionsDeploymentName
, ,SearchEndpoint
,SearchIndex
.
export AzureOpenAIEndpoint=https://example.openai.azure.com/
export ChatCompletionsDeploymentName=turbo
export SearchEndpoint=https://example.search.windows.net
export SearchIndex=example-index
Instal paket openai
pip terbaru , azure-identity
.
import os
from openai import AzureOpenAI
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
endpoint = os.environ.get("AzureOpenAIEndpoint")
deployment = os.environ.get("ChatCompletionsDeploymentName")
search_endpoint = os.environ.get("SearchEndpoint")
search_index = os.environ.get("SearchIndex")
token_provider = get_bearer_token_provider(DefaultAzureCredential(), "https://cognitiveservices.azure.com/.default")
client = AzureOpenAI(
azure_endpoint=endpoint,
azure_ad_token_provider=token_provider,
api_version="2024-02-01",
)
completion = client.chat.completions.create(
model=deployment,
messages=[
{
"role": "user",
"content": "Who is DRI?",
},
],
extra_body={
"data_sources": [
{
"type": "azure_search",
"parameters": {
"endpoint": search_endpoint,
"index_name": search_index,
"authentication": {
"type": "system_assigned_managed_identity"
}
}
}
]
}
)
print(completion.model_dump_json(indent=2))