Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Uwaga / Notatka
Ta funkcja jest obecnie w publicznej wersji zapoznawczej. Ta wersja zapoznawcza jest udostępniana bez umowy dotyczącej poziomu usług i nie jest zalecana w przypadku obciążeń produkcyjnych. Niektóre funkcje mogą nie być obsługiwane lub mogą mieć ograniczone możliwości. Aby uzyskać więcej informacji, zobacz Warunki dodatkowe korzystania z testowych wersji Microsoft Azure.
Indeksowane źródło wiedzy programu SharePoint umożliwia indeksowanie i wykonywanie zapytań dotyczących zawartości programu SharePoint w potoku pobierania agenta. Źródła wiedzy są tworzone niezależnie, odwołują się do bazy wiedzy i używane jako dane bazowe, gdy agent lub czatbot wywołuje akcję pobierania w czasie wykonywania zapytania.
Podczas tworzenia indeksowanego źródła wiedzy programu SharePoint należy określić parametry połączenia programu SharePoint, modele i właściwości, aby automatycznie wygenerować następujące obiekty usługi Azure AI Search:
- Źródło danych wskazujące witryny programu SharePoint.
- Zestaw umiejętności, który fragmentuje i opcjonalnie wektoryzuje zawartość wielomodalną.
- Indeks przechowujący wzbogaconą zawartość i spełniający kryteria agentywnego odzysku.
- Indeksator, który używa poprzednich obiektów w celu sterowania procesem indeksowania i wzbogacenia danych.
Wymagania wstępne
Usługa Azure AI Search w dowolnym regionie, który zapewnia agentowe wyszukiwanie. Musi być włączony semantyczny ranger.
Ukończenie wymagań wstępnych indeksatora programu SharePoint.
Ukończenie trzech kroków konfiguracji indeksatora programu SharePoint:
Najnowsza wersja
Azure.Search.Documentszapoznawcza biblioteki klienta zestawu SDK platformy .NET.Uprawnienie do tworzenia obiektów i używania ich w usłudze Azure AI Search. Zalecamy dostęp oparty na rolach, ale możesz użyć kluczy interfejsu API , jeśli przypisanie roli nie jest możliwe. Aby uzyskać więcej informacji, zobacz Nawiązywanie połączenia z usługą wyszukiwania.
Sprawdzanie istniejących źródeł wiedzy
Źródłem wiedzy jest obiekt najwyższego poziomu wielokrotnego użytku. Znajomość istniejących źródeł wiedzy jest przydatna w przypadku ponownego użycia lub nazewnictwa nowych obiektów.
Uruchom następujący kod, aby wyświetlić listę źródeł wiedzy według nazwy i typu.
// 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}");
}
Możesz również zwrócić pojedyncze źródło wiedzy według nazwy, aby przejrzeć jego definicję JSON.
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));
Poniższy kod JSON to przykładowa odpowiedź dla indeksowanego źródła wiedzy programu SharePoint.
{
"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
}
Uwaga / Notatka
Informacje poufne są redagowane. Wygenerowane zasoby są wyświetlane na końcu odpowiedzi.
Tworzenie źródła wiedzy
Uruchom następujący kod, aby utworzyć indeksowane źródło wiedzy programu SharePoint.
// 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.");
Właściwości specyficzne dla źródła
Aby utworzyć indeksowane źródło wiedzy programu SharePoint, możesz przekazać następujące właściwości.
| Name | Description | Typ | Można edytować | Required |
|---|---|---|---|---|
Name |
Nazwa źródła wiedzy, które musi być unikatowe w kolekcji źródeł wiedzy i postępować zgodnie z wytycznymi dotyczącymi nazewnictwa obiektów w usłudze Azure AI Search. | Sznurek | Nie. | Tak |
Description |
Opis źródła wiedzy. | Sznurek | Tak | Nie. |
EncryptionKey |
Klucz zarządzany przez klienta do szyfrowania poufnych informacji zarówno w źródle wiedzy, jak i wygenerowanych obiektach. | Object | Tak | Nie. |
IndexedSharePointKnowledgeSourceParameters |
Parametry specyficzne dla indeksowanych źródeł wiedzy programu SharePoint: connectionString, containerNamei query. |
Object | Nie. | Nie. |
connectionString |
Parametry połączenia z witryną programu SharePoint. Aby uzyskać więcej informacji, zobacz Składnia parametrów połączenia. | Sznurek | Tak | Tak |
containerName |
Biblioteka programu SharePoint do uzyskiwania dostępu. Służy defaultSiteLibrary do indeksowania zawartości z domyślnej biblioteki dokumentów witryny lub allSiteLibraries indeksowania zawartości z każdej biblioteki dokumentów w witrynie. Ignoruj useQuery na razie. |
Sznurek | Nie. | Tak |
query |
Opcjonalne zapytanie do filtrowania zawartości programu SharePoint. | Sznurek | Tak | Nie. |
ingestion_parameters właściwości
Tylko w przypadku indeksowanych źródeł wiedzy można przekazać następujące ingestionParameters właściwości, aby kontrolować sposób pozyskiwania i przetwarzania zawartości.
| Name | Description | Typ | Można edytować | Required |
|---|---|---|---|---|
Identity |
Tożsamość zarządzana do użycia w wygenerowanym indeksatorze. | Object | Tak | Nie. |
DisableImageVerbalization |
Włącza lub wyłącza korzystanie z werbalizacji obrazów. Wartość domyślna to False, która umożliwia słowizację obrazów . Ustaw wartość na , True aby wyłączyć werbalizacja obrazów. |
logiczny | Nie. | Nie. |
ChatCompletionModel |
Model uzupełniania czatu, który słowizuje obrazy lub wyodrębnia zawartość. Obsługiwane modele to gpt-4o, , gpt-4o-mini, gpt-4.1gpt-4.1-minigpt-4.1-nanogpt-5, , gpt-5-mini, i .gpt-5-nano
Umiejętność Generowania monitu o usługę GenAI zostanie uwzględniona w wygenerowanych zestawach umiejętności. Ustawienie tego parametru wymaga disable_image_verbalization również ustawienia parametru na Falsewartość . |
Object | Tylko api_key i deployment_name są edytowalne |
Nie. |
EmbeddingModel |
Model osadzania tekstu, który wektoryzuje zawartość tekstu i obrazu podczas indeksowania i w czasie wykonywania zapytania. Obsługiwane modele to text-embedding-ada-002, text-embedding-3-smalli text-embedding-3-large.
Umiejętności osadzania w usłudze Azure OpenAI zostaną uwzględnione w wygenerowanych zestawach umiejętności, a wektoryzator azure OpenAI zostanie uwzględniony w wygenerowany indeks. |
Object | Tylko api_key i deployment_name są edytowalne |
Nie. |
ContentExtractionMode |
Określa sposób wyodrębniania zawartości z plików. Wartość domyślna to minimal, która używa standardowego wyodrębniania zawartości dla tekstu i obrazów. Ustaw wartość na standard na potrzeby zaawansowanego łamania dokumentów i fragmentowania przy użyciu umiejętności usługi Azure Content Understanding, która zostanie uwzględniona w wygenerowanych zestawach umiejętności.
standard Tylko AiServices parametry i AssetStore są określone. |
Sznurek | Nie. | Nie. |
AiServices |
Zasób firmy Microsoft Foundry umożliwiający dostęp do usługi Azure Content Understanding w narzędziach Foundry. Ustawienie tego parametru wymaga ustawienia ContentExtractionMode wartości standard. |
Object | Tylko api_key można edytować |
Tak |
IngestionSchedule |
Dodaje informacje o harmonogramie do wygenerowanego indeksatora. Możesz również dodać harmonogram później, aby zautomatyzować odświeżanie danych. | Object | Tak | Nie. |
IngestionPermissionOptions |
Uprawnienia na poziomie dokumentu do pozyskiwania z wybranych źródeł wiedzy: usługi ADLS Gen2 lub indeksowanego programu SharePoint. Jeśli określisz user_ids, group_idslub rbac_scopewygenerowany indeksator usługi ADLS Gen2 lub indeksator programu SharePoint będzie zawierać pozyskane uprawnienia. |
Array | Nie. | Nie. |
Sprawdzanie stanu pozyskiwania
Uruchom następujący kod, aby monitorować postęp pozyskiwania i kondycję, w tym stan indeksatora dla źródeł wiedzy, które generują potok indeksatora i wypełniają indeks wyszukiwania.
// 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);
Odpowiedź na żądanie zawierające parametry pozyskiwania i aktywnie pozyskiwanie zawartości może wyglądać podobnie do poniższego przykładu.
{
"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
}
}
Przeglądanie utworzonych obiektów
Podczas tworzenia indeksowanego źródła wiedzy programu SharePoint usługa wyszukiwania tworzy również indeksator, indeks, zestaw umiejętności i źródło danych. Nie zalecamy edytowania tych obiektów, ponieważ wprowadzenie błędu lub niezgodności może spowodować przerwanie potoku.
Po utworzeniu źródła wiedzy odpowiedź wyświetla listę utworzonych obiektów. Te obiekty są tworzone zgodnie z ustalonym szablonem, a ich nazwy są oparte na nazwie źródła wiedzy. Nie można zmienić nazw obiektów.
Zalecamy użycie witryny Azure Portal do weryfikowania tworzenia danych wyjściowych. Przepływ pracy to:
- Sprawdź indeksator pod kątem komunikatów o powodzeniu lub niepowodzeniu. Błędy połączenia lub limitu przydziału są wyświetlane tutaj.
- Sprawdź indeks pod kątem zawartości z możliwością wyszukiwania. Uruchamianie zapytań za pomocą Eksploratora wyszukiwania.
- Sprawdź zestaw umiejętności, aby dowiedzieć się, jak zawartość jest fragmentowana i opcjonalnie wektoryzowana.
- Sprawdź źródło danych, aby uzyskać szczegółowe informacje o połączeniu. W naszym przykładzie użyto kluczy interfejsu API dla uproszczenia, ale możesz użyć identyfikatora Entra firmy Microsoft do uwierzytelniania i kontroli dostępu opartej na rolach na potrzeby autoryzacji.
Przypisywanie do bazy wiedzy
Jeśli źródło wiedzy jest zadowalające, przejdź do następnego kroku: określ źródło wiedzy w bazie wiedzy.
W przypadku każdej bazy wiedzy, która określa indeksowane źródło wiedzy programu SharePoint, upewnij się, że ustawiono wartość includeReferenceSourceDatatrue. Ten krok jest niezbędny do ściągnięcia adresu URL dokumentu źródłowego do cytatu.
Po skonfigurowaniu bazy wiedzy użyj akcji pobierania , aby wysłać zapytanie do źródła wiedzy.
Usuwanie źródła wiedzy
Aby można było usunąć źródło wiedzy, należy usunąć dowolną bazę wiedzy, która odwołuje się do źródła wiedzy, lub zaktualizować definicję bazy wiedzy, aby usunąć odwołanie. W przypadku źródeł wiedzy, które generują potok indeksu i indeksatora, wszystkie wygenerowane obiekty również są usuwane. Jeśli jednak użyto istniejącego indeksu do utworzenia źródła wiedzy, indeks nie zostanie usunięty.
Jeśli spróbujesz usunąć używane źródło wiedzy, akcja zakończy się niepowodzeniem i zwróci listę baz wiedzy, których dotyczy problem.
Aby usunąć źródło wiedzy:
Pobierz listę wszystkich baz wiedzy w usłudze wyszukiwania.
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}"); }Przykładowa odpowiedź może wyglądać następująco:
Knowledge Bases: - earth-knowledge-base - hotels-sample-knowledge-base - my-demo-knowledge-baseUzyskaj pojedynczą definicję bazy wiedzy, aby sprawdzić odwołania do źródeł wiedzy.
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);Przykładowa odpowiedź może wyglądać następująco:
{ "Name": "earth-knowledge-base", "KnowledgeSources": [ { "Name": "earth-knowledge-source" } ], "Models": [ {} ], "RetrievalReasoningEffort": {}, "OutputMode": {}, "ETag": "\u00220x8DE278629D782B3\u0022", "EncryptionKey": null, "Description": null, "RetrievalInstructions": null, "AnswerInstructions": null }Usuń bazę wiedzy lub zaktualizuj bazę wiedzy , aby usunąć źródło wiedzy, jeśli masz wiele źródeł. W tym przykładzie pokazano usunięcie.
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.");Usuń źródło wiedzy.
await indexClient.DeleteKnowledgeSourceAsync(knowledgeSourceName); System.Console.WriteLine($"Knowledge source '{knowledgeSourceName}' deleted successfully.");
Uwaga / Notatka
Ta funkcja jest obecnie w publicznej wersji zapoznawczej. Ta wersja zapoznawcza jest udostępniana bez umowy dotyczącej poziomu usług i nie jest zalecana w przypadku obciążeń produkcyjnych. Niektóre funkcje mogą nie być obsługiwane lub mogą mieć ograniczone możliwości. Aby uzyskać więcej informacji, zobacz Warunki dodatkowe korzystania z testowych wersji Microsoft Azure.
Indeksowane źródło wiedzy programu SharePoint umożliwia indeksowanie i wykonywanie zapytań dotyczących zawartości programu SharePoint w potoku pobierania agenta. Źródła wiedzy są tworzone niezależnie, odwołują się do bazy wiedzy i używane jako dane bazowe, gdy agent lub czatbot wywołuje akcję pobierania w czasie wykonywania zapytania.
Podczas tworzenia indeksowanego źródła wiedzy programu SharePoint należy określić parametry połączenia programu SharePoint, modele i właściwości, aby automatycznie wygenerować następujące obiekty usługi Azure AI Search:
- Źródło danych wskazujące witryny programu SharePoint.
- Zestaw umiejętności, który fragmentuje i opcjonalnie wektoryzuje zawartość wielomodalną.
- Indeks przechowujący wzbogaconą zawartość i spełniający kryteria agentywnego odzysku.
- Indeksator, który używa poprzednich obiektów w celu sterowania procesem indeksowania i wzbogacenia danych.
Wymagania wstępne
Usługa Azure AI Search w dowolnym regionie, który zapewnia agentowe wyszukiwanie. Musi być włączony semantyczny ranger.
Ukończenie wymagań wstępnych indeksatora programu SharePoint.
Ukończenie trzech kroków konfiguracji indeksatora programu SharePoint:
Najnowsza wersja
azure-search-documentszapoznawcza biblioteki klienta języka Python.Uprawnienie do tworzenia obiektów i używania ich w usłudze Azure AI Search. Zalecamy dostęp oparty na rolach, ale możesz użyć kluczy interfejsu API , jeśli przypisanie roli nie jest możliwe. Aby uzyskać więcej informacji, zobacz Nawiązywanie połączenia z usługą wyszukiwania.
Sprawdzanie istniejących źródeł wiedzy
Źródłem wiedzy jest obiekt najwyższego poziomu wielokrotnego użytku. Znajomość istniejących źródeł wiedzy jest przydatna w przypadku ponownego użycia lub nazewnictwa nowych obiektów.
Uruchom następujący kod, aby wyświetlić listę źródeł wiedzy według nazwy i typu.
# 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))
Możesz również zwrócić pojedyncze źródło wiedzy według nazwy, aby przejrzeć jego definicję JSON.
# 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))
Poniższy kod JSON to przykładowa odpowiedź dla indeksowanego źródła wiedzy programu SharePoint.
{
"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
}
Uwaga / Notatka
Informacje poufne są redagowane. Wygenerowane zasoby są wyświetlane na końcu odpowiedzi.
Tworzenie źródła wiedzy
Uruchom następujący kod, aby utworzyć indeksowane źródło wiedzy programu SharePoint.
# 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.")
Właściwości specyficzne dla źródła
Aby utworzyć indeksowane źródło wiedzy programu SharePoint, możesz przekazać następujące właściwości.
| Name | Description | Typ | Można edytować | Required |
|---|---|---|---|---|
name |
Nazwa źródła wiedzy, które musi być unikatowe w kolekcji źródeł wiedzy i postępować zgodnie z wytycznymi dotyczącymi nazewnictwa obiektów w usłudze Azure AI Search. | Sznurek | Nie. | Tak |
description |
Opis źródła wiedzy. | Sznurek | Tak | Nie. |
encryption_key |
Klucz zarządzany przez klienta do szyfrowania poufnych informacji zarówno w źródle wiedzy, jak i wygenerowanych obiektach. | Object | Tak | Nie. |
indexed_share_point_parameters |
Parametry specyficzne dla indeksowanych źródeł wiedzy programu SharePoint: connection_string, container_namei query. |
Object | Nie. | Nie. |
connection_string |
Parametry połączenia z witryną programu SharePoint. Aby uzyskać więcej informacji, zobacz Składnia parametrów połączenia. | Sznurek | Tak | Tak |
container_name |
Biblioteka programu SharePoint do uzyskiwania dostępu. Służy defaultSiteLibrary do indeksowania zawartości z domyślnej biblioteki dokumentów witryny lub allSiteLibraries indeksowania zawartości z każdej biblioteki dokumentów w witrynie. Ignoruj useQuery na razie. |
Sznurek | Nie. | Tak |
query |
Opcjonalne zapytanie do filtrowania zawartości programu SharePoint. | Sznurek | Tak | Nie. |
ingestion_parameters właściwości
Tylko w przypadku indeksowanych źródeł wiedzy można przekazać następujące ingestionParameters właściwości, aby kontrolować sposób pozyskiwania i przetwarzania zawartości.
| Name | Description | Typ | Można edytować | Required |
|---|---|---|---|---|
identity |
Tożsamość zarządzana do użycia w wygenerowanym indeksatorze. | Object | Tak | Nie. |
disable_image_verbalization |
Włącza lub wyłącza korzystanie z werbalizacji obrazów. Wartość domyślna to False, która umożliwia słowizację obrazów . Ustaw wartość na , True aby wyłączyć werbalizacja obrazów. |
logiczny | Nie. | Nie. |
chat_completion_model |
Model uzupełniania czatu, który słowizuje obrazy lub wyodrębnia zawartość. Obsługiwane modele to gpt-4o, , gpt-4o-mini, gpt-4.1gpt-4.1-minigpt-4.1-nanogpt-5, , gpt-5-mini, i .gpt-5-nano
Umiejętność Generowania monitu o usługę GenAI zostanie uwzględniona w wygenerowanych zestawach umiejętności. Ustawienie tego parametru wymaga disable_image_verbalization również ustawienia parametru na Falsewartość . |
Object | Tylko api_key i deployment_name są edytowalne |
Nie. |
embedding_model |
Model osadzania tekstu, który wektoryzuje zawartość tekstu i obrazu podczas indeksowania i w czasie wykonywania zapytania. Obsługiwane modele to text-embedding-ada-002, text-embedding-3-smalli text-embedding-3-large.
Umiejętności osadzania w usłudze Azure OpenAI zostaną uwzględnione w wygenerowanych zestawach umiejętności, a wektoryzator azure OpenAI zostanie uwzględniony w wygenerowany indeks. |
Object | Tylko api_key i deployment_name są edytowalne |
Nie. |
content_extraction_mode |
Określa sposób wyodrębniania zawartości z plików. Wartość domyślna to minimal, która używa standardowego wyodrębniania zawartości dla tekstu i obrazów. Ustaw wartość na standard na potrzeby zaawansowanego łamania dokumentów i fragmentowania przy użyciu umiejętności usługi Azure Content Understanding, która zostanie uwzględniona w wygenerowanych zestawach umiejętności.
standard Tylko ai_services parametry i asset_store są określone. |
Sznurek | Nie. | Nie. |
ai_services |
Zasób firmy Microsoft Foundry umożliwiający dostęp do usługi Azure Content Understanding w narzędziach Foundry. Ustawienie tego parametru wymaga ustawienia content_extraction_mode wartości standard. |
Object | Tylko api_key można edytować |
Tak |
asset_store |
Kontener obiektów blob do przechowywania wyodrębnionych obrazów. Ustawienie tego parametru wymaga ustawienia content_extraction_mode wartości standard. |
Object | Nie. | Nie. |
ingestion_schedule |
Dodaje informacje o harmonogramie do wygenerowanego indeksatora. Możesz również dodać harmonogram później, aby zautomatyzować odświeżanie danych. | Object | Tak | Nie. |
ingestion_permission_options |
Uprawnienia na poziomie dokumentu do pozyskiwania z wybranych źródeł wiedzy: usługi ADLS Gen2 lub indeksowanego programu SharePoint. Jeśli określisz user_ids, group_idslub rbac_scopewygenerowany indeksator usługi ADLS Gen2 lub indeksator programu SharePoint będzie zawierać pozyskane uprawnienia. |
Array | Nie. | Nie. |
Sprawdzanie stanu pozyskiwania
Uruchom następujący kod, aby monitorować postęp pozyskiwania i kondycję systemu, w tym stan indeksatora dla źródeł wiedzy, które tworzą potok indeksowania i wypełniają indeks wyszukiwania.
# 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))
Odpowiedź na żądanie zawierające parametry pozyskiwania i aktywnie pozyskiwanie zawartości może wyglądać podobnie do poniższego przykładu.
{
"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
}
}
Przeglądanie utworzonych obiektów
Podczas tworzenia indeksowanego źródła wiedzy programu SharePoint usługa wyszukiwania tworzy również indeksator, indeks, zestaw umiejętności i źródło danych. Nie zalecamy edytowania tych obiektów, ponieważ wprowadzenie błędu lub niezgodności może spowodować przerwanie potoku.
Po utworzeniu źródła wiedzy odpowiedź wyświetla listę utworzonych obiektów. Te obiekty są tworzone zgodnie z ustalonym szablonem, a ich nazwy są oparte na nazwie źródła wiedzy. Nie można zmienić nazw obiektów.
Zalecamy użycie witryny Azure Portal do weryfikowania tworzenia danych wyjściowych. Przepływ pracy to:
- Sprawdź indeksator pod kątem komunikatów o powodzeniu lub niepowodzeniu. Błędy połączenia lub limitu przydziału są wyświetlane tutaj.
- Sprawdź indeks pod kątem zawartości z możliwością wyszukiwania. Uruchamianie zapytań za pomocą Eksploratora wyszukiwania.
- Sprawdź zestaw umiejętności, aby dowiedzieć się, jak zawartość jest fragmentowana i opcjonalnie wektoryzowana.
- Sprawdź źródło danych, aby uzyskać szczegółowe informacje o połączeniu. W naszym przykładzie użyto kluczy interfejsu API dla uproszczenia, ale możesz użyć identyfikatora Entra firmy Microsoft do uwierzytelniania i kontroli dostępu opartej na rolach na potrzeby autoryzacji.
Przypisywanie do bazy wiedzy
Jeśli źródło wiedzy jest zadowalające, przejdź do następnego kroku: określ źródło wiedzy w bazie wiedzy.
W przypadku każdej bazy wiedzy, która określa indeksowane źródło wiedzy programu SharePoint, upewnij się, że ustawiono wartość includeReferenceSourceDatatrue. Ten krok jest niezbędny do ściągnięcia adresu URL dokumentu źródłowego do cytatu.
Po skonfigurowaniu bazy wiedzy użyj akcji pobierania , aby wysłać zapytanie do źródła wiedzy.
Usuwanie źródła wiedzy
Aby można było usunąć źródło wiedzy, należy usunąć dowolną bazę wiedzy, która odwołuje się do źródła wiedzy, lub zaktualizować definicję bazy wiedzy, aby usunąć odwołanie. W przypadku źródeł wiedzy, które generują potok indeksu i indeksatora, wszystkie wygenerowane obiekty również są usuwane. Jeśli jednak użyto istniejącego indeksu do utworzenia źródła wiedzy, indeks nie zostanie usunięty.
Jeśli spróbujesz usunąć używane źródło wiedzy, akcja zakończy się niepowodzeniem i zwróci listę baz wiedzy, których dotyczy problem.
Aby usunąć źródło wiedzy:
Pobierz listę wszystkich baz wiedzy w usłudze wyszukiwania.
# 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))Przykładowa odpowiedź może wyglądać następująco:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Uzyskaj pojedynczą definicję bazy wiedzy, aby sprawdzić odwołania do źródeł wiedzy.
# 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))Przykładowa odpowiedź może wyglądać następująco:
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks", } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }Usuń bazę wiedzy lub zaktualizuj bazę wiedzy , aby usunąć źródło wiedzy, jeśli masz wiele źródeł. W tym przykładzie pokazano usunięcie.
# 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.")Usuń źródło wiedzy.
# 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.")
Uwaga / Notatka
Ta funkcja jest obecnie w publicznej wersji zapoznawczej. Ta wersja zapoznawcza jest udostępniana bez umowy dotyczącej poziomu usług i nie jest zalecana w przypadku obciążeń produkcyjnych. Niektóre funkcje mogą nie być obsługiwane lub mogą mieć ograniczone możliwości. Aby uzyskać więcej informacji, zobacz Warunki dodatkowe korzystania z testowych wersji Microsoft Azure.
Indeksowane źródło wiedzy programu SharePoint umożliwia indeksowanie i wykonywanie zapytań dotyczących zawartości programu SharePoint w potoku pobierania agenta. Źródła wiedzy są tworzone niezależnie, odwołują się do bazy wiedzy i używane jako dane bazowe, gdy agent lub czatbot wywołuje akcję pobierania w czasie wykonywania zapytania.
Podczas tworzenia indeksowanego źródła wiedzy programu SharePoint należy określić parametry połączenia programu SharePoint, modele i właściwości, aby automatycznie wygenerować następujące obiekty usługi Azure AI Search:
- Źródło danych wskazujące witryny programu SharePoint.
- Zestaw umiejętności, który fragmentuje i opcjonalnie wektoryzuje zawartość wielomodalną.
- Indeks przechowujący wzbogaconą zawartość i spełniający kryteria agentywnego odzysku.
- Indeksator, który używa poprzednich obiektów w celu sterowania procesem indeksowania i wzbogacenia danych.
Wymagania wstępne
Usługa Azure AI Search w dowolnym regionie, który zapewnia agentowe wyszukiwanie. Musi być włączony semantyczny ranger.
Ukończenie wymagań wstępnych indeksatora programu SharePoint.
Ukończenie trzech kroków konfiguracji indeksatora programu SharePoint:
Wersja 2025-11-01-preview interfejsów REST API usługi wyszukiwania.
Uprawnienie do tworzenia obiektów i używania ich w usłudze Azure AI Search. Zalecamy dostęp oparty na rolach, ale możesz użyć kluczy interfejsu API , jeśli przypisanie roli nie jest możliwe. Aby uzyskać więcej informacji, zobacz Nawiązywanie połączenia z usługą wyszukiwania.
Sprawdzanie istniejących źródeł wiedzy
Źródłem wiedzy jest obiekt najwyższego poziomu wielokrotnego użytku. Znajomość istniejących źródeł wiedzy jest przydatna w przypadku ponownego użycia lub nazewnictwa nowych obiektów.
Użyj Knowledge Sources - Get (REST API), aby wyświetlić listę źródeł wiedzy według nazwy i typu.
### List knowledge sources by name and type
GET {{search-url}}/knowledgesources?api-version=2025-11-01-preview&$select=name,kind
api-key: {{api-key}}
Możesz również zwrócić pojedyncze źródło wiedzy według nazwy, aby przejrzeć jego definicję JSON.
### Get a knowledge source definition
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version=2025-11-01-preview
api-key: {{api-key}}
Poniższy kod JSON to przykładowa odpowiedź dla indeksowanego źródła wiedzy programu SharePoint.
{
"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
}
Uwaga / Notatka
Informacje poufne są redagowane. Wygenerowane zasoby są wyświetlane na końcu odpowiedzi.
Tworzenie źródła wiedzy
Użyj źródeł wiedzy — utwórz lub zaktualizuj (interfejs API REST), aby utworzyć indeksowane źródło wiedzy programu SharePoint.
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"
}
}
}
Właściwości specyficzne dla źródła
Aby utworzyć indeksowane źródło wiedzy programu SharePoint, możesz przekazać następujące właściwości.
| Name | Description | Typ | Można edytować | Required |
|---|---|---|---|---|
name |
Nazwa źródła wiedzy, które musi być unikatowe w kolekcji źródeł wiedzy i postępować zgodnie z wytycznymi dotyczącymi nazewnictwa obiektów w usłudze Azure AI Search. | Sznurek | Nie. | Tak |
kind |
Rodzaj źródła wiedzy, który jest indexedSharePoint w tym przypadku. |
Sznurek | Nie. | Tak |
description |
Opis źródła wiedzy. | Sznurek | Tak | Nie. |
encryptionKey |
Klucz zarządzany przez klienta do szyfrowania poufnych informacji zarówno w źródle wiedzy, jak i wygenerowanych obiektach. | Object | Tak | Nie. |
indexedSharePointParameters |
Parametry specyficzne dla indeksowanych źródeł wiedzy programu SharePoint: connectionString, containerNamei query. |
Object | Nie. | Tak |
connectionString |
Parametry połączenia z witryną programu SharePoint. Aby uzyskać więcej informacji, zobacz Składnia parametrów połączenia. | Sznurek | Tak | Nie. |
container_name |
Biblioteka programu SharePoint do uzyskiwania dostępu. Służy defaultSiteLibrary do indeksowania zawartości z domyślnej biblioteki dokumentów witryny lub allSiteLibraries indeksowania zawartości z każdej biblioteki dokumentów w witrynie. Ignoruj useQuery na razie. |
Sznurek | Nie. | Tak |
query |
Opcjonalne zapytanie do filtrowania zawartości programu SharePoint. | Sznurek | Tak | Nie. |
ingestionParameters właściwości
Tylko w przypadku indeksowanych źródeł wiedzy można przekazać następujące ingestionParameters właściwości, aby kontrolować sposób pozyskiwania i przetwarzania zawartości.
| Name | Description | Typ | Można edytować | Required |
|---|---|---|---|---|
identity |
Tożsamość zarządzana do użycia w wygenerowanym indeksatorze. | Object | Tak | Nie. |
disableImageVerbalization |
Włącza lub wyłącza korzystanie z werbalizacji obrazów. Wartość domyślna to false, która umożliwia słowizację obrazów . Ustaw wartość na , true aby wyłączyć werbalizacja obrazów. |
logiczny | Nie. | Nie. |
chatCompletionModel |
Model uzupełniania czatu, który słowizuje obrazy lub wyodrębnia zawartość. Obsługiwane modele to gpt-4o, , gpt-4o-mini, gpt-4.1gpt-4.1-minigpt-4.1-nanogpt-5, , gpt-5-mini, i .gpt-5-nano
Umiejętność Generowania monitu o usługę GenAI zostanie uwzględniona w wygenerowanych zestawach umiejętności. Ustawienie tego parametru wymaga disableImageVerbalization również ustawienia parametru na falsewartość . |
Object | Tylko apiKey i deploymentId są edytowalne |
Nie. |
embeddingModel |
Model osadzania tekstu, który wektoryzuje zawartość tekstu i obrazu podczas indeksowania i w czasie wykonywania zapytania. Obsługiwane modele to text-embedding-ada-002, text-embedding-3-smalli text-embedding-3-large.
Umiejętności osadzania w usłudze Azure OpenAI zostaną uwzględnione w wygenerowanych zestawach umiejętności, a wektoryzator azure OpenAI zostanie uwzględniony w wygenerowany indeks. |
Object | Tylko apiKey i deploymentId są edytowalne |
Nie. |
contentExtractionMode |
Określa sposób wyodrębniania zawartości z plików. Wartość domyślna to minimal, która używa standardowego wyodrębniania zawartości dla tekstu i obrazów. Ustaw wartość na standard na potrzeby zaawansowanego łamania dokumentów i fragmentowania przy użyciu umiejętności usługi Azure Content Understanding, która zostanie uwzględniona w wygenerowanych zestawach umiejętności.
standard Tylko aiServices parametry i assetStore są określone. |
Sznurek | Nie. | Nie. |
aiServices |
Zasób firmy Microsoft Foundry umożliwiający dostęp do usługi Azure Content Understanding w narzędziach Foundry. Ustawienie tego parametru wymaga ustawienia contentExtractionMode wartości standard. |
Object | Tylko apiKey można edytować |
Tak |
assetStore |
Kontener obiektów blob do przechowywania wyodrębnionych obrazów. Ustawienie tego parametru wymaga ustawienia contentExtractionMode wartości standard. |
Object | Nie. | Nie. |
ingestionSchedule |
Dodaje informacje o harmonogramie do wygenerowanego indeksatora. Możesz również dodać harmonogram później, aby zautomatyzować odświeżanie danych. | Object | Tak | Nie. |
ingestionPermissionOptions |
Uprawnienia na poziomie dokumentu do pozyskiwania z wybranych źródeł wiedzy: usługi ADLS Gen2 lub indeksowanego programu SharePoint. Jeśli określisz userIds, groupIdslub rbacScopewygenerowany indeksator usługi ADLS Gen2 lub indeksator programu SharePoint będzie zawierać pozyskane uprawnienia. |
Array | Nie. | Nie. |
Sprawdzanie stanu pozyskiwania
Użyj źródeł wiedzy — stan (interfejs API REST), aby monitorować postęp pozyskiwania i kondycję, w tym stan indeksatora dla źródeł wiedzy, które generują potok indeksatora i wypełniają indeks wyszukiwania.
### 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
Odpowiedź na żądanie zawierające parametry pozyskiwania i aktywnie pozyskiwanie zawartości może wyglądać podobnie do poniższego przykładu.
{
"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
}
}
Przeglądanie utworzonych obiektów
Podczas tworzenia indeksowanego źródła wiedzy programu SharePoint usługa wyszukiwania tworzy również indeksator, indeks, zestaw umiejętności i źródło danych. Nie zalecamy edytowania tych obiektów, ponieważ wprowadzenie błędu lub niezgodności może spowodować przerwanie potoku.
Po utworzeniu źródła wiedzy odpowiedź wyświetla listę utworzonych obiektów. Te obiekty są tworzone zgodnie z ustalonym szablonem, a ich nazwy są oparte na nazwie źródła wiedzy. Nie można zmienić nazw obiektów.
Zalecamy użycie witryny Azure Portal do weryfikowania tworzenia danych wyjściowych. Przepływ pracy to:
- Sprawdź indeksator pod kątem komunikatów o powodzeniu lub niepowodzeniu. Błędy połączenia lub limitu przydziału są wyświetlane tutaj.
- Sprawdź indeks pod kątem zawartości z możliwością wyszukiwania. Uruchamianie zapytań za pomocą Eksploratora wyszukiwania.
- Sprawdź zestaw umiejętności, aby dowiedzieć się, jak zawartość jest fragmentowana i opcjonalnie wektoryzowana.
- Sprawdź źródło danych, aby uzyskać szczegółowe informacje o połączeniu. W naszym przykładzie użyto kluczy interfejsu API dla uproszczenia, ale możesz użyć identyfikatora Entra firmy Microsoft do uwierzytelniania i kontroli dostępu opartej na rolach na potrzeby autoryzacji.
Przypisywanie do bazy wiedzy
Jeśli źródło wiedzy jest zadowalające, przejdź do następnego kroku: określ źródło wiedzy w bazie wiedzy.
W przypadku każdej bazy wiedzy, która określa indeksowane źródło wiedzy programu SharePoint, upewnij się, że ustawiono wartość includeReferenceSourceDatatrue. Ten krok jest niezbędny do ściągnięcia adresu URL dokumentu źródłowego do cytatu.
Po skonfigurowaniu bazy wiedzy użyj akcji pobierania , aby wysłać zapytanie do źródła wiedzy.
Usuwanie źródła wiedzy
Aby można było usunąć źródło wiedzy, należy usunąć dowolną bazę wiedzy, która odwołuje się do źródła wiedzy, lub zaktualizować definicję bazy wiedzy, aby usunąć odwołanie. W przypadku źródeł wiedzy, które generują potok indeksu i indeksatora, wszystkie wygenerowane obiekty również są usuwane. Jeśli jednak użyto istniejącego indeksu do utworzenia źródła wiedzy, indeks nie zostanie usunięty.
Jeśli spróbujesz usunąć używane źródło wiedzy, akcja zakończy się niepowodzeniem i zwróci listę baz wiedzy, których dotyczy problem.
Aby usunąć źródło wiedzy:
Pobierz listę wszystkich baz wiedzy w usłudze wyszukiwania.
### Get knowledge bases GET {{search-endpoint}}/knowledgebases?api-version=2025-11-01-preview&$select=name api-key: {{api-key}}Przykładowa odpowiedź może wyglądać następująco:
{ "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)", "value": [ { "name": "my-kb" }, { "name": "my-kb-2" } ] }Uzyskaj pojedynczą definicję bazy wiedzy, aby sprawdzić odwołania do źródeł wiedzy.
### Get a knowledge base definition GET {{search-endpoint}}/knowledgebases/{{knowledge-base-name}}?api-version=2025-11-01-preview api-key: {{api-key}}Przykładowa odpowiedź może wyglądać następująco:
{ "name": "my-kb", "description": null, "retrievalInstructions": null, "answerInstructions": null, "outputMode": null, "knowledgeSources": [ { "name": "my-blob-ks", } ], "models": [], "encryptionKey": null, "retrievalReasoningEffort": { "kind": "low" } }Usuń bazę wiedzy lub zaktualizuj bazę wiedzy , usuwając źródło wiedzy, jeśli masz wiele źródeł. W tym przykładzie pokazano usunięcie.
### Delete a knowledge base DELETE {{search-endpoint}}/knowledgebases/{{knowledge-base-name}}?api-version=2025-11-01-preview api-key: {{api-key}}Usuń źródło wiedzy.
### Delete a knowledge source DELETE {{search-endpoint}}/knowledgesources/{{knowledge-source-name}}?api-version=2025-11-01-preview api-key: {{api-key}}