Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Note
Azure AI-sökning är tillgängligt via Azure-portalen, REST-API:er och Azure-SDK:er. Den ligger också till grund för Foundry IQ, det hanterade kunskapsskiktet som omvandlar företagsinnehåll till återanvändbara, behörighetsmedvetna kunskapsbaser för agenter i Microsoft Foundry-portalen.
Important
Dessa funktioner och denna funktionalitet är en del av REST API-versionen 2026-08-01-preview. Förhandsversionen av 2026-08-01 är licensierad till dig som en del av din Azure-prenumeration och omfattas av de villkor som gäller för "förhandsversioner" i Microsoft Produktvillkor, Microsoft Products and Services Data Protection Addendum ("DPA") och tilläggsvillkoren för användning för Microsoft Azure förhandsversioner.
Förhandsversionen av 2026-08-01 stöder anslutningar till andra Microsoft-tjänster- och tredjepartstjänster. Användningen av dessa tjänster omfattas av deras respektive villkor och kan resultera i databearbetning eller lagring utanför Azure efterlevnadsgräns, samt data som flödar till Azure efterlevnadsgräns.
Det är ditt ansvar att hantera om dina data kommer att flöda utanför organisationens efterlevnad och geografiska gränser och eventuella relaterade konsekvenser, och att lämpliga behörigheter, gränser och godkännanden etableras.
MCP-implementeringar är mottagliga för risker, till exempel attacker, sammanhängande fel och förlust av mänsklig tillsyn. Du kan minska dessa risker genom att granska MCP-servrar för säkerhet och tillförlitlighet, enligt bästa praxis för Microsoft och industry och implementera godkännandemekanismer och övervakning av sammanhängande beteenden.
Du ansvarar för att noggrant granska och testa program som du skapar i samband med dina specifika användningsfall och fatta alla lämpliga beslut och anpassningar. Detta omfattar implementering av dina egna ansvarsfulla AI-åtgärder, till exempel metaprompter, innehållsfilter eller andra säkerhetssystem, och att se till att dina program uppfyller lämpliga kvalitets-, tillförlitlighets-, säkerhets- och tillförlitlighetsstandarder. Mer information finns i Azure AI-sökning Transparency Note.
En MCP Server-kunskapskälla (förhandsversion) ansluter alla system som exponerar en Model Context Protocol (MCP)-kompatibel slutpunkt till en agentisk hämtningspipeline i Azure AI-sökning. Kunskapskällor skapas oberoende av varandra, refereras i en kunskapsbas och används som grunddata när kunskapsbasen efterfrågas vid körning.
MCP-verktyg visar data och funktioner från externa system som anropsbara funktioner som agenter anropar vid frågetillfället. Detta gör MCP Server-kunskapskällor användbara när den information du behöver finns i interna verktyg, API:er från tredje part eller anpassade serverdelar som Azure AI-sökning inte har inbyggt stöd för.
Till skillnad från indexerade kunskapskällor hämtar MCP Server-kunskapskällor live-data direkt när informationen hämtas. Ingen inmatningspipeline behövs. Du anger MCP-serverns URL och anger vilka verktyg Azure AI-sökning kan anropa vid frågetillfället.
Användningsstöd
| Azure Portal | Microsoft Foundry-portalen | .NET SDK | Python SDK | Java SDK | JavaScript SDK | REST API |
|---|---|---|---|---|---|---|
| ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Förutsättningar
En Azure AI-sökning-tjänst i valfri region som tillhandahåller agentdriven hämtning.
En MCP-server med ett eller flera verktyg. Servern måste kunna nås från Azure AI-sökning via HTTPS. För testning kan du använda den offentliga Microsoft Learn MCP-servern på
https://learn.microsoft.com/api/mcp.Behörighet att skapa kunskapskällor. Konfigurera nyckellös autentisering med rollen Search Service-deltagare tilldelad till ditt användarkonto (rekommenderas) eller använd en administratörs-API-nyckel.
Det senaste
Azure.Search.Documentsförhandsversionspaketet:dotnet add package Azure.Search.Documents --prereleaseFör nyckellös autentisering, paketet
Azure.Identity:dotnet add package Azure.Identity
Det senaste
azure-search-documentsförhandsversionspaketet:pip install --pre azure-search-documentsFör nyckellös autentisering, paketet
azure-identity:pip install azure-identity
Versionen 2026-08-01-preview av REST-API:t för söktjänsten.
För nyckellös autentisering inkluderar du en Microsoft Entra ID token i rubriken för
Authorizationvarje HTTP-begäran.
Begränsningar och överväganden
alwaysQuerySourcestöds inte för att hämta begäranden som refererar till en MCP Server-kunskapskälla.MCP-serververktygsanrop omfattar externa nätverksbegäranden och kan ta längre tid än vanliga sökfrågor. Ställ in
maxRuntimeInSecondspå hämta begäranden för att ge alla konfigurerade verktyg tillräckligt med tid för att svara.
Sök efter befintliga kunskapskällor
En kunskapskälla är ett återanvändbart objekt på toppnivå. Att känna till befintliga kunskapskällor är användbart för återanvändning eller namngivning av nya objekt.
Kör följande kod för att lista kunskapskällor efter namn och typ.
// List knowledge sources by name and type
using Azure.Search.Documents.Indexes;
var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential);
var knowledgeSources = indexClient.GetKnowledgeSourcesAsync();
Console.WriteLine("Knowledge Sources:");
await foreach (var ks in knowledgeSources)
{
Console.WriteLine($" Name: {ks.Name}, Type: {ks.GetType().Name}");
}
Referens:SearchIndexClient
# List knowledge sources by name and type
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient
index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))
for ks in index_client.list_knowledge_sources():
print(f" - {ks.name} ({ks.kind})")
Referens:SearchIndexClient
### List knowledge sources by name and type
GET {{search-url}}/knowledgesources?api-version={{api-version}}&$select=name,kind
Authorization: Bearer {{token}}
Referens:Kunskapskällor – lista
Du kan också returnera en enda kunskapskälla efter namn för att granska dess JSON-definition.
using Azure.Search.Documents.Indexes;
using System.Text.Json;
var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential);
// Specify the knowledge source name to retrieve
string ksNameToGet = "earth-knowledge-source";
// Get its definition
var knowledgeSourceResponse = await indexClient.GetKnowledgeSourceAsync(ksNameToGet);
var ks = knowledgeSourceResponse.Value;
// Serialize to JSON for display
var jsonOptions = new JsonSerializerOptions
{
WriteIndented = true,
DefaultIgnoreCondition = System.Text.Json.Serialization.JsonIgnoreCondition.Never
};
Console.WriteLine(JsonSerializer.Serialize(ks, ks.GetType(), jsonOptions));
Referens:SearchIndexClient
# Get a knowledge source definition
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient
import json
index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))
ks = index_client.get_knowledge_source("knowledge_source_name")
print(json.dumps(ks.as_dict(), indent = 2))
Referens:SearchIndexClient
### Get a knowledge source definition
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version={{api-version}}
Authorization: Bearer {{token}}
Referens:Kunskapskällor – Hämta
Följande JSON är ett exempelsvar för en MCP Server-kunskapskälla.
{
"name": "my-mcp-server-ks",
"kind": "mcpServer",
"description": "An MCP Server knowledge source.",
"resultsProcessing": "rerank",
"encryptionKey": null,
"mcpServerParameters": {
"serverURL": "https://learn.microsoft.com/api/mcp",
"authentication": null,
"tools": [
{
"name": "microsoft_docs_search",
"resultsProcessing": "none",
"maxOutputTokens": 1000,
"outputParsing": {
"kind": "auto",
"jsonParameters": null,
"splitParameters": null
}
}
]
}
}
Skapa en kunskapskälla
Kör följande kod för att skapa en MCP Server-kunskapskälla.
using Azure.Identity;
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
Uri searchEndpoint = new Uri("<search-endpoint>");
DefaultAzureCredential credential = new DefaultAzureCredential();
var indexClient = new SearchIndexClient(searchEndpoint, credential);
var mcpServer = new McpServerKnowledgeSource(
"my-mcp-server-ks",
new McpServerKnowledgeSourceParameters(
"https://learn.microsoft.com/api/mcp",
new[]
{
new McpServerTool
{
Name = "microsoft_docs_search",
OutputParsing = new McpServerAutoOutputParsing(),
ResultsProcessing = KnowledgeSourceResultsProcessing.None,
MaxOutputTokens = 1000
}
}))
{
Description = "An MCP Server knowledge source.",
ResultsProcessing = KnowledgeSourceResultsProcessing.Rerank
};
await indexClient.CreateOrUpdateKnowledgeSourceAsync(mcpServer);
Referens:SearchIndexClient
from azure.identity import DefaultAzureCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import (
McpServerAutoOutputParsing,
McpServerKnowledgeSource,
McpServerKnowledgeSourceParameters,
McpServerTool,
)
index_client = SearchIndexClient(
endpoint="<search-endpoint>",
credential=DefaultAzureCredential(),
)
knowledge_source = McpServerKnowledgeSource(
name="my-mcp-server-ks",
description="An MCP Server knowledge source.",
results_processing="rerank",
mcp_server_parameters=McpServerKnowledgeSourceParameters(
server_url="https://learn.microsoft.com/api/mcp",
tools=[
McpServerTool(
name="microsoft_docs_search",
output_parsing=McpServerAutoOutputParsing(),
results_processing="none",
max_output_tokens=1000,
)
],
),
)
index_client.create_or_update_knowledge_source(knowledge_source)
saved_source = index_client.get_knowledge_source(
knowledge_source.name
)
assert saved_source.results_processing == "rerank"
assert (
saved_source.mcp_server_parameters.tools[0].results_processing
== "none"
)
Referens:SearchIndexClient, McpServerKnowledgeSource, McpServerTool
### Create an MCP Server knowledge source
PUT {{search-endpoint}}/knowledgesources/my-mcp-server-ks?api-version=2026-08-01-preview
Authorization: Bearer {{search-access-token}}
Content-Type: application/json
Prefer: return=representation
{
"name": "my-mcp-server-ks",
"kind": "mcpServer",
"description": "An MCP Server knowledge source.",
"resultsProcessing": "rerank",
"encryptionKey": null,
"mcpServerParameters": {
"serverURL": "https://learn.microsoft.com/api/mcp",
"tools": [
{
"name": "microsoft_docs_search",
"outputParsing": {
"kind": "auto"
},
"resultsProcessing": "none",
"maxOutputTokens": 1000
}
]
}
}
Autentiseringsalternativ
Om MCP-servern kräver autentisering använder du något av följande alternativ.
Använd foundryConnection endast när en agent från Foundry Agent Service anropar en kunskapsbas som innehåller den här MCP Server-kunskapskällan. I det flödet löser tjänsten anslutningen och matar in de nödvändiga autentiseringsuppgifterna när den anropar MCP-servern. Om du anropar kunskapsbasen direkt eller från en annan klient än Foundry Agent Service fungerar foundryConnection det inte.
"authentication": {
"kind": "foundryConnection",
"foundryConnectionParameters": {
"connectionId": "<foundry-connection-id>"
}
}
Skicka rubriker vid frågetillfället
Om en MCP-server kräver autentiseringsuppgifter per begäran skickar du dem på hämtningsbegäran med hjälp av kopplade kontrollhuvuden. Den här syntaxen vidarebefordrar huvuden till MCP-servern utan att det strider mot Authorization eller api-key-huvudet som används för att autentisera till Azure AI-sökning.
Använd kunskapskällans namn som prefix:
| Kontrollrubrik | Description |
|---|---|
<knowledge-source-name>-header-name<N> |
Namnet på HTTP-huvudet som ska skickas till MCP-servern. |
<knowledge-source-name>-header-value<N> |
Värdet för HTTP-huvudet som ska skickas till MCP-servern. |
<N> är ett valfritt numeriskt suffix som parkopplar flera rubriker. Till exempel paras my-mcp-server-ks-header-name1 med my-mcp-server-ks-header-value1.
Skapa hämtningsklienten med en princip som lägger till kontrollhuvudena i hämtningsbegäran.
using Azure.Identity;
using Azure.Core;
using Azure.Core.Pipeline;
using Azure.Search.Documents;
using Azure.Search.Documents.KnowledgeBases;
using Azure.Search.Documents.KnowledgeBases.Models;
string knowledgeSourceName = "my-mcp-server-ks";
var options = new SearchClientOptions();
options.AddPolicy(new McpPassthroughHeaderPolicy(knowledgeSourceName), HttpPipelinePosition.PerCall);
var retrievalClient = new KnowledgeBaseRetrievalClient(
endpoint: new Uri(searchEndpoint),
knowledgeBaseName: knowledgeBaseName,
credential: credential,
options: options);
var request = new KnowledgeBaseRetrievalRequest();
request.Messages.Add(
new KnowledgeBaseMessage(new[] { new KnowledgeBaseMessageTextContent("Find Azure AI Search MCP guidance.") })
{
Role = "user"
});
request.KnowledgeSourceParams.Add(new SearchIndexKnowledgeSourceParams(knowledgeSourceName));
Response<KnowledgeBaseRetrievalResponse> response = await retrievalClient.RetrieveAsync(request);
sealed class McpPassthroughHeaderPolicy(string knowledgeSourceName) : HttpPipelineSynchronousPolicy
{
public override void OnSendingRequest(HttpMessage message)
{
message.Request.Headers.Add($"{knowledgeSourceName}-header-name", "Authorization");
message.Request.Headers.Add($"{knowledgeSourceName}-header-value", "Bearer <mcp-server-access-token>");
message.Request.Headers.Add($"{knowledgeSourceName}-header-name1", "x-custom-auth");
message.Request.Headers.Add($"{knowledgeSourceName}-header-value1", "<mcp-server-header-value>");
}
}
Skicka kontrollhuvudena i nyckelordsargumentet headers i hämtningsanropet.
from azure.search.documents.knowledgebases.models import (
KnowledgeBaseMessage,
KnowledgeBaseMessageTextContent,
KnowledgeBaseRetrievalRequest,
SearchIndexKnowledgeSourceParams,
)
knowledge_source_name = "my-mcp-server-ks"
request = KnowledgeBaseRetrievalRequest(
messages=[
KnowledgeBaseMessage(
role="user",
content=[
KnowledgeBaseMessageTextContent(
text="Find Azure AI Search MCP guidance."
)
],
)
],
knowledge_source_params=[
SearchIndexKnowledgeSourceParams(knowledge_source_name=knowledge_source_name)
],
)
result = retrieval_client.retrieve(
request,
headers={
f"{knowledge_source_name}-header-name": "Authorization",
f"{knowledge_source_name}-header-value": "Bearer <mcp-server-access-token>",
f"{knowledge_source_name}-header-name1": "x-custom-auth",
f"{knowledge_source_name}-header-value1": "<mcp-server-header-value>",
},
)
POST {{search-endpoint}}/knowledgebases/{{knowledge-base-name}}/retrieve?api-version=2026-08-01-preview
Authorization: Bearer {{search-access-token}}
Content-Type: application/json
my-mcp-server-ks-header-name: Authorization
my-mcp-server-ks-header-value: Bearer {{mcp-server-access-token}}
my-mcp-server-ks-header-name1: x-custom-auth
my-mcp-server-ks-header-value1: {{mcp-server-header-value}}
{
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "Find Azure AI Search MCP guidance."
}
]
}
],
"knowledgeSourceParams": [
{
"knowledgeSourceName": "my-mcp-server-ks",
"kind": "mcpServer"
}
]
}
Varje rubrikpar måste innehålla exakt ett namnkontrollhuvud och ett matchande värdekontrollhuvud. Rubriknamn och värden måste vara giltiga HTTP-begärandehuvuden. Om ett frågetidshuvud använder samma målhuvudnamn som en storedHeaders post åsidosätter frågetidsvärdet det lagrade värdet för den begäran.
Konfigurera verktyg
Varje post i matrisen tools anger ett tillåtet MCP-verktyg, valfritt utdataparsingbeteende och hur verktygets resultat bearbetas.
Använd resultsProcessing för att styra om hämtningsmotorn omrankar resultaten från ett verktyg. Giltiga värden är rerank och none. Information om mappningar från tidigare kontrakt finns i Migrera agentisk hämtningskod till den senaste versionen.
För varje MCP-verktyg löser tjänsten i den här ordningen: verktygsvärdet resultsProcessing , begärandevärdet i knowledgeSourceParams, värdet för den lagrade kunskapskällan och sedan rerank. Ett verktygsvärde gäller endast för verktyget.
Tolkningslägen för utdata
Som standard tillämpar hämtningsmotorn automatisk heuristik (auto) för att konvertera råa MCP-verktygsutdata till rangbara dokument. Du kan åsidosätta det här beteendet per verktyg med hjälp av outputParsing egenskapen .
Läget auto kräver ingen konfiguration. Hämtningsmotorn använder heuristik för att parsa verktygets utdata.
Tilldelas till en kunskapsbas
Om du är nöjd med kunskapskällan lägger du till den i en kunskapsbas.
Sök i en kunskapsbas
När kunskapsbasen har konfigurerats anropar du åtgärden hämta eller MCP-slutpunkten för att fråga MCP-serverinnehåll. MCP Server-kunskapskällor har källspecifikt hämtningsbeteende och svarsfält.
Så här fungerar hämtning för MCP Server-kunskapskällor
Vid frågetillfället granskar den stora språkmodell (LLM) som konfigurerats i kunskapsbasen de konfigurerade verktygen, väljer vilka som ska anropas baserat på användarfrågan och genererar argumenten för varje anrop. Azure AI-sökning anropar sedan de valda verktygen på MCP-servern och returnerar resultatet som rangordnade referenser.
MCP Server– specifika svarsfält
MCP Servers kunskapskällor returnerar källhänvisningar per dokument i matrisen references och diagnostik per anrop i matrisen activity. Om kunskapskällan visar flera verktyg och modellen väljer fler än ett, visas en separat aktivitetspost för varje anrop.
I följande exempel visas ett hämtningssvar som innehåller en referens för MCP Server-kunskapskällan och dess motsvarande aktivitetspost. Mer information om hur du tolkar hämtningssvar finns i Granska svaret.
Tip
Om du vill få sourceData för referenser anger du includeReferenceSourceData som true i posten för kunskapskällan i knowledgeSourceParams i hämtningsbegäran.
{
"response": [
// ... Response omitted for brevity
],
"activity": [
{
"type": "mcpServer",
"id": 1,
"knowledgeSourceName": "my-mcp-server-ks",
"queryTime": "2026-05-11T15:42:33.0888894Z",
"count": 10,
"elapsedMs": 768,
"mcpServerArguments": {
"toolName": "microsoft_docs_search",
"toolArguments": {
"query": "Azure AI Search features"
}
}
},
{
// ... Additional activity records omitted for brevity
}
],
"references": [
{
"type": "mcpServer",
"id": "0",
"activitySource": 1,
"sourceData": {
"title": "What is a knowledge source?",
"content": "..."
},
"rerankerScore": 2.96,
"toolName": "microsoft_docs_search",
"title": "my-mcp-server-ks microsoft_docs_search 1"
},
{
// ... Additional references omitted for brevity
}
]
}
Ta bort en kunskapskälla
Innan du kan ta bort en kunskapskälla måste du ta bort alla kunskapsbaser som refererar till den eller uppdatera kunskapsbasdefinitionen för att ta bort referensen. För kunskapskällor som genererar en index- och indexeringspipeline tas även alla genererade objekt bort. Men om du använde ett befintligt index för att skapa en kunskapskälla tas inte ditt index bort.
Om du försöker ta bort en kunskapskälla som används misslyckas åtgärden och returnerar en lista över berörda kunskapsbaser.
Så här tar du bort en kunskapskälla:
Hämta en lista över alla kunskapsbaser i söktjänsten.
using Azure.Search.Documents.Indexes; var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential); var knowledgeBases = indexClient.GetKnowledgeBasesAsync(); Console.WriteLine("Knowledge Bases:"); await foreach (var kb in knowledgeBases) { Console.WriteLine($" - {kb.Name}"); }Referens:SearchIndexClient
Ett exempelsvar kan se ut så här:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Hämta en individuell kunskapsbasdefinition för att söka efter referenser till kunskapskällor.
using Azure.Search.Documents.Indexes; using System.Text.Json; var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential); // Specify the knowledge base name to retrieve string kbNameToGet = "earth-knowledge-base"; // Get a specific knowledge base definition var knowledgeBaseResponse = await indexClient.GetKnowledgeBaseAsync(kbNameToGet); var kb = knowledgeBaseResponse.Value; // Serialize to JSON for display string json = JsonSerializer.Serialize(kb, new JsonSerializerOptions { WriteIndented = true }); Console.WriteLine(json);Referens:SearchIndexClient
Ett exempelsvar kan se ut så här:
{ "Name": "earth-knowledge-base", "KnowledgeSources": [ { "Name": "earth-knowledge-source" } ], "Models": [ {} ], "RetrievalReasoningEffort": {}, "OutputMode": {}, "ETag": "\u00220x8DE278629D782B3\u0022", "EncryptionKey": null, "Description": null, "RetrievalInstructions": null, "AnswerInstructions": null }Ta antingen bort kunskapsbasen eller, om du har flera kunskapskällor, uppdatera kunskapsbasen för att ta bort källan. Det här exemplet visar borttagning.
using Azure.Search.Documents.Indexes; var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential); await indexClient.DeleteKnowledgeBaseAsync(knowledgeBaseName); System.Console.WriteLine($"Knowledge base '{knowledgeBaseName}' deleted successfully.");Referens:SearchIndexClient
Ta bort kunskapskällan.
await indexClient.DeleteKnowledgeSourceAsync(knowledgeSourceName); System.Console.WriteLine($"Knowledge source '{knowledgeSourceName}' deleted successfully.");Referens:SearchIndexClient
Hämta en lista över alla kunskapsbaser i söktjänsten.
# Get knowledge bases from azure.core.credentials import AzureKeyCredential from azure.search.documents.indexes import SearchIndexClient index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key")) print("Knowledge Bases:") for kb in index_client.list_knowledge_bases(): print(f" - {kb.name}")Referens:SearchIndexClient
Ett exempelsvar kan se ut så här:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Hämta en individuell kunskapsbasdefinition för att söka efter referenser till kunskapskällor.
# Get a knowledge base definition from azure.core.credentials import AzureKeyCredential from azure.search.documents.indexes import SearchIndexClient index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key")) kb = index_client.get_knowledge_base("knowledge_base_name") print(kb)Referens:SearchIndexClient
Ett exempelsvar kan se ut så här:
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks" } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }Ta antingen bort kunskapsbasen eller, om du har flera kunskapskällor, uppdatera kunskapsbasen för att ta bort källan. Det här exemplet visar borttagning.
# Delete a knowledge base from azure.core.credentials import AzureKeyCredential from azure.search.documents.indexes import SearchIndexClient index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key")) index_client.delete_knowledge_base("knowledge_base_name") print(f"Knowledge base deleted successfully.")Referens:SearchIndexClient
Ta bort kunskapskällan.
# Delete a knowledge source from azure.core.credentials import AzureKeyCredential from azure.search.documents.indexes import SearchIndexClient index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key")) index_client.delete_knowledge_source("knowledge_source_name") print(f"Knowledge source deleted successfully.")Referens:SearchIndexClient
Hämta en lista över alla kunskapsbaser i söktjänsten.
### Get knowledge bases GET {{search-url}}/knowledgebases?api-version={{api-version}}&$select=name Authorization: Bearer {{token}}Referens:Kunskapsbaser – lista
Ett exempelsvar kan se ut så här:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Hämta en individuell kunskapsbasdefinition för att söka efter referenser till kunskapskällor.
### Get a knowledge base definition GET {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}} Authorization: Bearer {{token}}Referens:Kunskapsbaser – Hämta
Ett exempelsvar kan se ut så här:
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks" } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }Ta antingen bort kunskapsbasen eller, om du har flera kunskapskällor, uppdatera kunskapsbasen för att ta bort källan. Det här exemplet visar borttagning.
### Delete a knowledge base DELETE {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}} Authorization: Bearer {{token}}Referens:Kunskapsbaser – Ta bort
Ta bort kunskapskällan.
### Delete a knowledge source DELETE {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version={{api-version}} Authorization: Bearer {{token}}Referens:Kunskapskällor – Ta bort