Freigeben über


Erstellen einer Webwissensquellen-Ressource

Von Bedeutung

Hinweis

Dieses Feature ist zurzeit als öffentliche Preview verfügbar. Diese Vorschauversion wird ohne Vereinbarung zum Servicelevel (SLA) bereitgestellt und ist nicht für Produktionsworkloads vorgesehen. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar. Weitere Informationen finden Sie unter Zusätzliche Nutzungsbestimmungen für Microsoft Azure-Vorschauen.

Web Knowledge Source ermöglicht das Abrufen von Echtzeit-Webdaten aus Microsoft Bing in einer agentischen Abrufpipeline. Wissensquellen werden unabhängig erstellt, in einer Wissensbasis referenziert und als Erdungsdaten verwendet, wenn ein Agent oder Chatbot eine Abrufaktion zur Abfragezeit aufruft.

Bing Custom Search ist immer der Suchanbieter für Web Knowledge Source. Obwohl Sie keine alternativen Suchanbieter oder Suchmaschinen angeben können, können Sie bestimmte Domänen wie z https://learn.microsoft.com. B. einschließen oder ausschließen. Wenn keine Domänen angegeben sind, hat Web Knowledge Source uneingeschränkten Zugriff auf das gesamte öffentliche Internet.

Web Knowledge Source funktioniert am besten zusammen mit anderen Wissensquellen. Verwenden Sie Web Knowledge Source, wenn Ihre proprietären Inhalte keine vollständigen, up-to-Datumsantworten bereitstellen oder wenn Sie Ergebnisse mit Informationen aus einer kommerziellen Suchmaschine ergänzen möchten.

Wenn Sie Web Knowledge Source verwenden, beachten Sie Folgendes:

  • Die Antwort ist immer eine einzige, formulierte Antwort auf die Abfrage anstelle von rohen Suchergebnissen aus dem Web.

  • Da Web Knowledge Source extraktive Daten nicht unterstützt, muss Ihre Wissensbasis die Antwortsynthese und geringe oder mittlere Begründungsaufwand verwenden. Sie können auch keine Antwortanweisungen definieren.

Voraussetzungen

Überprüfen auf vorhandene Wissensquellen

Eine Wissensquelle ist ein wiederverwendbares Objekt der obersten Ebene. Das Wissen über vorhandene Wissensquellen ist hilfreich, um neue Objekte wiederzuverwenden oder zu benennen.

Führen Sie den folgenden Code aus, um Wissensquellen nach Namen und Typ auflisten.

// List knowledge sources by name and type
using Azure.Search.Documents.Indexes;

var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential);
var knowledgeSources = indexClient.GetKnowledgeSourcesAsync();

Console.WriteLine("Knowledge Sources:");

await foreach (var ks in knowledgeSources)
{
    Console.WriteLine($"  Name: {ks.Name}, Type: {ks.GetType().Name}");
}

Sie können auch eine einzelne Wissensquelle anhand des Namens zurück, um ihre JSON-Definition zu überprüfen.

using Azure.Search.Documents.Indexes;
using System.Text.Json;

var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential);

// Specify the knowledge source name to retrieve
string ksNameToGet = "earth-knowledge-source";

// Get its definition
var knowledgeSourceResponse = await indexClient.GetKnowledgeSourceAsync(ksNameToGet);
var ks = knowledgeSourceResponse.Value;

// Serialize to JSON for display
var jsonOptions = new JsonSerializerOptions 
{ 
    WriteIndented = true,
    DefaultIgnoreCondition = System.Text.Json.Serialization.JsonIgnoreCondition.Never
};
Console.WriteLine(JsonSerializer.Serialize(ks, ks.GetType(), jsonOptions));

Der folgende JSON-Code ist eine Beispielantwort für eine Web Knowledge Source-Ressource.

{
  "WebParameters": {
    "Domains": null
  },
  "Name": "my-web-ks",
  "Description": "A sample Web Knowledge Source.",
  "EncryptionKey": null,
}

Erstellen einer Wissensquelle

Führen Sie den folgenden Code aus, um eine Web Knowledge Source-Ressource zu erstellen.

// Create Web Knowledge Source
// Create a Web knowledge source
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
using Azure;

var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new AzureKeyCredential(apiKey));

var knowledgeSource = new WebKnowledgeSource(name: "my-web-ks")
{
    Description = "A sample Web Knowledge Source.",
    WebParameters = new WebKnowledgeSourceParameters
    {
        Domains = new WebKnowledgeSourceDomains
        {
            AllowedDomains = 
            {
                new WebKnowledgeSourceDomain(address: "learn.microsoft.com") { IncludeSubpages = true }
            },
            BlockedDomains = 
            {
                new WebKnowledgeSourceDomain(address: "bing.com") { IncludeSubpages = false }
            }
        }
    }
};

await indexClient.CreateOrUpdateKnowledgeSourceAsync(knowledgeSource);
Console.WriteLine($"Knowledge source '{knowledgeSource.Name}' created or updated successfully.");

Quellspezifische Eigenschaften

Sie können die folgenden Eigenschaften übergeben, um eine Web Knowledge Source-Ressource zu erstellen.

Name Description Typ Bearbeitbar Erforderlich
Name Der Name der Wissensquelle, die innerhalb der Wissensquellensammlung eindeutig sein muss, und befolgen Sie die Benennungsrichtlinien für Objekte in Azure AI Search. String Yes Yes
Description Eine Beschreibung der Wissensquelle. Wenn nicht angegeben, wendet Azure AI Search eine Standardbeschreibung an. String Yes Nein
EncryptionKey Ein vom Kunden verwalteter Schlüssel zum Verschlüsseln vertraulicher Informationen in der Wissensquelle. Object Yes Nein
WebParameters Spezifische Parameter für die Web-Wissensquelle. Derzeit ist dies nur Domains. Object Yes Nein
Domains Domänen, die im Suchbereich zugelassen oder blockiert werden. Standardmäßig verwendet die Wissensquelle das Grounding mit Bing-Suche, um das gesamte öffentliche Internet zu durchsuchen. Wenn Sie Domänen angeben, verwendet die Wissensquelle "Grounding" mit der benutzerdefinierten Bing-Suche , um Ergebnisse auf die angegebenen Domänen einzuschränken. In beiden Fällen ist Bing Custom Search der Suchanbieter. Object Yes Nein
AllowedDomains Domänen, die in den Suchbereich eingeschlossen werden sollen. Für jede Domäne müssen Sie address im website.com-Format angeben. Sie können auch angeben, ob die Unterseiten der Domäne eingeschlossen werden sollen, indem Sie IncludeSubpages, true oder false festlegen. Array Yes Nein
BlockedDomains Domänen, die aus dem Suchbereich ausgeschlossen werden sollen. Für jede Domäne müssen Sie address im website.com-Format angeben. Sie können auch angeben, ob die Unterseiten der Domäne eingeschlossen werden sollen, indem Sie IncludeSubpages, true oder false festlegen. Array Yes Nein

Zuweisen zu einer Wissensbasis

Wenn Sie mit der Wissensquelle zufrieden sind, fahren Sie mit dem nächsten Schritt fort: Geben Sie die Wissensquelle in einer Wissensbasis an.

Nachdem die Knowledge Base konfiguriert wurde, verwenden Sie die Abrufaktion , um die Wissensquelle abzufragen.

Löschen einer Wissensquelle

Bevor Sie eine Wissensquelle löschen können, müssen Sie alle Knowledge Basen löschen, die darauf verweisen, oder die Knowledge Base-Definition aktualisieren, um den Verweis zu entfernen. Für Wissensquellen, die eine Index- und Indexerpipeline generieren, werden auch alle generierten Objekte gelöscht. Wenn Sie jedoch einen vorhandenen Index zum Erstellen einer Wissensquelle verwendet haben, wird Ihr Index nicht gelöscht.

Wenn Sie versuchen, eine verwendete Wissensquelle zu löschen, schlägt die Aktion fehl und gibt eine Liste der betroffenen Wissensdatenbanken zurück.

So löschen Sie eine Wissensquelle:

  1. Erhalten Sie eine Liste aller Wissensdatenbanken für Ihren Suchdienst.

    using Azure.Search.Documents.Indexes;
    
    var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential);
    var knowledgeBases = indexClient.GetKnowledgeBasesAsync();
    
    Console.WriteLine("Knowledge Bases:");
    
    await foreach (var kb in knowledgeBases)
    {
        Console.WriteLine($"  - {kb.Name}");
    }
    

    Eine Beispielantwort könnte wie folgt aussehen:

     Knowledge Bases:
       - earth-knowledge-base
       - hotels-sample-knowledge-base
       - my-demo-knowledge-base
    
  2. Rufen Sie eine individuelle Wissensbasisdefinition ab, um nach Wissensquellenverweise zu suchen.

    using Azure.Search.Documents.Indexes;
    using System.Text.Json;
    
    var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential);
    
    // Specify the knowledge base name to retrieve
    string kbNameToGet = "earth-knowledge-base";
    
    // Get a specific knowledge base definition
    var knowledgeBaseResponse = await indexClient.GetKnowledgeBaseAsync(kbNameToGet);
    var kb = knowledgeBaseResponse.Value;
    
    // Serialize to JSON for display
    string json = JsonSerializer.Serialize(kb, new JsonSerializerOptions { WriteIndented = true });
    Console.WriteLine(json);
    

    Eine Beispielantwort könnte wie folgt aussehen:

     {
       "Name": "earth-knowledge-base",
       "KnowledgeSources": [
         {
           "Name": "earth-knowledge-source"
         }
       ],
       "Models": [
         {}
       ],
       "RetrievalReasoningEffort": {},
       "OutputMode": {},
       "ETag": "\u00220x8DE278629D782B3\u0022",
       "EncryptionKey": null,
       "Description": null,
       "RetrievalInstructions": null,
       "AnswerInstructions": null
     }
    
  3. Löschen Sie entweder die Wissensdatenbank, oder aktualisieren Sie die Wissensbasis , um die Wissensquelle zu entfernen, wenn Sie über mehrere Quellen verfügen. In diesem Beispiel wird das Löschen gezeigt.

    using Azure.Search.Documents.Indexes;
    var indexClient = new SearchIndexClient(new Uri(searchEndpoint), credential);
    
    await indexClient.DeleteKnowledgeBaseAsync(knowledgeBaseName);
    System.Console.WriteLine($"Knowledge base '{knowledgeBaseName}' deleted successfully.");
    
  4. Löschen Sie die Wissensquelle.

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

Von Bedeutung

Hinweis

Dieses Feature ist zurzeit als öffentliche Preview verfügbar. Diese Vorschauversion wird ohne Vereinbarung zum Servicelevel (SLA) bereitgestellt und ist nicht für Produktionsworkloads vorgesehen. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar. Weitere Informationen finden Sie unter Zusätzliche Nutzungsbestimmungen für Microsoft Azure-Vorschauen.

Web Knowledge Source ermöglicht das Abrufen von Echtzeit-Webdaten aus Microsoft Bing in einer agentischen Abrufpipeline. Wissensquellen werden unabhängig erstellt, in einer Wissensbasis referenziert und als Erdungsdaten verwendet, wenn ein Agent oder Chatbot eine Abrufaktion zur Abfragezeit aufruft.

Bing Custom Search ist immer der Suchanbieter für Web Knowledge Source. Obwohl Sie keine alternativen Suchanbieter oder Suchmaschinen angeben können, können Sie bestimmte Domänen wie z https://learn.microsoft.com. B. einschließen oder ausschließen. Wenn keine Domänen angegeben sind, hat Web Knowledge Source uneingeschränkten Zugriff auf das gesamte öffentliche Internet.

Web Knowledge Source funktioniert am besten zusammen mit anderen Wissensquellen. Verwenden Sie Web Knowledge Source, wenn Ihre proprietären Inhalte keine vollständigen, up-to-Datumsantworten bereitstellen oder wenn Sie Ergebnisse mit Informationen aus einer kommerziellen Suchmaschine ergänzen möchten.

Wenn Sie Web Knowledge Source verwenden, beachten Sie Folgendes:

  • Die Antwort ist immer eine einzige, formulierte Antwort auf die Abfrage anstelle von rohen Suchergebnissen aus dem Web.

  • Da Web Knowledge Source extraktive Daten nicht unterstützt, muss Ihre Wissensbasis die Antwortsynthese und geringe oder mittlere Begründungsaufwand verwenden. Sie können auch keine Antwortanweisungen definieren.

Voraussetzungen

Überprüfen auf vorhandene Wissensquellen

Eine Wissensquelle ist ein wiederverwendbares Objekt der obersten Ebene. Das Wissen über vorhandene Wissensquellen ist hilfreich, um neue Objekte wiederzuverwenden oder zu benennen.

Führen Sie den folgenden Code aus, um Wissensquellen nach Namen und Typ auflisten.

# List knowledge sources by name and type
import requests
import json

endpoint = "{search_url}/knowledgesources"
params = {"api-version": "2025-11-01-preview", "$select": "name, kind"}
headers = {"api-key": "{api_key}"}

response = requests.get(endpoint, params = params, headers = headers)
print(json.dumps(response.json(), indent = 2))

Sie können auch eine einzelne Wissensquelle anhand des Namens zurück, um ihre JSON-Definition zu überprüfen.

# Get a knowledge source definition
import requests
import json

endpoint = "{search_url}/knowledgesources/{knowledge_source_name}"
params = {"api-version": "2025-11-01-preview"}
headers = {"api-key": "{api_key}"}

response = requests.get(endpoint, params = params, headers = headers)
print(json.dumps(response.json(), indent = 2))

Der folgende JSON-Code ist eine Beispielantwort für eine Web Knowledge Source-Ressource.

{
  "name": "my-web-ks",
  "kind": "web",
  "description": "A sample Web Knowledge Source.",
  "encryptionKey": null,
  "webParameters": {
    "domains": null
  }
}

Erstellen einer Wissensquelle

Führen Sie den folgenden Code aus, um eine Web Knowledge Source-Ressource zu erstellen.

# Create Web Knowledge Source
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import WebKnowledgeSource, WebKnowledgeSourceParameters, WebKnowledgeSourceDomains

index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))

knowledge_source = WebKnowledgeSource(
    name = "my-web-ks",
    description = "A sample Web Knowledge Source.",
    encryption_key = None,
    web_parameters = WebKnowledgeSourceParameters(
        domains = WebKnowledgeSourceDomains(
            allowed_domains = [ { "address": "learn.microsoft.com", "include_subpages": True } ],
            blocked_domains = [ { "address": "bing.com", "include_subpages": False } ]
        )
    )
)

index_client.create_or_update_knowledge_source(knowledge_source)
print(f"Knowledge source '{knowledge_source.name}' created or updated successfully.")

Quellspezifische Eigenschaften

Sie können die folgenden Eigenschaften übergeben, um eine Web Knowledge Source-Ressource zu erstellen.

Name Description Typ Bearbeitbar Erforderlich
name Der Name der Wissensquelle, die innerhalb der Wissensquellensammlung eindeutig sein muss, und befolgen Sie die Benennungsrichtlinien für Objekte in Azure AI Search. String Yes Yes
description Eine Beschreibung der Wissensquelle. Wenn nicht angegeben, wendet Azure AI Search eine Standardbeschreibung an. String Yes Nein
encryption_key Ein vom Kunden verwalteter Schlüssel zum Verschlüsseln vertraulicher Informationen in der Wissensquelle. Object Yes Nein
web_parameters Spezifische Parameter für die Web-Wissensquelle. Derzeit ist dies nur domains. Object Yes Nein
domains Domänen, die im Suchbereich zugelassen oder blockiert werden. Standardmäßig verwendet die Wissensquelle das Grounding mit Bing-Suche, um das gesamte öffentliche Internet zu durchsuchen. Wenn Sie Domänen angeben, verwendet die Wissensquelle "Grounding" mit der benutzerdefinierten Bing-Suche , um Ergebnisse auf die angegebenen Domänen einzuschränken. In beiden Fällen ist Bing Custom Search der Suchanbieter. Object Yes Nein
allowed_domains Domänen, die in den Suchbereich eingeschlossen werden sollen. Für jede Domäne müssen Sie address im website.com-Format angeben. Sie können auch angeben, ob die Unterseiten der Domäne eingeschlossen werden sollen, indem Sie include_subpages, true oder false festlegen. Array Yes Nein
blocked_domains Domänen, die aus dem Suchbereich ausgeschlossen werden sollen. Für jede Domäne müssen Sie address im website.com-Format angeben. Sie können auch angeben, ob die Unterseiten der Domäne eingeschlossen werden sollen, indem Sie include_subpages, true oder false festlegen. Array Yes Nein

Zuweisen zu einer Wissensbasis

Wenn Sie mit der Wissensquelle zufrieden sind, fahren Sie mit dem nächsten Schritt fort: Geben Sie die Wissensquelle in einer Wissensbasis an.

Nachdem die Knowledge Base konfiguriert wurde, verwenden Sie die Abrufaktion , um die Wissensquelle abzufragen.

Löschen einer Wissensquelle

Bevor Sie eine Wissensquelle löschen können, müssen Sie alle Knowledge Basen löschen, die darauf verweisen, oder die Knowledge Base-Definition aktualisieren, um den Verweis zu entfernen. Für Wissensquellen, die eine Index- und Indexerpipeline generieren, werden auch alle generierten Objekte gelöscht. Wenn Sie jedoch einen vorhandenen Index zum Erstellen einer Wissensquelle verwendet haben, wird Ihr Index nicht gelöscht.

Wenn Sie versuchen, eine verwendete Wissensquelle zu löschen, schlägt die Aktion fehl und gibt eine Liste der betroffenen Wissensdatenbanken zurück.

So löschen Sie eine Wissensquelle:

  1. Erhalten Sie eine Liste aller Wissensdatenbanken für Ihren Suchdienst.

    # Get knowledge bases
    import requests
    import json
    
    endpoint = "{search_url}/knowledgebases"
    params = {"api-version": "2025-11-01-preview", "$select": "name"}
    headers = {"api-key": "{api_key}"}
    
    response = requests.get(endpoint, params = params, headers = headers)
    print(json.dumps(response.json(), indent = 2))
    

    Eine Beispielantwort könnte wie folgt aussehen:

     {
         "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)",
         "value": [
         {
             "name": "my-kb"
         },
         {
             "name": "my-kb-2"
         }
         ]
     }
    
  2. Rufen Sie eine individuelle Wissensbasisdefinition ab, um nach Wissensquellenverweise zu suchen.

    # Get a knowledge base definition
    import requests
    import json
    
    endpoint = "{search_url}/knowledgebases/{knowledge_base_name}"
    params = {"api-version": "2025-11-01-preview"}
    headers = {"api-key": "{api_key}"}
    
    response = requests.get(endpoint, params = params, headers = headers)
    print(json.dumps(response.json(), indent = 2))
    

    Eine Beispielantwort könnte wie folgt aussehen:

     {
       "name": "my-kb",
       "description": null,
       "retrievalInstructions": null,
       "answerInstructions": null,
       "outputMode": null,
       "knowledgeSources": [
         {
           "name": "my-blob-ks",
         }
       ],
       "models": [],
       "encryptionKey": null,
       "retrievalReasoningEffort": {
         "kind": "low"
       }
     }
    
  3. Löschen Sie entweder die Wissensdatenbank, oder aktualisieren Sie die Wissensbasis , um die Wissensquelle zu entfernen, wenn Sie über mehrere Quellen verfügen. In diesem Beispiel wird das Löschen gezeigt.

    # Delete a knowledge base
    from azure.core.credentials import AzureKeyCredential 
    from azure.search.documents.indexes import SearchIndexClient
    
    index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))
    index_client.delete_knowledge_base("knowledge_base_name")
    print(f"Knowledge base deleted successfully.")
    
  4. Löschen Sie die Wissensquelle.

    # Delete a knowledge source
    from azure.core.credentials import AzureKeyCredential 
    from azure.search.documents.indexes import SearchIndexClient
    
    index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))
    index_client.delete_knowledge_source("knowledge_source_name")
    print(f"Knowledge source deleted successfully.")
    

Von Bedeutung

Hinweis

Dieses Feature ist zurzeit als öffentliche Preview verfügbar. Diese Vorschauversion wird ohne Vereinbarung zum Servicelevel (SLA) bereitgestellt und ist nicht für Produktionsworkloads vorgesehen. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar. Weitere Informationen finden Sie unter Zusätzliche Nutzungsbestimmungen für Microsoft Azure-Vorschauen.

Web Knowledge Source ermöglicht das Abrufen von Echtzeit-Webdaten aus Microsoft Bing in einer agentischen Abrufpipeline. Wissensquellen werden unabhängig erstellt, in einer Wissensbasis referenziert und als Erdungsdaten verwendet, wenn ein Agent oder Chatbot eine Abrufaktion zur Abfragezeit aufruft.

Bing Custom Search ist immer der Suchanbieter für Web Knowledge Source. Obwohl Sie keine alternativen Suchanbieter oder Suchmaschinen angeben können, können Sie bestimmte Domänen wie z https://learn.microsoft.com. B. einschließen oder ausschließen. Wenn keine Domänen angegeben sind, hat Web Knowledge Source uneingeschränkten Zugriff auf das gesamte öffentliche Internet.

Web Knowledge Source funktioniert am besten zusammen mit anderen Wissensquellen. Verwenden Sie Web Knowledge Source, wenn Ihre proprietären Inhalte keine vollständigen, up-to-Datumsantworten bereitstellen oder wenn Sie Ergebnisse mit Informationen aus einer kommerziellen Suchmaschine ergänzen möchten.

Wenn Sie Web Knowledge Source verwenden, beachten Sie Folgendes:

  • Die Antwort ist immer eine einzige, formulierte Antwort auf die Abfrage anstelle von rohen Suchergebnissen aus dem Web.

  • Da Web Knowledge Source extraktive Daten nicht unterstützt, muss Ihre Wissensbasis die Antwortsynthese und geringe oder mittlere Begründungsaufwand verwenden. Sie können auch keine Antwortanweisungen definieren.

Voraussetzungen

Überprüfen auf vorhandene Wissensquellen

Eine Wissensquelle ist ein wiederverwendbares Objekt der obersten Ebene. Das Wissen über vorhandene Wissensquellen ist hilfreich, um neue Objekte wiederzuverwenden oder zu benennen.

Verwenden Sie Wissensquellen – ABRUFEN (REST-API), um Wissensquellen nach Name und Typ auflisten.

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

Sie können auch eine einzelne Wissensquelle anhand des Namens zurück, um ihre JSON-Definition zu überprüfen.

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

Der folgende JSON-Code ist eine Beispielantwort für eine Web Knowledge Source-Ressource.

{
  "name": "my-web-ks",
  "kind": "web",
  "description": "A sample Web Knowledge Source.",
  "encryptionKey": null,
  "webParameters": {
    "domains": null
  }
}

Erstellen einer Wissensquelle

Verwenden Sie Wissensquellen – Erstellen oder Aktualisieren (REST-API), um eine Web Knowledge Source-Ressource zu erstellen.

PUT {{search-url}}/knowledgesources/my-web-ks?api-version=2025-11-01-preview
Content-Type: application/json
api-key: {{api-key}}

{
  "name": "my-web-ks",
  "kind": "web",
  "description": "This knowledge source pulls content from the web.",
  "encryptionKey": null,
  "webParameters": {
    "domains": {
      "allowedDomains": [ { "address": "learn.microsoft.com", "includeSubpages": true } ],
      "blockedDomains": [ { "address": "bing.com", "includeSubpages": false } ]
    }
  }
}

Quellspezifische Eigenschaften

Sie können die folgenden Eigenschaften übergeben, um eine Web Knowledge Source-Ressource zu erstellen.

Name Description Typ Bearbeitbar Erforderlich
name Der Name der Wissensquelle, die innerhalb der Wissensquellensammlung eindeutig sein muss, und befolgen Sie die Benennungsrichtlinien für Objekte in Azure AI Search. String Yes Yes
kind Die Art der Wissensquelle, die in diesem Fall web ist. String Nein Yes
description Eine Beschreibung der Wissensquelle. Wenn nicht angegeben, wendet Azure AI Search eine Standardbeschreibung an. String Yes Nein
encryptionKey Ein vom Kunden verwalteter Schlüssel zum Verschlüsseln vertraulicher Informationen in der Wissensquelle. Object Yes Nein
webParameters Spezifische Parameter für die Web-Wissensquelle. Derzeit ist dies nur domains. Object Yes Nein
domains Domänen, die im Suchbereich zugelassen oder blockiert werden. Standardmäßig verwendet die Wissensquelle das Grounding mit Bing-Suche, um das gesamte öffentliche Internet zu durchsuchen. Wenn Sie Domänen angeben, verwendet die Wissensquelle "Grounding" mit der benutzerdefinierten Bing-Suche , um Ergebnisse auf die angegebenen Domänen einzuschränken. In beiden Fällen ist Bing Custom Search der Suchanbieter. Object Yes Nein
allowedDomains Domänen, die in den Suchbereich eingeschlossen werden sollen. Für jede Domäne müssen Sie address im website.com-Format angeben. Sie können auch angeben, ob die Unterseiten der Domäne eingeschlossen werden sollen, indem Sie includeSubpages, true oder false festlegen. Array Yes Nein
blockedDomains Domänen, die aus dem Suchbereich ausgeschlossen werden sollen. Für jede Domäne müssen Sie address im website.com-Format angeben. Sie können auch angeben, ob die Unterseiten der Domäne eingeschlossen werden sollen, indem Sie includeSubpages, true oder false festlegen. Array Yes Nein

Zuweisen zu einer Wissensbasis

Wenn Sie mit der Wissensquelle zufrieden sind, fahren Sie mit dem nächsten Schritt fort: Geben Sie die Wissensquelle in einer Wissensbasis an.

Nachdem die Knowledge Base konfiguriert wurde, verwenden Sie die Abrufaktion , um die Wissensquelle abzufragen.

Löschen einer Wissensquelle

Bevor Sie eine Wissensquelle löschen können, müssen Sie alle Knowledge Basen löschen, die darauf verweisen, oder die Knowledge Base-Definition aktualisieren, um den Verweis zu entfernen. Für Wissensquellen, die eine Index- und Indexerpipeline generieren, werden auch alle generierten Objekte gelöscht. Wenn Sie jedoch einen vorhandenen Index zum Erstellen einer Wissensquelle verwendet haben, wird Ihr Index nicht gelöscht.

Wenn Sie versuchen, eine verwendete Wissensquelle zu löschen, schlägt die Aktion fehl und gibt eine Liste der betroffenen Wissensdatenbanken zurück.

So löschen Sie eine Wissensquelle:

  1. Erhalten Sie eine Liste aller Wissensdatenbanken für Ihren Suchdienst.

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

    Eine Beispielantwort könnte wie folgt aussehen:

     {
         "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)",
         "value": [
         {
             "name": "my-kb"
         },
         {
             "name": "my-kb-2"
         }
         ]
     }
    
  2. Rufen Sie eine individuelle Wissensbasisdefinition ab, um nach Wissensquellenverweise zu suchen.

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

    Eine Beispielantwort könnte wie folgt aussehen:

     {
       "name": "my-kb",
       "description": null,
       "retrievalInstructions": null,
       "answerInstructions": null,
       "outputMode": null,
       "knowledgeSources": [
         {
           "name": "my-blob-ks",
         }
       ],
       "models": [],
       "encryptionKey": null,
       "retrievalReasoningEffort": {
         "kind": "low"
       }
     }
    
  3. Löschen Sie entweder die Wissensdatenbank, oder aktualisieren Sie die Wissensbasis , indem Sie die Wissensquelle entfernen, wenn Sie über mehrere Quellen verfügen. In diesem Beispiel wird das Löschen gezeigt.

    ### Delete a knowledge base
    DELETE {{search-endpoint}}/knowledgebases/{{knowledge-base-name}}?api-version=2025-11-01-preview
    api-key: {{api-key}}
    
  4. Löschen Sie die Wissensquelle.

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