Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
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.
Egy indexelt SharePoint tudásforrás (előzetes verzió) beemeli a SharePoint-tartalmakat az Azure AI Keresés ügynökalapú visszakeresési folyamatába. 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.
Indexelt SharePoint tudásbázis létrehozásakor meg kell adnia egy SharePoint kapcsolati karakterlánc, modelleket és tulajdonságokat a következő Azure AI Keresés objektumok automatikus létrehozásához:
- Olyan adatforrás, amely SharePoint webhelyekre mutat, és változatlanul használja a kapcsolati karakterlánc. A létrehozott adatforrás a SharePoint indexelő
TenantIdszabályait követi. - Egy készségkészlet, amely többmodális tartalmat darabol és igény szerint vektorizál.
- Gazdagított tartalmat tároló index, amely megfelel az ügynöki lekérés feltételeinek.
- Egy indexelő, amely az előző objektumokat használja az indexelési és bővítési folyamat vezetésére.
A létrehozott indexelő megfelel a Microsoft 365 indexelő SharePoint, amelynek előfeltételei, támogatott dokumentumformátumai és korlátozásai az indexelt SharePoint tudásbázisokra is érvényesek. További információ: SharePoint indexelő dokumentációja és az indexelő korlátai. Ha a létrehozott képességkészlet külső szolgáltatást hív meg, az adott képesség bemeneti és szolgáltatási korlátai is érvényesek.
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
Egy Azure AI Keresés szolgáltatás bármely régióban, amely lehetővé teszi az intelligens adatlekérést.
A következő SharePoint indexelő konfigurációs lépéseinek végrehajtása:
Step 1: Felügyelt identitás engedélyezése Azure AI Keresés számára (csak titkos hitelesítéshez szükséges; kihagyás ügyfélkód használata esetén)
Step 3: Microsoft Entra alkalmazásregisztráció létrehozása (az alkalmazásengedélyekhez konfiguráljon egy kliens titkos kulcsot vagy secretless hitelesítést)
Ha
contentExtractionModestandard, használjon Microsoft Foundry-erőforrást egy, a Content Understanding in Foundry Tools által támogatott régióban és ahttps://<resource-name>.services.ai.azure.comvégpontot. Beágyazási modell üzembe helyezése és többmodális csevegési modell üzembe helyezése, ha engedélyezi a képek verbálisítását.Engedély tudásbázisok létrehozásához. Konfigurálja a kulcs nélküli hitelesítést a keresési szolgáltatás közreműködője és a keresési index adatszolgáltatói szerepköreivel a felhasználói fiókjához rendelve (ajánlott), vagy használjon rendszergazdai API-kulcsot.
Ha a tudásforrás Azure OpenAI-modellt határoz meg beágyazásokhoz vagy képek szöveges leírásához, a keresési szolgáltatásnak managed identityval kell rendelkeznie a Microsoft Foundry-erőforráson a Cognitive Services User engedélyekkel.
Ha a(z)
privatebeállítástnetworkAccessModeértékre állítja, teljesítse a következő követelményeket:Használjon S2, S3, L1 vagy L2 keresési szolgáltatást.
Tartsa meg a SharePoint kapcsolati sztringet, a Microsoft Entra-alkalmazást és a SharePoint-engedélyeket az előző előfeltételekben leírtak szerint. SharePoint Online nem támogatott megosztott privát kapcsolati cél, így a privát mód nem teszi privátsá a forráskapcsolatot.
Minden védett modellvégpont esetében engedélyezze a felügyelt identitást a keresési szolgáltatásban, adja meg neki a Cognitive Services felhasználói szerepkörét az erőforráson, és hozzon létre és hagyjon jóvá egy megosztott privát hivatkozást. Használja a csoportazonosítót Azure
openai_accountOpenAI-végpontokhoz ésfoundry_accountaz Foundry-erőforrásvégpontokhoz.
A legújabb
Azure.Search.Documentselőzetes csomag:dotnet add package Azure.Search.Documents --prereleaseKulcs nélküli hitelesítés esetén a
Azure.Identitycsomag:dotnet add package Azure.Identity
A legújabb
azure-search-documentselőzetes csomag:pip install --pre azure-search-documentsKulcs nélküli hitelesítés esetén a
azure-identitycsomag:pip install azure-identity
A Search Service REST API 2026-08-01 előzetes verziója .
Kulcs nélküli hitelesítéshez minden HTTP-kérés fejlécében adjon meg egy
Authorization.
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 egy indexelt SharePoint tudásbázisra.
{
"name": "my-indexed-sharepoint-ks",
"kind": "indexedSharePoint",
"description": "A sample indexed SharePoint knowledge source",
"encryptionKey": null,
"indexedSharePointParameters": {
"connectionString": "<redacted>",
"containerName": "defaultSiteLibrary",
"query": null,
"ingestionParameters": {
"disableImageVerbalization": false,
"ingestionPermissionOptions": [],
"contentExtractionMode": "minimal",
"identity": null,
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"resourceUri": "<redacted>",
"deploymentId": "text-embedding-3-large",
"modelName": "text-embedding-3-large",
"authIdentity": null
}
},
"chatCompletionModel": null,
"ingestionSchedule": null,
"assetStore": null,
"aiServices": null
},
"createdResources": {
"datasource": "my-indexed-sharepoint-ks-datasource",
"indexer": "my-indexed-sharepoint-ks-indexer",
"skillset": "my-indexed-sharepoint-ks-skillset",
"index": "my-indexed-sharepoint-ks-index"
}
},
"indexedOneLakeParameters": null
}
Tudásbázis létrehozása
Futtassa a következő kódot egy indexelt SharePoint tudásbázis létrehozásához.
// Create an IndexedSharePoint knowledge source
using Azure.Search.Documents.Indexes;
using Azure.Search.Documents.Indexes.Models;
using Azure.Search.Documents.KnowledgeBases.Models;
using Azure.Identity;
var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new DefaultAzureCredential());
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
{
NetworkAccessMode = KnowledgeSourceNetworkAccessMode.Public,
DisableImageVerbalization = false,
ChatCompletionModel = new KnowledgeBaseAzureOpenAIModel(azureOpenAIParameters: chatCompletionParams),
EmbeddingModel = new KnowledgeSourceAzureOpenAIVectorizer
{
AzureOpenAIParameters = embeddingParams
}
};
var sharePointParams = new IndexedSharePointKnowledgeSourceParameters(
connectionString: sharePointConnectionString,
containerName: "defaultSiteLibrary")
{
IngestionParameters = ingestionParams
};
var knowledgeSource = new IndexedSharePointKnowledgeSource(
name: "my-indexed-sharepoint-ks",
indexedSharePointParameters: sharePointParams)
{
Description = "A sample indexed SharePoint knowledge source."
};
await indexClient.CreateOrUpdateKnowledgeSourceAsync(knowledgeSource);
Console.WriteLine($"Knowledge source '{knowledgeSource.Name}' created or updated successfully.");
Referencia:SearchIndexClient, IndexedSharePointKnowledgeSource
# Create an indexed SharePoint knowledge source
from azure.identity import DefaultAzureCredential
from azure.search.documents.indexes import SearchIndexClient
from azure.search.documents.indexes.models import IndexedSharePointKnowledgeSource, IndexedSharePointKnowledgeSourceParameters, KnowledgeBaseAzureOpenAIModel, AzureOpenAIVectorizerParameters, KnowledgeSourceContentExtractionMode
from azure.search.documents.knowledgebases.models import KnowledgeSourceIngestionParameters, KnowledgeSourceNetworkAccessMode, KnowledgeSourceAzureOpenAIVectorizer
index_client = SearchIndexClient(endpoint = "<search-endpoint>", credential = DefaultAzureCredential())
knowledge_source = IndexedSharePointKnowledgeSource(
name = "my-indexed-sharepoint-ks",
description = "A sample indexed SharePoint knowledge source.",
encryption_key = None,
indexed_share_point_parameters = IndexedSharePointKnowledgeSourceParameters(
connection_string = "connection_string",
container_name = "defaultSiteLibrary",
query = None,
ingestion_parameters = KnowledgeSourceIngestionParameters(
network_access_mode = KnowledgeSourceNetworkAccessMode.PUBLIC,
identity = None,
disable_image_verbalization = False,
chat_completion_model = KnowledgeBaseAzureOpenAIModel(
azure_open_ai_parameters = AzureOpenAIVectorizerParameters(
resource_url = "<aoai-endpoint>",
deployment_name = "<aoai-gpt-deployment>",
model_name = "<aoai-gpt-model>",
)
),
embedding_model = KnowledgeSourceAzureOpenAIVectorizer(
azure_open_ai_parameters=AzureOpenAIVectorizerParameters(
resource_url = "<aoai-endpoint>",
deployment_name = "<aoai-embedding-deployment>",
model_name = "<aoai-embedding-model>",
)
),
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.")
Referencia:SearchIndexClient
### Create an indexed SharePoint knowledge source
PUT {{search-endpoint}}/knowledgesources/my-indexed-sharepoint-ks?api-version=2026-08-01-preview
Authorization: Bearer {{search-access-token}}
Content-Type: application/json
{
"name": "my-indexed-sharepoint-ks",
"kind": "indexedSharePoint",
"description": "A sample indexed SharePoint knowledge source.",
"encryptionKey": null,
"indexedSharePointParameters": {
"connectionString": "{{sharepoint-federated-connection-string}}",
"containerName": "defaultSiteLibrary",
"query": null,
"ingestionParameters": {
"networkAccessMode": "public",
"identity": null,
"embeddingModel": {
"kind": "azureOpenAI",
"azureOpenAIParameters": {
"deploymentId": "text-embedding-3-large",
"modelName": "text-embedding-3-large",
"resourceUri": "{{aoai-endpoint}}"
}
},
"chatCompletionModel": null,
"disableImageVerbalization": false,
"ingestionSchedule": null,
"ingestionPermissionOptions": [],
"contentExtractionMode": "minimal"
}
}
}
Referencia:Tudásforrások – Létrehozás vagy frissítés
Azure-függőségek védelme a betöltés során
Az API-verziótól 2026-08-01-preview kezdve szabályozza azt a hálózati környezetet, networkAccessMode amelyben az indexelt SharePoint tudásbázishoz létrehozott indexelő fut. Ez a beállítás csak az adatbeolvasást érinti, és nem változtatja meg a tudásbázis-lekérdezési kéréseket vagy válaszokat.
networkAccessMode alapértelmezett értéke public, amely megőrzi a meglévő nyilvános hálózati működést. Ha a(z) networkAccessMode értéke private igaz, a létrehozott indexelő a privát végrehajtási környezetben fut. Jóváhagyott megosztott privát hivatkozásokat használ a támogatott Azure függőségekhez, például Azure OpenAI-modellekhez és Microsoft Foundry-erőforrásokhoz.
Important
Indexelt SharePoint tudásbázisok esetében a privát mód csak a támogatott Azure függőségekre vonatkozik. SharePoint Online nem támogatott megosztott privát kapcsolati cél, ezért a SharePoint forráskapcsolat nyilvános marad.
A támogatott Azure függőségekhez való privát hozzáférés konfigurálása és ellenőrzése:
A magánhálózat előfeltételeinek teljesítése.
Állítsa a(z)
privateértékétnetworkAccessModeértékre a tudásforrás létrehozási kérésben. Ezt a tulajdonságot csak a létrehozás során állíthatja be. Ha később módosítani szeretné, törölje és hozza létre újra a tudásbázist.A létrehozás meghiúsulhat, ha a szolgáltatási szint vagy a futtatókörnyezet nem támogatja a privát végrehajtást, vagy ha nem létezik egy szükséges megosztott privát kapcsolat.
Győződjön meg arról, hogy a létrehozott indexelő az
executionEnvironmentprivate.Győződjön meg arról, hogy minden szükséges megosztott privát kapcsolat jóvá van hagyva, és a megfelelő függőséget célozza meg. A sikeres létrehozás önmagában nem erősíti meg a hivatkozás jóváhagyását vagy a célzást.
Kérdezze le a tudásforrás állapotát, amíg a(z)
lastSynchronizationState.endTimeértéket nem kap. Győződjön meg róla, majditemsUpdatesFailed0ellenőrizze az összekötő-specifikus forrástartalmat. A szinkronizálás meghiúsul, ha egy függőség nem érhető el.
Automatikus nyelvenkénti elemzők használata
Az API-verziótól kezdve a 2026-08-01-preview nyelvenkénti automatikus elemzők blobokhoz, indexelt OneLake-hez és indexelt SharePoint tudásbázisokhoz érhetők el. Ha engedélyezve van, Azure AI Keresés észleli az egyes forrásdokumentumok nyelvét, és automatikusan alkalmazza a megfelelő Microsoft nyelvelemzőt. A tudásbázis-definícióban és a lekérdezésben nem ad meg elemzőt.
Az automatikus nyelvenkénti elemzők engedélyezéséhez állítsa be contentExtractionModeminimal és konfigurálja ingestionParameters.aiServices a tudásbázis definícióját.
Kulcs nélküli hitelesítéshez hagyja el a(z) aiServices.apiKey elemet, és rendelje hozzá a Cognitive Services User szerepkört a keresési szolgáltatás felügyelt identitásához a Microsoft Foundry-erőforráson. Kulcsalapú hitelesítéshez állítson be aiServices.apiKey érvényes kulcsot az Foundry-erőforráshoz.
A következő nyelvek támogatottak:
- English
- Japanese
- French
- Spanyol
- Német
- Holland
- Italian
- brazíliai portugál
- európai portugál
- Egyszerűsített kínai
- Hagyományos kínai
- Korean
Többnyelvű tartalom esetén Azure AI Keresés kiválaszt egy elemzőt az elsődlegesen észlelt nyelv alapján. A standard elemzőt használja, ha a nyelv nem támogatott vagy bizonytalan.
Ha engedélyezi az automatikus nyelvenkénti elemzőket, Azure AI Keresés nyelvspecifikus tartalommezőket ad hozzá minden támogatott nyelvhez a létrehozott indexsémához, függetlenül attól, hogy az adatok ezekben a nyelveken tartalmaznak-e dokumentumokat. A betöltés során a dokumentumok az észlelt nyelv alapján a megfelelő nyelvspecifikus mezőre lesznek irányítva.
A nem használt nyelvi mezők nem tartalmaznak indexelt tartalmat, és minimális tárolási hatással vannak rájuk, de továbbra is az indexséma része maradnak, és az indexmezőkorlát felé számlálnak. Az indexterv, a mezőszám és a tárolási követelmények tervezésekor vegye figyelembe a további mezőket. További információ: Indexkorlátok , keresési szolgáltatás kapacitásának becslése és kezelése.
A nyelvfelismerés az ingyenes AI-bővítési kiosztás után számlázható. További információ: Ingyenes bővítés.
Betöltési állapot ellenőrzése
Futtassa az alábbi kódot a betöltési folyamat és az állapot figyeléséhez, beleértve a tudásbázistípust és az indexelő folyamatot létrehozó és a keresési indexet feltöltő tudásbázisok részletes indexelési hibáit.
using Azure.Search.Documents.Indexes;
using System.Text.Json;
var indexClient = new SearchIndexClient(new Uri(searchEndpoint), new AzureKeyCredential(apiKey));
// Get knowledge source ingestion 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);
Referencia:SearchIndexClient
# Check knowledge source ingestion status
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"))
status = index_client.get_knowledge_source_status("knowledge_source_name")
print(json.dumps(status.as_dict(), indent=2))
Referencia:SearchIndexClient
### Check knowledge source ingestion status
GET {{search-url}}/knowledgesources/{{knowledge-source-name}}/status?api-version={{api-version}}
Authorization: Bearer {{token}}
Content-Type: application/json
Referencia:Tudásforrások – Állapot lekérése
A betöltési paramétereket tartalmazó és tartalombetöltést aktívan betöltő kérésekre adott válasz az alábbi példához hasonlóan nézhet ki.
{
"kind": "azureBlob",
"synchronizationStatus": "active",
"synchronizationInterval": "1d",
"currentSynchronizationState": {
"startTime": "2026-04-10T19:30:00Z",
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
"errors": [
{
"key": "Item id 1",
"docURL": "https://contoso.blob.core.windows.net/contracts/2024/Q4/doc-00023.csv",
"statusCode": 400,
"componentName": "DocumentExtraction.AzureBlob.MyDataSource",
"errorMessage": "Could not read the value of column 'foo' at index '0'.",
"details": "The file could not be parsed.",
"documentationLink": "https://go.microsoft.com/fwlink/?linkid=2049388"
}
]
},
"lastSynchronizationState": {
"status": "partialSuccess",
"startTime": "2026-04-09T19:30:00Z",
"endTime": "2026-04-09T19:40:01Z",
"itemUpdatesProcessed": 1100,
"itemsUpdatesFailed": 100,
"itemsSkipped": 1100,
"errors": null
},
"statistics": {
"totalSynchronizations": 25,
"averageSynchronizationDuration": "00:15:20",
"averageItemsProcessedPerSynchronization": 500
}
}
Megjegyzés
A kind dokumentumszintű hibaadatokat tartalmazó tulajdonság és currentSynchronizationState.errors[] tömb a 2026-04-01 API-verziótól kezdve érhető el. A korábbi API-verziók esetében ezek a mezők nem jelennek meg. A lastSynchronizationState.status mező 2026-04-01-ben is új.
A létrehozott objektumok áttekintése
A tudásbázis létrehozásakor a Azure AI Keresés automatikusan létrehoz egy adatforrást, képességkészletet, indexelőt és indexet. A létrehozási válasz az egyes objektumokat a createdResources alatt sorolja fel.
Ezek az objektumok rögzített sablon alapján jönnek létre, és a nevük a tudásforrás nevén alapul. Az objektumnevek nem módosíthatók. Kerülje az objektumok közvetlen szerkesztését, mivel a módosítások olyan hibákat vagy inkompatibilitásokat eredményezhetnek, amelyek megszakítják az indexelő folyamatot.
Az objektumlétrehozás ellenőrzéséhez használhatja a Azure portált. A munkafolyamat a következő:
Ellenőrizze az indexelőben a sikeres vagy sikertelen üzeneteket. Itt csatlakozási vagy kvótahibák jelennek meg.
Ellenőrizze az adatforrást az adattárhoz való kapcsolat ellenőrzéséhez. A kapcsolat kapcsolati karakterlánc vagy felügyelt identitást használ a tudásbázis konfigurálásának módjától függően.
Ellenőrizze a képességkészletet, hogy a tartalom hogyan van csoportosítva és igény szerint vektorizálva.
Ellenőrizze az indexben, hogy a tartalom hogyan van indexelve, és hogyan érhető el lekérés céljából, beleértve, hogy mely mezők kereshetők és szűrhetők, és mely mezők tárolják a hasonlóság kereséséhez használt vektorokat. A Search Explorerrel lekérdezéseket futtathat a létrehozott indexen.
Hozzárendelés tudásbázishoz
Ha elégedett a tudásbázissal, adja hozzá egy tudásbázishoz.
Az indexelt SharePoint tudásbázisok esetében mindenképpen állítsa be a includeReferenceSourceData értékét true-ra/re. Ez a lépés szükséges a forrásdokumentum URL-címének az idézetbe való lekéréséhez.
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. Válassza ki a forgatókönyvnek megfelelő konfigurációt.
Dokumentumszintű engedélyek kényszerítése
A dokumentumszintű engedélyek érvényesítéséhez állítsa be ingestionPermissionOptions a tudásbázis létrehozásakor, majd vegye fel a felhasználó hozzáférési jogkivonatát a lekérési kérelembe. További információ: Engedélyek kényszerítése lekérdezéskor (előzetes verzió).
Az indexelt SharePoint engedély lekérdezésének hiányzó, váratlan vagy sikertelen eredményeiért tekintse meg SharePoint engedélyszűrés hibaelhárítását.
Surface dokumentumba ágyazott képek
Ha a dokumentumba ágyazott képeket (például diagramokat vagy szkennelt képeket) meg szeretné jeleníteni a válaszszintézis válaszaiban, konfigurálja a(z) assetStore beállítást ennél a tudásforrásnál, majd engedélyezze a képkiszolgálást a tudásbázison. A rendszerkép-szolgáltatás nem támogatott, ha ingestionPermissionOptions konfigurálva van. További információkért lásd: A dokumentumokba ágyazott képek megjelenítése ügynöki lekérésben (előzetes verzió).
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:
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" } ] }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 }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
Törölje a tudásbázist.
await indexClient.DeleteKnowledgeSourceAsync(knowledgeSourceName); System.Console.WriteLine($"Knowledge source '{knowledgeSourceName}' deleted successfully.");Referencia:SearchIndexClient
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" } ] }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" } }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
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
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" } ] }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" } }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
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
Ismert hibák
A létrehozott SharePoint adatforrás és indexelő ugyanazt a Microsoft Entra bérlőérvényesítési és hitelesítési viselkedést használja, mint a közvetlenül konfigurált SharePoint indexelők. Bérlővel kapcsolatos hibák esetén tekintse át a létrehozott indexelő állapotát és végrehajtási előzményeit, majd kövesse a Invalid AAD tenant hibaelhárítási lépéseket.