Delen via


Een OneLake-kennisbron maken

Opmerking

Deze functie is momenteel beschikbaar als openbare preview-versie. Deze preview wordt geleverd zonder service level agreement en wordt niet aanbevolen voor productieworkloads. Bepaalde functies worden mogelijk niet ondersteund of hebben mogelijk beperkte mogelijkheden. Voor meer informatie, zie Aanvullende Gebruiksvoorwaarden voor Microsoft Azure Previews.

Gebruik een OneLake-kennisbron om Microsoft OneLake-bestanden te indexeren en op te vragen in een agentische ophaalpijplijn. Kennisbronnen worden onafhankelijk gemaakt, waarnaar wordt verwezen in een knowledge base en worden gebruikt als basisgegevens wanneer een agent of chatbot een ophaalactie aanroept tijdens het uitvoeren van query's.

Wanneer u een OneLake-kennisbron maakt, geeft u een externe gegevensbron, modellen en eigenschappen op om automatisch de volgende Azure AI Search-objecten te genereren:

  • Een gegevensbron die een lakehouse vertegenwoordigt.
  • Een vaardighedenpakket dat multimodale content uit het lakehouse segmenteert en gedeeltelijk vectoriseert.
  • Een index waarin verrijkte inhoud wordt opgeslagen en voldoet aan de criteria voor agentisch ophalen.
  • Een indexeerfunctie die gebruikmaakt van de vorige objecten om de indexerings- en verrijkingspijplijn aan te sturen.

De gegenereerde indexeerfunctie voldoet aan de OneLake-indexeerfunctie, waarvan de vereisten, ondersteunde taken, ondersteunde documentindelingen, ondersteunde snelkoppelingen en beperkingen ook van toepassing zijn op OneLake-kennisbronnen. Zie de documentatie voor de OneLake-indexeerfunctie voor meer informatie.

Vereiste voorwaarden

Controleren op bestaande kennisbronnen

Een kennisbron is een herbruikbaar object op het hoogste niveau. Kennis over bestaande kennisbronnen is handig voor het opnieuw gebruiken of benoemen van nieuwe objecten.

Voer de volgende code uit om kennisbronnen op naam en type weer te geven.

// 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}");
}

U kunt ook één kennisbron op naam retourneren om de JSON-definitie ervan te controleren.

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));

De volgende JSON is een voorbeeldantwoord voor een OneLake-kennisbron.

{
  "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"
    }
  }
}

Opmerking

Gevoelige informatie wordt redacted. De gegenereerde resources worden weergegeven aan het einde van het antwoord.

Een kennisbron maken

Voer de volgende code uit om een OneLake-kennisbron te maken.

// 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.");

Bronspecifieke eigenschappen

U kunt de volgende eigenschappen doorgeven om een OneLake-kennisbron te maken.

Naam Description Typologie Bewerkbaar Verplicht
Name De naam van de kennisbron, die uniek moet zijn binnen de verzameling kennisbronnen en de naamgevingsrichtlijnen voor objecten in Azure AI Search moet volgen. Snaar / Touwtje Yes Yes
Description Een beschrijving van de kennisbron. Snaar / Touwtje Yes Nee.
EncryptionKey Een door de klant beheerde sleutel voor het versleutelen van gevoelige informatie in zowel de kennisbron als de gegenereerde objecten. Object Yes Nee.
IndexedOneLakeKnowledgeSourceParameters Parameters die specifiek zijn voor OneLake-kennisbronnen: fabricWorkspaceId, lakehouseIden targetPath. Object Yes
fabricWorkspaceId De GUID van de werkruimte die het lakehouse bevat. Snaar / Touwtje Nee. Yes
lakehouseId De GUID van het lakehouse. Snaar / Touwtje Nee. Yes
targetPath Een map ofwel snelkoppeling in het lakehouse. Wanneer dit niet is opgegeven, wordt het hele lakehouse geïndexeerd. Snaar / Touwtje Nee. Nee.

ingestionParameters eigenschappen

Alleen voor geïndexeerde kennisbronnen kunt u de volgende ingestionParameters eigenschappen doorgeven om te bepalen hoe inhoud wordt opgenomen en verwerkt.

Naam Description Typologie Bewerkbaar Verplicht
Identity Een beheerde identiteit die moet worden gebruikt in de gegenereerde indexeerfunctie. Object Yes Nee.
DisableImageVerbalization Hiermee schakelt u het gebruik van verbalisatie van afbeeldingen in of uit. De standaardinstelling is False, waarmee de optie voor beeldverbalizatie ingeschakeld wordt. Stel in op True om de verbalisatie van afbeeldingen uit te schakelen. Booleaan Nee. Nee.
ChatCompletionModel Een voltooiingsmodel voor chats waarmee afbeeldingen worden verbaald of inhoud wordt geëxtraheerd. Ondersteunde modellen zijngpt-4o, gpt-4o-mini, , gpt-4.1, gpt-4.1-minigpt-4.1-nano, , gpt-5, , en gpt-5-minigpt-5-nano. De GenAI Prompt-vaardigheid wordt opgenomen in de gegenereerde vaardighedenset. Als u deze parameter instelt, is het ook vereist dat disable_image_verbalization is ingesteld op False. Object Alleen api_key en deployment_name kunnen worden bewerkt Nee.
EmbeddingModel Een model voor het insluiten van tekst dat tekst- en afbeeldingsinhoud vectoriseert tijdens het indexeren en uitvoeren van query's. Ondersteunde modellen zijn text-embedding-ada-002, text-embedding-3-smallen text-embedding-3-large. De azure OpenAI Embedding-vaardigheid wordt opgenomen in de gegenereerde vaardighedenset en de Azure OpenAI-vectorizer wordt opgenomen in de gegenereerde index. Object Alleen api_key en deployment_name kunnen worden bewerkt Nee.
ContentExtractionMode Bepaalt hoe inhoud wordt geëxtraheerd uit bestanden. De standaardwaarde is minimal, die gebruikmaakt van standaardinhoudextractie voor tekst en afbeeldingen. Ingesteld op standard om geavanceerd kraken en segmenteren van documenten te benutten met behulp van de vaardigheid Azure Content Understanding, die wordt opgenomen in de gegenereerde vaardighedenbundel. Alleen voor standard kunnen de AiServices- en AssetStore-parameters worden opgegeven. Snaar / Touwtje Nee. Nee.
AiServices Een Microsoft Foundry-resource voor toegang tot Azure Content Understanding in Foundry Tools. Als u deze parameter instelt, moet deze ContentExtractionMode zijn ingesteld op standard. Object Alleen api_key bewerkbaar Yes
IngestionSchedule Hiermee voegt u planningsgegevens toe aan de gegenereerde indexeerfunctie. U kunt later ook een planning toevoegen om het vernieuwen van gegevens te automatiseren. Object Yes Nee.
IngestionPermissionOptions De machtigingen op documentniveau die moeten worden opgenomen uit geselecteerde kennisbronnen: ADLS Gen2 of geïndexeerde SharePoint. Als u de gegenereerde user_ids of group_ids opgeeftrbac_scope, bevat deze de opgenomen machtigingen. Array Nee. Nee.

Opnamestatus controleren

Voer de volgende code uit om de voortgang en status van de opname te controleren, inclusief de indexeerstatus voor kennisbronnen die een indexeerpijplijn genereren en een zoekindex vullen.

// 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);

Een antwoord voor een aanvraag die opnameparameters bevat en inhoud actief opneemt, kan eruitzien als in het volgende voorbeeld.

{ 
  "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 
  } 
} 

De gemaakte objecten beoordelen

Wanneer u een OneLake-kennisbron maakt, maakt uw zoekservice ook een indexeerfunctie, index, vaardighedenset en gegevensbron. We raden u niet aan deze objecten te bewerken, omdat het introduceren van een fout of incompatibiliteit de pijplijn kan verbreken.

Nadat u een kennisbron hebt gemaakt, worden in het antwoord de gemaakte objecten weergegeven. Deze objecten worden gemaakt volgens een vaste sjabloon en hun namen zijn gebaseerd op de naam van de kennisbron. U kunt de objectnamen niet wijzigen.

We raden u aan de Azure-portal te gebruiken om het maken van uitvoer te valideren. De werkstroom is:

  1. Controleer de indexeerfunctie op geslaagde of mislukte berichten. Hier worden verbindings- of quotumfouten weergegeven.
  2. Controleer de index op doorzoekbare inhoud. Gebruik Search Explorer om query's uit te voeren.
  3. Controleer het vaardighedenpakket om te leren hoe uw inhoud wordt opgedeeld in stukken en optioneel gevectoriseerd.
  4. Controleer de gegevensbron op verbindingsgegevens. In ons voorbeeld worden API-sleutels gebruikt voor het gemak, maar u kunt Microsoft Entra-id gebruiken voor verificatie en op rollen gebaseerd toegangsbeheer voor autorisatie.

Toewijzen aan een kennisbank

Als u tevreden bent met de kennisbron, gaat u verder met de volgende stap: geef de kennisbron op in een knowledge base.

Zorg ervoor dat voor een kennisbank die een OneLake-kennisbron specificeert, includeReferenceSourceData wordt ingesteld op true. Deze stap is nodig voor het ophalen van de brondocument-URL in de bronvermelding.

Nadat de knowledge base is geconfigureerd, gebruikt u de actie ophalen om een query uit te voeren op de kennisbron.

Een kennisbron verwijderen

Voordat u een kennisbron kunt verwijderen, moet u een knowledge base verwijderen die ernaar verwijst of de knowledge base-definitie bijwerken om de verwijzing te verwijderen. Voor kennisbronnen die een index- en indexeerpijplijn genereren, worden ook alle gegenereerde objecten verwijderd. Als u echter een bestaande index hebt gebruikt om een kennisbron te maken, wordt uw index niet verwijderd.

Als u probeert een kennisbron te verwijderen die in gebruik is, mislukt de actie en wordt een lijst met betrokken knowledge bases geretourneerd.

Een kennisbron verwijderen:

  1. Haal een lijst op met alle knowledge bases op uw zoekservice.

    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}");
    }
    

    Een voorbeeld van een antwoord kan er als volgt uitzien:

     Knowledge Bases:
       - earth-knowledge-base
       - hotels-sample-knowledge-base
       - my-demo-knowledge-base
    
  2. Haal een afzonderlijke Knowledge Base-definitie op om te controleren op verwijzingen naar kennisbronnen.

    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);
    

    Een voorbeeld van een antwoord kan er als volgt uitzien:

     {
       "Name": "earth-knowledge-base",
       "KnowledgeSources": [
         {
           "Name": "earth-knowledge-source"
         }
       ],
       "Models": [
         {}
       ],
       "RetrievalReasoningEffort": {},
       "OutputMode": {},
       "ETag": "\u00220x8DE278629D782B3\u0022",
       "EncryptionKey": null,
       "Description": null,
       "RetrievalInstructions": null,
       "AnswerInstructions": null
     }
    
  3. Verwijder de knowledge base of werk de knowledge base bij om de kennisbron te verwijderen als u meerdere bronnen hebt. In dit voorbeeld ziet u de verwijdering.

    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.");
    
  4. Verwijder de kennisbron.

    await indexClient.DeleteKnowledgeSourceAsync(knowledgeSourceName);
    System.Console.WriteLine($"Knowledge source '{knowledgeSourceName}' deleted successfully.");
    

Opmerking

Deze functie is momenteel beschikbaar als openbare preview-versie. Deze preview wordt geleverd zonder service level agreement en wordt niet aanbevolen voor productieworkloads. Bepaalde functies worden mogelijk niet ondersteund of hebben mogelijk beperkte mogelijkheden. Voor meer informatie, zie Aanvullende Gebruiksvoorwaarden voor Microsoft Azure Previews.

Gebruik een OneLake-kennisbron om Microsoft OneLake-bestanden te indexeren en op te vragen in een agentische ophaalpijplijn. Kennisbronnen worden onafhankelijk gemaakt, waarnaar wordt verwezen in een knowledge base en worden gebruikt als basisgegevens wanneer een agent of chatbot een ophaalactie aanroept tijdens het uitvoeren van query's.

Wanneer u een OneLake-kennisbron maakt, geeft u een externe gegevensbron, modellen en eigenschappen op om automatisch de volgende Azure AI Search-objecten te genereren:

  • Een gegevensbron die een lakehouse vertegenwoordigt.
  • Een vaardighedenpakket dat multimodale content uit het lakehouse segmenteert en gedeeltelijk vectoriseert.
  • Een index waarin verrijkte inhoud wordt opgeslagen en voldoet aan de criteria voor agentisch ophalen.
  • Een indexeerfunctie die gebruikmaakt van de vorige objecten om de indexerings- en verrijkingspijplijn aan te sturen.

De gegenereerde indexeerfunctie voldoet aan de OneLake-indexeerfunctie, waarvan de vereisten, ondersteunde taken, ondersteunde documentindelingen, ondersteunde snelkoppelingen en beperkingen ook van toepassing zijn op OneLake-kennisbronnen. Zie de documentatie voor de OneLake-indexeerfunctie voor meer informatie.

Vereiste voorwaarden

Controleren op bestaande kennisbronnen

Een kennisbron is een herbruikbaar object op het hoogste niveau. Kennis over bestaande kennisbronnen is handig voor het opnieuw gebruiken of benoemen van nieuwe objecten.

Voer de volgende code uit om kennisbronnen op naam en type weer te geven.

# 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))

U kunt ook één kennisbron op naam retourneren om de JSON-definitie ervan te controleren.

# 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))

De volgende JSON is een voorbeeldantwoord voor een OneLake-kennisbron.

{
  "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"
    }
  }
}

Opmerking

Gevoelige informatie wordt redacted. De gegenereerde resources worden weergegeven aan het einde van het antwoord.

Een kennisbron maken

Voer de volgende code uit om een OneLake-kennisbron te maken.

# 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.")

Bronspecifieke eigenschappen

U kunt de volgende eigenschappen doorgeven om een OneLake-kennisbron te maken.

Naam Description Typologie Bewerkbaar Verplicht
name De naam van de kennisbron, die uniek moet zijn binnen de verzameling kennisbronnen en de naamgevingsrichtlijnen voor objecten in Azure AI Search moet volgen. Snaar / Touwtje Yes Yes
description Een beschrijving van de kennisbron. Snaar / Touwtje Yes Nee.
encryption Een door de klant beheerde sleutel voor het versleutelen van gevoelige informatie in zowel de kennisbron als de gegenereerde objecten. Object Yes Nee.
indexed_one_lake_parameters Parameters die specifiek zijn voor OneLake-kennisbronnen: fabric_workspace_id, lakehouse_iden target_path. Object Yes
fabric_workspace_id De GUID van de werkruimte die het lakehouse bevat. Snaar / Touwtje Nee. Yes
lakehouse_id De GUID van het lakehouse. Snaar / Touwtje Nee. Yes
target_path Een map ofwel snelkoppeling in het lakehouse. Wanneer dit niet is opgegeven, wordt het hele lakehouse geïndexeerd. Snaar / Touwtje Nee. Nee.

ingestionParameters eigenschappen

Alleen voor geïndexeerde kennisbronnen kunt u de volgende ingestionParameters eigenschappen doorgeven om te bepalen hoe inhoud wordt opgenomen en verwerkt.

Naam Description Typologie Bewerkbaar Verplicht
identity Een beheerde identiteit die moet worden gebruikt in de gegenereerde indexeerfunctie. Object Yes Nee.
disable_image_verbalization Hiermee schakelt u het gebruik van verbalisatie van afbeeldingen in of uit. De standaardinstelling is False, waarmee de optie voor beeldverbalizatie ingeschakeld wordt. Stel in op True om de verbalisatie van afbeeldingen uit te schakelen. Booleaan Nee. Nee.
chat_completion_model Een voltooiingsmodel voor chats waarmee afbeeldingen worden verbaald of inhoud wordt geëxtraheerd. Ondersteunde modellen zijngpt-4o, gpt-4o-mini, , gpt-4.1, gpt-4.1-minigpt-4.1-nano, , gpt-5, , en gpt-5-minigpt-5-nano. De GenAI Prompt-vaardigheid wordt opgenomen in de gegenereerde vaardighedenset. Als u deze parameter instelt, is het ook vereist dat disable_image_verbalization is ingesteld op False. Object Alleen api_key en deployment_name kunnen worden bewerkt Nee.
embedding_model Een model voor het insluiten van tekst dat tekst- en afbeeldingsinhoud vectoriseert tijdens het indexeren en uitvoeren van query's. Ondersteunde modellen zijn text-embedding-ada-002, text-embedding-3-smallen text-embedding-3-large. De azure OpenAI Embedding-vaardigheid wordt opgenomen in de gegenereerde vaardighedenset en de Azure OpenAI-vectorizer wordt opgenomen in de gegenereerde index. Object Alleen api_key en deployment_name kunnen worden bewerkt Nee.
content_extraction_mode Bepaalt hoe inhoud wordt geëxtraheerd uit bestanden. De standaardwaarde is minimal, die gebruikmaakt van standaardinhoudextractie voor tekst en afbeeldingen. Ingesteld op standard om geavanceerd kraken en segmenteren van documenten te benutten met behulp van de vaardigheid Azure Content Understanding, die wordt opgenomen in de gegenereerde vaardighedenbundel. Alleen voor standard kunnen de ai_services- en asset_store-parameters worden opgegeven. Snaar / Touwtje Nee. Nee.
ai_services Een Microsoft Foundry-resource voor toegang tot Azure Content Understanding in Foundry Tools. Als u deze parameter instelt, moet deze content_extraction_mode zijn ingesteld op standard. Object Alleen api_key bewerkbaar Yes
asset_store Een blobcontainer voor het opslaan van geëxtraheerde afbeeldingen. Als u deze parameter instelt, moet deze content_extraction_mode zijn ingesteld op standard. Object Nee. Nee.
ingestion_schedule Hiermee voegt u planningsgegevens toe aan de gegenereerde indexeerfunctie. U kunt later ook een planning toevoegen om het vernieuwen van gegevens te automatiseren. Object Yes Nee.
ingestion_permission_options De machtigingen op documentniveau die moeten worden opgenomen uit geselecteerde kennisbronnen: ADLS Gen2 of geïndexeerde SharePoint. Als u de gegenereerde user_ids of group_ids opgeeftrbac_scope, bevat deze de opgenomen machtigingen. Array Nee. Nee.

Opnamestatus controleren

Voer de volgende code uit om de voortgang en status van de opname te controleren, inclusief de indexeerstatus voor kennisbronnen die een indexeerpijplijn genereren en een zoekindex vullen.

# 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))

Een antwoord voor een aanvraag die opnameparameters bevat en inhoud actief opneemt, kan eruitzien als in het volgende voorbeeld.

{ 
  "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 
  } 
} 

De gemaakte objecten beoordelen

Wanneer u een OneLake-kennisbron maakt, maakt uw zoekservice ook een indexeerfunctie, index, vaardighedenset en gegevensbron. We raden u niet aan deze objecten te bewerken, omdat het introduceren van een fout of incompatibiliteit de pijplijn kan verbreken.

Nadat u een kennisbron hebt gemaakt, worden in het antwoord de gemaakte objecten weergegeven. Deze objecten worden gemaakt volgens een vaste sjabloon en hun namen zijn gebaseerd op de naam van de kennisbron. U kunt de objectnamen niet wijzigen.

We raden u aan de Azure-portal te gebruiken om het maken van uitvoer te valideren. De werkstroom is:

  1. Controleer de indexeerfunctie op geslaagde of mislukte berichten. Hier worden verbindings- of quotumfouten weergegeven.
  2. Controleer de index op doorzoekbare inhoud. Gebruik Search Explorer om query's uit te voeren.
  3. Controleer het vaardighedenpakket om te leren hoe uw inhoud wordt opgedeeld in stukken en optioneel gevectoriseerd.
  4. Controleer de gegevensbron op verbindingsgegevens. In ons voorbeeld worden API-sleutels gebruikt voor het gemak, maar u kunt Microsoft Entra-id gebruiken voor verificatie en op rollen gebaseerd toegangsbeheer voor autorisatie.

Toewijzen aan een kennisbank

Als u tevreden bent met de kennisbron, gaat u verder met de volgende stap: geef de kennisbron op in een knowledge base.

Zorg ervoor dat voor een kennisbank die een OneLake-kennisbron specificeert, includeReferenceSourceData wordt ingesteld op true. Deze stap is nodig voor het ophalen van de brondocument-URL in de bronvermelding.

Nadat de knowledge base is geconfigureerd, gebruikt u de actie ophalen om een query uit te voeren op de kennisbron.

Een kennisbron verwijderen

Voordat u een kennisbron kunt verwijderen, moet u een knowledge base verwijderen die ernaar verwijst of de knowledge base-definitie bijwerken om de verwijzing te verwijderen. Voor kennisbronnen die een index- en indexeerpijplijn genereren, worden ook alle gegenereerde objecten verwijderd. Als u echter een bestaande index hebt gebruikt om een kennisbron te maken, wordt uw index niet verwijderd.

Als u probeert een kennisbron te verwijderen die in gebruik is, mislukt de actie en wordt een lijst met betrokken knowledge bases geretourneerd.

Een kennisbron verwijderen:

  1. Haal een lijst op met alle knowledge bases op uw zoekservice.

    # 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))
    

    Een voorbeeld van een antwoord kan er als volgt uitzien:

     {
         "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)",
         "value": [
         {
             "name": "my-kb"
         },
         {
             "name": "my-kb-2"
         }
         ]
     }
    
  2. Haal een afzonderlijke Knowledge Base-definitie op om te controleren op verwijzingen naar kennisbronnen.

    # 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))
    

    Een voorbeeld van een antwoord kan er als volgt uitzien:

     {
       "name": "my-kb",
       "description": null,
       "retrievalInstructions": null,
       "answerInstructions": null,
       "outputMode": null,
       "knowledgeSources": [
         {
           "name": "my-blob-ks",
         }
       ],
       "models": [],
       "encryptionKey": null,
       "retrievalReasoningEffort": {
         "kind": "low"
       }
     }
    
  3. Verwijder de knowledge base of werk de knowledge base bij om de kennisbron te verwijderen als u meerdere bronnen hebt. In dit voorbeeld ziet u de verwijdering.

    # 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.")
    
  4. Verwijder de kennisbron.

    # 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.")
    

Opmerking

Deze functie is momenteel beschikbaar als openbare preview-versie. Deze preview wordt geleverd zonder service level agreement en wordt niet aanbevolen voor productieworkloads. Bepaalde functies worden mogelijk niet ondersteund of hebben mogelijk beperkte mogelijkheden. Voor meer informatie, zie Aanvullende Gebruiksvoorwaarden voor Microsoft Azure Previews.

Gebruik een OneLake-kennisbron om Microsoft OneLake-bestanden te indexeren en op te vragen in een agentische ophaalpijplijn. Kennisbronnen worden onafhankelijk gemaakt, waarnaar wordt verwezen in een knowledge base en worden gebruikt als basisgegevens wanneer een agent of chatbot een ophaalactie aanroept tijdens het uitvoeren van query's.

Wanneer u een OneLake-kennisbron maakt, geeft u een externe gegevensbron, modellen en eigenschappen op om automatisch de volgende Azure AI Search-objecten te genereren:

  • Een gegevensbron die een lakehouse vertegenwoordigt.
  • Een vaardighedenpakket dat multimodale content uit het lakehouse segmenteert en gedeeltelijk vectoriseert.
  • Een index waarin verrijkte inhoud wordt opgeslagen en voldoet aan de criteria voor agentisch ophalen.
  • Een indexeerfunctie die gebruikmaakt van de vorige objecten om de indexerings- en verrijkingspijplijn aan te sturen.

De gegenereerde indexeerfunctie voldoet aan de OneLake-indexeerfunctie, waarvan de vereisten, ondersteunde taken, ondersteunde documentindelingen, ondersteunde snelkoppelingen en beperkingen ook van toepassing zijn op OneLake-kennisbronnen. Zie de documentatie voor de OneLake-indexeerfunctie voor meer informatie.

Vereiste voorwaarden

Controleren op bestaande kennisbronnen

Een kennisbron is een herbruikbaar object op het hoogste niveau. Kennis over bestaande kennisbronnen is handig voor het opnieuw gebruiken of benoemen van nieuwe objecten.

Gebruik Knowledge Sources - Get (REST API) om kennisbronnen op naam en type weer te geven.

### List knowledge sources by name and type
GET {{search-url}}/knowledgesources?api-version=2025-11-01-preview&$select=name,kind
api-key: {{api-key}}

U kunt ook één kennisbron op naam retourneren om de JSON-definitie ervan te controleren.

### Get a knowledge source definition
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version=2025-11-01-preview
api-key: {{api-key}}

De volgende JSON is een voorbeeldantwoord voor een OneLake-kennisbron.

{
  "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"
    }
  }
}

Opmerking

Gevoelige informatie wordt redacted. De gegenereerde resources worden weergegeven aan het einde van het antwoord.

Een kennisbron maken

Kennisbronnen gebruiken : een OneLake-kennisbron maken of bijwerken (REST API ).

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": []
    }
  }
}

Bronspecifieke eigenschappen

U kunt de volgende eigenschappen doorgeven om een OneLake-kennisbron te maken.

Naam Description Typologie Bewerkbaar Verplicht
name De naam van de kennisbron, die uniek moet zijn binnen de verzameling kennisbronnen en de naamgevingsrichtlijnen voor objecten in Azure AI Search moet volgen. Snaar / Touwtje Yes Yes
kind Het soort kennisbron, in dit geval indexedOneLake. Snaar / Touwtje Nee. Yes
description Een beschrijving van de kennisbron. Snaar / Touwtje Yes Nee.
encryptionKey Een door de klant beheerde sleutel voor het versleutelen van gevoelige informatie in zowel de kennisbron als de gegenereerde objecten. Object Yes Nee.
indexedOneLakeParameters Parameters die specifiek zijn voor OneLake-kennisbronnen: fabricWorkspaceId, lakehouseIden targetPath. Object Yes
fabricWorkspaceId De GUID van de werkruimte die het lakehouse bevat. Snaar / Touwtje Nee. Yes
lakehouseId De GUID van het lakehouse. Snaar / Touwtje Nee. Yes
targetPath Een map ofwel snelkoppeling in het lakehouse. Wanneer dit niet is opgegeven, wordt het hele lakehouse geïndexeerd. Snaar / Touwtje Nee. Nee.

ingestionParameters eigenschappen

Alleen voor geïndexeerde kennisbronnen kunt u de volgende ingestionParameters eigenschappen doorgeven om te bepalen hoe inhoud wordt opgenomen en verwerkt.

Naam Description Typologie Bewerkbaar Verplicht
identity Een beheerde identiteit die moet worden gebruikt in de gegenereerde indexeerfunctie. Object Yes Nee.
disableImageVerbalization Hiermee schakelt u het gebruik van verbalisatie van afbeeldingen in of uit. De standaardinstelling is false, waarmee de optie voor beeldverbalizatie ingeschakeld wordt. Stel in op true om de verbalisatie van afbeeldingen uit te schakelen. Booleaan Nee. Nee.
chatCompletionModel Een voltooiingsmodel voor chats waarmee afbeeldingen worden verbaald of inhoud wordt geëxtraheerd. Ondersteunde modellen zijngpt-4o, gpt-4o-mini, , gpt-4.1, gpt-4.1-minigpt-4.1-nano, , gpt-5, , en gpt-5-minigpt-5-nano. De GenAI Prompt-vaardigheid wordt opgenomen in de gegenereerde vaardighedenset. Als u deze parameter instelt, is het ook vereist dat disableImageVerbalization is ingesteld op false. Object Alleen apiKey en deploymentId kunnen worden bewerkt Nee.
embeddingModel Een model voor het insluiten van tekst dat tekst- en afbeeldingsinhoud vectoriseert tijdens het indexeren en uitvoeren van query's. Ondersteunde modellen zijn text-embedding-ada-002, text-embedding-3-smallen text-embedding-3-large. De azure OpenAI Embedding-vaardigheid wordt opgenomen in de gegenereerde vaardighedenset en de Azure OpenAI-vectorizer wordt opgenomen in de gegenereerde index. Object Alleen apiKey en deploymentId kunnen worden bewerkt Nee.
contentExtractionMode Bepaalt hoe inhoud wordt geëxtraheerd uit bestanden. De standaardwaarde is minimal, die gebruikmaakt van standaardinhoudextractie voor tekst en afbeeldingen. Ingesteld op standard om geavanceerd kraken en segmenteren van documenten te benutten met behulp van de vaardigheid Azure Content Understanding, die wordt opgenomen in de gegenereerde vaardighedenbundel. Alleen voor standard kunnen de aiServices- en assetStore-parameters worden opgegeven. Snaar / Touwtje Nee. Nee.
aiServices Een Microsoft Foundry-resource voor toegang tot Azure Content Understanding in Foundry Tools. Als u deze parameter instelt, moet deze contentExtractionMode zijn ingesteld op standard. Object Alleen apiKey bewerkbaar Yes
assetStore Een blobcontainer voor het opslaan van geëxtraheerde afbeeldingen. Als u deze parameter instelt, moet deze contentExtractionMode zijn ingesteld op standard. Object Nee. Nee.
ingestionSchedule Hiermee voegt u planningsgegevens toe aan de gegenereerde indexeerfunctie. U kunt later ook een planning toevoegen om het vernieuwen van gegevens te automatiseren. Object Yes Nee.
ingestionPermissionOptions De machtigingen op documentniveau die moeten worden opgenomen uit geselecteerde kennisbronnen: ADLS Gen2 of geïndexeerde SharePoint. Als u de gegenereerde userIds of groupIds opgeeftrbacScope, bevat deze de opgenomen machtigingen. Array Nee. Nee.

Opnamestatus controleren

Gebruik Knowledge Sources - Status (REST API) om de opnamevoortgang en status te bewaken, inclusief de indexeerstatus voor kennisbronnen die een indexeerpijplijn genereren en een zoekindex vullen.

### 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 

Een antwoord voor een aanvraag die opnameparameters bevat en inhoud actief opneemt, kan eruitzien als in het volgende voorbeeld.

{ 
  "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 
  } 
} 

De gemaakte objecten beoordelen

Wanneer u een OneLake-kennisbron maakt, maakt uw zoekservice ook een indexeerfunctie, index, vaardighedenset en gegevensbron. We raden u niet aan deze objecten te bewerken, omdat het introduceren van een fout of incompatibiliteit de pijplijn kan verbreken.

Nadat u een kennisbron hebt gemaakt, worden in het antwoord de gemaakte objecten weergegeven. Deze objecten worden gemaakt volgens een vaste sjabloon en hun namen zijn gebaseerd op de naam van de kennisbron. U kunt de objectnamen niet wijzigen.

We raden u aan de Azure-portal te gebruiken om het maken van uitvoer te valideren. De werkstroom is:

  1. Controleer de indexeerfunctie op geslaagde of mislukte berichten. Hier worden verbindings- of quotumfouten weergegeven.
  2. Controleer de index op doorzoekbare inhoud. Gebruik Search Explorer om query's uit te voeren.
  3. Controleer het vaardighedenpakket om te leren hoe uw inhoud wordt opgedeeld in stukken en optioneel gevectoriseerd.
  4. Controleer de gegevensbron op verbindingsgegevens. In ons voorbeeld worden API-sleutels gebruikt voor het gemak, maar u kunt Microsoft Entra-id gebruiken voor verificatie en op rollen gebaseerd toegangsbeheer voor autorisatie.

Toewijzen aan een kennisbank

Als u tevreden bent met de kennisbron, gaat u verder met de volgende stap: geef de kennisbron op in een knowledge base.

Zorg ervoor dat voor een kennisbank die een OneLake-kennisbron specificeert, includeReferenceSourceData wordt ingesteld op true. Deze stap is nodig voor het ophalen van de brondocument-URL in de bronvermelding.

Nadat de knowledge base is geconfigureerd, gebruikt u de actie ophalen om een query uit te voeren op de kennisbron.

Een kennisbron verwijderen

Voordat u een kennisbron kunt verwijderen, moet u een knowledge base verwijderen die ernaar verwijst of de knowledge base-definitie bijwerken om de verwijzing te verwijderen. Voor kennisbronnen die een index- en indexeerpijplijn genereren, worden ook alle gegenereerde objecten verwijderd. Als u echter een bestaande index hebt gebruikt om een kennisbron te maken, wordt uw index niet verwijderd.

Als u probeert een kennisbron te verwijderen die in gebruik is, mislukt de actie en wordt een lijst met betrokken knowledge bases geretourneerd.

Een kennisbron verwijderen:

  1. Haal een lijst op met alle knowledge bases op uw zoekservice.

    ### Get knowledge bases
    GET {{search-endpoint}}/knowledgebases?api-version=2025-11-01-preview&$select=name
    api-key: {{api-key}}
    

    Een voorbeeld van een antwoord kan er als volgt uitzien:

     {
         "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)",
         "value": [
         {
             "name": "my-kb"
         },
         {
             "name": "my-kb-2"
         }
         ]
     }
    
  2. Haal een afzonderlijke Knowledge Base-definitie op om te controleren op verwijzingen naar kennisbronnen.

    ### Get a knowledge base definition
    GET {{search-endpoint}}/knowledgebases/{{knowledge-base-name}}?api-version=2025-11-01-preview
    api-key: {{api-key}}
    

    Een voorbeeld van een antwoord kan er als volgt uitzien:

     {
       "name": "my-kb",
       "description": null,
       "retrievalInstructions": null,
       "answerInstructions": null,
       "outputMode": null,
       "knowledgeSources": [
         {
           "name": "my-blob-ks",
         }
       ],
       "models": [],
       "encryptionKey": null,
       "retrievalReasoningEffort": {
         "kind": "low"
       }
     }
    
  3. Verwijder de knowledge base of werk de knowledge base bij door de kennisbron te verwijderen als u meerdere bronnen hebt. In dit voorbeeld ziet u de verwijdering.

    ### Delete a knowledge base
    DELETE {{search-endpoint}}/knowledgebases/{{knowledge-base-name}}?api-version=2025-11-01-preview
    api-key: {{api-key}}
    
  4. Verwijder de kennisbron.

    ### Delete a knowledge source
    DELETE {{search-endpoint}}/knowledgesources/{{knowledge-source-name}}?api-version=2025-11-01-preview
    api-key: {{api-key}}