Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Hinweis
Dieses Feature ist zurzeit als öffentliche Preview verfügbar. Diese Vorschauversion wird ohne Vereinbarung zum Servicelevel (SLA) bereitgestellt und ist nicht für Produktionsworkloads vorgesehen. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar. Weitere Informationen finden Sie unter Zusätzliche Nutzungsbestimmungen für Microsoft Azure-Vorschauen.
Verwenden Sie eine indizierte SharePoint-Wissensquelle , um SharePoint-Inhalte in einer agentischen Abrufpipeline zu indizieren und abzufragen. Wissensquellen werden unabhängig erstellt, in einer Wissensbasis referenziert und als Erdungsdaten verwendet, wenn ein Agent oder Chatbot eine Abrufaktion zur Abfragezeit aufruft.
Wenn Sie eine indizierte SharePoint-Wissensquelle erstellen, geben Sie eine SharePoint-Verbindungszeichenfolge, -Modelle und -Eigenschaften an, um automatisch die folgenden Azure AI Search-Objekte zu generieren:
- Eine Datenquelle, die auf SharePoint-Websites verweist.
- Ein Fähigkeitenset, das multimodale Inhalte in Abschnitte unterteilt und optional vektorisiert.
- Ein Index, der angereicherte Inhalte speichert und die Kriterien für den agentischen Abruf erfüllt.
- Ein Indexer, der die vorherigen Objekte verwendet, um die Indizierungs- und Anreicherungspipeline zu steuern.
Voraussetzungen
Azure AI Search in jeder Region, die agentisches Abrufen ermöglicht. Sie müssen den semantischen Sortierer aktiviert haben.
Abschluss der Anforderungen für den SharePoint-Indexer.
Abschluss von drei SharePoint-Indexerkonfigurationsschritten:
Die neueste Vorschauversion der
Azure.Search.DocumentsClientbibliothek für .NET SDK.Berechtigung zum Erstellen und Verwenden von Objekten in Azure AI Search. Wir empfehlen den rollenbasierten Zugriff, aber Sie können API-Schlüssel verwenden, wenn eine Rollenzuweisung nicht machbar ist. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit einem Suchdienst.
Überprüfen auf vorhandene Wissensquellen
Eine Wissensquelle ist ein wiederverwendbares Objekt der obersten Ebene. Das Wissen über vorhandene Wissensquellen ist hilfreich, um neue Objekte wiederzuverwenden oder zu benennen.
Führen Sie den folgenden Code aus, um Wissensquellen nach Namen und Typ auflisten.
// 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}");
}
Sie können auch eine einzelne Wissensquelle anhand des Namens zurück, um ihre JSON-Definition zu überprüfen.
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));
Der folgende JSON-Code ist eine Beispielantwort für eine indizierte SharePoint-Wissensquelle.
{
"name": "my-indexed-sharepoint-ks",
"kind": "indexedSharePoint",
"description": "A sample indexed SharePoint knowledge source",
"encryptionKey": null,
"indexedSharePointParameters": {
"connectionString": "<redacted>",
"containerName": "defaultSiteLibrary",
"query": null,
"ingestionParameters": {
"disableImageVerbalization": false,
"ingestionPermissionOptions": [],
"contentExtractionMode": "minimal",
"identity": null,
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "<redacted>",
"deploymentId": "text-embedding-3-large",
"apiKey": "<redacted>",
"modelName": "text-embedding-3-large",
"authIdentity": null
}
},
"chatCompletionModel": null,
"ingestionSchedule": null,
"assetStore": null,
"aiServices": null
},
"createdResources": {
"datasource": "my-indexed-sharepoint-ks-datasource",
"indexer": "my-indexed-sharepoint-ks-indexer",
"skillset": "my-indexed-sharepoint-ks-skillset",
"index": "my-indexed-sharepoint-ks-index"
}
},
"indexedOneLakeParameters": null
}
Hinweis
Vertrauliche Informationen sind redigiert. Die generierten Ressourcen werden am Ende der Antwort angezeigt.
Erstellen einer Wissensquelle
Führen Sie den folgenden Code aus, um eine indizierte SharePoint-Wissensquelle zu erstellen.
// Create an IndexedSharePoint knowledge source
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
using Azure.Search.Documents.KnowledgeBases.Models;
using Azure;
var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new AzureKeyCredential(apiKey));
var chatCompletionParams = new AzureOpenAIVectorizerParameters
{
ResourceUri = new Uri(aoaiEndpoint),
DeploymentName = aoaiGptDeployment,
ModelName = aoaiGptModel
};
var embeddingParams = new AzureOpenAIVectorizerParameters
{
ResourceUri = new Uri(aoaiEndpoint),
DeploymentName = aoaiEmbeddingDeployment,
ModelName = aoaiEmbeddingModel
};
var ingestionParams = new KnowledgeSourceIngestionParameters
{
DisableImageVerbalization = false,
ChatCompletionModel = new KnowledgeBaseAzureOpenAIModel(azureOpenAIParameters: chatCompletionParams),
EmbeddingModel = new KnowledgeSourceAzureOpenAIVectorizer
{
AzureOpenAIParameters = embeddingParams
}
};
var sharePointParams = new IndexedSharePointKnowledgeSourceParameters(
connectionString: sharePointConnectionString,
containerName: "defaultSiteLibrary")
{
IngestionParameters = ingestionParams
};
var knowledgeSource = new IndexedSharePointKnowledgeSource(
name: "my-indexed-sharepoint-ks",
indexedSharePointParameters: sharePointParams)
{
Description = "A sample indexed SharePoint knowledge source."
};
await indexClient.CreateOrUpdateKnowledgeSourceAsync(knowledgeSource);
Console.WriteLine($"Knowledge source '{knowledgeSource.Name}' created or updated successfully.");
Quellenspezifische Eigenschaften
Sie können die folgenden Eigenschaften übergeben, um eine indizierte SharePoint-Wissensquelle zu erstellen.
| Name | Description | Typ | Bearbeitbar | Erforderlich |
|---|---|---|---|---|
Name |
Der Name der Wissensquelle, die innerhalb der Wissensquellensammlung eindeutig sein und den Benennungsrichtlinien für Objekte in Azure KI-Suche entsprechen muss. | String | Nein | Yes |
Description |
Eine Beschreibung der Wissensquelle. | String | Yes | Nein |
EncryptionKey |
Ein kundenseitig verwalteter Schlüssel zum Verschlüsseln vertraulicher Informationen sowohl in der Wissensquelle als auch in den generierten Objekten. | Object | Yes | Nein |
IndexedSharePointKnowledgeSourceParameters |
Spezifische Parameter für indizierte SharePoint-Wissensquellen: connectionString, , containerNameund query. |
Object | Nein | Nein |
connectionString |
Die Verbindungszeichenfolge zu einer SharePoint-Website. Weitere Informationen finden Sie unter Verbindungszeichenfolgensyntax. | String | Yes | Yes |
containerName |
Die SharePoint-Bibliothek für den Zugriff. Verwenden Sie defaultSiteLibrary, um Inhalte aus der Standardbibliothek der Dokumente der Webseite zu indizieren oder allSiteLibraries, um Inhalte aus jeder Dokumentbibliothek der Webseite zu indizieren. Für den Moment ignorieren useQuery. |
String | Nein | Yes |
query |
Optionale Abfrage zum Filtern von SharePoint-Inhalten. | String | Yes | Nein |
ingestion_parameters-Eigenschaften
Nur für indizierte Wissensquellen können Sie die folgenden ingestionParameters-Eigenschaften übergeben, um zu steuern, wie Inhalte erfasst und verarbeitet werden.
| Name | Description | Typ | Bearbeitbar | Erforderlich |
|---|---|---|---|---|
Identity |
Eine verwaltete Identität, die im generierten Indexer verwendet werden soll. | Object | Yes | Nein |
DisableImageVerbalization |
Aktiviert oder deaktiviert die Verwendung der Bildverbalisierung. Der Standardwert lautet False und aktiviert die Bildverbalisierung. Legen Sie diese Einstellung auf True fest, um die Bildverbalisierung zu deaktivieren. |
Boolean | Nein | Nein |
ChatCompletionModel |
Ein Chatvervollständigungsmodell, das Bilder verbalisiert oder Inhalte extrahiert. Unterstützt werden die Modelle gpt-4o, gpt-4o-mini, gpt-4.1, gpt-4.1-mini, gpt-4.1-nano, gpt-5, gpt-5-mini und gpt-5-nano. Die GenAI Prompt-Fähigkeit wird in das generierte Skillset eingeschlossen. Zum Festlegen dieses Parameters muss zudem disable_image_verbalization auf False festgelegt werden. |
Object | Nur api_key und deployment_name sind bearbeitbar |
Nein |
EmbeddingModel |
Ein Texteinbettungsmodell, das Text- und Bildinhalte während der Indizierung und zur Abfragezeit vektorisiert. Unterstützt werden die Modelle text-embedding-ada-002, text-embedding-3-small und text-embedding-3-large. Die Azure OpenAI-Einbettungsfähigkeit wird in das generierte Skillset aufgenommen, und der Azure OpenAI Vectorizer wird in den generierten Index aufgenommen. |
Object | Nur api_key und deployment_name sind bearbeitbar |
Nein |
ContentExtractionMode |
Steuert, wie Inhalte aus Dateien extrahiert werden. Die Standardeinstellung ist minimal, wobei die Standardinhaltsextraktion für Text und Bilder verwendet wird. Wird für erweiterte Dokumententschlüsselung und -segmentierung auf standard festgelegt, indem Sie die Skill Azure Content Understanding verwenden, die in das generierte Skillset aufgenommen wird. Lediglich für standard können die Parameter AiServices und AssetStore angegeben werden. |
String | Nein | Nein |
AiServices |
Eine Microsoft Foundry-Ressource für den Zugriff auf Azure Content Understanding in Foundry Tools. Zur Festlegung dieses Parameters ist erforderlich, dass ContentExtractionMode auf standard festgelegt wird. |
Object | Nur api_key ist bearbeitbar |
Yes |
IngestionSchedule |
Fügt dem generierten Indexer Planungsinformationen hinzu. Sie können später auch einen Zeitplan hinzufügen , um die Datenaktualisierung zu automatisieren. | Object | Yes | Nein |
IngestionPermissionOptions |
Die Berechtigungen auf Dokumentebene für das Erfassen aus ausgewählten Wissensquellen: entweder ADLS Gen2 oder indiziertes SharePoint. Wenn Sie user_ids, group_ids oder rbac_scope angeben, sind die erfassten Berechtigungen im generierten ADLS Gen2-Indexer oderSharePoint-Indexer enthalten. |
Array | Nein | Nein |
Überprüfen des Erfassungsstatus
Führen Sie den folgenden Code aus, um den Fortschritt und den Zustand der Datenübernahme zu überwachen, einschließlich des Indexerstatus für Wissensquellen, die eine Indexerpipeline generieren und einen Suchindex auffüllen.
// Get knowledge source ingestion status
using Azure.Search.Documents.Indexes;
using System.Text.Json;
var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new AzureKeyCredential(apiKey));
// Get the knowledge source status
var statusResponse = await indexClient.GetKnowledgeSourceStatusAsync(knowledgeSourceName);
var status = statusResponse.Value;
// Serialize to JSON for display
var json = JsonSerializer.Serialize(status, new JsonSerializerOptions { WriteIndented = true });
Console.WriteLine(json);
Eine Antwort für eine Anforderung, die Datenerfassungsparameter enthält und Inhalte aktiv erfasst, kann wie im folgenden Beispiel aussehen.
{
"synchronizationStatus": "active", // creating, active, deleting
"synchronizationInterval" : "1d", // null if no schedule
"currentSynchronizationState" : { // spans multiple indexer "runs"
"startTime": "2025-10-27T19:30:00Z",
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
},
"lastSynchronizationState" : { // null on first sync
"startTime": "2025-10-27T19:30:00Z",
"endTime": "2025-10-27T19:40:01Z", // this value appears on the activity record on each /retrieve
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
},
"statistics": { // null on first sync
"totalSynchronization": 25,
"averageSynchronizationDuration": "00:15:20",
"averageItemsProcessedPerSynchronization" : 500
}
}
Überprüfen der erstellten Objekte
Wenn Sie eine indizierte SharePoint-Wissensquelle erstellen, erstellt Ihr Suchdienst auch einen Indexer, einen Index, ein Skillset und eine Datenquelle. Es wird empfohlen, diese Objekte nicht zu bearbeiten, da ein Fehler oder eine Inkompatibilität die Pipeline beschädigen kann.
Nachdem Sie eine Wissensquelle erstellt haben, werden in der Antwort die erstellten Objekte aufgelistet. Diese Objekte werden gemäß einer festen Vorlage erstellt, und ihre Namen basieren auf dem Namen der Wissensquelle. Sie können die Objektnamen nicht ändern.
Wir empfehlen die Verwendung des Azure-Portals zur Überprüfung der Ausgabeerstellung. Der Workflow lautet:
- Überprüfen Sie den Indexer auf Erfolgs- oder Fehlermeldungen. Hier werden Verbindungs- oder Kontingentfehler angezeigt.
- Überprüfen Sie den Index auf durchsuchbare Inhalte. Verwenden Sie den Such-Explorer, um Abfragen auszuführen.
- Überprüfen Sie die Kompetenzen, um zu erfahren, wie Ihre Inhalte aufgeteilt und optional vektorisiert werden.
- Überprüfen Sie die Datenquelle auf Verbindungsdetails. In unserem Beispiel werden der Einfachheit halber API-Schlüssel verwendet, aber Sie können Microsoft Entra ID für die Authentifizierung und die rollenbasierte Zugriffssteuerung für die Autorisierung verwenden.
Zuweisen zu einer Wissensbasis
Wenn Sie mit der Wissensquelle zufrieden sind, fahren Sie mit dem nächsten Schritt fort: Geben Sie die Wissensquelle in einer Wissensbasis an.
Achten Sie bei allen Wissensdatenbanken, die eine indizierte SharePoint-Wissensquelle angeben, unbedingt darauf, includeReferenceSourceData auf true zu setzen. Dieser Schritt ist erforderlich, damit die Quelldokument-URL in das Zitat eingefügt werden kann.
Nachdem die Wissensdatenbank konfiguriert wurde, verwenden Sie die Abrufaktion, um die Wissensquelle abzufragen.
Löschen einer Wissensquelle
Bevor Sie eine Wissensquelle löschen können, müssen Sie alle Knowledge Basen löschen, die darauf verweisen, oder die Knowledge Base-Definition aktualisieren, um den Verweis zu entfernen. Für Wissensquellen, die eine Index- und Indexerpipeline generieren, werden auch alle generierten Objekte gelöscht. Wenn Sie jedoch einen vorhandenen Index zum Erstellen einer Wissensquelle verwendet haben, wird Ihr Index nicht gelöscht.
Wenn Sie versuchen, eine verwendete Wissensquelle zu löschen, schlägt die Aktion fehl und gibt eine Liste der betroffenen Wissensdatenbanken zurück.
So löschen Sie eine Wissensquelle:
Rufen Sie eine Liste aller Wissensdatenbanken für Ihren Suchdienst ab.
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}"); }Eine Beispielantwort könnte wie folgt aussehen:
Knowledge Bases: - earth-knowledge-base - hotels-sample-knowledge-base - my-demo-knowledge-baseRufen Sie eine individuelle Wissensbasisdefinition ab, um nach Wissensquellenverweise zu suchen.
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);Eine Beispielantwort könnte wie folgt aussehen:
{ "Name": "earth-knowledge-base", "KnowledgeSources": [ { "Name": "earth-knowledge-source" } ], "Models": [ {} ], "RetrievalReasoningEffort": {}, "OutputMode": {}, "ETag": "\u00220x8DE278629D782B3\u0022", "EncryptionKey": null, "Description": null, "RetrievalInstructions": null, "AnswerInstructions": null }Löschen Sie entweder die Wissensdatenbank, oder aktualisieren Sie die Wissensbasis , um die Wissensquelle zu entfernen, wenn Sie über mehrere Quellen verfügen. In diesem Beispiel wird das Löschen gezeigt.
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.");Löschen Sie die Wissensquelle.
await indexClient.DeleteKnowledgeSourceAsync(knowledgeSourceName); System.Console.WriteLine($"Knowledge source '{knowledgeSourceName}' deleted successfully.");
Hinweis
Dieses Feature ist zurzeit als öffentliche Preview verfügbar. Diese Vorschauversion wird ohne Vereinbarung zum Servicelevel (SLA) bereitgestellt und ist nicht für Produktionsworkloads vorgesehen. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar. Weitere Informationen finden Sie unter Zusätzliche Nutzungsbestimmungen für Microsoft Azure-Vorschauen.
Verwenden Sie eine indizierte SharePoint-Wissensquelle , um SharePoint-Inhalte in einer agentischen Abrufpipeline zu indizieren und abzufragen. Wissensquellen werden unabhängig erstellt, in einer Wissensbasis referenziert und als Erdungsdaten verwendet, wenn ein Agent oder Chatbot eine Abrufaktion zur Abfragezeit aufruft.
Wenn Sie eine indizierte SharePoint-Wissensquelle erstellen, geben Sie eine SharePoint-Verbindungszeichenfolge, -Modelle und -Eigenschaften an, um automatisch die folgenden Azure AI Search-Objekte zu generieren:
- Eine Datenquelle, die auf SharePoint-Websites verweist.
- Ein Fähigkeitenset, das multimodale Inhalte in Abschnitte unterteilt und optional vektorisiert.
- Ein Index, der angereicherte Inhalte speichert und die Kriterien für den agentischen Abruf erfüllt.
- Ein Indexer, der die vorherigen Objekte verwendet, um die Indizierungs- und Anreicherungspipeline zu steuern.
Voraussetzungen
Azure AI Search in jeder Region, die agentisches Abrufen ermöglicht. Sie müssen den semantischen Sortierer aktiviert haben.
Abschluss der Anforderungen für den SharePoint-Indexer.
Abschluss von drei SharePoint-Indexerkonfigurationsschritten:
Die neueste Vorschauversion der
azure-search-documentsClientbibliothek für Python.Berechtigung zum Erstellen und Verwenden von Objekten in Azure AI Search. Wir empfehlen den rollenbasierten Zugriff, aber Sie können API-Schlüssel verwenden, wenn eine Rollenzuweisung nicht machbar ist. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit einem Suchdienst.
Überprüfen auf vorhandene Wissensquellen
Eine Wissensquelle ist ein wiederverwendbares Objekt der obersten Ebene. Das Wissen über vorhandene Wissensquellen ist hilfreich, um neue Objekte wiederzuverwenden oder zu benennen.
Führen Sie den folgenden Code aus, um Wissensquellen nach Namen und Typ auflisten.
# List knowledge sources by name and type
import requests
import json
endpoint = "{search_url}/knowledgesources"
params = {"api-version": "2025-11-01-preview", "$select": "name, kind"}
headers = {"api-key": "{api_key}"}
response = requests.get(endpoint, params = params, headers = headers)
print(json.dumps(response.json(), indent = 2))
Sie können auch eine einzelne Wissensquelle anhand des Namens zurück, um ihre JSON-Definition zu überprüfen.
# Get a knowledge source definition
import requests
import json
endpoint = "{search_url}/knowledgesources/{knowledge_source_name}"
params = {"api-version": "2025-11-01-preview"}
headers = {"api-key": "{api_key}"}
response = requests.get(endpoint, params = params, headers = headers)
print(json.dumps(response.json(), indent = 2))
Der folgende JSON-Code ist eine Beispielantwort für eine indizierte SharePoint-Wissensquelle.
{
"name": "my-indexed-sharepoint-ks",
"kind": "indexedSharePoint",
"description": "A sample indexed SharePoint knowledge source",
"encryptionKey": null,
"indexedSharePointParameters": {
"connectionString": "<redacted>",
"containerName": "defaultSiteLibrary",
"query": null,
"ingestionParameters": {
"disableImageVerbalization": false,
"ingestionPermissionOptions": [],
"contentExtractionMode": "minimal",
"identity": null,
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "<redacted>",
"deploymentId": "text-embedding-3-large",
"apiKey": "<redacted>",
"modelName": "text-embedding-3-large",
"authIdentity": null
}
},
"chatCompletionModel": null,
"ingestionSchedule": null,
"assetStore": null,
"aiServices": null
},
"createdResources": {
"datasource": "my-indexed-sharepoint-ks-datasource",
"indexer": "my-indexed-sharepoint-ks-indexer",
"skillset": "my-indexed-sharepoint-ks-skillset",
"index": "my-indexed-sharepoint-ks-index"
}
},
"indexedOneLakeParameters": null
}
Hinweis
Vertrauliche Informationen sind redigiert. Die generierten Ressourcen werden am Ende der Antwort angezeigt.
Erstellen einer Wissensquelle
Führen Sie den folgenden Code aus, um eine indizierte SharePoint-Wissensquelle zu erstellen.
# Create an indexed SharePoint knowledge source
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import IndexedSharePointKnowledgeSource, IndexedSharePointKnowledgeSourceParameters, KnowledgeBaseAzureOpenAIModel, AzureOpenAIVectorizerParameters, KnowledgeSourceAzureOpenAIVectorizer, KnowledgeSourceContentExtractionMode, KnowledgeSourceIngestionParameters
index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))
knowledge_source = IndexedSharePointKnowledgeSource(
name = "my-indexed-sharepoint-ks",
description = "A sample indexed SharePoint knowledge source.",
encryption_key = None,
indexed_share_point_parameters = IndexedSharePointKnowledgeSourceParameters(
connection_string = "connection_string",
container_name = "defaultSiteLibrary",
query = None,
ingestion_parameters = KnowledgeSourceIngestionParameters(
identity = None,
disable_image_verbalization = False,
chat_completion_model = KnowledgeBaseAzureOpenAIModel(
azure_open_ai_parameters = AzureOpenAIVectorizerParameters(
# TRIMMED FOR BREVITY
)
),
embedding_model = KnowledgeSourceAzureOpenAIVectorizer(
azure_open_ai_parameters=AzureOpenAIVectorizerParameters(
# TRIMMED FOR BREVITY
)
),
content_extraction_mode = KnowledgeSourceContentExtractionMode.MINIMAL,
ingestion_schedule = None,
ingestion_permission_options = None
)
)
)
index_client.create_or_update_knowledge_source(knowledge_source)
print(f"Knowledge source '{knowledge_source.name}' created or updated successfully.")
Quellenspezifische Eigenschaften
Sie können die folgenden Eigenschaften übergeben, um eine indizierte SharePoint-Wissensquelle zu erstellen.
| Name | Description | Typ | Bearbeitbar | Erforderlich |
|---|---|---|---|---|
name |
Der Name der Wissensquelle, die innerhalb der Wissensquellensammlung eindeutig sein und den Benennungsrichtlinien für Objekte in Azure KI-Suche entsprechen muss. | String | Nein | Yes |
description |
Eine Beschreibung der Wissensquelle. | String | Yes | Nein |
encryption_key |
Ein kundenseitig verwalteter Schlüssel zum Verschlüsseln vertraulicher Informationen sowohl in der Wissensquelle als auch in den generierten Objekten. | Object | Yes | Nein |
indexed_share_point_parameters |
Spezifische Parameter für indizierte SharePoint-Wissensquellen: connection_string, , container_nameund query. |
Object | Nein | Nein |
connection_string |
Die Verbindungszeichenfolge zu einer SharePoint-Website. Weitere Informationen finden Sie unter Verbindungszeichenfolgensyntax. | String | Yes | Yes |
container_name |
Die SharePoint-Bibliothek für den Zugriff. Verwenden Sie defaultSiteLibrary, um Inhalte aus der Standardbibliothek der Dokumente der Webseite zu indizieren oder allSiteLibraries, um Inhalte aus jeder Dokumentbibliothek der Webseite zu indizieren. Für den Moment ignorieren useQuery. |
String | Nein | Yes |
query |
Optionale Abfrage zum Filtern von SharePoint-Inhalten. | String | Yes | Nein |
ingestion_parameters-Eigenschaften
Nur für indizierte Wissensquellen können Sie die folgenden ingestionParameters-Eigenschaften übergeben, um zu steuern, wie Inhalte erfasst und verarbeitet werden.
| Name | Description | Typ | Bearbeitbar | Erforderlich |
|---|---|---|---|---|
identity |
Eine verwaltete Identität, die im generierten Indexer verwendet werden soll. | Object | Yes | Nein |
disable_image_verbalization |
Aktiviert oder deaktiviert die Verwendung der Bildverbalisierung. Der Standardwert lautet False und aktiviert die Bildverbalisierung. Legen Sie diese Einstellung auf True fest, um die Bildverbalisierung zu deaktivieren. |
Boolean | Nein | Nein |
chat_completion_model |
Ein Chatvervollständigungsmodell, das Bilder verbalisiert oder Inhalte extrahiert. Unterstützt werden die Modelle gpt-4o, gpt-4o-mini, gpt-4.1, gpt-4.1-mini, gpt-4.1-nano, gpt-5, gpt-5-mini und gpt-5-nano. Die GenAI Prompt-Fähigkeit wird in das generierte Skillset eingeschlossen. Zum Festlegen dieses Parameters muss zudem disable_image_verbalization auf False festgelegt werden. |
Object | Nur api_key und deployment_name sind bearbeitbar |
Nein |
embedding_model |
Ein Texteinbettungsmodell, das Text- und Bildinhalte während der Indizierung und zur Abfragezeit vektorisiert. Unterstützt werden die Modelle text-embedding-ada-002, text-embedding-3-small und text-embedding-3-large. Die Azure OpenAI-Einbettungsfähigkeit wird in das generierte Skillset aufgenommen, und der Azure OpenAI Vectorizer wird in den generierten Index aufgenommen. |
Object | Nur api_key und deployment_name sind bearbeitbar |
Nein |
content_extraction_mode |
Steuert, wie Inhalte aus Dateien extrahiert werden. Die Standardeinstellung ist minimal, wobei die Standardinhaltsextraktion für Text und Bilder verwendet wird. Wird für erweiterte Dokumententschlüsselung und -segmentierung auf standard festgelegt, indem Sie die Skill Azure Content Understanding verwenden, die in das generierte Skillset aufgenommen wird. Lediglich für standard können die Parameter ai_services und asset_store angegeben werden. |
String | Nein | Nein |
ai_services |
Eine Microsoft Foundry-Ressource für den Zugriff auf Azure Content Understanding in Foundry Tools. Zur Festlegung dieses Parameters ist erforderlich, dass content_extraction_mode auf standard festgelegt wird. |
Object | Nur api_key ist bearbeitbar |
Yes |
asset_store |
Ein BLOB-Container zum Speichern extrahierter Bilder. Zur Festlegung dieses Parameters ist erforderlich, dass content_extraction_mode auf standard festgelegt wird. |
Object | Nein | Nein |
ingestion_schedule |
Fügt dem generierten Indexer Planungsinformationen hinzu. Sie können später auch einen Zeitplan hinzufügen , um die Datenaktualisierung zu automatisieren. | Object | Yes | Nein |
ingestion_permission_options |
Die Berechtigungen auf Dokumentebene für das Erfassen aus ausgewählten Wissensquellen: entweder ADLS Gen2 oder indiziertes SharePoint. Wenn Sie user_ids, group_ids oder rbac_scope angeben, sind die erfassten Berechtigungen im generierten ADLS Gen2-Indexer oderSharePoint-Indexer enthalten. |
Array | Nein | Nein |
Überprüfen des Erfassungsstatus
Führen Sie den folgenden Code aus, um den Einleseprozess und den Zustand zu überwachen, einschließlich des Indexerstatus für Wissensquellen, die eine Indexerpipeline generieren und einen Suchindex befüllen.
# Check knowledge source ingestion status
import requests
import json
endpoint = "{search_url}/knowledgesources/{knowledge_source_name}/status"
params = {"api-version": "2025-11-01-preview"}
headers = {"api-key": "{api_key}"}
response = requests.get(endpoint, params = params, headers = headers)
print(json.dumps(response.json(), indent = 2))
Eine Antwort für eine Anforderung, die Datenerfassungsparameter enthält und Inhalte aktiv erfasst, kann wie im folgenden Beispiel aussehen.
{
"synchronizationStatus": "active", // creating, active, deleting
"synchronizationInterval" : "1d", // null if no schedule
"currentSynchronizationState" : { // spans multiple indexer "runs"
"startTime": "2025-10-27T19:30:00Z",
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
},
"lastSynchronizationState" : { // null on first sync
"startTime": "2025-10-27T19:30:00Z",
"endTime": "2025-10-27T19:40:01Z", // this value appears on the activity record on each /retrieve
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
},
"statistics": { // null on first sync
"totalSynchronization": 25,
"averageSynchronizationDuration": "00:15:20",
"averageItemsProcessedPerSynchronization" : 500
}
}
Überprüfen der erstellten Objekte
Wenn Sie eine indizierte SharePoint-Wissensquelle erstellen, erstellt Ihr Suchdienst auch einen Indexer, einen Index, ein Skillset und eine Datenquelle. Es wird empfohlen, diese Objekte nicht zu bearbeiten, da ein Fehler oder eine Inkompatibilität die Pipeline beschädigen kann.
Nachdem Sie eine Wissensquelle erstellt haben, werden in der Antwort die erstellten Objekte aufgelistet. Diese Objekte werden gemäß einer festen Vorlage erstellt, und ihre Namen basieren auf dem Namen der Wissensquelle. Sie können die Objektnamen nicht ändern.
Wir empfehlen die Verwendung des Azure-Portals zur Überprüfung der Ausgabeerstellung. Der Workflow lautet:
- Überprüfen Sie den Indexer auf Erfolgs- oder Fehlermeldungen. Hier werden Verbindungs- oder Kontingentfehler angezeigt.
- Überprüfen Sie den Index auf durchsuchbare Inhalte. Verwenden Sie den Such-Explorer, um Abfragen auszuführen.
- Überprüfen Sie die Kompetenzen, um zu erfahren, wie Ihre Inhalte aufgeteilt und optional vektorisiert werden.
- Überprüfen Sie die Datenquelle auf Verbindungsdetails. In unserem Beispiel werden der Einfachheit halber API-Schlüssel verwendet, aber Sie können Microsoft Entra ID für die Authentifizierung und die rollenbasierte Zugriffssteuerung für die Autorisierung verwenden.
Zuweisen zu einer Wissensbasis
Wenn Sie mit der Wissensquelle zufrieden sind, fahren Sie mit dem nächsten Schritt fort: Geben Sie die Wissensquelle in einer Wissensbasis an.
Achten Sie bei allen Wissensdatenbanken, die eine indizierte SharePoint-Wissensquelle angeben, unbedingt darauf, includeReferenceSourceData auf true zu setzen. Dieser Schritt ist erforderlich, damit die Quelldokument-URL in das Zitat eingefügt werden kann.
Nachdem die Wissensdatenbank konfiguriert wurde, verwenden Sie die Abrufaktion, um die Wissensquelle abzufragen.
Löschen einer Wissensquelle
Bevor Sie eine Wissensquelle löschen können, müssen Sie alle Knowledge Basen löschen, die darauf verweisen, oder die Knowledge Base-Definition aktualisieren, um den Verweis zu entfernen. Für Wissensquellen, die eine Index- und Indexerpipeline generieren, werden auch alle generierten Objekte gelöscht. Wenn Sie jedoch einen vorhandenen Index zum Erstellen einer Wissensquelle verwendet haben, wird Ihr Index nicht gelöscht.
Wenn Sie versuchen, eine verwendete Wissensquelle zu löschen, schlägt die Aktion fehl und gibt eine Liste der betroffenen Wissensdatenbanken zurück.
So löschen Sie eine Wissensquelle:
Rufen Sie eine Liste aller Wissensdatenbanken für Ihren Suchdienst ab.
# Get knowledge bases import requests import json endpoint = "{search_url}/knowledgebases" params = {"api-version": "2025-11-01-preview", "$select": "name"} headers = {"api-key": "{api_key}"} response = requests.get(endpoint, params = params, headers = headers) print(json.dumps(response.json(), indent = 2))Eine Beispielantwort könnte wie folgt aussehen:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Rufen Sie eine individuelle Wissensbasisdefinition ab, um nach Wissensquellenverweise zu suchen.
# Get a knowledge base definition import requests import json endpoint = "{search_url}/knowledgebases/{knowledge_base_name}" params = {"api-version": "2025-11-01-preview"} headers = {"api-key": "{api_key}"} response = requests.get(endpoint, params = params, headers = headers) print(json.dumps(response.json(), indent = 2))Eine Beispielantwort könnte wie folgt aussehen:
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks", } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }Löschen Sie entweder die Wissensdatenbank, oder aktualisieren Sie die Wissensbasis , um die Wissensquelle zu entfernen, wenn Sie über mehrere Quellen verfügen. In diesem Beispiel wird das Löschen gezeigt.
# 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.")Löschen Sie die Wissensquelle.
# 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.")
Hinweis
Dieses Feature ist zurzeit als öffentliche Preview verfügbar. Diese Vorschauversion wird ohne Vereinbarung zum Servicelevel (SLA) bereitgestellt und ist nicht für Produktionsworkloads vorgesehen. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar. Weitere Informationen finden Sie unter Zusätzliche Nutzungsbestimmungen für Microsoft Azure-Vorschauen.
Verwenden Sie eine indizierte SharePoint-Wissensquelle , um SharePoint-Inhalte in einer agentischen Abrufpipeline zu indizieren und abzufragen. Wissensquellen werden unabhängig erstellt, in einer Wissensbasis referenziert und als Erdungsdaten verwendet, wenn ein Agent oder Chatbot eine Abrufaktion zur Abfragezeit aufruft.
Wenn Sie eine indizierte SharePoint-Wissensquelle erstellen, geben Sie eine SharePoint-Verbindungszeichenfolge, -Modelle und -Eigenschaften an, um automatisch die folgenden Azure AI Search-Objekte zu generieren:
- Eine Datenquelle, die auf SharePoint-Websites verweist.
- Ein Fähigkeitenset, das multimodale Inhalte in Abschnitte unterteilt und optional vektorisiert.
- Ein Index, der angereicherte Inhalte speichert und die Kriterien für den agentischen Abruf erfüllt.
- Ein Indexer, der die vorherigen Objekte verwendet, um die Indizierungs- und Anreicherungspipeline zu steuern.
Voraussetzungen
Azure AI Search in jeder Region, die agentisches Abrufen ermöglicht. Sie müssen den semantischen Sortierer aktiviert haben.
Abschluss der Anforderungen für den SharePoint-Indexer.
Abschluss von drei SharePoint-Indexerkonfigurationsschritten:
Die Version 2025-11-01-Preview der REST-API des Suchdiensts.
Berechtigung zum Erstellen und Verwenden von Objekten in Azure AI Search. Wir empfehlen den rollenbasierten Zugriff, aber Sie können API-Schlüssel verwenden, wenn eine Rollenzuweisung nicht machbar ist. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit einem Suchdienst.
Überprüfen auf vorhandene Wissensquellen
Eine Wissensquelle ist ein wiederverwendbares Objekt der obersten Ebene. Das Wissen über vorhandene Wissensquellen ist hilfreich, um neue Objekte wiederzuverwenden oder zu benennen.
Verwenden Sie Wissensquellen – ABRUFEN (REST-API), um Wissensquellen nach Name und Typ auflisten.
### List knowledge sources by name and type
GET {{search-url}}/knowledgesources?api-version=2025-11-01-preview&$select=name,kind
api-key: {{api-key}}
Sie können auch eine einzelne Wissensquelle anhand des Namens zurück, um ihre JSON-Definition zu überprüfen.
### Get a knowledge source definition
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version=2025-11-01-preview
api-key: {{api-key}}
Der folgende JSON-Code ist eine Beispielantwort für eine indizierte SharePoint-Wissensquelle.
{
"name": "my-indexed-sharepoint-ks",
"kind": "indexedSharePoint",
"description": "A sample indexed SharePoint knowledge source",
"encryptionKey": null,
"indexedSharePointParameters": {
"connectionString": "<redacted>",
"containerName": "defaultSiteLibrary",
"query": null,
"ingestionParameters": {
"disableImageVerbalization": false,
"ingestionPermissionOptions": [],
"contentExtractionMode": "minimal",
"identity": null,
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "<redacted>",
"deploymentId": "text-embedding-3-large",
"apiKey": "<redacted>",
"modelName": "text-embedding-3-large",
"authIdentity": null
}
},
"chatCompletionModel": null,
"ingestionSchedule": null,
"assetStore": null,
"aiServices": null
},
"createdResources": {
"datasource": "my-indexed-sharepoint-ks-datasource",
"indexer": "my-indexed-sharepoint-ks-indexer",
"skillset": "my-indexed-sharepoint-ks-skillset",
"index": "my-indexed-sharepoint-ks-index"
}
},
"indexedOneLakeParameters": null
}
Hinweis
Vertrauliche Informationen sind redigiert. Die generierten Ressourcen werden am Ende der Antwort angezeigt.
Erstellen einer Wissensquelle
Verwenden Sie Wissensquellen – Erstellen oder Aktualisieren (REST-API), um eine indizierte SharePoint-Wissensquelle zu erstellen.
POST {{search-url}}/knowledgesources/my-indexed-sharepoint-ks?api-version=2025-11-01-preview
api-key: {{api-key}}
Content-Type: application/json
{
"name": "my-indexed-sharepoint-ks",
"kind": "indexedSharePoint",
"description": "A sample indexed SharePoint knowledge source.",
"encryptionKey": null,
"indexedSharePointParameters": {
"connectionString": "{{sharepoint-connection-string}}",
"containerName": "defaultSiteLibrary",
"query": null,
"ingestionParameters": {
"identity": null,
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"deploymentId": "text-embedding-3-large",
"modelName": "text-embedding-3-large",
"resourceUri": "{{aoai-endpoint}}",
"apiKey": "{{aoai-key}}"
}
},
"chatCompletionModel": null,
"disableImageVerbalization": false,
"ingestionSchedule": null,
"ingestionPermissionOptions": [],
"contentExtractionMode": "minimal"
}
}
}
Quellenspezifische Eigenschaften
Sie können die folgenden Eigenschaften übergeben, um eine indizierte SharePoint-Wissensquelle zu erstellen.
| Name | Description | Typ | Bearbeitbar | Erforderlich |
|---|---|---|---|---|
name |
Der Name der Wissensquelle, die innerhalb der Wissensquellensammlung eindeutig sein und den Benennungsrichtlinien für Objekte in Azure KI-Suche entsprechen muss. | String | Nein | Yes |
kind |
Die Art der Wissensquelle, in diesem Fall ist dies indexedSharePoint. |
String | Nein | Yes |
description |
Eine Beschreibung der Wissensquelle. | String | Yes | Nein |
encryptionKey |
Ein kundenseitig verwalteter Schlüssel zum Verschlüsseln vertraulicher Informationen sowohl in der Wissensquelle als auch in den generierten Objekten. | Object | Yes | Nein |
indexedSharePointParameters |
Spezifische Parameter für indizierte SharePoint-Wissensquellen: connectionString, , containerNameund query. |
Object | Nein | Yes |
connectionString |
Die Verbindungszeichenfolge zu einer SharePoint-Website. Weitere Informationen finden Sie unter Verbindungszeichenfolgensyntax. | String | Yes | Nein |
container_name |
Die SharePoint-Bibliothek für den Zugriff. Verwenden Sie defaultSiteLibrary, um Inhalte aus der Standardbibliothek der Dokumente der Webseite zu indizieren oder allSiteLibraries, um Inhalte aus jeder Dokumentbibliothek der Webseite zu indizieren. Für den Moment ignorieren useQuery. |
String | Nein | Yes |
query |
Optionale Abfrage zum Filtern von SharePoint-Inhalten. | String | Yes | Nein |
ingestionParameters-Eigenschaften
Nur für indizierte Wissensquellen können Sie die folgenden ingestionParameters-Eigenschaften übergeben, um zu steuern, wie Inhalte erfasst und verarbeitet werden.
| Name | Description | Typ | Bearbeitbar | Erforderlich |
|---|---|---|---|---|
identity |
Eine verwaltete Identität, die im generierten Indexer verwendet werden soll. | Object | Yes | Nein |
disableImageVerbalization |
Aktiviert oder deaktiviert die Verwendung der Bildverbalisierung. Der Standardwert lautet false und aktiviert die Bildverbalisierung. Legen Sie diese Einstellung auf true fest, um die Bildverbalisierung zu deaktivieren. |
Boolean | Nein | Nein |
chatCompletionModel |
Ein Chatvervollständigungsmodell, das Bilder verbalisiert oder Inhalte extrahiert. Unterstützt werden die Modelle gpt-4o, gpt-4o-mini, gpt-4.1, gpt-4.1-mini, gpt-4.1-nano, gpt-5, gpt-5-mini und gpt-5-nano. Die GenAI Prompt-Fähigkeit wird in das generierte Skillset eingeschlossen. Zum Festlegen dieses Parameters muss zudem disableImageVerbalization auf false festgelegt werden. |
Object | Nur apiKey und deploymentId sind bearbeitbar |
Nein |
embeddingModel |
Ein Texteinbettungsmodell, das Text- und Bildinhalte während der Indizierung und zur Abfragezeit vektorisiert. Unterstützt werden die Modelle text-embedding-ada-002, text-embedding-3-small und text-embedding-3-large. Die Azure OpenAI-Einbettungsfähigkeit wird in das generierte Skillset aufgenommen, und der Azure OpenAI Vectorizer wird in den generierten Index aufgenommen. |
Object | Nur apiKey und deploymentId sind bearbeitbar |
Nein |
contentExtractionMode |
Steuert, wie Inhalte aus Dateien extrahiert werden. Die Standardeinstellung ist minimal, wobei die Standardinhaltsextraktion für Text und Bilder verwendet wird. Wird für erweiterte Dokumententschlüsselung und -segmentierung auf standard festgelegt, indem Sie die Skill Azure Content Understanding verwenden, die in das generierte Skillset aufgenommen wird. Lediglich für standard können die Parameter aiServices und assetStore angegeben werden. |
String | Nein | Nein |
aiServices |
Eine Microsoft Foundry-Ressource für den Zugriff auf Azure Content Understanding in Foundry Tools. Zur Festlegung dieses Parameters ist erforderlich, dass contentExtractionMode auf standard festgelegt wird. |
Object | Nur apiKey ist bearbeitbar |
Yes |
assetStore |
Ein BLOB-Container zum Speichern extrahierter Bilder. Zur Festlegung dieses Parameters ist erforderlich, dass contentExtractionMode auf standard festgelegt wird. |
Object | Nein | Nein |
ingestionSchedule |
Fügt dem generierten Indexer Planungsinformationen hinzu. Sie können später auch einen Zeitplan hinzufügen , um die Datenaktualisierung zu automatisieren. | Object | Yes | Nein |
ingestionPermissionOptions |
Die Berechtigungen auf Dokumentebene für das Erfassen aus ausgewählten Wissensquellen: entweder ADLS Gen2 oder indiziertes SharePoint. Wenn Sie userIds, groupIds oder rbacScope angeben, sind die erfassten Berechtigungen im generierten ADLS Gen2-Indexer oderSharePoint-Indexer enthalten. |
Array | Nein | Nein |
Überprüfen des Erfassungsstatus
Verwenden Sie Wissensquellen – REST-API (Status), um den Status und die Integrität der Datenerfassung zu überwachen, einschließlich des Indexerstatus für Wissensquellen, die eine Indexerpipeline generieren und einen Suchindex auffüllen.
### Check knowledge source ingestion status
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}/status?api-version=2025-11-01-preview
api-key: {{api-key}}
Content-Type: application/json
Eine Antwort für eine Anforderung, die Datenerfassungsparameter enthält und Inhalte aktiv erfasst, kann wie im folgenden Beispiel aussehen.
{
"synchronizationStatus": "active", // creating, active, deleting
"synchronizationInterval" : "1d", // null if no schedule
"currentSynchronizationState" : { // spans multiple indexer "runs"
"startTime": "2025-10-27T19:30:00Z",
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
},
"lastSynchronizationState" : { // null on first sync
"startTime": "2025-10-27T19:30:00Z",
"endTime": "2025-10-27T19:40:01Z", // this value appears on the activity record on each /retrieve
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
},
"statistics": { // null on first sync
"totalSynchronization": 25,
"averageSynchronizationDuration": "00:15:20",
"averageItemsProcessedPerSynchronization" : 500
}
}
Überprüfen der erstellten Objekte
Wenn Sie eine indizierte SharePoint-Wissensquelle erstellen, erstellt Ihr Suchdienst auch einen Indexer, einen Index, ein Skillset und eine Datenquelle. Es wird empfohlen, diese Objekte nicht zu bearbeiten, da ein Fehler oder eine Inkompatibilität die Pipeline beschädigen kann.
Nachdem Sie eine Wissensquelle erstellt haben, werden in der Antwort die erstellten Objekte aufgelistet. Diese Objekte werden gemäß einer festen Vorlage erstellt, und ihre Namen basieren auf dem Namen der Wissensquelle. Sie können die Objektnamen nicht ändern.
Wir empfehlen die Verwendung des Azure-Portals zur Überprüfung der Ausgabeerstellung. Der Workflow lautet:
- Überprüfen Sie den Indexer auf Erfolgs- oder Fehlermeldungen. Hier werden Verbindungs- oder Kontingentfehler angezeigt.
- Überprüfen Sie den Index auf durchsuchbare Inhalte. Verwenden Sie den Such-Explorer, um Abfragen auszuführen.
- Überprüfen Sie die Kompetenzen, um zu erfahren, wie Ihre Inhalte aufgeteilt und optional vektorisiert werden.
- Überprüfen Sie die Datenquelle auf Verbindungsdetails. In unserem Beispiel werden der Einfachheit halber API-Schlüssel verwendet, aber Sie können Microsoft Entra ID für die Authentifizierung und die rollenbasierte Zugriffssteuerung für die Autorisierung verwenden.
Zuweisen zu einer Wissensbasis
Wenn Sie mit der Wissensquelle zufrieden sind, fahren Sie mit dem nächsten Schritt fort: Geben Sie die Wissensquelle in einer Wissensbasis an.
Achten Sie bei allen Wissensdatenbanken, die eine indizierte SharePoint-Wissensquelle angeben, unbedingt darauf, includeReferenceSourceData auf true zu setzen. Dieser Schritt ist erforderlich, damit die Quelldokument-URL in das Zitat eingefügt werden kann.
Nachdem die Wissensdatenbank konfiguriert wurde, verwenden Sie die Abrufaktion, um die Wissensquelle abzufragen.
Löschen einer Wissensquelle
Bevor Sie eine Wissensquelle löschen können, müssen Sie alle Knowledge Basen löschen, die darauf verweisen, oder die Knowledge Base-Definition aktualisieren, um den Verweis zu entfernen. Für Wissensquellen, die eine Index- und Indexerpipeline generieren, werden auch alle generierten Objekte gelöscht. Wenn Sie jedoch einen vorhandenen Index zum Erstellen einer Wissensquelle verwendet haben, wird Ihr Index nicht gelöscht.
Wenn Sie versuchen, eine verwendete Wissensquelle zu löschen, schlägt die Aktion fehl und gibt eine Liste der betroffenen Wissensdatenbanken zurück.
So löschen Sie eine Wissensquelle:
Rufen Sie eine Liste aller Wissensdatenbanken für Ihren Suchdienst ab.
### Get knowledge bases GET {{search-endpoint}}/knowledgebases?api-version=2025-11-01-preview&$select=name api-key: {{api-key}}Eine Beispielantwort könnte wie folgt aussehen:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Rufen Sie eine individuelle Wissensbasisdefinition ab, um nach Wissensquellenverweise zu suchen.
### Get a knowledge base definition GET {{search-endpoint}}/knowledgebases/{{knowledge-base-name}}?api-version=2025-11-01-preview api-key: {{api-key}}Eine Beispielantwort könnte wie folgt aussehen:
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks", } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }Löschen Sie entweder die Wissensdatenbank, oder aktualisieren Sie die Wissensdatenbank, indem Sie die Wissensquelle entfernen, wenn Sie über mehrere Quellen verfügen. In diesem Beispiel wird das Löschen gezeigt.
### Delete a knowledge base DELETE {{search-endpoint}}/knowledgebases/{{knowledge-base-name}}?api-version=2025-11-01-preview api-key: {{api-key}}Löschen Sie die Wissensquelle.
### Delete a knowledge source DELETE {{search-endpoint}}/knowledgesources/{{knowledge-source-name}}?api-version=2025-11-01-preview api-key: {{api-key}}