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.
Użyj źródła wiedzy OneLake, aby indeksować i wykonywać zapytania dotyczące plików Microsoft OneLake w agentowym potoku pobierania. Ź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 źródła wiedzy usługi OneLake należy określić zewnętrzne źródło danych, modele i właściwości, aby automatycznie wygenerować następujące obiekty usługi Azure AI Search:
- Źródło danych reprezentujące jezioro.
- Zestaw umiejętności, który fragmentuje i opcjonalnie wektoryzuje zawartość wielomodalną z jeziora.
- 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.
Wygenerowany indeksator jest zgodny z indeksatorem OneLake, którego wymagania wstępne, obsługiwane zadania, obsługiwane formaty dokumentów, obsługiwane skróty i ograniczenia dotyczą również źródeł wiedzy OneLake. Aby uzyskać więcej informacji, zobacz dokumentację indeksatora OneLake.
Wymagania wstępne
Usługa Azure AI Search w dowolnym regionie, który zapewnia agentowe wyszukiwanie. Musisz mieć włączony semantyczny ranker.
Najnowsza wersja
azure-search-documentszapoznawcza biblioteki klienta języka C#.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 źródła wiedzy OneLake.
{
"name": "my-onelake-ks",
"kind": "indexedOneLake",
"description": "A sample indexed OneLake knowledge source.",
"encryptionKey": null,
"indexedOneLakeParameters": {
"fabricWorkspaceId": "<REDACTED>",
"lakehouseId": "<REDACTED>",
"targetPath": null,
"ingestionParameters": {
"disableImageVerbalization": false,
"ingestionPermissionOptions": [],
"contentExtractionMode": "standard",
"identity": null,
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "<REDACTED>",
"deploymentId": "text-embedding-3-large",
"apiKey": "<REDACTED>",
"modelName": "text-embedding-3-large"
}
},
"chatCompletionModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "<REDACTED>",
"deploymentId": "gpt-5-mini",
"apiKey": "<REDACTED>",
"modelName": "gpt-5-mini"
}
},
"ingestionSchedule": null,
"aiServices": {
"uri": "<REDACTED>",
"apiKey": "<REDACTED>"
}
},
"createdResources": {
"datasource": "my-onelake-ks-datasource",
"indexer": "my-onelake-ks-indexer",
"skillset": "my-onelake-ks-skillset",
"index": "my-onelake-ks-index"
}
}
}
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ć źródło wiedzy OneLake.
// Create an IndexedOneLake 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 oneLakeParams = new IndexedOneLakeKnowledgeSourceParameters(
fabricWorkspaceId: fabricWorkspaceId,
lakehouseId: lakehouseId)
{
IngestionParameters = ingestionParams
};
var knowledgeSource = new IndexedOneLakeKnowledgeSource(
name: "my-onelake-ks",
indexedOneLakeParameters: oneLakeParams)
{
Description = "This knowledge source pulls content from a lakehouse."
};
await indexClient.CreateOrUpdateKnowledgeSourceAsync(knowledgeSource);
Console.WriteLine($"Knowledge source '{knowledgeSource.Name}' created or updated successfully.");
Właściwości specyficzne dla źródła
Możesz przekazać następujące właściwości, aby utworzyć źródło wiedzy OneLake.
| 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 | Tak | 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. |
IndexedOneLakeKnowledgeSourceParameters |
Parametry specyficzne dla źródeł wiedzy OneLake: fabricWorkspaceId, lakehouseIdi targetPath. |
Object | Tak | |
fabricWorkspaceId |
Identyfikator GUID obszaru roboczego, który zawiera obiekt lakehouse. | Sznurek | Nie. | Tak |
lakehouseId |
Identyfikator GUID jeziora. | Sznurek | Nie. | Tak |
targetPath |
Folder lub skrót w ramach lakehouse. Jeśli nie jest określone, cały lakehouse jest indeksowany. | Sznurek | Nie. | 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 na True, aby wyłączyć werbalizację 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ść GenAI Prompt będzie wliczona w wygenerowany zestaw umiejętności. Ustawienie tego parametru wymaga również, aby disable_image_verbalization było ustawione na False. |
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ść Azure OpenAI Embedding zostanie uwzględniona w wygenerowanym zestawie umiejętności, a wektoryzator Azure OpenAI zostanie uwzględniony w wygenerowanym indeksie. |
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. Tylko dla standard można określić parametry AiServices i AssetStore. |
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 i stan procesu pozyskiwania, w tym stan indeksatora dla źródeł wiedzy, które tworzą potok indeksacji i uzupeł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 pochłaniania i aktywnie pochłaniającą zawartość 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 źródła wiedzy usługi OneLake 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 pipeline'u.
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 źródło wiedzy OneLake, 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.
Użyj źródła wiedzy OneLake, aby indeksować i wykonywać zapytania dotyczące plików Microsoft OneLake w agentowym potoku pobierania. Ź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 źródła wiedzy usługi OneLake należy określić zewnętrzne źródło danych, modele i właściwości, aby automatycznie wygenerować następujące obiekty usługi Azure AI Search:
- Źródło danych reprezentujące jezioro.
- Zestaw umiejętności, który fragmentuje i opcjonalnie wektoryzuje zawartość wielomodalną z jeziora.
- 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.
Wygenerowany indeksator jest zgodny z indeksatorem OneLake, którego wymagania wstępne, obsługiwane zadania, obsługiwane formaty dokumentów, obsługiwane skróty i ograniczenia dotyczą również źródeł wiedzy OneLake. Aby uzyskać więcej informacji, zobacz dokumentację indeksatora OneLake.
Wymagania wstępne
Usługa Azure AI Search w dowolnym regionie, który zapewnia agentowe wyszukiwanie. Musisz mieć włączony semantyczny ranker.
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 źródła wiedzy OneLake.
{
"name": "my-onelake-ks",
"kind": "indexedOneLake",
"description": "A sample indexed OneLake knowledge source.",
"encryptionKey": null,
"indexedOneLakeParameters": {
"fabricWorkspaceId": "<REDACTED>",
"lakehouseId": "<REDACTED>",
"targetPath": null,
"ingestionParameters": {
"disableImageVerbalization": false,
"ingestionPermissionOptions": [],
"contentExtractionMode": "standard",
"identity": null,
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "<REDACTED>",
"deploymentId": "text-embedding-3-large",
"apiKey": "<REDACTED>",
"modelName": "text-embedding-3-large"
}
},
"chatCompletionModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "<REDACTED>",
"deploymentId": "gpt-5-mini",
"apiKey": "<REDACTED>",
"modelName": "gpt-5-mini"
}
},
"ingestionSchedule": null,
"aiServices": {
"uri": "<REDACTED>",
"apiKey": "<REDACTED>"
}
},
"createdResources": {
"datasource": "my-onelake-ks-datasource",
"indexer": "my-onelake-ks-indexer",
"skillset": "my-onelake-ks-skillset",
"index": "my-onelake-ks-index"
}
}
}
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ć źródło wiedzy OneLake.
# Create a OneLake knowledge source
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import IndexedOneLakeKnowledgeSource, IndexedOneLakeKnowledgeSourceParameters, KnowledgeBaseAzureOpenAIModel, AzureOpenAIVectorizerParameters, KnowledgeSourceAzureOpenAIVectorizer, KnowledgeSourceContentExtractionMode, KnowledgeSourceIngestionParameters
index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))
knowledge_source = IndexedOneLakeKnowledgeSource(
name = "my-onelake-ks",
description= "This knowledge source pulls content from a lakehouse.",
encryption_key = None,
indexed_one_lake_parameters = IndexedOneLakeKnowledgeSourceParameters(
fabric_workspace_id = "fabric_workspace_id",
lakehouse_id = "lakehouse_id",
target_path = 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
Możesz przekazać następujące właściwości, aby utworzyć źródło wiedzy OneLake.
| 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 | Tak | Tak |
description |
Opis źródła wiedzy. | Sznurek | Tak | Nie. |
encryption |
Klucz zarządzany przez klienta do szyfrowania poufnych informacji zarówno w źródle wiedzy, jak i wygenerowanych obiektach. | Object | Tak | Nie. |
indexed_one_lake_parameters |
Parametry specyficzne dla źródeł wiedzy OneLake: fabric_workspace_id, lakehouse_idi target_path. |
Object | Tak | |
fabric_workspace_id |
Identyfikator GUID obszaru roboczego, który zawiera obiekt lakehouse. | Sznurek | Nie. | Tak |
lakehouse_id |
Identyfikator GUID jeziora. | Sznurek | Nie. | Tak |
target_path |
Folder lub skrót w ramach lakehouse. Jeśli nie jest określone, cały lakehouse jest indeksowany. | Sznurek | Nie. | 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. |
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 na True, aby wyłączyć werbalizację 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ść GenAI Prompt będzie wliczona w wygenerowany zestaw umiejętności. Ustawienie tego parametru wymaga również, aby disable_image_verbalization było ustawione na False. |
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ść Azure OpenAI Embedding zostanie uwzględniona w wygenerowanym zestawie umiejętności, a wektoryzator Azure OpenAI zostanie uwzględniony w wygenerowanym indeksie. |
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. Tylko dla standard można określić parametry ai_services i asset_store. |
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 pochłaniania i aktywnie pochłaniającą zawartość 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 źródła wiedzy usługi OneLake 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 pipeline'u.
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 źródło wiedzy OneLake, 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.
Użyj źródła wiedzy OneLake, aby indeksować i wykonywać zapytania dotyczące plików Microsoft OneLake w agentowym potoku pobierania. Ź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 źródła wiedzy usługi OneLake należy określić zewnętrzne źródło danych, modele i właściwości, aby automatycznie wygenerować następujące obiekty usługi Azure AI Search:
- Źródło danych reprezentujące jezioro.
- Zestaw umiejętności, który fragmentuje i opcjonalnie wektoryzuje zawartość wielomodalną z jeziora.
- 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.
Wygenerowany indeksator jest zgodny z indeksatorem OneLake, którego wymagania wstępne, obsługiwane zadania, obsługiwane formaty dokumentów, obsługiwane skróty i ograniczenia dotyczą również źródeł wiedzy OneLake. Aby uzyskać więcej informacji, zobacz dokumentację indeksatora OneLake.
Wymagania wstępne
Usługa Azure AI Search w dowolnym regionie, który zapewnia agentowe wyszukiwanie. Musisz mieć włączony semantyczny ranker.
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 źródła wiedzy OneLake.
{
"name": "my-onelake-ks",
"kind": "indexedOneLake",
"description": "A sample indexed OneLake knowledge source.",
"encryptionKey": null,
"indexedOneLakeParameters": {
"fabricWorkspaceId": "<REDACTED>",
"lakehouseId": "<REDACTED>",
"targetPath": null,
"ingestionParameters": {
"disableImageVerbalization": false,
"ingestionPermissionOptions": [],
"contentExtractionMode": "standard",
"identity": null,
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "<REDACTED>",
"deploymentId": "text-embedding-3-large",
"apiKey": "<REDACTED>",
"modelName": "text-embedding-3-large"
}
},
"chatCompletionModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "<REDACTED>",
"deploymentId": "gpt-5-mini",
"apiKey": "<REDACTED>",
"modelName": "gpt-5-mini"
}
},
"ingestionSchedule": null,
"aiServices": {
"uri": "<REDACTED>",
"apiKey": "<REDACTED>"
}
},
"createdResources": {
"datasource": "my-onelake-ks-datasource",
"indexer": "my-onelake-ks-indexer",
"skillset": "my-onelake-ks-skillset",
"index": "my-onelake-ks-index"
}
}
}
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 (REST API), aby utworzyć źródło wiedzy OneLake.
PUT {{search-url}}/knowledgesources/my-onelake-ks?api-version=2025-11-01-preview
api-key: {{api-key}}
Content-Type: application/json
{
"name": "my-onelake-ks",
"kind": "indexedOneLake",
"description": "This knowledge source pulls content from a lakehouse.",
"indexedOneLakeParameters": {
"fabricWorkspaceId": "<YOUR FABRIC WORKSPACE GUID>",
"lakehouseId": "<YOUR LAKEHOUSE GUID>",
"targetPath": null,
"ingestionParameters": {
"identity": null,
"disableImageVerbalization": null,
"chatCompletionModel": { TRIMMED FOR BREVITY },
"embeddingModel": { TRIMMED FOR BREVITY },
"contentExtractionMode": "minimal",
"ingestionSchedule": null,
"ingestionPermissionOptions": []
}
}
}
Właściwości specyficzne dla źródła
Możesz przekazać następujące właściwości, aby utworzyć źródło wiedzy OneLake.
| 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 | Tak | Tak |
kind |
Rodzaj źródła wiedzy, który jest indexedOneLake 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. |
indexedOneLakeParameters |
Parametry specyficzne dla źródeł wiedzy OneLake: fabricWorkspaceId, lakehouseIdi targetPath. |
Object | Tak | |
fabricWorkspaceId |
Identyfikator GUID obszaru roboczego, który zawiera obiekt lakehouse. | Sznurek | Nie. | Tak |
lakehouseId |
Identyfikator GUID jeziora. | Sznurek | Nie. | Tak |
targetPath |
Folder lub skrót w ramach lakehouse. Jeśli nie jest określone, cały lakehouse jest indeksowany. | Sznurek | Nie. | 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 na true, aby wyłączyć werbalizację 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ść GenAI Prompt będzie wliczona w wygenerowany zestaw umiejętności. Ustawienie tego parametru wymaga również, aby disableImageVerbalization było ustawione na false. |
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ść Azure OpenAI Embedding zostanie uwzględniona w wygenerowanym zestawie umiejętności, a wektoryzator Azure OpenAI zostanie uwzględniony w wygenerowanym indeksie. |
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. Tylko dla standard można określić parametry aiServices i assetStore. |
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 (REST API), aby monitorować postęp i kondycję pozyskiwania, 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 pochłaniania i aktywnie pochłaniającą zawartość 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 źródła wiedzy usługi OneLake 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 pipeline'u.
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 źródło wiedzy OneLake, 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}}