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.
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.
Penting
Fitur, kemampuan, atau properti yang ditandai (pratinjau) tidak tercakup dalam perjanjian tingkat layanan, tidak disarankan untuk beban kerja produksi, dan mungkin berubah atau dibatasi sebelum tersedia secara umum. Ketentuan pratinjau Pencarian Azure AI berlaku untuk semua fungsionalitas pratinjau, baik itu mandiri atau bagian dari fitur yang tersedia secara umum.
Secara default, pangkalan pengetahuan di Pencarian Azure AI melakukan ekstraksi data, yang mengembalikan potongan grounding mentah dari sumber pengetahuan Anda. Ekstraksi data berguna untuk mengambil informasi tertentu tetapi tidak memiliki konteks dan penalaran yang diperlukan untuk kueri yang kompleks.
Anda dapat mengaktifkan sintesis jawaban (pratinjau), yang menggunakan LLM yang ditentukan dalam pangkalan pengetahuan Anda untuk menjawab kueri dalam bahasa alami. Setiap jawaban mencakup kutipan ke sumber yang diambil dan mengikuti instruksi apa pun yang Anda berikan, seperti menggunakan daftar berpoin.
Anda dapat mengatur properti ini dalam pangkalan pengetahuan atau permintaan pengambilan. Setelan basis pengetahuan menetapkan setelan bawaan untuk semua kueri, sedangkan setelan permintaan pengambilan mengesampingkan setelan bawaan untuk setiap kueri.
Dukungan penggunaan
| Portal Azure | Microsoft Foundry portal | .NET SDK | Python SDK | Java SDK | JavaScript SDK | REST API |
|---|---|---|---|---|---|---|
| ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Prasyarat
Layanan Pencarian Azure AI dengan basis pengetahuan yang menentukan LLM.
Izin untuk memperbarui pangkalan pengetahuan. Konfigurasikan autentikasi tanpa kunci dengan peran Kontributor Layanan Pencarian yang ditetapkan ke akun pengguna Anda (disarankan) atau gunakan kunci API admin.
Untuk panggilan keluar ke LLM, layanan pencarian harus memiliki identitas terkelola dengan izin Pengguna Layanan Kognitif pada sumber daya Microsoft Foundry.
Paket pratinjau terbaru
Azure.Search.Documents:dotnet add package Azure.Search.Documents --prereleaseUntuk autentikasi tanpa kunci,
Azure.Identitypaket:dotnet add package Azure.Identity
Paket pratinjau terbaru
azure-search-documents:pip install --pre azure-search-documentsUntuk autentikasi tanpa kunci,
azure-identitypaket:pip install azure-identity
Versi 2026-08-01-preview dari API REST Layanan Pencarian.
Untuk autentikasi tanpa kunci, sertakan token Microsoft Entra ID di
Authorizationheader setiap permintaan HTTP.
Batasan dan pertimbangan
Upaya penalaran pengambilan
minimalmenonaktifkan pemrosesan LLM, sehingga tidak kompatibel dengan sintesis jawaban baik dalam definisi basis pengetahuan maupun permintaan pengambilan. Untuk informasi selengkapnya, lihat Mengatur upaya penalaran pengambilan.Sintesis jawaban dikenakan biaya sesuai pemakaian dari Azure OpenAI, yang didasarkan pada jumlah token input dan output. Biaya muncul di bawah LLM yang ditetapkan ke basis pengetahuan. Untuk informasi selengkapnya, lihat Ketersediaan, batas, dan penagihan wilayah.
Mengaktifkan sintesis jawaban dalam pangkalan pengetahuan
Bagian ini menunjukkan cara mengaktifkan sintesis jawaban di pangkalan pengetahuan yang ada. Meskipun Anda dapat menggunakan konfigurasi ini untuk pangkalan pengetahuan baru, pembuatan pangkalan pengetahuan berada di luar cakupan artikel ini.
Atur OutputMode ke "answerSynthesis" pada KnowledgeBase definisi. Secara opsional, atur AnswerInstructions untuk menyesuaikan output jawaban. Contoh berikut memberi instruksi kepada basis pengetahuan untuk Use concise bulleted lists.
var aoaiParams = new AzureOpenAIVectorizerParameters
{
ResourceUri = new Uri("<aoai-endpoint>"),
DeploymentName = "<aoai-gpt-deployment>",
ModelName = "<aoai-gpt-model>",
};
var knowledgeBase = new KnowledgeBase(
name: "<knowledge-base-name>",
knowledgeSources: new[] { new KnowledgeSourceReference("<knowledge-source-name>") })
{
Models = { new KnowledgeBaseAzureOpenAIModel(aoaiParams) },
OutputMode = "answerSynthesis",
AnswerInstructions = "Use concise bulleted lists",
};
await indexClient.CreateOrUpdateKnowledgeBaseAsync(knowledgeBase);
Referensi:SearchIndexClient, KnowledgeBase
Atur output_mode ke "answerSynthesis" pada KnowledgeBase definisi. Secara opsional, atur answer_instructions untuk menyesuaikan output jawaban. Contoh berikut memberi instruksi kepada basis pengetahuan untuk Use concise bulleted lists.
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import (
AzureOpenAIVectorizerParameters,
KnowledgeBase,
KnowledgeBaseAzureOpenAIModel,
KnowledgeSourceReference,
)
aoai_params = AzureOpenAIVectorizerParameters(
resource_url="<aoai-endpoint>",
deployment_name="<aoai-gpt-deployment>",
model_name="<aoai-gpt-model>",
)
knowledge_base = KnowledgeBase(
name="<knowledge-base-name>",
models=[KnowledgeBaseAzureOpenAIModel(azure_open_ai_parameters=aoai_params)],
knowledge_sources=[KnowledgeSourceReference(name="<knowledge-source-name>")],
output_mode="answerSynthesis",
answer_instructions="Use concise bulleted lists",
)
index_client = SearchIndexClient(endpoint=search_endpoint, credential=credential)
index_client.create_or_update_knowledge_base(knowledge_base)
Referensi:SearchIndexClient, KnowledgeBase
Atur outputMode ke "answerSynthesis" pada definisi pangkalan pengetahuan. Secara opsional, atur answerInstructions untuk menyesuaikan output jawaban. Contoh berikut memberi instruksi kepada basis pengetahuan untuk Use concise bulleted lists.
### Enable answer synthesis in a knowledge base
PUT {{search-endpoint}}/knowledgebases/{{knowledge-base-name}}?api-version=2026-08-01-preview
Content-Type: application/json
Authorization: Bearer {{search-access-token}}
{
"name": "{{knowledge-base-name}}",
"knowledgeSources": [ ... // OMITTED FOR BREVITY ],
"models": [ ... // OMITTED FOR BREVITY ],
"outputMode": "answerSynthesis",
"answerInstructions": "Use concise bulleted lists"
}
Mengaktifkan sintesis jawaban dalam permintaan pengambilan
Untuk kontrol per kueri atas format respons, Anda dapat mengaktifkan sintesis jawaban pada waktu kueri. Pendekatan ini mengambil alih mode output default yang ditentukan dalam pangkalan pengetahuan.
Atur OutputMode ke "answerSynthesis" pada KnowledgeBaseRetrievalRequest.
var client = new KnowledgeBaseRetrievalClient(
endpoint: new Uri(searchEndpoint),
knowledgeBaseName: knowledgeBaseName,
credential: credential);
var request = new KnowledgeBaseRetrievalRequest();
request.Messages.Add(
new KnowledgeBaseMessage(
content: new[]
{
new KnowledgeBaseMessageTextContent("What is healthcare?")
}) { Role = "user" });
request.OutputMode = "answerSynthesis";
var result = await client.RetrieveAsync(request);
Referensi:KnowledgeBaseRetrievalClient, KnowledgeBaseRetrievalRequest
Atur output_mode ke "answerSynthesis" pada KnowledgeBaseRetrievalRequest.
from azure.search.documents.knowledgebases import KnowledgeBaseRetrievalClient
from azure.search.documents.knowledgebases.models import (
KnowledgeBaseMessage,
KnowledgeBaseMessageTextContent,
KnowledgeBaseRetrievalRequest,
)
agent_client = KnowledgeBaseRetrievalClient(
endpoint=search_endpoint,
credential=credential,
knowledge_base_name=knowledge_base_name,
)
request = KnowledgeBaseRetrievalRequest(
messages=[
KnowledgeBaseMessage(
role="user",
content=[KnowledgeBaseMessageTextContent(text="What is healthcare?")],
)
],
output_mode="answerSynthesis",
)
result = agent_client.retrieve(retrieval_request=request)
Referensi:KnowledgeBaseRetrievalClient, KnowledgeBaseRetrievalRequest
Atur outputMode ke "answerSynthesis" pada permintaan pengambilan.
### Enable answer synthesis in a retrieve request
POST {{search-endpoint}}/knowledgebases/{{knowledge-base-name}}/retrieve?api-version=2026-08-01-preview
Content-Type: application/json
Authorization: Bearer {{search-access-token}}
{
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "What is healthcare?"
}
]
}
],
"outputMode": "answerSynthesis"
}
Referensi:Pengambilan Pengetahuan - Pencarian
Dapatkan jawaban yang disintesis
Ketika sintesis jawaban diaktifkan, pangkalan pengetahuan mengembalikan jawaban bahasa alami berdasarkan instruksi yang Anda tentukan secara opsional di pangkalan pengetahuan. Kutipan untuk sumber pengetahuan Anda diformat sebagai [ref_id:<number>].
Misalnya, jika instruksi Anda adalah Use concise bulleted lists dan kueri Anda adalah What is healthcare?, responsnya harus mirip dengan contoh berikut.
{
"response": [
{
"content": [
{
"type": "text",
"text": "- Healthcare encompasses various services provided to patients and the general population ..."
}
]
}
]
}
Output lengkapnya text adalah sebagai berikut:
"- Healthcare encompasses various services provided to patients and the general population, including primary health services, hospital care, dental care, mental health services, and alternative health services [ref_id:1].\n- It involves the delivery of safe, effective, patient-centered care through different modalities, such as in-person encounters, shared medical appointments, and group education sessions [ref_id:0].\n- Behavioral health is a significant aspect of healthcare, focusing on the connection between behavior and overall health, including mental health and substance use [ref_id:2].\n- The healthcare system aims to ensure quality of care, access to providers, and accountability for positive outcomes while managing costs effectively [ref_id:2].\n- The global health system is evolving to address complex health needs, emphasizing the importance of cross-sectoral collaboration and addressing social determinants of health [ref_id:4]."
Bergantung pada konfigurasi pangkalan pengetahuan Anda, respons mungkin menyertakan informasi lain, seperti log aktivitas dan array referensi. Untuk informasi selengkapnya, lihat Membuat pangkalan pengetahuan.
Konten terkait
- Membuat pangkalan pengetahuan
- Mengkueri pangkalan pengetahuan
- Mulai cepat: Pengambilan berbasis agen (menggunakan sintesis jawaban)
- Contoh Python: sumber pengetahuan blob Pencarian Azure AI (menggunakan sintesis jawaban)