Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Poznámka
Azure AI Vyhledávač je k dispozici prostřednictvím portálu Azure, rozhraní REST API a Sady Azure SDK. Podporuje také Foundry IQ, spravovanou znalostní vrstvu, která transformuje podnikový obsah na opakovaně použitelné znalostní báze s podporou oprávnění pro agenty na portálu Microsoft Foundry.
Důležité
Na funkce, možnosti nebo vlastnosti označené jako (Preview) se nevztahuje smlouva o úrovni služeb, nejsou doporučené pro produkční úlohy a mohou se změnit nebo být omezeny dříve, než budou obecně k dispozici. Podmínky Azure AI Vyhledávač Preview platí pro všechny funkce ve verzi Preview, ať už jsou samostatné nebo součástí obecně dostupné funkce.
Ve výchozím nastavení znalostní báze v Azure AI Vyhledávač provádí extrakci dat, která vrací nezpracované uzemnění bloků dat z vašich zdrojů znalostí. Extrakce dat je užitečná pro načtení konkrétních informací, ale nemá kontext a odůvodnění nezbytné pro složité dotazy.
Místo toho můžete povolit syntézu odpovědí (Preview), která k zodpovězení dotazů v přirozeném jazyce používá LLM zadanou ve znalostní bázi. Každá odpověď obsahuje citace na načtené zdroje a řídí se všemi pokyny, které zadáte, například pomocí seznamů s odrážkami.
Tuto vlastnost můžete nastavit ve znalostní bázi nebo v požadavku na načtení. Nastavení znalostní databáze určuje výchozí hodnotu pro všechny dotazy, zatímco nastavení požadavku retrieve tuto výchozí hodnotu přepisuje pro každý jednotlivý dotaz.
Podpora využití
| portál Azure | Portál Microsoft Foundry | .NET SDK | Python SDK | Java SDK | JavaScript SDK | REST API |
|---|---|---|---|---|---|---|
| ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Požadavky
Služba Azure AI Vyhledávač s knowledge base, která určuje LLM.
Oprávnění k aktualizaci znalostních bází Nakonfigurujte ověřování bez klíčů s rolí Přispěvatel vyhledávací služby přiřazenou k vašemu uživatelskému účtu (doporučeno) nebo použijte klíč rozhraní API pro správu.
Pro odchozí volání do LLM musí vyhledávací služba mít spravovanou identitu s oprávněním uživatele služby Cognitive Services k prostředku Microsoft Foundry.
Nejnovější balíček
Azure.Search.Documentsve verzi Preview:dotnet add package Azure.Search.Documents --prereleaseBalíček
Azure.Identitypro bezklíčové ověřování:dotnet add package Azure.Identity
Nejnovější balíček
azure-search-documentsve verzi Preview:pip install --pre azure-search-documentsBalíček
azure-identitypro bezklíčové ověřování:pip install azure-identity
Verze 2026-08-01-preview rozhraní REST API vyhledávací služby.
Pro bezklíčové ověřování uveďte v
Authorizationhlavičce každého požadavku HTTP token Microsoft Entra ID.
Omezení a úvahy
Parametr
minimalpro odůvodnění při načítání vypíná zpracování pomocí LLM, takže není kompatibilní se syntézou odpovědí v definicích znalostní báze ani v požadavcích na načtení. Další informace najdete v tématu Nastavení úrovně úsilí pro načítání argumentů.Za syntézu odpovědí se v rámci služby Azure OpenAI účtují průběžné poplatky, které se odvíjejí od počtu vstupních a výstupních tokenů. Poplatky se zobrazí v rámci LLM přiřazeného znalostní bázi. Další informace najdete v tématu Dostupnost oblasti, limity a fakturace.
Povolení syntézy odpovědí ve znalostní bázi
Tato část ukazuje, jak povolit syntézu odpovědí v existující znalostní bázi. I když tuto konfiguraci můžete použít pro nové znalostní báze, vytvoření znalostní báze je nad rámec tohoto článku.
Nastavte OutputMode na "answerSynthesis" v definici KnowledgeBase. Volitelně můžete nastavit AnswerInstructions přizpůsobení výstupu odpovědi. Následující příklad dává znalostní bázi pokyn , aby 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);
Reference:SearchIndexClient, KnowledgeBase
Nastavte output_mode na "answerSynthesis" v definici KnowledgeBase. Volitelně můžete nastavit answer_instructions přizpůsobení výstupu odpovědi. Následující příklad dává znalostní bázi pokyn , aby 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)
Reference:SearchIndexClient, KnowledgeBase
Nastavte outputMode na "answerSynthesis" v definici znalostní báze. Volitelně můžete nastavit answerInstructions přizpůsobení výstupu odpovědi. Následující příklad dává znalostní bázi pokyn , aby 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"
}
Referenční informace:Znalostní báze – Vytvoření nebo aktualizace
Povolení syntézy odpovědí v dotazu na načtení
Pro kontrolu nad formátem odpovědi můžete povolit syntézu odpovědí v době dotazu. Tento přístup přepíše výchozí výstupní režim zadaný ve znalostní bázi.
Nastavte OutputMode na "answerSynthesis" na 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);
Reference:KnowledgeBaseRetrievalClient, KnowledgeBaseRetrievalRequest
Nastavte output_mode na "answerSynthesis" na 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)
Reference:KnowledgeBaseRetrievalClient, KnowledgeBaseRetrievalRequest
Nastavte outputMode na "answerSynthesis" v požadavku na načtení.
### 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"
}
Reference:Získávání znalostí – načtení
Získání syntetizované odpovědi
Pokud je povolena syntéza odpovědí, vrátí znalostní báze odpověď v přirozeném jazyce na základě pokynů, které jste volitelně zadali ve znalostní bázi. Citace pro vaše zdroje znalostí jsou formátovány jako [ref_id:<number>].
Pokud jsou například vaše pokyny Use concise bulleted lists a váš dotaz je What is healthcare?, měla by odpověď vypadat podobně jako v následujícím příkladu.
{
"response": [
{
"content": [
{
"type": "text",
"text": "- Healthcare encompasses various services provided to patients and the general population ..."
}
]
}
]
}
Úplný text výstup je následující:
"- 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]."
V závislosti na konfiguraci znalostní báze může odpověď obsahovat další informace, jako jsou protokoly aktivit a referenční pole. Další informace naleznete v tématu Vytvoření znalostní báze.
Související obsah
- Vytvoření znalostní báze
- Dotazování znalostní báze
- Rychlý start: Agentní vyhledávání (využívá syntézu odpovědí)
- Ukázka v jazyce Python: zdroj znalostí pro objekty blob v Azure AI Vyhledávač (používá syntézu odpovědí)