Keresési index tudásbázisának létrehozása

Megjegyzés

Azure AI Keresés a Azure portálon, REST API-kon és Azure SDK-k keresztül érhető el. Emellett a Foundry IQ-t is támogatja, amely a vállalati tartalmakat újrafelhasználható, engedélytudatos tudásbázisokká alakítja át az Microsoft Foundry portálon található ügynökök számára.

Important

Az (előzetes verzióban) megjelölt funkciókra, képességekre vagy tulajdonságokra nem vonatkozik szolgáltatási szintű szerződés, nem ajánlott éles számítási feladatokhoz, és az általános elérhetővé válásuk előtt változhatnak vagy korlátozhatók. Az Azure AI Keresés előzetes verziójú kifejezések az összes előzetes verziós funkcióra vonatkoznak, függetlenül attól, hogy önálló vagy egy általánosan elérhető funkció része.

A search index tudásbázis egy meglévő Azure AI Keresés indexet kapcsol össze, beleértve az indexelt szöveget és vektorokat is, egy ügynöki lekérési folyamathoz. A tudásbázisok egymástól függetlenül jönnek létre, egy tudásbázisban hivatkoznak rá, és földi adatként használják, amikor a tudásbázist futtatókörnyezetben kérdezik le.

Használat támogatása

Azure portál Microsoft Foundry portál .NET SDK Python SDK Java SDK JavaScript SDK REST API
✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️

Előfeltételek

  • Kötelező Azure.Search.Documents csomag:

    • A(z) 2026-08-01-preview funkciókhoz a legújabb előzetes csomag: dotnet add package Azure.Search.Documents --prerelease

    • A(z) 2026-04-01 funkciókhoz a legújabb stabil csomag: dotnet add package Azure.Search.Documents

  • Kulcs nélküli hitelesítés esetén a Azure.Identity csomag: dotnet add package Azure.Identity

  • Kötelező azure-search-documents csomag:

    • A(z) 2026-08-01-preview funkciókhoz a legújabb előzetes csomag: pip install --pre azure-search-documents

    • A(z) 2026-04-01 funkciókhoz a legújabb stabil csomag: pip install azure-search-documents

  • Kulcs nélküli hitelesítés esetén a azure-identity csomag: pip install azure-identity

  • A Search Service REST API szükséges verziója:

  • Kulcs nélküli hitelesítéshez minden HTTP-kérés fejlécében adjon meg egy Authorization.

Limitations

Az agentikus lekérés nem biztosítja, hogy a lekérési kérelmek figyelembe vegyék az alapul szolgáló index pontozási profiljait, beleértve a defaultScoringProfile. A válaszok lekérése nem jeleníti meg a(z) @search.rerankerBoostedScore elemet.

Meglévő tudásbázisok keresése

A tudásbázis egy legfelső szintű, újrafelhasználható objektum. A meglévő tudásbázisok ismerete hasznos lehet az új objektumok újbóli felhasználásához vagy elnevezéséhez.

Futtassa az alábbi kódot a tudásbázisok név és típus szerinti listázásához.

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

Referencia:SearchIndexClient

# List knowledge sources by name and type
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient

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

for ks in index_client.list_knowledge_sources():
    print(f"  - {ks.name} ({ks.kind})")

Referencia:SearchIndexClient

### List knowledge sources by name and type
GET {{search-url}}/knowledgesources?api-version={{api-version}}&$select=name,kind
Authorization: Bearer {{token}}

Referencia:Tudásbázisok – Lista

A JSON-definíció áttekintéséhez lekérdezhet egyetlen tudásforrást a név megadásával.

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

Referencia:SearchIndexClient

# Get a knowledge source definition
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.indexes import SearchIndexClient
import json

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

ks = index_client.get_knowledge_source("knowledge_source_name")
print(json.dumps(ks.as_dict(), indent = 2))

Referencia:SearchIndexClient

### Get a knowledge source definition
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version={{api-version}}
Authorization: Bearer {{token}}

Referencia:Tudásforrások – Get

Az alábbi JSON egy példaválasz a keresési index tudásbázisára. Figyelje meg, hogy a tudásbázis egyetlen indexnevet és az index azon mezőit határozza meg, amelyeket fel szeretne venni a lekérdezésbe.

{
  "name": "my-search-index-ks",
  "kind": "searchIndex",
  "description": "A sample search index knowledge source.",
  "encryptionKey": null,
  "searchIndexParameters": {
    "searchIndexName": "my-search-index",
    "semanticConfigurationName": null,
    "sourceDataFields": [],
    "searchFields": []
  }
}

Tudásbázis létrehozása

Futtassa a következő kódot a keresési index tudásbázisának létrehozásához.

Megjegyzés

A 2026-05-01-preview API-verziótól kezdve a keresési index tudásforrásain a semanticConfigurationName nem kötelező. A korábbi API-verziókhoz továbbra is szükség van semanticConfigurationName. Ha a tudásbázisnak támogatnia kell a régebbi és az újabb API-verziókat is, adja meg a következőt semanticConfigurationName: .

// Create a search index knowledge source
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
using Azure.Identity;

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

var indexKnowledgeSource = new SearchIndexKnowledgeSource(
    name: knowledgeSourceName,
    searchIndexParameters: new SearchIndexKnowledgeSourceParameters(searchIndexName: indexName)
    {
        SearchFields = { new SearchIndexFieldReference(name: "page_chunk") },
        SourceDataFields = { new SearchIndexFieldReference(name: "id"), new SearchIndexFieldReference(name: "page_chunk"), new SearchIndexFieldReference(name: "page_number") }
    }
);

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

Referencia:SearchIndexClient, SearchIndexKnowledgeSource

# Create a search index knowledge source
from azure.identity import DefaultAzureCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import SearchIndexKnowledgeSource, SearchIndexKnowledgeSourceParameters, SearchIndexFieldReference

index_client = SearchIndexClient(endpoint = "<search-endpoint>", credential = DefaultAzureCredential())

knowledge_source = SearchIndexKnowledgeSource(
    name = "my-search-index-ks",
    description= "This knowledge source pulls from an existing index designed for agentic retrieval.",
    encryption_key = None,
    search_index_parameters = SearchIndexKnowledgeSourceParameters(
        search_index_name = "search_index_name",
        source_data_fields = [
            SearchIndexFieldReference(name="description"),
            SearchIndexFieldReference(name="category"),
        ],
        search_fields = [
            SearchIndexFieldReference(name="id")
        ],
    )
)

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

Referencia:SearchIndexClient

### Create a search index knowledge source
PUT {{search-endpoint}}/knowledgesources/my-search-index-ks?api-version=2026-08-01-preview
Authorization: Bearer {{search-access-token}}
Content-Type: application/json

{
    "name": "my-search-index-ks",
    "kind": "searchIndex",
    "description": "This knowledge source pulls from an existing index designed for agentic retrieval.",
    "encryptionKey": null,
    "searchIndexParameters": {
        "searchIndexName": "<index-name>",
        "sourceDataFields": [
          { "name": "description" },
          { "name": "category" }
        ]
    }
}

Referencia:Tudásforrások – Létrehozás vagy frissítés

Alapszűrő megőrzése egy tudásbázison (előzetes verzió)

Az API-verziótól kezdve a 2026-05-01-preview keresési index tudásbázisa megőrizheti az alapértelmezett szűrőt a baseFilter tulajdonságon keresztül. Akkor használja baseFilter , ha ugyanazt a szűrőkifejezést kell alkalmaznia minden olyan lekérési kérelemre, amely a tudásbázist használja, így a hívóknak nem kell minden hívásnál megismételni a szűrőt.

Az alábbi példa egy alapszűrőt tárol egy keresési index tudásbázisán.

var knowledgeSource = new SearchIndexKnowledgeSource(
    name: "public-docs-ks",
    searchIndexParameters: new SearchIndexKnowledgeSourceParameters(searchIndexName: "public-docs-index")
    {
        BaseFilter = "isPublished eq true and accessScope eq 'public'"
    }
);

await indexClient.CreateOrUpdateKnowledgeSourceAsync(knowledgeSource);

Referencia:SearchIndexKnowledgeSourceParameters

knowledge_source = SearchIndexKnowledgeSource(
    name="public-docs-ks",
    search_index_parameters=SearchIndexKnowledgeSourceParameters(
        search_index_name="public-docs-index",
        base_filter="isPublished eq true and accessScope eq 'public'",
    ),
)

index_client.create_or_update_knowledge_source(knowledge_source)

Referencia:SearchIndexKnowledgeSourceParameters

PUT {{search-endpoint}}/knowledgesources/public-docs-ks?api-version=2026-08-01-preview
Content-Type: application/json
Authorization: Bearer {{search-access-token}}

{
  "name": "public-docs-ks",
  "kind": "searchIndex",
  "searchIndexParameters": {
    "searchIndexName": "public-docs-index",
    "baseFilter": "isPublished eq true and accessScope eq 'public'"
  }
}

Referencia:Tudásforrások – Létrehozás vagy frissítés

A lekéréskor knowledgeSourceParams.filterAddOn kérésspecifikus korlátozásokat ad hozzá a tárolt alapszűrőhöz:

var retrievalRequest = new KnowledgeBaseRetrievalRequest();
retrievalRequest.KnowledgeSourceParams.Add(
    new SearchIndexKnowledgeSourceParams("public-docs-ks")
    {
        FilterAddOn = "category eq 'Benefits'"
    }
);
request = KnowledgeBaseRetrievalRequest(
    knowledge_source_params=[
        SearchIndexKnowledgeSourceParams(
            knowledge_source_name="public-docs-ks",
            filter_add_on="category eq 'Benefits'",
        ),
    ],
)
{
  "knowledgeSourceParams": [
    {
      "knowledgeSourceName": "public-docs-ks",
      "kind": "searchIndex",
      "filterAddOn": "category eq 'Benefits'"
    }
  ]
}

A tényleges szűrő a következő:

baseFilter AND filterAddOn

Mivel a szűrők a(z) AND használatával vannak kombinálva, a filterAddOn csak a megőrzött alapszűrőt szűkítheti. Nem tudja lecserélni vagy bővíteni azt.

Lekérdezési tippek konfigurálása (előzetes verzió)

A 2026-08-01-preview API-verziótól kezdve a lekérdezési tippek segítik a lekérdezéstervező modellt abban, hogy a felhasználó kéréséből szűrőket és rangsorolásnövelő tényezőket hozzon létre. Tárolja az alapértelmezett tippeket ebben: searchIndexParameters.queryHints, amely szűrőket és súlyozásokat is tartalmazhat.

Az alábbi példa egy szűrési tippet és egy fieldValue kiemelést tárol egy olyan tudásbázison product-docs-index, amelynek szűrhető productFamily és kereshető language mezője van.

using System;
using Azure.Identity;
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;

var endpoint = new Uri("<search-endpoint>");
var indexClient = new SearchIndexClient(
    endpoint,
    new DefaultAzureCredential());

var queryHints = new SearchIndexKnowledgeSourceQueryHints();
queryHints.Filters.Add(
    new SearchIndexKnowledgeSourceFilterHint(
        "productFamily",
        ["Model-X100", "Model-X200"])
    {
        FilterInstructions =
            "Filter only when the user names a model."
    });

var languageBoost =
    new SearchIndexKnowledgeSourceFieldValueBoost(
        "language",
        2.0);
languageBoost.FieldValues.Add("en-US");
languageBoost.FieldValues.Add("ja-JP");
languageBoost.BoostInstructions =
    "Prefer the language requested by the user.";
queryHints.Boosts.Add(languageBoost);

var knowledgeSource = new SearchIndexKnowledgeSource(
    "product-docs-ks",
    new SearchIndexKnowledgeSourceParameters(
        "product-docs-index")
    {
        QueryHints = queryHints
    });

await indexClient.CreateOrUpdateKnowledgeSourceAsync(
    knowledgeSource);

Referencia:SearchIndexKnowledgeSourceParameters

from azure.identity import DefaultAzureCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import (
    SearchIndexKnowledgeSource,
    SearchIndexKnowledgeSourceFieldValueBoost,
    SearchIndexKnowledgeSourceFilterHint,
    SearchIndexKnowledgeSourceParameters,
    SearchIndexKnowledgeSourceQueryHints,
)

endpoint = "<search-endpoint>"
index_client = SearchIndexClient(
    endpoint=endpoint,
    credential=DefaultAzureCredential(),
)

query_hints = SearchIndexKnowledgeSourceQueryHints(
    filters=[
        SearchIndexKnowledgeSourceFilterHint(
            field="productFamily",
            field_values=["Model-X100", "Model-X200"],
            filter_instructions=(
                "Filter only when the user names a model."
            ),
        )
    ],
    boosts=[
        SearchIndexKnowledgeSourceFieldValueBoost(
            field="language",
            field_values=["en-US", "ja-JP"],
            boost=2.0,
            boost_instructions=(
                "Prefer the language requested by the user."
            ),
        )
    ],
)

knowledge_source = SearchIndexKnowledgeSource(
    name="product-docs-ks",
    search_index_parameters=SearchIndexKnowledgeSourceParameters(
        search_index_name="product-docs-index",
        query_hints=query_hints,
    ),
)

index_client.create_or_update_knowledge_source(knowledge_source)

Referencia:SearchIndexKnowledgeSourceParameters

PUT {{search-endpoint}}/knowledgesources('product-docs-ks')?api-version=2026-08-01-preview
Content-Type: application/json
Authorization: Bearer {{search-access-token}}

{
  "name": "product-docs-ks",
  "kind": "searchIndex",
  "searchIndexParameters": {
    "searchIndexName": "product-docs-index",
    "queryHints": {
      "filters": [{
        "field": "productFamily",
        "fieldValues": ["Model-X100", "Model-X200"],
        "filterInstructions": "Filter only when the user names a model."
      }],
      "boosts": [{
        "kind": "fieldValue",
        "field": "language",
        "fieldValues": ["en-US", "ja-JP"],
        "boost": 2.0,
        "boostInstructions": "Prefer the language requested by the user."
      }]
    }
  }
}

Referencia:Tudásforrások – Létrehozás vagy frissítés

Konfigurálja az egyes tippeket a következő követelmények szerint:

Hint Mezőkövetelmények fieldValues Viselkedés Gyűjteménykorlátok
Szűrő field egy szűrhető indexmezőt kell azonosítania. Kötelező. Listázhatja az engedélyezett értékek teljes készletét. Ha a kérés nem felel meg egy listázott értéknek, a tervezőt arra utasítja, hogy ne szűrjön az adott mezőre. Legfeljebb öt tipp egyedi mezőkkel. Minden érték legfeljebb 128 karaktert tartalmazhat, és egy tippben szereplő összes érték legfeljebb 2048 karaktert tartalmazhat.
fieldValue növelés field egy kereshető mezőt kell azonosítania, amely egy nyelvet, egy szabványos vagy egy alapértelmezett elemzőt használ. Választható példák. Ha kihagyja őket, azzal boostInstructions magyarázhatja el, hogy melyik értéket válassza ki a kérésből. Legfeljebb öt tipp egyedi mezőkkel. Minden tipp legfeljebb 20 értéket tartalmazhat, értékenként 128 karaktert és 1024 karaktert kombinálva.
multiWordExpression növelés Kihagyás field. Az indexnek tartalmaznia kell legalább egy kereshető mezőt, amely nyelv, standard vagy alapértelmezett elemzőt használ. Választható példák tartományspecifikus kifejezésekre. Egy tipp. Legfeljebb 20 értéket tartalmazhat, értékenként 128 karaktert és 1024 karaktert kombinálva.

Mindkét boosttípus esetén a(z) boost megadása kötelező, és annak 1.0-nél nagyobb véges számnak kell lennie. A magasabb értékek nagyobb hatással vannak az egyező dokumentumokra a rangsorolásban anélkül, hogy kizárna más dokumentumokat. Az egyes választható filterInstructions karaktereket vagy boostInstructions értékeket 1024 karakterre korlátozhatja.

Használjon kiemelést multiWordExpression olyan tartományspecifikus kifejezésekhez, amelyek jelentését nem az egyes szavak rögzítik. Adjon meg példakifejezéseket a(z) fieldValues mezőben, vagy hagyja el őket, és bízza a(z) boostInstructions elemre, valamint a felhasználó kérésére a kifejezések kiválasztásának irányítását:

{
  "boosts": [{
    "kind": "multiWordExpression",
    "fieldValues": ["deferred tax", "wash sale"],
    "boost": 3.0,
    "boostInstructions": "Boost domain terms used as complete phrases."
  }]
}

A lekérdezési tippek tervezésekor tartsa szem előtt az alábbi viselkedéseket:

  • A tippek a legjobbak, ezért előfordulhat, hogy a modell nem hoz létre szűrőt vagy kiemelést minden kéréshez. A szükséges korlátozásokhoz, például az engedélyezési határokhoz használjon dokumentumszintű hozzáférés-vezérlést vagy determinisztikus szűrőt .

  • A tippeknek modellalapú lekérdezéstervezésre van szükségük, ezért a rendszer nem alkalmazza őket a lekéréses érvelési munka során minimal. Más erőfeszítési szinteken a GPT-4o vagy a GPT-4.1 családi modell HTTP 400-at ad vissza, ha a tárolt queryHints objektum szűrőt tartalmaz. A szolgáltatás a tárolt szűrőket a(z) queryHintOverrides alkalmazása előtt ellenőrzi, így az üres vagy csak kiemeléseket tartalmazó felülbírálás nem kerüli meg ezt az érvényesítést. A tárolt fieldValue és multiWordExpression növelések önmagukban nem váltják ki az ellenőrzést.

  • A létrehozott szűrők a(z) baseFilter használatával kombinálhatók a(z) filterAddOn és a(z) AND elemekkel. A generált boost a teljes Lucene-szintaxis használatával írja át a lekérdezést, miközben megőrzi az eredeti keresőkifejezéseket.

  • A lekérdezési tippek indexelt értékeket használnak földelésként. Nem konfigurálják az elemzőket, és nem engedélyezik a nyelvészlelést. Az language ezekben a példákban szereplő értékek az index szokásos metaadatai.

Ha egyetlen lekéréses kérelemre vonatkozó tárolt tippeket szeretne lecserélni, és ellenőrizni szeretné a létrehozott szűrőt vagy kiemelést, olvassa el a tárolt lekérdezési tippek felülbírálása lekérdezéskor (előzetes verzió) című témakört.

Hozzárendelés tudásbázishoz

Ha elégedett a tudásbázissal, adja hozzá egy tudásbázishoz.

Tudásbázis lekérdezése

A tudásbázis konfigurálása után hívja meg a lekérési műveletet vagy az MCP-végpontot a tudásbázis lekérdezéséhez.

Tudásbázis törlése

Mielőtt törölhet egy tudásbázist, törölnie kell minden olyan tudásbázist, amely hivatkozik rá, vagy frissítenie kell a tudásbázis definícióját a hivatkozás eltávolításához. Az index- és indexelőfolyamatot létrehozó tudásbázisok esetében a rendszer az összes létrehozott objektumot is törli. Ha azonban egy meglévő indexet használt egy tudásbázis létrehozásához, az index nem törlődik.

Ha egy használatban lévő tudásbázist próbál törölni, a művelet meghiúsul, és visszaadja az érintett tudásbázisok listáját.

Tudásbázis törlése:

  1. Szerezze be a keresési szolgáltatás összes tudásbázisának listáját.

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

    Referencia:SearchIndexClient

    Egy példaválasz az alábbihoz hasonlóan nézhet ki:

     {
         "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)",
         "value": [
         {
             "name": "my-kb"
         },
         {
             "name": "my-kb-2"
         }
         ]
     }
    
  2. Szerezze be az egyéni tudásbázisdefiníciót a tudásbázishivatkozások kereséséhez.

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

    Referencia:SearchIndexClient

    Egy példaválasz az alábbihoz hasonlóan nézhet ki:

     {
       "Name": "earth-knowledge-base",
       "KnowledgeSources": [
         {
           "Name": "earth-knowledge-source"
         }
       ],
       "Models": [
         {}
       ],
       "RetrievalReasoningEffort": {},
       "OutputMode": {},
       "ETag": "\u00220x8DE278629D782B3\u0022",
       "EncryptionKey": null,
       "Description": null,
       "RetrievalInstructions": null,
       "AnswerInstructions": null
     }
    
  3. Törölje a tudásbázist, vagy ha több tudásbázist használ, frissítse a tudásbázist a forrás eltávolításához. Ez a példa a törlést mutatja be.

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

    Referencia:SearchIndexClient

  4. Törölje a tudásbázist.

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

    Referencia:SearchIndexClient

  1. Szerezze be a keresési szolgáltatás összes tudásbázisának listáját.

    # Get knowledge bases
    from azure.core.credentials import AzureKeyCredential
    from azure.search.documents.indexes import SearchIndexClient
    
    index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))
    
    print("Knowledge Bases:")
    for kb in index_client.list_knowledge_bases():
        print(f"  - {kb.name}")
    

    Referencia:SearchIndexClient

    Egy példaválasz az alábbihoz hasonlóan nézhet ki:

     {
         "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)",
         "value": [
         {
             "name": "my-kb"
         },
         {
             "name": "my-kb-2"
         }
         ]
     }
    
  2. Szerezze be az egyéni tudásbázisdefiníciót a tudásbázishivatkozások kereséséhez.

    # Get a knowledge base definition
    from azure.core.credentials import AzureKeyCredential
    from azure.search.documents.indexes import SearchIndexClient
    
    index_client = SearchIndexClient(endpoint = "search_url", credential = AzureKeyCredential("api_key"))
    kb = index_client.get_knowledge_base("knowledge_base_name")
    print(kb)
    

    Referencia:SearchIndexClient

    Egy példaválasz az alábbihoz hasonlóan nézhet ki:

     {
       "name": "my-kb",
       "description": null,
       "retrievalInstructions": null,
       "answerInstructions": null,
       "outputMode": null,
       "knowledgeSources": [
         {
           "name": "my-blob-ks"
         }
       ],
       "models": [],
       "encryptionKey": null,
       "retrievalReasoningEffort": {
         "kind": "low"
       }
     }
    
  3. Törölje a tudásbázist, vagy ha több tudásbázist használ, frissítse a tudásbázist a forrás eltávolításához. Ez a példa a törlést mutatja be.

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

    Referencia:SearchIndexClient

  4. Törölje a tudásbázist.

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

    Referencia:SearchIndexClient

  1. Szerezze be a keresési szolgáltatás összes tudásbázisának listáját.

    ### Get knowledge bases
    GET {{search-url}}/knowledgebases?api-version={{api-version}}&$select=name
    Authorization: Bearer {{token}}
    

    Referencia:Tudásbázisok – Lista

    Egy példaválasz az alábbihoz hasonlóan nézhet ki:

     {
         "@odata.context": "https://my-search-service.search.windows.net/$metadata#knowledgebases(name)",
         "value": [
         {
             "name": "my-kb"
         },
         {
             "name": "my-kb-2"
         }
         ]
     }
    
  2. Szerezze be az egyéni tudásbázisdefiníciót a tudásbázishivatkozások kereséséhez.

    ### Get a knowledge base definition
    GET {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}}
    Authorization: Bearer {{token}}
    

    Referencia:Tudásbázisok – Get

    Egy példaválasz az alábbihoz hasonlóan nézhet ki:

     {
       "name": "my-kb",
       "description": null,
       "retrievalInstructions": null,
       "answerInstructions": null,
       "outputMode": null,
       "knowledgeSources": [
         {
           "name": "my-blob-ks"
         }
       ],
       "models": [],
       "encryptionKey": null,
       "retrievalReasoningEffort": {
         "kind": "low"
       }
     }
    
  3. Törölje a tudásbázist, vagy ha több tudásbázist használ, frissítse a tudásbázist a forrás eltávolításához. Ez a példa a törlést mutatja be.

    ### Delete a knowledge base
    DELETE {{search-url}}/knowledgebases/{{knowledge-base-name}}?api-version={{api-version}}
    Authorization: Bearer {{token}}
    

    Referencia:Tudásbázisok – Törlés

  4. Törölje a tudásbázist.

    ### Delete a knowledge source
    DELETE {{search-url}}/knowledgesources/{{knowledge-source-name}}?api-version={{api-version}}
    Authorization: Bearer {{token}}
    

    Referencia:Tudásforrások – Törlés